*** empty log message ***
[bpt/emacs.git] / src / ChangeLog
CommitLineData
46540080
KS
12004-09-03 Kim F. Storm <storm@cua.dk>
2
3 * xdisp.c (set_cursor_from_row): Look for non-nil `cursor' property
4 in overlay or text-property strings; set cursor on corresponding
5 glyph rather than at end of the string.
6
9277ba61 72004-09-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
46540080 8
9277ba61
ST
9 * term/mac-win.el: Add ASCII equivalents for some function keys.
10 (mode-line-frame-identification): Sync with x-win.el.
11
12 * macfns.c (x_real_positions): Save the current window port and
13 set a new one before obtaining the global coordinate. Use
14 FRAME_MAC_WINDOW.
15 (x_set_name, x_set_title): Encode title to UTF8. Use
16 SetWindowTitleWithCFString.
17 (Fx_server_version): Get correct OS version.
18
19 * macmenu.c (add_menu_item): Remove unused variable `i'. Don't
20 let separator items destroy refence constants of other menu items.
21
22 * macterm.c (x_update_end): Move SetPortWindowPort to inside
23 BLOCK_INPUT.
24 (x_set_offset): Use FRAME_MAC_WINDOW.
25
26 * xdisp.c (note_mouse_highlight): Set the mouse pointer shape to
27 nontext_cursor if it is on a scroll bar.
28
29 * s/darwin.h (LIBS_CARBON): New define to specify libraries for
30 Carbon support.
31 (LD_SWITCH_SYSTEM_TEMACS): Don't link with unused libstdc++. Use
32 LIBS_CARBON.
33
b10daec7
JD
342004-09-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
35
36 * xfns.c (x_set_name_internal): New function. Check if we shall call
37 xfree before ENCODE_UTF_8.
38 (x_set_name, x_set_title): Call x_set_name_internal.
39
f7e22385
JR
402004-08-31 NAKAMURA Toshikazu <nr-tkz@nifty.com> (tiny change)
41
42 * w32fns.c (w32_load_font): If a BDF font is already loaded, do not
43 reload it.
44
2bf436c3
JD
452004-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
46
16ceacc2
JD
47 * macmenu.c (_widget_value): Added lname and lkey.
48 (single_submenu): Set lname and lkey in widget_value
49 instead of name and key.
50 (update_submenu_strings): New function.
51 (set_frame_menubar): Remove call to inhibit_garbage_collection,
52 call update_submenu_strings.
53
2bf436c3
JD
54 * xmenu.c (digest_single_submenu): Set lname and lkey in widget_value
55 instead of name and key.
56 (update_submenu_strings): New function.
57 (set_frame_menubar): Remove call to inhibit_garbage_collection,
ec867797 58 call update_submenu_strings.
2bf436c3
JD
59
60 * gtkutil.h (_widget_value): Added lname and lkey.
61
11715f92
ST
622004-08-30 Steven Tamm <steventamm@mac.com>
63
64 * macmenu.c (mac_menu_show): Remove shadowing of menu variable
65 by using different names for inner loop variables.
66
5500be54
JD
672004-08-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
68
059cd329
JD
69 * xmenu.c (set_frame_menubar): Reintroduce inhibit_garbage_collection
70 from 2002-07-15T00:01:34Z!raeburn@raeburn.org so that strings from ENCODE_UTF_8 isn't GC:ed before used.
71
5500be54
JD
72 * gtkutil.c (xg_create_frame_widgets): Compensate for tool bar when
73 tool bar items is 0.
74
383418e5
ST
752004-08-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
76
77 * macmenu.c (ENCODE_MENU_STRING): Added to handle multibyte
78 strings in menu items.
79 (single_submenu): Use ENCODE_MENU_STRING
80 (mac_menu_show): Use ENCODE_MENU_STRING. Reset grabbed because
81 button release isn't passed to event loop
82 (add_menu_item): Use SetMenuItemWithCFString
83
6eb3ee72
ST
842004-08-26 Steven Tamm <steventamm@mac.com>
85
86 * fileio.c (Fread_file_name): Call x_file_dialog on carbon on
87 tool-bar/menu click
88 * macfns.c (Fx_file_dialog): Implemented using NavServices
89
10b43ac3
JD
902004-08-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
91
2728b5d0
JD
92 * xterm.c (x_catch_errors_unwind): Do not XSync if display has closed.
93
10b43ac3
JD
94 * xfns.c (x_window_to_frame, x_any_window_to_frame)
95 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
96 (x_top_window_to_frame): Return 0 if wdesc is None.
97
2ee3b79e
RS
982004-08-22 Richard M. Stallman <rms@gnu.org>
99
100 * process.c (process_send_signal) [SIGNALS_VIA_CHARACTERS,
101 HAVE_TERMIOS]: If there's no char for this signal, drop through
102 and use system calls.
103
104 * bytecode.c (Fbyte_code) <unwind-protect>: Cannot GC.
105
9a1ba2ea
KS
1062004-08-20 Kim F. Storm <storm@cua.dk>
107
108 * process.c (wait_reading_process_output): Rename from
109 wait_reading_process_input. All uses changed.
110 (wait_reading_process_output_1): Rename from
111 wait_reading_process_input_1. All uses changed.
112
113 * dispnew.c (Fsleep_for): Remove obsolete code.
114
295f3b30
KH
1152004-08-20 Kenichi Handa <handa@m17n.org>
116
117 * syntax.c (skip_chars): Fix for unibyte case.
118
27615979
SM
1192004-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
120
121 * syntax.c (char_quoted): Mixup byte/char pos.
122 (back_comment): Fixup globals in all cases.
123
00267f94
JD
1242004-08-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
125
126 * xfns.c (x_set_name, x_set_title): Encode title to UTF8 before
127 passing it to gtk_window_set_title.
128
2439909e
KS
1292004-08-19 Kim F. Storm <storm@cua.dk>
130
6ba0f14c
KS
131 * process.c (wait_reading_process_input): Clean up.
132 Add wait_for_cell, wait_proc, and just_wait_proc args
133 to avoid overloading `read_kbd' and `do_display' args.
134 Change read_kbd arg to int. All callers changed.
135
2439909e
KS
136 * process.c (process_send_signal): Use CDISABLE.
137
138 * sysdep.c (child_setup_tty, init_sys_modes): Use CDISABLE.
139
101c421e
KS
1402004-08-18 Kim F. Storm <storm@cua.dk>
141
142 * process.c (Faccept_process_output): Add arg JUST-THIS-ONE;
143 forward to wait_reading_process_input via DO_DISPLAY arg.
144 (wait_reading_process_input): If DO_DISPLAY < 0 for a process
145 object, only process output from that process; also inhibit
146 running timers if DO_DISPLAY==-2.
147
c438dc33
KS
1482004-08-17 Kim F. Storm <storm@cua.dk>
149
150 * process.c (process_send_signal): Fix last change--use
151 _POSIX_VDISABLE instead of CVDISABLE when available.
152
8afc13c6
RS
1532004-08-16 Richard M. Stallman <rms@gnu.org>
154
155 * sysdep.c (child_setup_tty) [SIGNALS_VIA_CHARACTERS]:
156 Set VQUIT and VINTR chars to the standard ones if they are unset.
157 [AIX]: Don't do that here. And don't force VINTR to standard
158 when SIGNALS_VIA_CHARACTERS.
159
c438dc33 160 * process.c (process_send_signal)
8afc13c6
RS
161 [SIGNALS_VIA_CHARACTERS, HAVE_TERMIOS]: Clean up.
162 Do nothing if the character is CVDISABLE.
163
164 * xfaces.c (merge_face_ref): Specifying `unspecified' is a no-op.
165
c438dc33 166 * intervals.c (move_if_not_intangible):
8afc13c6
RS
167 Force POSITION to be between BEGV and ZV.
168
6dad1714
JPW
1692004-08-14 John Paul Wallington <jpw@gnu.org>
170
171 * buffer.c (Frestore_buffer_modified_p): Doc fix.
172
173 * fileio.c (Fread_file_name): Doc fix.
174
175 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
176
2bd77330
LT
1772004-08-09 Luc Teirlinck <teirllm@auburn.edu>
178
179 * keymap.c (Fmake_keymap, Fmap_keymap, Fwhere_is_internal): Doc fixes.
180
c90e7e43
LT
1812004-08-08 Luc Teirlinck <teirllm@auburn.edu>
182
183 * keyboard.c: Declare Qdisabled_command_function instead of
8392e138 184 Qdisabled_command_hook.
c90e7e43 185 (Fcommand_execute): Use Qdisabled_command_function instead of
8392e138 186 Qdisabled_command_hook.
c90e7e43
LT
187 (syms_of_keyboard): Ditto.
188
81909a1a
LT
1892004-08-07 Luc Teirlinck <teirllm@auburn.edu>
190
191 * keymap.c (Flocal_key_binding, Fglobal_key_binding)
192 (syms_of_keymap) <key-translation-map>: Doc fixes.
193
0cedd530
SM
1942004-08-07 Stefan Monnier <monnier@iro.umontreal.ca>
195
1725a7c9
SM
196 * window.c (window_list_1): YAILOM.
197
0cedd530
SM
198 * fileio.c (make_temp_name): Handle multibyte prefixes.
199
2515a131
LT
2002004-08-06 Luc Teirlinck <teirllm@auburn.edu>
201
202 * keyboard.c (syms_of_keyboard) <overriding-terminal-local-map>:
203 Doc fix.
204
c8b20fb7
KH
2052004-08-03 Kenichi Handa <handa@m17n.org>
206
207 * coding.c (decode_coding_string): Adjust coding->consumed, and
208 etc. with shrinked_bytes.
209
fb8b092b
KS
2102004-08-03 Kim F. Storm <storm@cua.dk>
211
212 * indent.c (compute_motion): Fix check for full width window
213 in non-window case. Do not count left truncation glyph on
214 window systems.
215
df133612
LT
2162004-08-02 Luc Teirlinck <teirllm@auburn.edu>
217
218 * data.c (Finteractive_form): Doc fix.
219
0f7a93c1
KS
2202004-08-02 Kim F. Storm <storm@cua.dk>
221
222 * indent.c (compute_motion): Use actual window width if WIDTH is -1,
223 properly accounting for continuation glyph on non-window systems.
224 (Fcompute_motion): Use actual window width if WIDTH is nil, and
225 actual window width/height if TOPOS is nil, properly accounting for
226 continuation glyphs on non-window systems, and optional header lines.
227 (vmotion): Let compute_motion calculate actual window width.
228
229 * window.c (window_scroll_line_based): Let compute_motion
230 calculate actual window width.
231
f491e1ed
KS
2322004-08-02 Kim F. Storm <storm@cua.dk>
233
234 * process.c (read_process_output): Use whole read buffer.
235 Don't trigger adaptive read buffering on errors.
236
83f64226
LT
2372004-07-31 Luc Teirlinck <teirllm@auburn.edu>
238
239 * keymap.c (Fset_keymap_parent, Fdefine_prefix_command): Doc fixes.
240
241 * keyboard.c (syms_of_keyboard) <disable-point-adjustment>: Doc fix.
242
243 * callint.c (Fcall_interactively): Doc fix.
244
8afc13c6
RS
2452004-07-30 Richard M. Stallman <rms@gnu.org>
246
247 * abbrev.c (Fexpand_abbrev): Undo previous change.
248
7c111482
KS
2492004-07-30 Kim F. Storm <storm@cua.dk>
250
251 * editfns.c (Fformat): Allocate extra (dummy) element in info.
252
ee945d08
LT
2532004-07-28 Luc Teirlinck <teirllm@auburn.edu>
254
255 * eval.c (Fdefvar, Fdefconst): Doc fixes.
256
3f911c94
KS
2572004-07-27 Kim F. Storm <storm@cua.dk>
258
259 * xdisp.c (move_it_in_display_line_to): Check BUFFER_POS_REACHED_P after
260 we have ensured that the glyph fits on the current line (or returned
261 MOVE_LINE_CONTINUED otherwise).
262
f29ff8c7
KS
2632004-07-26 Kim F. Storm <storm@cua.dk>
264
265 * xdisp.c (move_it_in_display_line_to): If overflow-newline-into-fringe
266 is enabled, return MOVE_LINE_CONTINUED rather than MOVE_POS_MATCH_OR_ZV
267 if target position is at end of display line but char is not a newline.
268
81159bb9
RS
2692004-07-25 Richard M. Stallman <rms@gnu.org>
270
ab431b61
RS
271 * window.c (coordinates_in_window): Return ON_SCROLL_BAR
272 instead of ON_VERTICAL_BORDER, when on scroll bar.
273 (Fcoordinates_in_window_p): Handle ON_SCROLL_BAR--return nil.
274
275 * dispextern.h (enum window_part): Add ON_SCROLL_BAR.
276
f29ff8c7 277 * window.c (Fcoordinates_in_window_p):
81159bb9
RS
278 Take account of FRAME_INTERNAL_BORDER_WIDTH.
279
280 * alloc.c (check_cons_list): New function (contents commented out).
281
fc820cc5
LT
2822004-07-24 Luc Teirlinck <teirllm@auburn.edu>
283
284 * xfaces.c (Fcolor_supported_p): Doc fix.
285
286 * frame.c (Fselect_frame, Fset_frame_selected_window)
287 (Fframe_visible_p, Fraise_frame): Doc fixes.
288
289978b5
LT
2892004-07-24 Richard M. Stallman <rms@gnu.org>
290
7630911d
RS
291 * keyboard.h (not_single_kboard_state): Declared.
292
293 * fileio.c (Fwrite_region): Doc fix.
294
295 * window.c (Fwindow_at): Take account of FRAME_INTERNAL_BORDER_WIDTH.
296
297 * abbrev.c (Fexpand_abbrev): Run Qpre_abbrev_expand_hook
298 only when a real abbrev is present.
299
289978b5
LT
300 * xfns.c (x_icon_verify): New function.
301 (Fx_create_frame): Use it.
302
63cc10ae
KS
3032004-07-22 Barry Fishman <barry_fishman@att.net> (tiny change)
304
305 * s/gnu-linux.h: Use GC_MARK_STACK if __amd64__ is defined.
306
36f826d4
KS
3072004-07-21 Kim F. Storm <storm@cua.dk>
308
309 * window.h (struct glyph_matrix): New members nrows_scale_factor
310 and ncols_scale_factor.
311
312 * window.c (make_window): Initialize nrows_scale_factor and
313 ncols_scale_factor members.
314
315 * dispnew.c (margin_glyphs_to_reserve): Apply ncols_scale_factor.
316 (allocate_matrices_for_frame_redisplay): Fix left/right margin mix-up.
317 (required_matrix_height): Apply nrows_scale_factor.
318 (required_matrix_width): Apply ncols_scale_factor.
319
320 * xdisp.c (display_line): Increment nrows_scale_factor and set
321 fonts_changed_p if past last allocated row.
322 (append_glyph, append_composite_glyph, produce_image_glyph)
323 (append_stretch_glyph): Increment ncols_scale_factor and set
324 fonts_changed_p if current area is full.
325
5fc1c546
JD
3262004-07-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
327
328 * widget.c (EmacsFrameDestroy): Don't abort if normal_gc is 0.
329
cb7516e5
LT
3302004-07-19 Luc Teirlinck <teirllm@auburn.edu>
331
332 * window.c (Fpos_visible_in_window_p, Fset_window_hscroll)
333 (Fwindow_inside_pixel_edges, Fwindow_end, Fset_window_point)
334 (Fset_window_start, Fscroll_up, Fscroll_down)
335 (Fother_window_for_scrolling, Fscroll_other_window)
336 (Fsave_window_excursion, Fset_window_vscroll)
337 (syms_of_window) <window-size-fixed>: Doc fixes.
338
dda741ec
JR
3392004-07-19 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> (tiny change)
340
341 * w32fns.c (Fx_file_dialog): Use ENCODE_FILE instead of
342 ENCODE_SYSTEM for filenames.
343
bfcf6608
ST
3442004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
345
346 * mac.c (sys_select): Block input around call to
347 ReceiveNextEvent to prevent breakage. Correctly handle
348 blocking on event queue only by calling ReceiveNextEvent
349 instead of select (since GUI events aren't on an fd).
350 (sys_read): Remove function
351 * sysdep.c: Remove redefine of read to sys_read if HAVE_CARBON
352
e082ac9d
ST
3532004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
354
355 * mac.c (sys_select): Redo sys_select to use alarm-based
cb7516e5 356 polling instead of 1 sec timeouts (like solaris).
e082ac9d 357
cb7516e5 358 * macterm.c (x_make_frame_visible): Comment in polling on
e082ac9d
ST
359 frame creation.
360
361 * keyboard.c: Undef SIGIO on Carbon
362
363 * atimer.c (alarm_signal_handler): Call alarm handlers after
364 scheduling.
365
366 * eval.c (Feval): Remove quit_char test
367
368 * process.c (wait_reading_process_input): Remove clearing
369 stdin for select call on process input.
370
4b9da0fb
LT
3712004-07-18 Luc Teirlinck <teirllm@auburn.edu>
372
1204e81c
LT
373 * xdisp.c (syms_of_xdisp) <window-scroll-functions>: Correct
374 capitalization error in docstring.
4b9da0fb 375
26503ad2
JB
3762004-07-17 Juanma Barranquero <lektu@terra.es>
377
378 * keyboard.c (not_single_kboard_state): Do nothing unless
379 MULTI_KBOARD is defined.
380
3751eb00
RS
3812004-07-17 Richard M. Stallman <rms@gnu.org>
382
383 * window.c (coordinates_in_window): Inside the window but outside
384 its box to the L or R, return ON_VERTICAL_BORDER.
385 (window_list_1): Rotate the list to start with WINDOW.
386
387 * print.c (print_preprocess): Test for print_depth at limit
388 before entering in being_printed.
389
390 * keyboard.c (not_single_kboard_state): New function.
391 (stuff_buffered_input): Now no-op only if no SIGTSTP.
392
393 * frame.c (Fdelete_frame): If we're in single_bboard_state on
394 this kboard, and we delete its last frame, go to any_kboard_state.
395
396 * buffer.c (syms_of_buffer) <transient-mark-mode>: Doc fix.
397
62eb6ca9
JR
3982004-07-15 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> (tiny change)
399
400 * w32fns.c (Fx_file_dialog): Encode strings in system coding
401 system before passing them to OS functions for display.
402
0f6af254
DK
4032004-07-15 David Kastrup <dak@gnu.org>
404
f9253326
KS
405 * search.c (syms_of_search): Staticpro `saved_last_thing_searched'.
406 Apparently fixes an abort condition.
0f6af254 407
386c8f42
LT
4082004-07-14 Luc Teirlinck <teirllm@auburn.edu>
409
410 * fileio.c (Fvisited_file_modtime): Return a list of two integers,
411 instead of a cons.
412
366511da
MB
4132004-07-14 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
414
415 * keyboard.c (echo_dash): Do nothing if there already is a dash
416 at the end of the echo string.
417
f85409d3
KS
4182004-07-12 Kim F. Storm <storm@cua.dk>
419
420 * alloc.c (mark_object): Only look at Lisp_Misc_Save_Value
421 if GC_MARK_STACK.
422
0ba2e87b
LT
4232004-07-10 Luc Teirlinck <teirllm@auburn.edu>
424
da38045d
LT
425 * buffer.c (Fswitch_to_buffer, Fpop_to_buffer): Doc fixes.
426
0ba2e87b
LT
427 * window.c (Fwindow_buffer, Fother_window, Fget_lru_window)
428 (Fget_largest_window, Fget_buffer_window, Fdelete_windows_on)
429 (Freplace_buffer_in_windows, Fset_window_buffer)
430 (Fselect-window, Fdisplay-buffer, Fsplit_window): Doc fixes.
431 (syms_of_window): Expand docstring of `display-buffer-function'.
432
5668fbb8
LT
4332004-07-09 Luc Teirlinck <teirllm@auburn.edu>
434
435 * editfns.c (Ffloat_time, Fformat_time_string, Fdecode_time)
436 (Fcurrent_time_string, Fcurrent_time_zone): Mention in docstrings
437 that time values of the type (HIGH . LOW) are considered obsolete.
438
a085bf9d
LT
4392004-07-06 Luc Teirlinck <teirllm@auburn.edu>
440
669de2fb
LT
441 * keyboard.c (syms_of_keyboard): Fix `keyboard-translate-table'
442 docstring.
443
bac66325 444 * fns.c (Fclear_string): Declare `len' before call to CHECK_STRING.
a085bf9d 445
8e975df9
JPW
4462004-07-06 John Paul Wallington <jpw@gnu.org>
447
448 * eval.c (Fdefmacro): Signal an error if NAME is not a symbol.
449
fa164e6a
JPW
450 * fns.c (Fclear_string): Signal an error if STRING is not a string.
451
2bac9bb1
JD
4522004-07-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
453
454 * macterm.c (mac_initialize_display_info): Use CGGetActiveDisplayList
455 instead of CGMainDisplayID (only in OSX 10.2 and later).
456
316ef0dc
JPW
4572004-07-04 John Paul Wallington <jpw@gnu.org>
458
459 * fileio.c (read_file_name_completion_ignore_case): New variable.
460 (syms_of_fileio): Declare and initialise it.
461 (Fread_file_name): Bind `completion-ignore-case' to respect it.
462
2a1a35c6
EZ
4632004-07-03 Eli Zaretskii <eliz@gnu.org>
464
465 * msdos.c (dos_rawgetc): Use make_number to produce Lisp objects
466 for event.x and event.y.
467
33a72331
KH
4682004-07-01 Kenichi Handa <handa@m17n.org>
469
470 * w32select.c (Fw32_set_clipboard_data): Update `nbytes' correctly
471 after getting a new string by pre-write-conversion.
472
07a6ab76
SM
4732004-06-30 Stefan <monnier@iro.umontreal.ca>
474
475 * xterm.c (x_detect_focus_change): Remove unused var `nr_events'.
476 (x_calc_absolute_position): Remove unused var `child'.
477
478 * xfaces.c (x_supports_face_attributes_p)
479 (Fdisplay_supports_face_attributes_p): YAILOM.
480 (tty_supports_face_attributes_p): Remove unused var `i'.
481
482 * syntax.c (skip_chars): Remove unused labels fwd_unibyte_ok and
483 back_unibyte_ok.
484
485 * search.c (match_limit, Fmatch_data, Fset_match_data): YAILOM.
486
487 * fontset.c (Fset_fontset_font): Remove unused vars `family' and `registry'.
488
489 * Makefile.in (${etc}DOC): Fix file name of make-docfile.
490
f96ec754
AS
4912004-06-30 Andreas Schwab <schwab@suse.de>
492
493 * image.c (CHECK_LIB_AVAILABLE): Add third parameter LIBRARIES.
494 (Finit_image_library): Pass LIBRARIES through to
495 CHECK_LIB_AVAILABLE. Declare parameters. Doc fix.
496 (lookup_image_type): Pass Qnil as second argument to
497 Finit_image_library.
498
499 * lisp.h: Declare Finit_image_library.
500
59feca74 5012004-06-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
c8d09ad8 502
31983645
AS
503 * macterm.c (do_window_activate, do_window_deactivate): Remove.
504 (XTread_socket): Send mouse button events to the toolbox
505 dispatcher even when the mouse is grabbed. Don't process window
506 activate events for non-Emacs windows. Replace function calls to
507 do_window_activate and do_window_deactivate with their contents.
508 Reset mouse grabbing status when a window is deactivated.
59feca74 509
c61278bb
ST
5102004-06-29 Steven Tamm <steventamm@mac.com>
511
512 * macterm.c (mac_get_emulated_btn)
513 (mac_event_to_emacs_modifiers): Fix emulated mouse button
514 support to correctly mask out modifiers.
515
c3762cbd
DK
5162004-06-29 David Kastrup <dak@gnu.org>
517
518 * search.c (Fset_match_data): Allow buffer before end of list
519 which can happen if set-match-data is using a pre-consed list.
520
c61278bb 5212004-06-28 Steven Tamm <steventamm@mac.com>
e439b925
ST
522
523 * macterm.c (XTread_socket): Correctly set the frame position
524 after the window is moved.
525
74cdfe05
JD
5262004-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
527
528 * gtkutil.c (xg_get_image_for_pixmap): Call g_object_unref on
529 gpix and gmask just before return to avoid memory leak.
03ecb80f
JD
530 (xg_get_image_for_pixmap): Add workaround for monochrome displays
531 so insensitive and activated icons look ok.
74cdfe05 532
ef544dc8
JR
5332004-06-27 Jason Rumney <jasonr@gnu.org>
534
535 * w32fns.c (file_dialog_callback): Disable edit control if set
536 to directories only on CDN_INITDONE message.
537 (Fx_file_dialog): Default to directories only when prompt starts
538 with "Dired".
539
7b7990cc
KS
5402004-06-25 Kim F. Storm <storm@cua.dk>
541
542 * alloc.c (allocate_misc): Update total_free_markers.
543 (free_misc): New function.
544 (safe_alloca_unwind, free_marker): Use it.
545
546 * lisp.h (free_misc): Add prototype.
547
548 * fns.c (Fmapconcat, Fmapcar): Remove superfluous GCPROs.
549
d8c379f8
RS
5502004-06-24 Richard M. Stallman <rms@gnu.org>
551
552 * emacs.c (Vsignal_USR1_hook, Vsignal_USR2_hook): Definitions deleted.
553 (syms_of_emacs): Lisp variables deleted.
554
559cdd07
DK
5552004-06-23 David Kastrup <dak@gnu.org>
556
94939b84
DK
557 * search.c (Freplace_match): Adjust the match-data more thoroughly
558 when replacing strings in the buffer.
559 (Fmatch_data): When INTEGERS is non-nil and the last match was in
560 a buffer, add the buffer as last element to the match data.
561 (Fset_match_data): If an additional element of the match-data is a
562 buffer, restore it to last_thing_searched.
c8d09ad8 563 (save_search_regs): Save last_thing_searched as part of the match data.
559cdd07
DK
564 (restore_match_data): Restore it again.
565
dce417e7
LT
5662004-06-23 Luc Teirlinck <teirllm@auburn.edu>
567
568 * keymap.c (Ftext_char_description): Doc fix.
569 * doc.c (Fsnarf_documentation): Doc fix.
570
ef54b2d0
KS
5712004-06-22 Kim F. Storm <storm@cua.dk>
572
b5bc4d05
KS
573 * fns.c (Fmapcar, Fmapconcat): GCPRO the args array.
574
ef54b2d0
KS
575 * lisp.h (struct Lisp_Save_Value): New member dogc.
576 (SAFE_ALLOCA_LISP): Change second arg to number of elements.
577 Set dogc member in Lisp_Save_Value object so it will be GC'ed.
578 (SAFE_FREE_LISP): New macro.
579
580 * alloc.c (safe_alloca_unwind): Clear dogc and pointer members.
581 (make_save_value): Init new dogc member.
582 (mark_object): Mark Lisp_Save_Value pointer array if dogc is set.
583
584 * fns.c (Fmapconcat, Fmapcar): Use new SAFE_ALLOCA_LISP and
585 SAFE_FREE_LISP macros.
586
3d33d993
KS
5872004-06-22 Kim F. Storm <storm@cua.dk>
588
589 * lisp.h (SAFE_ALLOCA_LISP): New macro to allocate Lisp_Objects.
590 Temporarily inhibits GC if memory is xmalloc'ed, as the Lisp_Objects
591 in that memory area are unknown to GC. Add comments.
592
593 * fns.c (Fmapconcat, Fmapcar): Use SAFE_ALLOCA_LISP.
594
5c917f98
KS
5952004-06-21 Kim F. Storm <storm@cua.dk>
596
597 * lisp.h (MAX_ALLOCA): Define here.
598 (safe_alloca_unwind): Add prototype.
599 (USE_SAFE_ALLOCA, SAFE_ALLOCA, SAFE_FREE): New macros.
600
601 * alloc.c (safe_alloca_unwind): New function.
602
603 * casefiddle.c (casify_object): Use SAFE_ALLOCA.
604
605 * charset.c (Fstring): Use SAFE_ALLOCA.
606
607 * coding.c (MAX_ALLOCA): Remove define.
608
609 * data.c (MAX_ALLOCA): Remove define.
610 (Faset): Use SAFE_ALLOCA.
611
612 * editfns.c (Fformat, Ftranspose_regions): Use SAFE_ALLOCA.
613
614 * fns.c (string_make_multibyte, string_to_multibyte)
615 (string_make_unibyte, Fmapconcat, Fmapcar): Use SAFE_ALLOCA.
616 (MAX_ALLOCA): Remove define.
617 (Fbase64_encode_region, Fbase64_encode_string)
618 (Fbase64_decode_region, Fbase64_decode_string): Use SAFE_ALLOCA.
619 (Fbase64_encode_region, Fbase64_encode_string): Fix potential
620 memory leak if encoding fails.
621
622 * xdisp.c (add_to_log): Use SAFE_ALLOCA.
623
9a09408e
EZ
6242004-06-21 Eli Zaretskii <eliz@gnu.org>
625
626 * print.c (Fwith_output_to_temp_buffer): Doc fix.
627
376de739
RS
6282004-06-20 Richard M. Stallman <rms@gnu.org>
629
630 * xfaces.c (Finternal_copy_lisp_face): Small cleanup; doc fix.
631
632 * search.c (match_limit): Cleaner err msg when no match data available.
633
634 * window.c (syms_of_window): Doc fix.
635
636 * keyboard.c (command_loop_1): Handle values `only' and `identity'
637 for Vtransient_mark_mode.
638
639 * buffer.c (syms_of_buffer): Doc fix.
640
acd81db9
DK
6412004-06-21 David Kastrup <dak@gnu.org>
642
643 * minibuf.c (Ftry_completion, Fall_completions): Do lazy binding
644 and unbinding of `case-fold-search' according to
645 `completion-ignore-case' around calls of string-match and
646 predicates, respectively. Should give satisfactory performance
647 in all relevant cases.
648
f303762d
JD
6492004-06-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
650
95911c74
JD
651 * xterm.c (x_draw_image_foreground_1): Subtract slice.x/y from
652 clip_x/y_origin.
653
a6cb6b78
JD
654 * fns.c (string_to_multibyte): Use xmalloc/xfree instead of alloca.
655
f303762d
JD
656 * macfns.c (Fx_display_color_cells): Do not limit return value to 256.
657
658 * macterm.c (mac_initialize_display_info): Initialize n_planes correctly
659 on Mac OSX.
660
bbdb2684
LT
6612004-06-16 Luc Teirlinck <teirllm@auburn.edu>
662
663 * buffer.c (syms_of_buffer): Clarify `fill-column' docstring.
664
5ea48b1c
KS
6652004-06-16 Kim F. Storm <storm@cua.dk>
666
667 * dispextern.h (Vimage_types): Remove extern.
668
803aac3e
MB
6692004-06-16 Miles Bader <miles@gnu.org>
670
671 * image.c (lookup_image_type): Initialize image type if necessary.
672
cdc97764
KS
6732004-06-15 Kim F. Storm <storm@cua.dk>
674
c4a5739c
KS
675 * xdisp.c (try_cursor_movement): Exclude header line from scroll
676 margin at top of window.
677 (try_window_reusing_current_matrix): Calculate proper cursor position
678 after scrolling up with non-zero scroll margin, as the old cursor
679 position corresponds to value of PT before executing this command.
680 (try_window_id): Consider scroll margin at bottom of window too;
681 otherwise we fail to scroll when hl-line-mode is enabled.
682
cdc97764
KS
683 * syntax.c (skip_chars): Only recognize [:class:] when it has the
684 proper format and class is a lower-case word.
685
5b166323
JD
6862004-06-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
687
688 * gtkutil.c (xg_get_image_for_pixmap): New function.
c8d09ad8 689 (xg_get_gdk_pixmap_and_mask): Remove.
5b166323
JD
690 (update_frame_tool_bar): Call xg_get_image_for_pixmap instead of
691 xg_get_gdk_pixmap_and_mask.
cdc97764 692
5b166323
JD
693 * xterm.h (struct x_display_info): Typo in comment fixed.
694
1ebd4f78
JB
6952004-06-14 Juanma Barranquero <lektu@terra.es>
696
697 * dispextern.h (Vimage_types): Make it conditional on
698 HAVE_WINDOW_SYSTEM.
699
700 * image.c (Vimage_types): Move from xdisp.c.
701 (Vimage_type_cache): New variable.
702 (define_image_type): New argument indicating whether an image
703 library was loaded; cache loaded status and return t on success,
704 nil otherwise.
705 (CACHE_IMAGE_TYPE, ADD_IMAGE_TYPE): New macros.
706 (w32_delayed_load): New function to load an image library from a
707 list of possible filenames.
708 (init_xpm_functions, init_png_functions, init_jpeg_functions)
709 (init_tiff_functions, init_gif_functions): Use `w32_delayed_load'.
c8d09ad8 710 (CHECK_LIB_AVAILABLE): Call `define_image_library' with new argument.
1ebd4f78
JB
711 (Finit_image_library): New function, extracted from `init_image'.
712 Try to initialize an image library on demand and cache whether we
713 were successful or not.
714 (syms_of_image): Initialize `Vimage_types' and
715 `Vimage_type_cache'. Add recognized image types to Vimage_types.
716 Export `init-image-library'.
717 (init_image): Remove initialization of all image types, except xbm
718 and pbm.
719
720 * xdisp.c (Vimage_types): Delete (moved to image.c).
721
904ee128
AS
7222004-06-14 Andreas Schwab <schwab@suse.de>
723
724 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
725 Avoid calling specbind when completion-regexp-list is empty.
726
092de21d
RS
7272004-06-13 Richard M. Stallman <rms@gnu.org>
728
729 * regex.h (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
730 (re_wctype, re_iswctype, re_wctype_to_bit):
731 Non-function definitions moved here from regex.c.
1ebd4f78 732
092de21d
RS
733 * regex.c (re_wctype, re_iswctype): Function defs longer static.
734 (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
735 (re_wctype, re_iswctype, re_wctype_to_bit):
736 Non-function definitions moved to regex.h.
737
738 * window.c (Fselect_window): Doc fix.
739
740 * syntax.c: Include regex.h.
741 (skip_chars): New arg HANDLE_ISO_CLASSES. Callers changed.
742 If requested, make a list of classes, then check the scanned
743 chars for membership in them.
744 (in_classes): New function.
745 Doc fix.
746
747 * keyboard.c (cmd_error): Don't call any_kboard_state
748 if inside a recursive edit level.
749
7502004-06-13 Lorentey K\e,Aa\e(Broly <lorentey@elte.hu>
751
752 * keyboard.c (command_loop): Call any_kboard_state before
753 command_loop_2 when at top level.
754
3ebc0939
AS
7552004-06-13 Andreas Schwab <schwab@suse.de>
756
cea5d0d4
AS
757 * print.c (print_object): Always use %ld for printing EMACS_INT.
758
759 * keyboard.c (cancel_hourglass_unwind): Return a value.
760 (modify_event_symbol): Always use %ld for printing EMACS_INT.
761 (Fexecute_extended_command): Likewise.
762
763 * syntax.h (SYNTAX_ENTRY_FOLLOW_PARENT): Rename local variable to
764 avoid clashes.
765 (SYNTAX): Likewise.
766 (SYNTAX_WITH_FLAGS): Likewise.
767 (SYNTAX_MATCH): Likewise.
768
769 * syntax.c (char_quoted): Avoid warning about undefined operation.
770 (find_defun_start): Likewise.
771 (scan_lists): Likewise.
772 (INC_FROM): Likewise.
773 (scan_sexps_forward): Likewise.
774
be8c4ce4
AS
775 * image.c: Include <ctype.h>.
776
3ebc0939
AS
777 * xfaces.c (face_attr_equal_p): Declare parameters.
778
6fb41b5b
KH
7792004-06-13 Kenichi Handa <handa@m17n.org>
780
781 * ccl.c (CCL_READ_CHAR): If hit EOF, set REG to -1.
782
fc3095ce
EZ
7832004-06-12 Matthew Mundell <matt@mundell.ukfsn.org>
784
785 * eval.c (Fdefun): Signal an error if NAME is not a symbol.
786
66189a40
KH
7872004-06-12 Kenichi Handa <handa@m17n.org>
788
789 * ccl.c (CCL_CALL_FOR_MAP_INSTRUCTION): Save eof_ic in
790 ccl_prog_stack_struct and update it.
791 (CCL_INVALID_CMD): If CCL_DEBUG is defined, call ccl_debug_hook.
792 (CCL_READ_CHAR): Get instruction counter from eof_ic, not from
793 ccl->eof_ic on EOF.
794 (ccl_debug_hook): New function.
795 (struct ccl_prog_stack): New member eof_ic.
796 (ccl_driver): Handle EOF in subrountine call correctly.
797
7982004-06-11 Kenichi Handa <handa@m17n.org>
799
800 * coding.c (decode_coding_string): Check CODING_FINISH_INTERRUPT.
801
1da71023
KS
8022004-06-11 Kim F. Storm <storm@cua.dk>
803
804 * emacs.c (shut_down_emacs): Inhibit redisplay during shutdown.
805
e9efcef4
JB
8062004-06-11 Juanma Barranquero <lektu@terra.es>
807
808 * keyboard.c (Fposn_at_point): Doc fix.
809
9b9ceb61
DK
8102004-06-11 David Kastrup <dak@gnu.org>
811
812 * search.c (match_limit): Don't flag an error if match-data
813 exceeding the allocated search_regs.num_regs gets requested, just
814 return Qnil.
815
6e87ac8f
MB
8162004-06-08 Miles Bader <miles@gnu.org>
817
818 * xfaces.c (push_named_merge_point): Return 0 when a cycle is detected.
819
0b0dea7b
JB
8202004-06-07 Juanma Barranquero <lektu@terra.es>
821
822 * editfns.c (Fuser_login_name, Ffloat_time, Fencode_time)
823 (Fcurrent_time_string, Fcurrent_time_zone)
824 (Finsert_buffer_substring, Ftranspose_regions): Doc fixes.
825
a0a23346
MB
8262004-06-07 Miles Bader <miles@gnu.org>
827
08384afd 828 * xfaces.c (struct named_merge_point): New type.
a0a23346
MB
829 (push_named_merge_point): New function.
830 (merge_named_face): New function.
831 (merge_face_ref, face_at_buffer_position, face_at_string_position):
832 Use `merge_named_face'.
833 (merge_face_inheritance): Function removed.
c8d09ad8 834 (merge_face_ref): Rename from `merge_face_vector_with_property'.
a0a23346
MB
835 Add new `err_msgs' and `named_merge_points' args. Return error
836 status. Only print error messages if ERR_MSGS is true. Don't try to
837 do :inherit attribute validation.
838 (merge_face_heights): Handle `unspecified' in both directions.
839 (merge_face_vectors): Rename `cycle_check' arg to `named_merge_points'.
840 Call `merge_face_ref' instead of `merge_face_inheritance'.
841 (Fdisplay_supports_face_attributes_p, Fface_attributes_as_vector)
842 (compute_char_face, face_at_buffer_position)
843 (face_at_string_position): Call `merge_face_ref' instead of
844 `merge_face_vector_with_property'.
845
12d5b185
KH
8462004-06-07 Kenichi Handa <handa@m17n.org>
847
848 * coding.c (find_safe_codings): Check NILP (safe_codings) only at
849 the necessary places.
850
2e2d7ee6
KS
8512004-06-07 Kim F. Storm <storm@cua.dk>
852
853 * process.c (Fdelete_process): Undo 2004-05-28 change.
854 Instead, call status_notify also for network process.
855 (status_message): Use process instead of status as arg.
856 Give messages "deleted" or "connection broken by remote peer" for
857 an exited network process.
858 (status_notify): Change call to status_message.
859 (read_process_output): Increase readmax to 4096. Do not increase
860 buffer size for datagram channels (default is now large enough).
861
fcf0d299
ST
8622004-06-06 Steven Tamm <tamm@Steven-Tamms-Computer.local>
863
864 * macfns.c (x_create_tip_frame): Fix Mac OS X 10.1 compilation
865 problem due to newly defined variable.
866
0722292b
MB
8672004-06-06 Miles Bader <miles@gnu.org>
868
869 * xfaces.c (Fdisplay_supports_face_attributes_p): Give up
870 immediately if non-interactive or not initialized.
871
ddfb8369
RS
8722004-06-05 Richard M. Stallman <rms@gnu.org>
873
874 * minibuf.c (Fcompleting_read): Doc fix.
875
57015754
AS
8762004-06-05 Andreas Schwab <schwab@suse.de>
877
878 * macfns.c (x_create_tip_frame): Fix declaration after statement.
879
23715ea6
JB
8802004-06-05 Juanma Barranquero <lektu@terra.es>
881
882 * keymap.c (Fdescribe_vector): Fix docstring.
883 (Fkey_description, Fglobal_key_binding): Fix typo in docstring.
884
8e330b22
MB
8852004-06-05 Miles Bader <miles@gnu.org>
886
887 * xfaces.c (tty_supports_face_attributes_p): Make sure the specified
888 attributes have different values than the default face.
889
9742a3a6
EZ
8902004-06-04 Eli Zaretskii <eliz@gnu.org>
891
892 * xfaces.c (x_supports_face_attributes_p): Make this function
893 conditional on HAVE_WINDOW_SYSTEM.
c8d09ad8
SM
894 (Fdisplay_supports_face_attributes_p) [HAVE_WINDOW_SYSTEM]:
895 Don't call x_supports_face_attributes_p if it was not compiled in.
9742a3a6 896
9717e36c
MB
8972004-06-04 Miles Bader <miles@gnu.org>
898
899 * xfaces.c (tty_supports_face_attributes_p): New function, mostly
900 from Ftty_supports_face_attributes_p.
901 (x_supports_face_attributes_p): New function.
902 (Ftty_supports_face_attributes_p): Function deleted.
903 (Fdisplay_supports_face_attributes_p): New function.
904 (syms_of_xfaces): Initialize Sdisplay_supports_face_attributes_p.
f9711de4 905 (face_attr_equal_p): New function.
9717e36c
MB
906 (lface_equal_p): Use it.
907
52deb19f
JB
9082004-06-03 Juanma Barranquero <lektu@terra.es>
909
910 * w32fns.c (Fx_display_grayscale_p, Fw32_send_sys_command)
911 (Vw32_color_map): Fix typo in docstring.
912 (Fx_create_frame, Fw32_find_bdf_fonts, Fx_show_tip)
913 (Fw32_unregister_hot_key, Fw32_reconstruct_hot_key):
914 Make argument names match their use in docstring.
915
86d373e6
JB
9162004-06-02 Juanma Barranquero <lektu@terra.es>
917
918 Work around bugs/problems with MinGW builds of graphics libraries
919 called from MSVC builds of Emacs.
920
921 * image.c (lookup_image): Make pointer to img static.
922 (png_read_from_memory): Disable "global" optimization.
923
2fb0ce67
SM
9242004-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
925
c8d09ad8
SM
926 * eval.c (Fcondition_case): Fix usage. Simplify.
927
2fb0ce67
SM
928 * mem-limits.h (EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true.
929
50bf7673
ST
9302004-05-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
931
932 * macfns.c: Don't include ccl.h.
933 [MAC_OSX]: Don't include QuickTime/QuickTime.h.
86d373e6
JB
934 [!MAC_OSX]: Don't include alloca.h, Windows.h, Gestalt.h, or
935 TextUtils.h.
c8d09ad8 936 (Fx_create_frame): Sync with xfns.c. Initialize cursor descriptors.
50bf7673
ST
937 (Fx_display_mm_height, Fx_display_mm_width): Calculate length from
938 display height/width.
939 (compute_tip_xy, Vx_max_tooltip_size): Declare.
940 (unwind_create_tip_frame, compute_tip_xy): New functions.
941 (x_create_tip_frame, Fx_show_tip, Fx_hide_tip): Sync with xfns.c.
942 (syms_of_macfns): Initialize Qcancel_timer, Vx_max_tooltip_size,
943 and last_show_tip_args.
2fb0ce67 944
50bf7673
ST
945 * macgui.h [!MAC_OSX]: Include Gestalt.h.
946 (Cursor, No_Cursor): New defines.
c8d09ad8 947 [!TARGET_API_MAC_CARBON] (SetPortWindowPort): New compatibility macro.
50bf7673
ST
948 [!TARGET_API_MAC_CARBON] (arrow_cursor): Declare.
949
950 * macmenu.c (mac_menu_show, mac_dialog): Use SetPortWindowPort.
951
952 * macterm.c: Don't include Gestalt.h.
953 (enum mouse_tracking_type, mouse_tracking_in_progress): Remove.
954 (XDrawLine, XClearArea, XClearWindow, mac_draw_bitmap)
955 (mac_set_clip_rectangle, mac_reset_clipping, XCreatePixmap)
956 (XFillRectangle, mac_draw_rectangle, mac_draw_string_common)
957 (mac_copy_area, mac_copy_area_with_mask, x_update_end)
958 (construct_mouse_click, XTmouse_position)
959 (x_scroll_bar_report_motion, x_calc_absolute_position)
960 (do_mouse_moved, do_zoom_window, mac_do_receive_drag)
961 (XTread_socket, make_mac_frame): Use SetPortWindowPort.
962 (note_mouse_movement): Clear the mouse face and reset the pointer
963 shape when the pointer goes outside the frame without grabbing.
964 (mac_front_window): New function.
965 (mac_window_to_frame): New macro.
966 (XTmouse_position, x_scroll_bar_report_motion, do_window_update)
967 (do_window_activate, do_window_deactivate, do_app_resume)
968 (do_app_suspend, do_mouse_moved, do_menu_choice, do_grow_window)
969 (do_zoom_window, mac_do_receive_drag, XTread_socket)
970 (mac_check_for_quit_char): Use mac_front_window and/or
971 mac_window_to_frame.
972 (x_scroll_bar_handle_click): Set `(PORTION . WHOLE)' part in a
973 scroll-bar click event.
974 (mac_define_frame_cursor): Change the pointer shape.
c8d09ad8 975 (x_free_frame_resources): Reset tip_window to NULL when it is disposed.
50bf7673 976 [!TARGET_API_MAC_CARBON] (arrow_cursor): New variable.
c8d09ad8 977 [!TARGET_API_MAC_CARBON] (do_init_managers): Initialize arrow_cursor.
50bf7673
ST
978 (do_window_update): Don't do anything if the updated window is the
979 tooltip window.
980 (do_mouse_moved): Handle mouse movement events here (previously in
981 XTread_socket). Clear the mouse face if
982 dpyinfo->mouse_face_hidden is set.
983 (do_os_event, do_events): Remove (now in XTread_socket).
984 (XTread_socket): Immediately return if interrupt_input_blocked.
c8d09ad8
SM
985 Loop until all the events in the queue are processed.
986 Rearrange codes for mouse grabbing. Add tooltip support. Include the
50bf7673
ST
987 contents of do_os_event and do_events. Remove mouse movement
988 handling (now in do_mouse_moved). Add the case where
989 Vmouse_highlight has an integer value.
990 (NewMacWindow): Remove.
991 (make_mac_frame): Do what NewMacWindow previously did. Don't do
992 excess initializations.
993 (make_mac_terminal_frame): Previous initializations in
994 make_mac_frame are moved here.
c8d09ad8
SM
995 (mac_initialize_display_info):
996 Initialize dpyinfo->mouse_face_overlay and dpyinfo->mouse_face_hidden.
50bf7673
ST
997
998 * xdisp.c [MAC_OS] (No_Cursor): Remove variable.
999 (define_frame_cursor1): Don't treat HAVE_CARBON as a special case.
1000
08fd1251
RS
10012004-05-29 Richard M. Stallman <rms@gnu.org>
1002
1003 * lisp.h (truncate_undo_list): Update decl.
1004
1005 * alloc.c (undo_outer_limit): New variable.
1006 (syms_of_alloc): Defvar it.
1007 (Fgarbage_collect): Pass undo_outer_limit to truncate_undo_list.
1008
1009 * undo.c (truncate_undo_list): New arg LIMITSIZE.
1010
1011 * alloc.c (lisp_align_malloc): Check for base == 0
1012 regardless of HAVE_POSIX_MEMALIGN.
1013 Clean up HAVE_POSIX_MEMALIGN handling of `err'.
1014
227ef0ff
SM
10152004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
1016
1017 * alloc.c: Undo Kim's recent changes and fix the same bug differently.
1018 (marker_blocks_pending_free): Remove.
1019 (Fgarbage_collect): Sweep after cleaning up undo-lists.
1020 Mark the undo lists after claning them up.
1021 Don't free block in marker_blocks_pending_free.
1022 (mark_buffer): Don't mark undo_list.
1023 (gc_sweep): Sweep hash-tables and strings first.
1024 Do free marker blocks that are empty.
1025
034a6113
SM
10262004-05-28 Jim Blandy <jimb@redhat.com>
1027
1028 * regex.c (print_partial_compiled_pattern): Add missing 'break'
1029 after 'case wordend'. For symbeg and symend, print to stderr,
1030 like the other cases.
1031
33594a8d
NF
10322004-05-28 Noah Friedman <friedman@splode.com>
1033
1034 * process.c (Fdelete_process): Do not call remove_process.
1035
ce50a847
SM
10362004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
1037
1038 * alloc.c (struct backtrace): Remove.
1039 (Fgarbage_collect): Use the new mark_backtrace.
1040
1041 * eval.c (mark_backtrace): New function.
1042
1043 * minibuf.c (run_exit_minibuf_hook): New function.
1044 (read_minibuf_unwind): Don't run exit-minibuffer-hook any more.
1045 (read_minibuf): Use separate unwind handler to run exit-minibuf-hook.
1046
1e8dae36
KS
10472004-05-27 Kim F. Storm <storm@cua.dk>
1048
1049 * xdisp.c (back_to_previous_visible_line_start): Skip backwards
1050 over display properties, e.g. images, that replace buffer text.
1051
846faa3b
KS
10522004-05-25 Kim F. Storm <storm@cua.dk>
1053
1054 * alloc.c (marker_blocks_pending_free): New var.
1055 (gc_sweep): Store free marker blocks on that list.
1056 (Fgarbage_collect): Free them after undo-list cleanup.
1057
1058 * process.c (wait_reading_process_input): Check connect_wait_mask
1059 before actually accepting connection in case it has already been
1060 accepted due to recursion.
1061
6239a668
KH
10622004-05-23 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu> (tiny change)
1063
ce50a847
SM
1064 * coding.c (Fset_safe_terminal_coding_system_internal):
1065 Set suppress_error in safe_terminal_coding, not terminal_coding.
6239a668 1066
71d5a208
RS
10672004-05-22 Richard M. Stallman <rms@gnu.org>
1068
1069 * alloc.c (Fmake_string): Doc fix.
1070
1071 * buffer.c (clone_per_buffer_values): Copy the alist of local vars,
1072 and the alist pairs too.
1073
1074 * casefiddle.c (casify_object): Return OBJ unchanged if not real char.
1075
1076 * emacs.c (main): Update copyright year.
1077
1078 * fileio.c (Fread_file_name): Expand DIR if not absolute.
1079
1080 * insdel.c (del_range_2, replace_range): Don't write an anchor
1081 if the gap is empty.
1082
1083 * xdisp.c (try_scrolling): If scroll-up-aggressively or
1084 scroll-down-aggressively is small but positive, put point
1085 near the screen edge.
1086
f63fd14e
JB
10872004-05-22 Juanma Barranquero <lektu@terra.es>
1088
1089 * keymap.c (Fdefine_key): Doc fix.
1090
4d12067c
KS
10912004-05-22 Kim F. Storm <storm@cua.dk>
1092
1093 * alloc.c (struct backtrace): Add debug_on_exit member.
1094 (Fgarbage_collect): Clear out buffer undo_list markers after gc_sweep.
1095 Identify those markers as Lisp_Misc_Free objects. Clear car and cdr of
1096 the removed cons cells.
1097 (mark_object): Undo previous change - disallow Lisp_Misc_Free objects.
1098 (gc_sweep): Clear cons_blocks before sweeping strings, so we don't have
1099 any cons cells pointing to unallocated stings.
1100 Do not lisp_free any marker blocks, as there may still be pointers
1101 to them from buffer undo lists at this stage of GC.
1102
1103 * keyboard.c (struct backtrace): Add debug_on_exit member.
1104 (Fcommand_execute): Clear it.
1105
931285e2
LT
11062004-05-20 Luc Teirlinck <teirllm@auburn.edu>
1107
1108 * intervals.c (lookup_char_property): Do not prematurely return nil.
1109
669fa600
SM
11102004-05-19 Jim Blandy <jimb@redhat.com>
1111
1112 Add support for new '\_<' and '\_>' regexp operators, matching the
f63fd14e 1113 beginning and end of symbols.
4d12067c 1114
669fa600
SM
1115 * regex.c (enum syntaxcode): Add Ssymbol.
1116 (init_syntax_once): Set the syntax for '_' to Ssymbol, not Sword.
1117 (re_opcode_t): New opcodes `symbeg' and `symend'.
1118 (print_partial_compiled_pattern): Print the new opcodes properly.
1119 (regex_compile): Parse the new operators.
ce50a847 1120 (analyse_first): Skip sym(beg|end) (they match only the empty string).
669fa600
SM
1121 (mutually_exclusive_p): `symend' is mutually exclusive with \s_ and
1122 \sw; `symbeg' is mutually exclusive with \S_ and \Sw.
1123 (re_match_2_internal): Match symbeg and symend.
1124
1125 * search.c (trivial_regexp_p): \_ is no longer a trivial regexp.
1126
0d8c2e5c
KS
11272004-05-19 Kim F. Storm <storm@cua.dk>
1128
1129 * .gdbinit (xsymbol): Fix last change.
1130
669fa600
SM
11312004-05-18 Stefan Monnier <monnier@iro.umontreal.ca>
1132
1133 * .gdbinit (xprintstr): New fun.
1134 (xstring, xprintsym): Use it.
1135
1136 * w32proc.c (create_child): Use INTMASK.
1137
1138 * alloc.c (Fgarbage_collect): Do all the marking before flushing
1139 unmarked elements of the undo list.
1140
9a6a4c40
DP
11412004-05-18 David Ponce <david@dponce.com>
1142
1143 * print.c (print): Reset print_depth before to call print_object.
1144
f3c4ec74
JR
11452004-05-18 Jason Rumney <jasonr@gnu.org>
1146
1147 * w32console.c: Prefix RIF functions with w32con_ to avoid
1148 namespace clash with functions in term.c and w32term.c.
1149
1150 * w32menu.c (add_menu_item, w32_menu_display_help)
1151 [USE_LISP_UNION_TYPE]: Cast from Lisp_Object using i member.
1152
0d8c2e5c 1153 * w32term.h (display_x_get_resource, vga_stdcolor_name): Add prototype.
f3c4ec74 1154
6be49c3a
EZ
11552004-05-18 Eli Zaretskii <eliz@gnu.org>
1156
4d0b9a0a
EZ
1157 * lisp.h (DECL_ALIGN): Remove restriction on MS-DOS systems.
1158
6be49c3a
EZ
1159 * msdos.c (syms_of_msdos): Initialize dos-unsupported-char-glyph
1160 with make_number.
1161 (IT_write_glyphs): Extract glyph from dos-unsupported-char-glyph
1162 with XINT.
1163
0bc90bba
KS
11642004-05-18 Kim F. Storm <storm@cua.dk>
1165
89d19988
KS
1166 * blockinput.h (INPUT_BLOCKED_P): New macros.
1167
1168 * keyboard.c (Frecursive_edit): Return immediately if input blocked.
1169 (Ftop_level): Unblock input if blocked.
1170
0bc90bba
KS
1171 * buffer.h (GET_OVERLAYS_AT): New macro.
1172 * msdos.c (IT_note_mouse_highlight): Use it.
1173 * textprop.c (get_char_property_and_overlay): Use it.
1174 * xdisp.c (next_overlay_change, note_mouse_highlight): Use it.
1175 * xfaces.c (face_at_buffer_position): Use it.
1176
1177 * print.c (print_object): Increase buf size.
1178
653bd0f6
JR
11792004-05-17 Jason Rumney <jasonr@gnu.org>
1180
1181 * w32fns.c (Fw32_register_hot_key, Fw32_unregister_hot_key)
1182 (Fw32_toggle_lock_key) [USE_LISP_UNION_TYPE]: Cast from
1183 Lisp_Object using i member.
1184 (w32_quit_key): Rename from Vw32_quit_key, and make an int.
1185 (syms_of_w32fns, globals_of_w32fns): Use Lisp_Object and int
1186 consistently.
1187
1188 * w32proc.c (create_child): Use make_number instead of masking pid.
1189
1190 * w32fns.c (w32_color_map_lookup): Return a Lisp_Object.
1191 (x_to_w32_charset, w32_to_x_charset, w32_to_all_x_charsets):
1192 Use EQ to compare Lisp_Objects.
1193 (w32_parse_hot_key): Use int for lisp_modifiers consistently.
1194
1195 * w32term.c (w32_num_mouse_buttons): Rename from
1196 Vw32_num_mouse_buttons and make it an int.
1197
1198 * w32.c (init_environment): Use it.
1199
1200 * w32fns.c (w32_wnd_proc): Likewise.
1201
1202 * w32proc.c (w32_pipe_read_delay): Rename from
1203 Vw32_pipe_read_delay and make it an int.
1204
1205 * w32.c (_sys_read_ahead): Use it.
1206
1207 * lisp.h (egetenv) [USE_CRT_DLL]: Remove condition.
1208
1209 * w32proc.c (create_child) [USE_LSB_TAG]: Don't try to mask pid.
1210
1211 * w32inevt.c (w32_console_mouse_position, do_mouse_event)
1212 (key_event): Don't mix Lisp_Object and int.
1213
1214 * w32heap.c (init_heap) [USE_LSB_TAG]: Don't check heap location.
1215
1216 * keyboard.c (kbd_buffer_get_event): Don't use event->code and
1217 modifiers in language change event.
1218
54b53ba7
KS
12192004-05-17 Kim F. Storm <storm@cua.dk>
1220
1221 * alloc.c (mark_object): Ignore Lisp_Misc_Free objects.
1222 Such objects may be freed markers which still exist on an undo list.
1223
6e86a75d
JB
12242004-05-16 Juanma Barranquero <lektu@terra.es>
1225
1226 * data.c (Fset_default): Make argument names match their use in
1227 docstring.
1228
fc80da24
AS
12292004-05-15 Andreas Schwab <schwab@suse.de>
1230
1231 * emacs.c (gdb_array_mark_flag): Define.
1232 * .gdbinit: Mask off gdb_array_mark_flag from vector sizes.
1233
c1380aa6
EZ
12342004-05-15 Eli Zaretskii <eliz@gnu.org>
1235
1236 * lisp.h (DECL_ALIGN) [MSDOS]: Don't define DECL_ALIGN to use
1237 __attribute__((__aligned__)), so that USE_LSB_TAG would not become
1238 defined for the MS-DOS build.
1239
89458937
SM
12402004-05-14 Stefan Monnier <monnier@iro.umontreal.ca>
1241
1242 * w32fns.c (Fw32_define_rgb_color): Avoid XSET.
1243
08020f9a
KH
12442004-05-14 Kenichi Handa <handa@m17n.org>
1245
1246 * ccl.c (Fccl_execute_on_string): Fix setting elements of STATUS.
1247
a433994a
ST
12482004-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1249
1250 * lisp.h (Vx_resource_name, Vx_resource_class): Move from xfns.c
1251 section to frame.c section.
1252 (Fxw_display_color_p, Fx_file_dialog): Declare if
89458937 1253 HAVE_WINDOW_SYSTEM defined.
0d8c2e5c 1254
a433994a 1255 * macfns.c (Fx_create_frame): Fix int/Lisp_Object mixup.
0d8c2e5c 1256
a433994a 1257 * macmenu.c (set_frame_menubar): Use NILP to test a lisp value.
0d8c2e5c 1258
a433994a
ST
1259 * macterm.c (mac_get_emulated_btn, mac_event_to_emacs_modifiers)
1260 (mac_get_mouse_btn): Use NILP and EQ to test/compare lisp values.
1261 (XTread_socket): Fix int/Lisp_Object mixup.
1262 (mac_check_for_quit_char): Fix pointer/Lisp_Object mixup.
0d8c2e5c 1263
a433994a
ST
1264 * macterm.h (struct frame, struct face, struct image)
1265 (display_x_get_resource, Fx_display_color_p)
89458937
SM
1266 (Fx_display_grayscale_p, Fx_display_planes, x_free_gcs):
1267 Add prototypes.
a433994a 1268
b51a51b9
KS
12692004-05-14 Kim F. Storm <storm@cua.dk>
1270
1271 * process.c (wait_reading_process_input): Make reentrant.
1272 Make Available and Connecting non-static. Save and restore value
1273 of waiting_for_user_input_p.
1274
2bde1dd8
KS
12752004-05-13 Kim F. Storm <storm@cua.dk>
1276
1277 * keyboard.c (mark_kboards): Don't mark x and y members
1278 that are overloaded in selection request events.
1279
a267ab4d
SM
12802004-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
1281
1282 * lisp.h (USE_LSB_TAG): Make it the default when it is known to work.
1283
eb15ce9e
GM
12842004-05-13 Glenn Morris <gmorris@ast.cam.ac.uk>
1285
1286 * window.c (Fdisplay_buffer, Fsplit_window)
1287 (split-height-threshold): Doc fix.
1288
7fc92635
JB
12892004-05-13 Juanma Barranquero <lektu@terra.es>
1290
1291 * xfaces.c (Ftty_supports_face_attributes_p)
1292 (Finternal_copy_lisp_face): Fix typo in docstring.
1293 (Finternal_get_lisp_face_attribute): Fix docstring.
1294
1ec2a572
JD
12952004-05-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1296
1297 * xfns.c (syms_of_xfns): Provide x-toolkit also for GTK.
1298
ae9292e0
ST
12992004-05-11 Steven Tamm <steventamm@mac.com>
1300
1301 * macfns.c (Fx_create_frame): Default to using tool-bar by
1302 setting tool-bar-lines to 1 in default-frame-alist.
1303
13042004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
ea1aaa6f
ST
1305
1306 * image.c (xpm_scan, xpm_make_color_table_v, xpm_put_color_table_v)
1307 (xpm_get_color_table_v, xpm_make_color_table_h)
1308 (xpm_put_color_table_h, xpm_get_color_table_h)
1309 (xpm_str_to_color_key, xpm_load_image, xpm_load)
1310 (syms_of_image): Support XPM on Carbon Emacs. Does not
a267ab4d 1311 depend on libXpm, but only supports XPM version 3 without extensions.
ea1aaa6f 1312
fe97e8df
ST
13132004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1314
a267ab4d 1315 * macterm.c (x_flush, XTframe_up_to_date): Use FRAME_MAC_P
fe97e8df
ST
1316 instead of FRAME_X_P
1317
b47e779e
KS
13182004-05-11 Kim F. Storm <storm@cua.dk>
1319
1320 * process.c (read_process_output): Grow decoding_buf when needed;
1321 this could cause a crash in allocate_string and compact_small_strings.
1322
cdc9b845
EZ
13232004-04-29 Jim Blandy <jimb@redhat.com>
1324
1325 * regex.c (mutually_exclusive_p): In 'case wordbeg', compare op2
1326 against proper opcode.
1327
aa7094ba
JB
13282004-05-10 Juanma Barranquero <lektu@terra.es>
1329
1330 * process.c (Fstart_process): Fix docstring.
1331
1332 * charset.c (Fget_unused_iso_final_char): Fix typos in docstring.
1333 (Fchar_bytes, Fchar_width, Fstring_width, Fchar_direction)
1334 (Fsplit_char, Fchar_charset): Make argument names match their use
1335 in docstring.
1336
e109331a
RS
13372004-05-10 Richard M. Stallman <rms@gnu.org>
1338
1339 * print.c (print_preprocess): Use being_printed, loop_count and
1340 halftail to detect overdeep nesting and cyclic cdr chains.
1341
9a28b921
AS
13422004-05-10 Andreas Schwab <schwab@suse.de>
1343
1344 * lisp.h: Declare Fmake_symbolic_link.
1345
1346 * fileio.c (Frename_file): Remove extra argument in call to
1347 Fmake_symbolic_link.
1348
e2c02c1a
KS
13492004-05-10 Kim F. Storm <storm@cua.dk>
1350
1351 * xdisp.c (calc_line_height_property): Use string position when
1352 object is a string.
1353
cfe9d13e
KH
13542004-05-10 Kenichi Handa <handa@m17n.org>
1355
a57e8159
KH
1356 * print.c (temp_output_buffer_setup): Bind inhibit-read-only and
1357 inhibit-modification-hooks to t temporarily before calling
1358 Ferase_buffer.
1359
1360 * xfns.c (x_create_tip_frame): Bind inhibit-read-only and
1361 inhibit-modification-hooks to t temporarily before calling
1362 Ferase_buffer.
1363
1364 * w32fns.c (x_create_tip_frame): Bind inhibit-read-only and
1365 inhibit-modification-hooks to t temporarily before calling
1366 Ferase_buffer.
1367
cfe9d13e
KH
1368 * fns.c (count_combining): Delete it.
1369 (concat): Don't check combining bytes.
1370
ceb96489
JR
13712004-05-09 Jason Rumney <jasonr@gnu.org>
1372
1373 * w32fns.c (Vw32_ansi_code_page): New Lisp variable.
1374 (globals_of_w32fns): Set it.
1375
b1c661c7
JB
13762004-05-09 Piet van Oostrum <piet@cs.uu.nl> (tiny change)
1377
1378 * data.c (Fquo): Simplify.
1379
28712a21
JB
13802004-05-08 Peter Whaite <emacs@whaite.ca> (tiny change)
1381
1382 * data.c (Fquo): If any argument is float, do the computation in
1383 floating point.
1384
0f0af7a8
JB
13852004-05-08 Juanma Barranquero <lektu@terra.es>
1386
88214ef6
JB
1387 * process.c (Fwaiting_for_user_input_p, Fmake_network_process)
1388 (Fset_process_query_on_exit_flag, Vprocess_adaptive_read_buffering):
1389 Fix spelling of Emacs on docstring.
1390 (Fset_process_coding_system, Fprocess_coding_system)
1391 (Fset_process_filter_multibyte, Fprocess_filter_multibyte_p):
1392 Make argument names match their use in docstring.
1393 (Fprocess_id, Fprocess_query_on_exit_flag, Finterrupt_process):
1394 Fix docstring.
1395
0f0af7a8
JB
1396 * editfns.c (Finsert_buffer_substring): Make argument names match their
1397 use in docstring.
1398
1399 * syntax.c (Fmodify_syntax_entry): Fix docstring.
1400
2a316a84
ST
14012004-05-07 Steven Tamm <steventamm@mac.com>
1402
1403 * macterm.c (mac_check_for_quit_char): Adding BLOCK_INPUT
1404 around call to ReceiveEvent to avoid certain crashes.
1405
14062004-05-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
0d8c2e5c 1407
2a316a84
ST
1408 * macterm.c (mac_draw_line_to_pixmap, XCreatePixmapFromBitmapData)
1409 (mac_fill_rectangle_to_pixmap, mac_draw_rectangle_to_pixmap)
1410 (mac_copy_area_to_pixmap, mac_copy_area_with_mask_to_pixmap):
1411 Save/restore the current graphics port and device handle when
1412 drawing into an offscreen graphics world.
1413
1414 * image.c [MAC_OS] (XPutPixel, XGetPixel, image_load_qt_1)
1415 (gif_load): Likewise.
1416
ab80314b
JB
14172004-05-07 Juanma Barranquero <lektu@terra.es>
1418
1419 * window.c (Fset_window_buffer): Fix docstring.
1420
70646bb5
TTN
14212004-05-06 Thien-Thi Nguyen <ttn@gnu.org>
1422
1423 * emacs.c (main) [VMS]: Fix var ref.
1424
b03a4fdd
JB
14252004-05-06 Romain Francoise <romain@orebokech.com> (tiny change)
1426
1427 * data.c (Fsetq_default): Fix docstring.
1428
279d3293
JR
14292004-05-06 Jason Rumney <jasonr@gnu.org>
1430
1431 * image.c (Display) [HAVE_NTGUI]: Redefine while loading xpm.h
1432 to avoid name clash.
1433
f72b5416
JD
14342004-05-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1435
1436 * fileio.c (barf_or_query_if_file_exists): Use lstat.
1437 (Frename_file): Handle renaming of symlinks across file systems.
440c7d00 1438 (Frename_file): Put symlink handling inside #ifdef S_IFLNK.
f72b5416 1439
6ab66799
KS
14402004-05-04 Kim F. Storm <storm@cua.dk>
1441
1442 * xdisp.c (Qtotal): New var.
1443 (syms_of_xdisp): Intern and staticpro it.
1444 (calc_line_height_property): New arg total. Set it if
1445 line-spacing property has format (total . VALUE).
1446 (x_produce_glyphs): Ignore line-spacing if line-height is 0.
1447 Handle total line-spacing property.
1448
ab2d724b
JD
14492004-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1450
1451 * gtkutil.c (xg_update_scrollbar_pos): Call XClearWindow to clear
1452 "under" scroll bar when size/position changes.
1453
238add5e
JR
14542004-05-03 Jason Rumney <jasonr@gnu.org>
1455
1456 * makefile.nt: Remove.
1457
1644f4e4
EZ
14582004-05-02 Eli Zaretskii <eliz@gnu.org>
1459
a267ab4d
SM
1460 * syntax.h (SET_RAW_SYNTAX_ENTRY, SYNTAX_ENTRY_INT):
1461 Avoid compiler warnings.
05fdbeb8 1462
1644f4e4
EZ
1463 * Makefile.in (region-cache.o): Depend on config.h.
1464
6cbc951e
SM
14652004-05-02 Romain Francoise <romain@orebokech.com> (tiny change)
1466
1467 * indent.c (compute_motion): Save vpos in prev_vpos when dealing
1468 with continuation lines, too.
1469
2b98b088
TTN
14702004-05-02 Thien-Thi Nguyen <ttn@gnu.org>
1471
1472 * syssignal.h (init_signals): Move decl outside `#ifdef POSIX_SIGNALS'.
1473
d9bf7950
SM
14742004-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
1475
1476 * xdisp.c (calc_line_height_property): YAILOM (yet another
1477 int/Lisp_Object mixup).
1478
affa509c
EZ
14792004-05-01 Eli Zaretskii <eliz@gnu.org>
1480
1481 * msdos.c (top-level): Add "#pragma pack(0)" after <dir.h>, to
1482 undo bad effect of pack(4) in some versions of system headers.
1483
07c07cfe
JR
14842004-05-01 Jason Rumney <jasonr@gnu.org>
1485
1486 * w32term.c (x_draw_hollow_cursor): Sync with xterm.c
1487
e71caa4e
KS
14882004-04-30 Kim F. Storm <storm@cua.dk>
1489
1490 * buffer.c (syms_of_buffer) <line-spacing>: Allow float value.
b2b55d03 1491 (syms_of_buffer) <cursor-type>: Doc fix.
e71caa4e
KS
1492
1493 * dispextern.h (struct it): Remove member use_default_face.
1494 Add members override_ascent, override_descent, override_boff.
1495
1496 * xdisp.c (init_iterator): Handle line-spacing float value.
1497 Initialize override_ascent member.
1498 (append_space_for_newline): Reset override_ascent.
1499 Remove use_default_face.
1500 (calc_line_height_property): New function to calculate value of
1501 line-height and line-spacing properties. Look at overlays, too.
1502 Set override_ascent, override_descent, override_boff members when
1503 using another face than the current face. Float values are now
1504 relative to the frame default font, by default; accept a cons
1505 of ratio and face name to specify value relative to a specific face.
1506 (x_produce_glyphs): Use calc_line_height_property.
1507 Use override_ascent etc. when set to handle different face heights.
1508 A negative line-spacing property value is interpreted as a total
1509 line height, rather than inter-line spacing.
1510 (note_mouse_highlight): Allocate room for 40 overlays initially.
1511
0fddae66
SM
15122004-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
1513
1514 * data.c (Fsubr_name): New fun.
1515 (syms_of_data): Defsubr it.
1516
712d23dc
KS
15172004-04-29 Kim F. Storm <storm@cua.dk>
1518
1519 * xdisp.c (null_glyph_slice): New var.
1520 (append_glyph, append_composite_glyph, append_stretch_glyph):
1521 Use it to initialize glyph slice.
1522
033ad8c6
SM
15232004-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
1524
1525 * xdisp.c (x_produce_glyphs): Fix the proverbial int/Lisp_Object mixup.
1526 (on_hot_spot_p): Make sure we always return a value.
1527 (Flookup_image_map): Remove unused var ix and iy.
1528 (note_mode_line_or_margin_highlight): Remove unused var `image'.
1529
93397360
EZ
15302004-04-27 Eli Zaretskii <eliz@gnu.org>
1531
1532 * msdos.c (init_environment): If one of the TMP... environment
1533 variables is set to a drive letter without a trailing slash,
1534 append a slash.
1535
0c54865e
EZ
15362004-04-27 Matthew Mundell <matt@mundell.ukfsn.org>
1537
1538 * editfns.c (lisp_time_argument): Provide externally.
1539
1540 * fileio.c (Fset_file_times): New function.
1541 (syms_of_fileio): Intern and staticpro it.
1542
d3b111bd
KS
15432004-04-27 Kim F. Storm <storm@cua.dk>
1544
07dc1231
KS
1545 * xdisp.c (x_produce_glyphs): Fix last change; handle newline in
1546 header line strings.
1547
360fe9d2
KS
1548 * dispextern.h (struct it): New member use_default_face.
1549
d3b111bd
KS
1550 * xdisp.c (Qline_height): New variable.
1551 (syms_of_xdisp): Intern and staticpro it.
1552 (append_space_for_newline): Partially undo 2004-04-25 change;
1553 add default_face_p arg, and restore callers.
1554 Clear it->use_default_face after use.
1555 (x_produce_glyphs): Set default font for ascii char if
1556 it->use_default_font is set. Change line-spacing property to set
1557 just extra line spacing. Handle new line-height property.
1558
0448588b
AS
15592004-04-26 Andreas Schwab <schwab@suse.de>
1560
1561 * print.c (print_object): Print non-ascii characters in bool
1562 vector representation as octal escapes.
1563
1564 * lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define.
1565 * print.c (print_object): Use it instead of BITS_PER_CHAR for
1566 bool vectors.
1567 * lread.c (read1): Likewise.
1568 * alloc.c (Fmake_bool_vector): Likewise.
1569 * data.c (Faref, Faset): Likewise.
1570 * fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray)
1571 (mapcar1): Likewise.
d3b111bd 1572
536d6baa
ST
15732004-04-26 Steven Tamm <tamm@Steven-Tamms-Computer.local>
1574
1575 * lread.c (init_lread): Fixing typo HAVE_CARBON test logic
1576
ae11577a
MB
15772004-04-26 Miles Bader <miles@gnu.org>
1578
1579 * lisp.h (CYCLE_CHECK): Macro moved from xfaces.c.
1580
e198ba87
JB
15812004-04-26 Juanma Barranquero <lektu@terra.es>
1582
1583 * buffer.c (Fpop_to_buffer): Fix docstring.
1584
f3d5f92d 15852004-04-26 Steven Tamm <steventamm@mac.com>
e198ba87 1586
f3d5f92d
ST
1587 * lread.c (init_lread): Don't display missing lisp directory
1588 warnings with Carbon Emacs because self-contained bundled Emacs
e198ba87 1589 may be built without correct installation path.
f3d5f92d 1590
03e35edc
KS
15912004-04-25 Kim F. Storm <storm@cua.dk>
1592
9ff3aa31
KS
1593 * macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
1594
1595 * xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
1596
03e35edc
KS
1597 * xdisp.c (append_space_for_newline): Rename from append_space.
1598 Remove DEFAULT_FACE_P arg; always use current face. Callers changed.
1599 (x_produce_glyphs): Handle line-spacing property on newline char.
1600 If value is t, adjust ascent and descent to fit current row height.
1601 If value is an integer or float, set extra_line_spacing to integer
1602 value, or to float value x current line height.
1603
f24814e0
KH
16042004-04-23 Kenichi Handa <handa@m17n.org>
1605
1606 * fontset.c (Finternal_char_font): If POSITION is nil, return
1607 font for displaying CH with the default face.
1608
d814862a
JB
16092004-04-23 Juanma Barranquero <lektu@terra.es>
1610
1611 * makefile.w32-in: Add "-*- makefile -*-" mode tag.
1612
063a45c5
SM
16132004-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
1614
1615 * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]:
1616 Don't make assumptions about the relative place of i and val.
1617 (EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well.
1618
ae7ab2d3
KS
16192004-04-21 Kim F. Storm <storm@cua.dk>
1620
1621 * dispextern.h (struct glyph_slice): New struct.
1622 (struct glyph): New member slice.
1623 (GLYPH_SLICE_EQUAL_P): New macro.
1624 (GLYPH_EQUAL_P): Use it.
1625 (struct glyph_string): New member slice.
1626 (struct it_slice): New struct.
1627 (struct it): New member slice, add member to stack too.
1628 New member constrain_row_ascent_descent_p.
1629 (image_ascent): Add prototype.
1630
1631 * dispnew.c (buffer_posn_from_coords): Return full image width
1632 and height even for image slices (posn is relative to full image).
1633 (marginal_area_string): Adjust x0,y0 for image slice.
1634
1635 * image.c (image_ascent): Add slice arg; calculate ascent for
1636 image slice (or full image).
1637
1638 * keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns.
1639 (syms_of_keyboard): Defsubr them.
1640
1641 * lisp.h (pos_visible_p): Fix prototype.
1642
c62aec78 1643 * macterm.c (x_draw_relief_rect): Add top_p and bot_p args.
ae7ab2d3
KS
1644 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
1645 (x_draw_image_foreground, x_draw_image_relief)
1646 (x_draw_image_foreground_1, x_draw_image_glyph_string):
1647 Draw sliced images.
1648
1649 * w32term.c (w32_draw_relief_rect): Add top_p and bot_p args.
1650 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
1651 (x_draw_image_foreground, x_draw_image_relief)
1652 (w32_draw_image_foreground_1, x_draw_image_glyph_string):
1653 Draw sliced images.
1654
1655 * w32term.h (image_ascent): Remove prototype.
1656
1657 * window.c (Fpos_visible_in_window_p): Return pixel position if
1658 PARTIALLY arg is non-nil. Simplify. Doc fix.
1659 (Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg
1660 to return/set vscroll in pixels.
1661
1662 * window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
1663
1664 * xdisp.c (Qslice): New variable.
1665 (syms_of_xdisp): Intern and staticpro it.
1666 (pos_visible_p): Return pixel position in new x and y args.
1667 (init_iterator): Reset it->slice info.
1668 (handle_display_prop): Parse (slice ...) property.
1669 (push_it, pop_it): Save/restore slice info.
1670 (make_cursor_line_fully_visible): Fix 2004-04-14 change. Do not
1671 force repositioning of tall row if window is vscrolled, as that
1672 would reset vscroll.
1673 (append_space): Set it->constrain_row_ascent_descent_p to avoid
1674 increasing row height if row is non-empty.
1675 (fill_image_glyph_string): Copy slice info.
1676 (take_vertical_position_into_account): Simplify.
1677 (produce_image_glyph): Handle iterator slice info, setup glyph
1678 slice info. Do not force minimum line height.
1679 (x_produce_glyphs): If it->constrain_row_ascent_descent_p is set,
1680 do not increase height (ascent/descent) of non-empty row when
1681 adding normal character glyph; instead reduce glyph ascent/descent
1682 appropriately; if row is higher than current glyph, adjust glyph
1683 descent/ascent to reposition glyph within the existing row.
1684 Likewise, when char is newline, only set ascent/descent if row is
1685 currently empty.
1686 (note_mouse_highlight): Handle hotspots with sliced image.
1687
1688 * xterm.c (x_draw_relief_rect): Add top_p and bot_p args.
1689 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
1690 (x_draw_image_foreground, x_draw_image_relief)
1691 (x_draw_image_foreground_1, x_draw_image_glyph_string):
1692 Draw sliced images.
1693
1694 * xterm.h (image_ascent): Remove prototype.
1695
d58f8753
SM
16962004-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
1697
1698 * keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup.
1699
4ce2719d
JPW
17002004-04-20 John Paul Wallington <jpw@gnu.org>
1701
1702 * fns.c (Fassoc, Feql): Fix indentation.
1703
d58f8753 1704 * fontset.c (regularize_fontname): Rename from regulalize_fontname.
4ce2719d 1705
95f8c3b9
JPW
17062004-04-19 John Paul Wallington <jpw@gnu.org>
1707
1708 * fns.c (Feql): New function.
d58f8753 1709 (syms_of_fns): Defsubr it.
95f8c3b9 1710
b7e85537
JR
17112004-04-18 Jason Rumney <jasonr@gnu.org>
1712
1713 * w32select.c (Fw32_set_clipboard_data): Get sequence number
1714 after closing the clipboard.
1715
5a72efd4
LT
17162004-04-16 Luc Teirlinck <teirllm@auburn.edu>
1717
1718 * buffer.c (Fbuffer_base_buffer): Doc fix.
1719
20dc8583
KS
17202004-04-17 Kim F. Storm <storm@cua.dk>
1721
60962ec4
KS
1722 * keymap.c (Fkey_description): Add optional PREFIX arg.
1723 Combine prefix with KEYS to make up the full key sequence to describe.
1724 Correlate meta_prefix_char and following (simple) key to describe
1725 as meta modifier. All callers changed.
1726 (describe_map): Rename arg `keys' to `prefix'. Remove local
1727 `elt_prefix' var. Use Fkey_description with prefix instead of
1728 elt_prefix combined with Fsingle_key_description.
1729 (describe_vector): Declare static. Replace arg `elt_prefix' with
1730 `prefix'. Add KEYMAP_P arg. Add local var `elt_prefix'; use it
1731 if !KEYMAP_P. Use Fkey_description with prefix instead of
1732 Fsingle_key_description.
1733
1734 * keymap.h (Fkey_description): Fix prototype.
1735 (describe_vector): Remove prototype.
1736
409368b9
KS
1737 * xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0.
1738
20dc8583
KS
1739 * image.c (PNG_BG_COLOR_SHIFT): Remove.
1740 (png_load): Fix calculation of transparent background color on X
1741 and W32 platforms.
1742
75c5501b
JB
17432004-04-16 Juanma Barranquero <lektu@terra.es>
1744
1745 * xdisp.c (try_scrolling): Make sure `scroll-conservatively' is
1746 not too large before computing how much to scroll.
1747
da879ae8
SM
17482004-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
1749
1750 * dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler.
1751
d01ca4a8
LT
17522004-04-14 Luc Teirlinck <teirllm@auburn.edu>
1753
1754 * fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime):
1755 Add hyperlink to Elisp manual to the docstring.
1756
572943b3
SM
17572004-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
1758
1759 * callint.c (fix_command): Use XDCR.
1760
5e30a0fb
NR
17612004-04-14 Nick Roberts <nick@nick.uklinux.net>
1762
1763 * window.c (Fget_lru_window): Doc fix.
1764
a27ddfaf
KS
17652004-04-14 Kim F. Storm <storm@cua.dk>
1766
1767 * editfns.c (Fformat): Fix allocation size of precision array.
1768
1769 * dispnew.c (update_window): Only set changed_p if
1770 scrolling_window actually did scroll.
1771 (scrolling_window): Only return 1 if we actually did scroll.
1772
1773 * xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor
1774 height to glyph height when cursor row is not fully visible.
1775 (make_cursor_line_fully_visible): Add FORCE_P arg to return
1776 failure in case row is higher than window. Callers changed.
1777 (try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd).
1778 Try to scroll partially visible, higher-than-window cursor row.
1779 (redisplay_window): Always try to scroll partially visible,
1780 higher-than-window cursor row - both initially and again with
1781 centering_position = 0.
1782 Clear desired matrix before retrying with centering_position = 0.
1783
da879ae8
SM
17842004-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
1785
1786 * syntax.c (scan_lists): Simplify backward string scan.
1787 Fix off-by-one boundary check for string and comment fences.
1788
5fc16e8e
SM
17892004-04-13 Joe Buehler <jbuehler@hekimian.com>
1790
1791 * sheap.c, unexcw.c: New files.
1792
c9aac8e6
LT
17932004-04-12 Luc Teirlinck <teirllm@auburn.edu>
1794
1795 * buffer.c (Fmake_indirect_buffer): Throw an error if the intended
1796 base buffer has been killed. Correct the error message if the
1797 base buffer does not exist.
1798
1e88a355
SM
17992004-04-12 Joe Buehler <jbuehler@hekimian.com>
1800
1801 * s/cygwin.h: Changes for Cygwin unexec() support, changes in
1802 Cygwin itself. Add support for Xaw3d scrollbars.
1803
1804 * puresize.h: Set up PURE_P() for Cygwin unexec() support.
1805
1806 * lastfile.c: Define my_endbss[] for Cygwin unexec() support.
1807
1808 * gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(),
1809 before Cygwin unexec.
1810
1811 * Makefile.in: Link changes for Cygwin unexec() support.
1812
8dbff9a0
AS
18132004-04-12 Andreas Schwab <schwab@suse.de>
1814
1815 * buffer.c (Fmake_indirect_buffer): Check that NAME is a string.
1816
54dffe35
LT
18172004-04-11 Luc Teirlinck <teirllm@auburn.edu>
1818
1819 * buffer.c (Fgenerate_new_buffer_name): Return NAME argument if
1820 IGNORE argument equals NAME. Doc fix.
1821
99a72bdf
MY
18222004-04-11 Masatake YAMATO <jet@gyve.org>
1823
1e88a355 1824 * buffer.c (fix_start_end_in_overlays): Make overlays
99a72bdf
MY
1825 empty if they are backwards.
1826
40899d7b
SM
18272004-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
1828
1829 * xfaces.c (face_color_supported_p): Fix compilation without X11.
1830
f8f853de
SM
18312004-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
1832
1833 * doc.c (Fsnarf_documentation): Ignore new file name entries.
1834
c953fe1b
KS
18352004-04-06 Kim F. Storm <storm@cua.dk>
1836
661e85c1
KS
1837 * msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden.
1838 (dos_rawgetc): Set mouse_face_hidden after clearing highlight.
1839
1840 * w32term.c (w32_read_socket): Set mouse_face_hidden after
1841 clearing highlight.
1842
1843 * xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden.
1844
1845 * xterm.c (handle_one_xevent): Set mouse_face_hidden after
1846 clearing highlight.
1847
c953fe1b
KS
1848 * indent.c (vmotion): Do not reserve one column for continuation
1849 marks on window frames.
1850
c1994268
EZ
18512004-04-04 Eli Zaretskii <eliz@gnu.org>
1852
1853 * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings
1854 from GCC.
1855
9f691b0d
SM
18562004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
1857
1858 * .gdbinit-union: Remove.
1859
1860 * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION.
1861 (xgetptr, xgetint, xgettype): New funs. Use them everywhere.
1862 ($nonvalbits): Remove.
1863 ($valmask): Set it by calling xreload to avoid redundancy.
1864
1865 * emacs.c (gdb_use_union, gdb_use_lsb): New vars.
1866 (gdb_emacs_intbits): Remove.
1867
7a8560d7
JD
18682004-03-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1869
9f691b0d 1870 * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes.
7a8560d7 1871
3c8111fc
KH
18722004-03-30 Kenichi Handa <handa@m17n.org>
1873
1874 * editfns.c (Fformat): Fix initialization of the array info.
1875
48a0bce4
KS
18762004-03-30 Kim F. Storm <storm@cua.dk>
1877
1878 * xterm.c (x_mouse_click_focus_ignore_position): New var.
1879 (syms_of_xterm): DEFVAR_BOOL it.
1880 (ignore_next_mouse_click_timeout): New var.
1881 (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify.
1882 Use it to filter mouse clicks following focus event.
1883
1cd0066c
KS
18842004-03-29 David Ponce <david@dponce.com>
1885
1886 * callint.c (Fcall_interactively): Fix last change.
1887
adb3b353
SM
18882004-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
1889
1890 * eval.c (Fcommandp): Simplify.
1891
1892 * data.c (Finteractive_form): Rename from Fsubr_interactive_form.
1893 Extend to handle all kinds of functions.
1894
1895 * lisp.h (Finteractive_form): Declare.
1896
1897 * callint.c (Fcall_interactively): Use it.
1898
6fc4c9c9
KS
18992004-03-26 Kim F. Storm <storm@cua.dk>
1900
1901 * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error
1902 to catch errors in calc_pixel_width_or_height during redisplay.
1903
abdb9b83
MY
19042004-03-26 Masatake YAMATO <jet@gyve.org>
1905
b17856dd 1906 * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range.
abdb9b83 1907
b17856dd 1908 * lisp.h (fix_start_end_in_overlays): Likewise.
abdb9b83 1909
b17856dd 1910 * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays.
abdb9b83 1911
b17856dd 1912 * editfns.c (Ftranspose_regions): Likewise.
abdb9b83 1913
e8a84b6c
JD
19142004-03-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1915
b17856dd 1916 * xterm.c (handle_one_xevent): Do not pass key press events to GTK.
e8a84b6c 1917
36a3fd05
RS
19182004-03-19 Richard M. Stallman <rms@gnu.org>
1919
1920 * s/sol2-6.h: Delete previous change.
1921
ab24c127
KS
19222004-03-19 Kim F. Storm <storm@cua.dk>
1923
1924 * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
1925 to_charpos corresponds to newline in right fringe. Use local
1926 BUFFER_POS_REACHED_P macro.
1927
992126de
JD
19282004-03-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1929
1930 * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
1931 to compile on non-window system.
1932
45dbfc84
KS
19332004-03-19 Kim F. Storm <storm@cua.dk>
1934
1935 * dispextern.h (calc_pixel_width_or_height): Add prototype.
1936
1937 * image.c (Qcenter): Move to xdisp.c.
1938
1939 * xdisp.c (Qcenter): Declare here.
adb3b353 1940 (syms_of_xdisp): Intern and staticpro it.
45dbfc84
KS
1941 (handle_single_display_prop): Allow space display property on all
1942 platforms.
1943 (display_mode_line): Set mode_line_p before displaying line.
1944 (calc_pixel_width_or_height): Declare extern. Add separate :align-to
1945 handling. Remove complex cases for fringes and scroll-bars.
1946 Add left, right, and center alignment positions. Add text (area)
1947 width/height. Return width or height for image specs.
1948 (produce_stretch_glyph): Improve handling of :align-to. Is now
1949 relative to left of text area by default, but other base offsets
1950 can be specified -- also for text lines.
1951
1952 * term.c (produce_glyphs): Handle IT_STRETCH.
1953 (produce_stretch_glyph): New function to handle space width and
1954 align-to display properties on non-window systems.
1955
37264101
SM
19562004-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
1957
1958 * fileio.c (Fread_file_name): Set completion-ignore-case for
1959 case-insensitive systems.
1960
73bc43da
MY
19612004-03-14 Masatake YAMATO <jet@gyve.org>
1962
1963 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
1964 when keymap and cursor are setup.
1965
9062aa89
ST
19662004-03-14 Steven Tamm <steventamm@mac.com>
1967
b17856dd 1968 * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o.
9062aa89 1969
e4b1b5ab
KS
19702004-03-14 Kim F. Storm <storm@cua.dk>
1971
1972 * dispextern.h (x_find_image_file): Add prototype.
1973
1974 * image.c (x_find_image_file): Make extern.
1975
1976 * xfns.c (x_find_image_file): Remove prototype.
1977
a6eeaa81 19782004-03-13 Eli Zaretskii <eliz@gnu.org>
5109b06a 1979
37264101 1980 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
5109b06a 1981
37264101 1982 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
5109b06a 1983
e69cfac2
RS
19842004-03-12 Richard M. Stallman <rms@gnu.org>
1985
1986 * fns.c (internal_equal): New arg PROPS controls comparing
1987 text properties. All callers changed.
1988 (Fequal_including_properties): New function.
1989 (syms_of_fns): defsubr it.
1990
45034953
KS
19912004-03-12 Kim F. Storm <storm@cua.dk>
1992
1993 Fix image support on MAC. From YAMAMOTO Mitsuharu.
37264101 1994
45034953
KS
1995 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
1996 (image_background, image_background_transparent): Fix prototypes.
1997
37264101 1998 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
45034953
KS
1999
2000 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
2001 (x_query_font, x_find_ccl_program, x_set_window_size)
2002 (x_make_frame_visible, mac_initialize, XCreatePixmap)
2003 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
2004 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
2005
2006 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
2007 (x_query_font, x_find_ccl_program, x_set_window_size)
2008 (x_make_frame_visible, mac_initialize, XCreatePixmap)
2009 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
2010 (mac_draw_line_to_pixmap): Add prototypes.
2011
20122004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2013
2014 * macterm.c (XTread_socket): Fix mouse click on tool bar.
2015
a12d3d87
KS
20162004-03-11 Kim F. Storm <storm@cua.dk>
2017
d3ab1cf1
KS
2018 * dispextern.h: Move image related prototypes from xfns.c section
2019 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
2020 HAVE_X_WINDOWS.
37264101 2021
37de9f51 2022 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
37264101 2023 Move gtkutil.o to new GTK_OBJ list.
a12d3d87
KS
2024 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
2025 (GTK_OBJ) [USE_GTK]: New declaration.
2026 (obj): Add $(GTK_OBJ) to list.
2027
5243c06a 20282004-03-11 Steven Tamm <steventamm@mac.com>
5109b06a 2029
5243c06a
ST
2030 * image.c [MAC_OSX]: Include sys/stat.h
2031
2032 * macfns.c (syms_of_macfns): Remove definitions of things now
2033 defined in image.c
2034
c0f97789
KS
20352004-03-11 Kim F. Storm <storm@cua.dk>
2036
2037 The following changes consolidates the identical/similar image
2038 support code previously found in xfns.c, w32fns.c, and macfns.c
2039 into a new file image.c.
2040
2041 * makefile.w32-in (OBJ1): Add image.o.
2042 ($(BLD)/image.$(O)): Add dependencies.
2043
2044 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
2045 (image.o): Add dependencies.
37264101 2046
c0f97789
KS
2047 * image.c: New file with consolidated image support code.
2048 (COLOR_TABLE_SUPPORT): New define to control whether
2049 color table support is available (X only).
2050 (Bitmap_Record): Common name for x_bitmap_record,
2051 w32_bitmap_record, and mac_bitmap_record.
2052 (XImagePtr): Common name for pointer to XImage or equivalent.
2053 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
2054 to XImagePtr on X+MAC, and to HDC on W32.
2055 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
2056 (NO_PIXMAP): Common name for "None" or equivalent.
2057 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
2058 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
2059 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
37264101
SM
2060 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
2061 Define with suitable equivalents on W32 and MAC for code sharing.
c0f97789
KS
2062 (XDrawLine): Define on MAC for code sharing.
2063 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
2064 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
2065 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
2066 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
2067 (x_reference_bitmap, x_create_bitmap_from_data)
2068 (x_create_bitmap_from_file, x_destroy_bitmap)
2069 (x_destroy_all_bitmaps, x_create_bitmap_mask)
2070 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
2071 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
2072 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
2073 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
2074 (define_image_type, lookup_image_type, valid_image_p)
2075 (image_error, enum image_value_type, struct image_keyword)
2076 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
2077 (make_image, free_image, prepare_image_for_display, image_ascent)
2078 (four_corners_best, image_background, image_background_transparent)
2079 (x_clear_image_1, x_clear_image, x_alloc_image_color)
2080 (make_image_cache, free_image_cache, clear_image_cache)
2081 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
2082 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
2083 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
2084 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
2085 (init_image_func_pointer, image_load_quartz2d)
2086 (struct ct_color, init_color_table, free_color_table)
2087 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
2088 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
2089 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
2090 (x_disable_image, x_build_heuristic_mask)
2091 (XBM support, XPM support, PBM support, PNG support, JPEG support)
2092 (TIFF support, GIF support, Ghostscript support): Consolidate image
2093 code from xfns.c, w32fns.c, and macfns.c.
2094 (syms_of_image): Consolidate image related symbol setup here.
2095 (init_image): Consolidate image related initializations here.
37264101 2096
c0f97789
KS
2097 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
2098 and init_image. Remove call to init_xfns.
2099
37264101
SM
2100 * macterm.h (struct mac_bitmap_record): Add file member.
2101 Not currently used, but simplifies code sharing.
c0f97789
KS
2102
2103 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
2104 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
2105 (x_reference_bitmap, x_create_bitmap_from_data)
2106 (x_create_bitmap_from_file, x_destroy_bitmap)
2107 (x_destroy_all_bitmaps, x_create_bitmap_mask)
2108 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
2109 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
2110 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
2111 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
2112 (define_image_type, lookup_image_type, valid_image_p)
2113 (image_error, enum image_value_type, struct image_keyword)
2114 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
2115 (make_image, free_image, prepare_image_for_display, image_ascent)
2116 (four_corners_best, image_background, image_background_transparent)
2117 (x_clear_image_1, x_clear_image, x_alloc_image_color)
2118 (make_image_cache, free_image_cache, clear_image_cache)
2119 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
2120 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
2121 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
2122 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
2123 (init_image_func_pointer, image_load_quartz2d)
2124 (struct ct_color, init_color_table, free_color_table)
2125 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
2126 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
2127 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
2128 (x_disable_image, x_build_heuristic_mask)
2129 (XBM support, XPM support, PBM support, PNG support, JPEG support)
2130 (TIFF support, GIF support, Ghostscript support): Merge with image
2131 code from xfns.c and macfns.c into image.c.
2132 (syms_of_xfns): Move image related symbols to image.c.
2133 (init_external_image_libraries, init_xfns): Remove; initialization
2134 moved to init_image in image.c.
2135
2136 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
2137 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
2138 (x_reference_bitmap, x_create_bitmap_from_data)
2139 (x_create_bitmap_from_file, x_destroy_bitmap)
2140 (x_destroy_all_bitmaps, x_create_bitmap_mask)
2141 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
2142 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
2143 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
2144 (define_image_type, lookup_image_type, valid_image_p)
2145 (image_error, enum image_value_type, struct image_keyword)
2146 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
2147 (make_image, free_image, prepare_image_for_display, image_ascent)
2148 (four_corners_best, image_background, image_background_transparent)
2149 (x_clear_image_1, x_clear_image, x_alloc_image_color)
2150 (make_image_cache, free_image_cache, clear_image_cache)
2151 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
2152 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
2153 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
2154 (struct ct_color, init_color_table, free_color_table)
2155 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
2156 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
2157 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
2158 (x_disable_image, x_build_heuristic_mask)
2159 (XBM support, XPM support, PBM support, PNG support, JPEG support)
2160 (TIFF support, GIF support, Ghostscript support): Merge with image
2161 code from xfns.c and macfns.c into image.c.
2162 (syms_of_xfns): Move image related symbols to image.c.
2163 (init_external_image_libraries, init_xfns): Remove; initialization
2164 moved to init_image in image.c.
2165
2166 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
2167 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
2168 (x_reference_bitmap, x_create_bitmap_from_data)
2169 (x_create_bitmap_from_file, x_destroy_bitmap)
2170 (x_destroy_all_bitmaps, x_create_bitmap_mask)
2171 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
2172 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
2173 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
2174 (define_image_type, lookup_image_type, valid_image_p)
2175 (image_error, enum image_value_type, struct image_keyword)
2176 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
2177 (make_image, free_image, prepare_image_for_display, image_ascent)
2178 (four_corners_best, image_background, image_background_transparent)
2179 (x_clear_image_1, x_clear_image, x_alloc_image_color)
2180 (make_image_cache, free_image_cache, clear_image_cache)
2181 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
2182 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
2183 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
2184 (struct ct_color, init_color_table, free_color_table)
2185 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
2186 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
2187 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
2188 (x_disable_image, x_build_heuristic_mask)
2189 (XBM support, XPM support, PBM support, PNG support, JPEG support)
2190 (TIFF support, GIF support, Ghostscript support): Merge with
2191 w32fns.c and macfns.c image code into image.c.
2192 (syms_of_xfns): Move image related symbols to image.c.
2193 (init_xfns): Remove; initialization moved to init_image in image.c.
2194
2195 * lisp.h (syms_of_image, init_image): Add protoypes.
2196 (init_xfns): Remove prototype.
2197
2198 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
2199 (x_reference_bitmap, x_create_bitmap_from_data)
2200 (x_create_bitmap_from_file, x_destroy_bitmap)
2201 (x_create_bitmap_mask): Move prototypes from dispextern.h.
2202 (gamma_correct) [MAC_OS]: Add prototype.
2203
2204 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
2205 (x_reference_bitmap, x_create_bitmap_from_data)
2206 (x_create_bitmap_from_file, x_destroy_bitmap)
2207 (x_create_bitmap_mask): Move prototypes to dispextern.h.
2208
6eced09c
KH
22092004-03-09 Kenichi Handa <handa@etlken2>
2210
2211 * coding.c (decode_coding_emacs_mule): Handle insufficent source
2212 correctly.
2213
9a7e95f3
RS
22142004-03-04 Richard M. Stallman <rms@gnu.org>
2215
04a6e76b
RS
2216 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
2217
9a7e95f3
RS
2218 * window.c (Fdisplay_buffer): Doc fix.
2219
2220 * buffer.c (Fpop_to_buffer): Doc fix.
2221
6c2488df
KS
22222004-03-03 Kim F. Storm <storm@cua.dk>
2223
2224 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
2225
d8d95bc7
SM
22262004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
2227
2228 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
2229
357589bf
RS
22302004-03-02 Richard M. Stallman <rms@gnu.org>
2231
2232 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
2233
409949b5
KH
22342004-03-02 Kenichi Handa <handa@m17n.org>
2235
2236 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
2237
d24bc50f
KS
22382004-03-02 Kim F. Storm <storm@cua.dk>
2239
2240 * window.h (struct window): New member overlay_arrow_bitmap.
2241
2242 * window.c (make_window): Initialize overlay_arrow_bitmap.
2243
2244 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
2245 implement and integrate multiple overlay arrows with redisplay.
2246 (syms_of_xdisp): DEFVAR_LISP and initialize it.
2247 (last_arrow_position, last_arrow_string): Replace by properties.
2248 (Qlast_arrow_position, Qlast_arrow_string)
2249 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
2250 (syms_of_xdisp): Intern and staticpro them.
2251 (overlay_arrow_string_or_property, update_overlay_arrows)
2252 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
2253 (overlay_arrow_at_row): New functions for multiple overlay arrows.
2254 (redisplay_internal): Use them instead of directly accessing
2255 Voverlay_arrow_position etc. for multiple overlay arrows.
2256 (mark_window_display_accurate): Use update_overlay_arrows.
2257 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
2258 (try_window_id): Use overlay_arrows_changed_p.
2259 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
2260 (display_line): Use overlay_arrow_at_row to check multiple
2261 overlay arrows, and get relevant overlay-arrow-string and
d8d95bc7 2262 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
d24bc50f
KS
2263 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
2264 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
2265
2266 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
2267 (update_window_fringes): Remove unused code.
2268
c1464661
JR
22692004-03-01 Jason Rumney <jasonr@gnu.org>
2270
2271 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
2272
a64387ee
JB
22732004-03-01 Juanma Barranquero <lektu@terra.es>
2274
2275 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
2276
2277 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
2278
334faa08
JD
22792004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2280
2281 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
2282 how many colors can be displayed.
2283
bb62616f
KH
22842004-03-01 Kenichi Handa <handa@m17n.org>
2285
2286 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
2287 correctly.
2288
0fd16104
KS
22892004-02-28 Kim F. Storm <storm@cua.dk>
2290
2291 * dispnew.c (update_window): Update header line also if there are
2292 no other changes in window (move code after set_cursor label).
2293
2294 * lisp.h (mark_window_display_accurate): Remove prototype.
2295
2296 * window.c (window_loop, Fforce_window_update): Force mode line
2297 updates by setting prevent_redisplay_optimizations_p and
2298 update_mode_lines.
2299
b59dd9c8
JD
23002004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2301
d8d95bc7 2302 * xfns.c (x_window): Fix indentation.
b59dd9c8
JD
2303
2304 * xterm.c (x_calc_absolute_position): Call x_real_positions
2305 to get WM window sizes and use those to calculate position.
d8d95bc7 2306 (x_set_offset): Remove code commented out.
b59dd9c8 2307
a874691c
MB
23082004-02-28 Miles Bader <miles@gnu.org>
2309
2310 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
2311
3e0c6482
KS
23122004-02-28 Kim F. Storm <storm@cua.dk>
2313
2314 * keyboard.c (kbd_buffer_store_event_hold): New function to store
2315 an event into kbd fifo, but with special handling of quit event;
2316 a quit event is saved for later, and further events are discarded
2317 until the saved quit event has been processed.
2318 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
2319 (gen_help_event): Store help event in kbd fifo.
2320 (NREAD_INPUT_EVENTS): Remove.
2321 (read_avail_input): Adapt to new read_socket_hook interface.
2322 Remove allocation and initialization of local input_event buffer,
2323 as read_socket_hook stores events directly in fifo. Allocate and
2324 initialize local hold_quit event to handle postponed quit event
2325 (and store it if set by kbd_buffer_store_event_hold).
2326
2327 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
2328 (gen_help_event): Fix prototype.
2329
a64387ee 2330 * macterm.c (XTread_socket): Remove bufp_r and
3e0c6482 2331 numcharsp args. Add hold_quit arg.
f63fd14e 2332 Rework to use just one, local, inev input_event. Store inev
3e0c6482
KS
2333 directly in fifo using kbd_buffer_store_event_hold.
2334
2335 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
2336 (read_input_waiting): Adapt to new read_socket_hook interface.
2337 Remove allocation and initialization of local input_event buffer,
2338 as read_socket_hook stores events directly in fifo. Allocate and
2339 initialize local hold_quit event to handle postponed quit event
2340 (and store it if set by kbd_buffer_store_event_hold).
2341
a64387ee 2342 * term.c (read_socket_hook): Fix arg list.
3e0c6482
KS
2343
2344 * termhooks.h (read_socket_hook): Fix prototype.
2345
2346 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
2347 numcharsp args. Add hold_quit arg.
f63fd14e 2348 Rework to use just one, local, inev input_event. Store inev
3e0c6482
KS
2349 directly in fifo using kbd_buffer_store_event_hold.
2350
2351 * w32inevt.h (w32_console_mouse_position): Fix prototype.
2352
2353 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
f63fd14e
JB
2354 Add hold_quit arg. Rework to use just one, local, inev
2355 input_event. Store inev directly in fifo using
3e0c6482
KS
2356 kbd_buffer_store_event_hold. Update count in one place.
2357 Postpone call to gen_help_event until inev is stored; use new
2358 local do_help for this.
2359 Remove local emacs_event in handing of ButtonPress event; just use
2360 inev instead (so no reason to copy it later).
2361
2362 * xsmfns.c (x_session_check_input): Remove numchars arg.
2363
d8d95bc7
SM
2364 * xterm.c (x_focus_changed, x_detect_focus_change):
2365 Remove numchars arg. Always store event into bufp arg.
2366 Return nothing. Callers changed accordingly.
3e0c6482
KS
2367 (glyph_rect): Simplify.
2368 (STORE_KEYSYM_FOR_DEBUG): New macro.
2369 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
2370 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
2371 (current_hold_quit) [USE_GTK]: Add.
2372 (event_handler_gdk): Adapt to new handle_one_xevent.
2373 (handle_one_xevent): Remove bufp_r and numcharsp args.
f63fd14e
JB
2374 Add hold_quit arg. Rework to use just one, local, inev
2375 input_event. Store inev directly in fifo using
3e0c6482
KS
2376 kbd_buffer_store_event_hold. Update count in one place.
2377 Postpone call to gen_help_event until inev is stored; use new
2378 local do_help for this.
2379 Simplify handling of keysyms (consolidate common code). Fix bug
2380 where count was updated with nchars instead of nbytes.
2381 Remove local emacs_event in handing of ButtonPress event; just use
2382 inev instead (so no reason to copy it later).
2383 Remove `out' label. Rename label `ret' to `done'; add various
2384 `goto done' to clarify code flow in deeply nested blocks.
2385 (x_dispatch_event): Simplify as handle_one_xevent now calls
2386 kbd_buffer_store_event itself.
f63fd14e 2387 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
3e0c6482
KS
2388 arg. Call handle_one_xevent with new arglist. Store event from
2389 x_session_check_input in fifo.
2390 [USE_GTK]: Setup current_hold_quit.
2391 Decrement handling_signal before unblocking input.
2392 (x_initialize) [USE_GTK]: Initialize current_count.
2393
2394 * xterm.h (x_session_check_input): Fix prototype.
2395
e3564461 23962004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
a64387ee 2397
d8d95bc7 2398 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
a64387ee 2399
e3564461
ST
2400 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
2401 macgui.h).
a64387ee 2402
e3564461 2403 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
a64387ee 2404
e3564461
ST
2405 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
2406 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
2407 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
2408 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
2409 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
2410 (Bitmap): Remove typedef.
2411 (Pixmap): Change int to GWorldPtr.
2412
d8d95bc7 2413 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
a64387ee 2414
d8d95bc7
SM
2415 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
2416 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
2417 New #define to extract 16-bit depth color components from unsigned
e3564461
ST
2418 long representation.
2419 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
2420 colors used for masks.
2421 (struct mac_display_info): Add color_p. Remove n_cbits.
a64387ee 2422
e3564461
ST
2423 * macfns.c: Include sys/types.h and sys/stat.h.
2424 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
2425 Include QuickTime/QuickTime.h.
2426 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
2427 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
2428 functions defined in macterm.c.
2429 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
2430 (ZPixmap): New #define for compatibility with xfns.c.
2431 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
2432 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
d8d95bc7
SM
2433 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
2434 New functions.
e3564461 2435 (four_corners_best, x_create_x_image_and_pixmap)
d8d95bc7
SM
2436 (x_destroy_x_image, unwind_create_frame, x_disable_image)
2437 (x_edge_detection, init_color_table, colors_in_color_table)
e3564461
ST
2438 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
2439 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
2440 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
2441 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
2442 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
2443 long mixup.
2444 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
2445 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
2446 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
2447 (x_set_cursor_type, Fxw_color_values, valid_image_p)
2448 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
2449 (x_alloc_image_color, clear_image_cache, lookup_image)
2450 (x_find_image_file, xbm_read_bitmap_file_data)
2451 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
2452 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
2453 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
2454 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
2455 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
d8d95bc7 2456 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
e3564461
ST
2457 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
2458 #if 0.
2459 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
2460 #if 0. Free white_relief.gc and black_relief.gc.
d8d95bc7
SM
2461 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
2462 New functions (from xfns.c).
e3564461
ST
2463 (Fx_create_frame): Record unwind_create_frame.
2464 (Fxw_display_color_p): Use dpyinfo->color_p.
2465 (Fx_display_grayscale_p, Fx_display_planes): Don't use
2466 dpyinfo->n_cbits.
2467 (Fx_display_color_cells): Use dpyinfo->n_planes;
2468 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
2469 (Qheuristic, cross_disabled_images, emboss_matrix)
2470 (laplace_matrix): New variables (from xfns.c).
2471 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
2472 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
2473 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
d8d95bc7
SM
2474 (image_background_transparent): New function (from xfns.c).
2475 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
2476 (image_load_quicktime): Add declaration.
2477 [MAC_OSX] (image_load_quartz2d): Likewise.
2478 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
2479 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
d8d95bc7 2480 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
e3564461
ST
2481 (xbm_load_image_from_file, x_laplace_read_row)
2482 (x_laplace_write_row, pbm_read_file): Remove functions.
2483 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
2484 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
2485 (colors_in_color_table): Sync with xfns.c (although not used).
2486 (lookup_rgb_color): Don't lookup color table. Just do gamma
2487 correction.
2488 (COLOR_INTENSITY): New #define (from xfns.c).
d8d95bc7
SM
2489 (x_disable_image): New function (from xfns.c).
2490 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
2491 (x_build_heuristic_mask): Sync with xfns.c.
2492 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
2493 (HAVE_PBM): Remove #ifdef.
2494 (pbm_load): Sync with xfns.c. Set img->width and img->height
2495 before IMAGE_BACKGROUND.
d8d95bc7 2496 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
e3564461
ST
2497 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
2498 Don't enclose with #if HAVE_PNG.
2499 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
d8d95bc7
SM
2500 symbol _CGImageCreateWithPNGDataProvider is defined.
2501 Otherwise use image_load_quicktime.
e3564461 2502 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
d8d95bc7
SM
2503 [HAVE_PNG] (png_load): Sync with xfns.c.
2504 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
2505 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
2506 HAVE_JPEG.
2507 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
2508 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
2509 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
2510 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
2511 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
2512 (tiff_image_p, tiff_load): Don't enclose declarations with #if
2513 HAVE_TIFF.
2514 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
2515 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
2516 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
d8d95bc7
SM
2517 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
2518 New functions (from xfns.c).
e3564461 2519 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
d8d95bc7 2520 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
e3564461
ST
2521 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
2522 Don't enclose with #if HAVE_GIF.
2523 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
2524 animated gif. Otherwise use image_load_quicktime.
2525 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
2526 gif_DrawText to avoid conflict with QuickdrawText.h.
2527 [HAVE_GIF] (gif_load): Sync with xfns.c.
2528 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
2529 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
2530 Ghostscript is not supported yet).
2531 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
2532 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
2533 cross_disabled_images (from xfns.c). Remove #if 0 for supported
2534 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
2535 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
2536 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
d8d95bc7
SM
2537 HAVE_PNG. Call EnterMovies to support animated gifs.
2538 Call init_image_func_pointer to bind a symbol
e3564461 2539 _CGImageCreateWithPNGDataProvider if it is defined.
a64387ee 2540
d8d95bc7 2541 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
e3564461
ST
2542 (x_draw_bar_cursor): Sync declaration with xterm.c.
2543 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
2544 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
2545 graphics).
2546 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
2547 (mac_draw_line_to_pixmap, XCreatePixmap)
2548 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
d8d95bc7
SM
2549 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
2550 New functions.
2551 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
2552 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
2553 Cast bits to char *.
e3564461
ST
2554 (reflect_byte): New function (from w32fns.c).
2555 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
2556 due to byte alignment.
d8d95bc7
SM
2557 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
2558 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
e3564461
ST
2559 (XSetForeground): Remove static (now used in macfns.c).
2560 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
2561 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
2562 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
2563 (x_draw_glyph_string_box, x_draw_image_foreground)
2564 (x_draw_image_foreground_1, x_draw_image_glyph_string)
2565 (x_draw_stretch_glyph_string, x_draw_glyph_string)
2566 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
2567 Sync with xterm.c.
2568 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
2569 than the xterm.c version when a strictly horizontal or vertical
2570 line is drawn.
2571 (XTset_terminal_window): Add static.
2572 (x_make_frame_visible): Add UNBLOCK_INPUT.
2573 (x_free_frame_resources): New funcion (from xterm.c).
2574 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
2575 occurs in tool bar area.
d8d95bc7
SM
2576 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
2577 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
e3564461
ST
2578 Initialize image cache.
2579 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
2580 Enclose unused functions with #if 0.
2581 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
2582 (decode_mac_font_name): New function to apply code conversions
d8d95bc7 2583 from a mac font name to an XLFD font name according to its script code.
e3564461 2584 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
d8d95bc7 2585 font name to a mac font name according to REGISTRY and ENCODING fields.
e3564461
ST
2586 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
2587 whose name starts with `.'.
2588 (init_font_name_table): Use decode_mac_font_name. Add both
2589 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
2590 of a font is smJapanese.
2591 (mac_do_list_fonts): New function to list fonts that match a given
2592 pattern.
2593 (x_list_fonts, XLoadQueryFont): Use it.
2594 (XLoadQueryFont): Set rbearing field for each variable width
2595 character to avoid needless redraw.
2596 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
2597
446f5f3d
KS
25982004-02-26 Kim F. Storm <storm@cua.dk>
2599
af617d0f
KS
2600 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
2601 as read_socket_hook handler on X aborts if buffer is too small
2602 and W32 handler doesn't always check buffer limit.
2603
446f5f3d
KS
2604 * xdisp.c (handle_single_display_prop): Handle left-fringe and
2605 right-fringe similar to a display margin image. Specifically,
2606 the characters having the fringe prop are no longer shown, and
2607 we use IT_IMAGE/next_element_from_image with image_id = -1 to
2608 do this. Set fringe bitmap face_id in it->face_id.
2609 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
2610 still realize it->face (i.e. the fringe bitmap face).
2611
7d8a0b55
MB
26122004-02-25 Miles Bader <miles@gnu.org>
2613
2614 * xdisp.c (check_it): Check string/string_pos consistency.
2615 (init_iterator): Initialize string-related fields properly.
2616
26172004-02-11 Miles Bader <miles@gnu.org>
2618
2619 * xdisp.c (produce_image_glyph): Force negative descents to zero.
2620
26212004-02-10 Miles Bader <miles@gnu.org>
2622
2623 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
2624 BLOCK_INPUT can be nested, so it doesn't make much sense.
2625
a64387ee 26262004-02-24 Michael Mauger <mmaug@yahoo.com>
ce35edd1
JR
2627
2628 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
2629 (xbm_read_bitmap_data): Use unsigned char for image data.
2630
92f5fba2
LT
26312004-02-23 Luc Teirlinck <teirllm@auburn.edu>
2632
2633 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
2634
8565fb3d
JR
26352004-02-22 Jason Rumney <jasonr@gnu.org>
2636
2637 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
2638 correctly over other bitmaps.
2639
a6eeaa81 26402004-02-21 Eli Zaretskii <eliz@gnu.org>
f8125c39
EZ
2641
2642 * emacs.c (USAGE1): Split into two halves.
2643 (USAGE2): Second half of the old USAGE1.
d8d95bc7
SM
2644 (USAGE3): Rename from USAGE2.
2645 (USAGE4): Rename from USAGE3.
f8125c39 2646
4effffca
EZ
26472004-02-21 Juri Linkov <juri@jurta.org>
2648
2649 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
2650 Fix --multibyte. Move --help, --version to USAGE2. Add alias
2651 --file. Fix -f, -l. Sort options. Untabify.
2652 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
2653
923c1e6f
LT
26542004-02-19 Luc Teirlinck <teirllm@auburn.edu>
2655
2656 * category.c (Fdefine_category, Fcategory_docstring)
2657 (Fget_unused_category, Fset_category_table)
2658 (Fcategory_set_mnemonics): Doc fixes.
2659
b0e225fd
KS
26602004-02-20 Kim F. Storm <storm@cua.dk>
2661
2662 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
2663 The following changes are relative to the 2004-01-21 revision.
2664 (NREAD_INPUT_EVENTS): Define as max number of input events to read
2665 in one call to read_socket_hook. Value is 8.
2666 (read_avail_input): Separate and rework handling of read_socket_hook
2667 and non-read_socket_hook cases. Use smaller input_event buffer
d8d95bc7
SM
2668 in read_socket_hook case, and repeat if full buffer is read.
2669 Use new local variable 'discard' to skip input after C-g.
b0e225fd
KS
2670 In non-read_socket_hook case, just use a single input_event, and
2671 call kbd_buffer_store_event on the fly for each character.
2672
b15aa9f9
SM
26732004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
2674
2675 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
2676 Remove unused `gu' alternative.
2677
83c9aa95
AS
26782004-02-19 Andreas Schwab <schwab@suse.de>
2679
2680 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
2681 warning.
2682
cc808173
KS
26832004-02-18 Kim F. Storm <storm@cua.dk>
2684
2685 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
2686 Fix last change.
2687
ab90a54d
KS
26882004-02-17 Kim F. Storm <storm@cua.dk>
2689
b26f249f
KS
2690 * xdisp.c (fast_find_position): Fix return value of new version;
2691 it was inverted compared to the 21.1 version.
2692 (get_window_cursor_type): Don't look at glyph if NULL.
2693 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
0bf7d005 2694
ab90a54d
KS
2695 * keyboard.c: Rework previous change; it didn't consider that the
2696 buf array was allocated on the stack.
2697 (prev_read): Remove variable.
2698 (read_avail_input_buf): New static event buffer array.
b9568dfc 2699 (in_read_avail_input): New static variable to handle re-entrancy.
ab90a54d 2700 (read_avail_input): Change buf to pinter to read_avail_input_buf.
b9568dfc
KS
2701 Use in_read_avail_input to handle re-entrance; when re-entered,
2702 fully initialize and use tmp_buf array instead of read_avail_input_buf.
2703 Do not initialize read_avail_input_buf in full here; instead assume it
ab90a54d
KS
2704 is always cleared on entry. To ensure that, we clear (just) the
2705 entries that were used before we return.
2706 (init_keyboard): Initialize read_avail_input_buf here.
2707
4e039f3f
EZ
27082004-02-16 Jesper Harder <harder@ifa.au.dk> (tiny change)
2709
2710 * cmds.c (Fend_of_line): Doc fix.
2711
7b5368c1
EZ
27122004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
2713
2714 * keyboard.c (prev_read): New static variable.
2715 (read_avail_input): Use it to zero out only those slots in buf[]
2716 that were used last time we were called.
2717
a6eeaa81 27182004-02-16 Eli Zaretskii <eliz@gnu.org>
ca4bc494
EZ
2719
2720 * Makefile.in (obj): Move fringe.o from here...
2721 (XOBJ, MAC_OBJ): ...to here.
2722
159c348e
SE
27232004-02-16 Stephen Eglen <stephen@gnu.org>
2724
2725 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
2726
d2f14999
SM
27272004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
2728
b15aa9f9
SM
2729 * data.c (Fbyteorder):
2730 * fringe.c (Fdefine_fringe_bitmap):
2731 * xdisp.c (handle_single_display_prop):
d2f14999
SM
2732 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
2733
8d50508a
JR
27342004-02-16 Jason Rumney <jasonr@gnu.org>
2735
2736 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
2737
dd4497dc
ST
27382004-02-15 Steven Tamm <steventamm@mac.com>
2739
2740 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
2741 controlling emulation of a three button mouse with option and
2742 command keys.
2743 (Qreverse, mac_get_enumlated_btn): Handle the emulation
b15aa9f9 2744 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
dd4497dc 2745
c9159cb3
KS
27462004-02-15 Kim F. Storm <storm@cua.dk>
2747
2cc52658
KS
2748 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
2749
c9159cb3
KS
2750 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
2751 Perform byte-swapping.
2752
12fde2dc
KS
27532004-02-14 Kim F. Storm <storm@cua.dk>
2754
2755 * dispextern.h (struct draw_fringe_bitmap_params): Change member
2756 bits from char to short to facilitate wider bitmaps.
2757 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
2758 member.
2759
2760 * fringe.c (struct fringe_bitmap): Change member bits from char to
2761 short to facilitate 16 bits wide bitmaps. Modify all standard
2762 bitmaps accordingly.
2763 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
2764 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
2765 (draw_fringe_bitmap): Ditto.
2766 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
2767 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
2768 handle up to 16 bits wide bitmaps.
2769 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
f21a7192 2770 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
12fde2dc
KS
2771
2772 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
2773 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
2774 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
2775
2776 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
2777 so it is no longer necessary to expand them here.
2778
2779 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
2780
9d7271e8
KS
27812004-02-12 Kim F. Storm <storm@cua.dk>
2782
2783 * window.c (Fwindow_fringes): Doc fix.
2784
706c1e4f
JD
27852004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2786
2787 * xselect.c (x_get_foreign_selection): Add new optional parameter
2788 time_stamp.
2789 (Fx_get_selection_internal): Ditto, pass time_stamp to
2790 x_get_foreign_selection.
2791
2792 * data.c (Fbyteorder): New function.
2793
c2d12b5d
JD
27942004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2795
2796 * atimer.c: Move include stdio.h to same place as in other files.
2797
2798 * region-cache.c: Ditto.
2799
2800 * sysdep.c: Ditto.
2801
2802 * xfaces.c: Ditto.
2803
4c1947b9
SS
28042004-02-09 Sam Steingold <sds@gnu.org>
2805
89458937 2806 * w32term.c (w32_draw_fringe_bitmap): Fix a typo in the last patch.
4c1947b9 2807
82722af3
KS
28082004-02-09 Kim F. Storm <storm@cua.dk>
2809
2810 * fringe.c: New file. Move original fringe related declarations
2811 and code from dispextern.h and xdisp.c here.
2812 Rework code to support user defined fringe bitmaps, redefining
2813 standard bitmaps, ability to overlay user defined bitmap with
2814 overlay arrow bitmap, and add faces to bitmaps.
2815 (Voverflow_newline_into_fringe): Declare here.
2816 (enum fringe_bitmap_align): New enum.
2817 (..._bits): All bitmaps are now defined without bitswapping; that
2818 is now done in init_fringe_once (if necessary).
2819 (standard_bitmaps): New array with specifications for the
2820 standard fringe bitmaps.
2821 (fringe_faces): New array.
2822 (valid_fringe_bitmap_id_p): New function.
2823 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
2824 (draw_fringe_bitmap): New function which draws fringe bitmap,
2825 possibly overlaying bitmap with cursor in right fringe or the
2826 overlay arrow in the left fringe.
2827 (update_window_fringes): Do not handle overlay arrow here.
2828 Compare and copy fringe bitmap faces.
2829 (init_fringe_bitmap): New function.
2830 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
2831 define and destroy user defined fringe bitmaps.
2832 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
2833 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
2834 (syms_of_fringe): New function. Defsubr new DEFUNs.
2835 DEFVAR_LISP Voverflow_newline_into_fringe.
2836 (init_fringe_once, init_fringe): New functions.
2837 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
4c1947b9 2838
82722af3
KS
2839 * Makefile.in (obj): Add fringe.o.
2840 (fringe.o): New dependencies.
2841
2842 * dispextern.h (FRINGE_ID_BITS): New definition for number of
2843 bits allocated to hold a fringe number. Increase number of bits
2844 from 4 to 8 to allow user defined fringe bitmaps.
2845 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
2846 left_user_fringe_face_id, right_user_fringe_bitmap,
2847 right_user_fringe_face_id.
2848 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
2849 Move to new file fringe.c.
2850 (MAX_FRINGE_BITMAPS): Define here.
2851 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
2852 and overlay_p. Change member which to int.
2853 (struct redisplay_interface): New members define_fringe_bitmap
2854 and destroy_fringe_bitmap.
2855 (valid_fringe_bitmap_id_p): Add prototype.
2856 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
2857
2858 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
2859 arrows.
2860 (update_frame): Do flush_display if force_flush_display_p to
2861 ensure display (specifically fringes) are updated in a timely
2862 manner when resizing the frame by dragging the mouse.
2863 (update_window_line): Update row if overlay arrow changed.
2864 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
2865 or overlay arrow changed.
2866
2867 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
2868 syms_of_fringe, and init_fringe.
2869
2870 * frame.h (struct frame): New member force_flush_display_p.
2871
2872 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
2873 Add prototypes.
2874
a3993cc8 2875 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
a64387ee 2876 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
a3993cc8
KS
2877 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
2878 Use cursor color for displaying cursor in fringe.
82722af3
KS
2879 (x_redisplay_interface): Add null handlers for
2880 define_fringe_bitmap and destroy_fringe_bitmap functions.
2881
2882 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
2883 xterm.c to handle overlayed fringe bitmaps and to use cursor color
2884 for displaying cursor in fringe.
2885 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
2886 specific functions to define and destroy fringe bitmaps in fringe_bmp.
2887 (w32_redisplay_interface): Add them to redisplay_interface.
2888 (w32_term_init): Call w32_init_fringe instead of explicitly
2889 defining fringe bitmaps in fringe_bmp array.
2890 (x_delete_display): Call w32_reset_fringes instead of explicitly
2891 destroying fringe bitmaps in fringe_bmp array.
2892
2893 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
2894 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
2895 (continued_bits, continuation_bits, ov_bits, first_line_bits)
2896 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
2897 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
2898 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
2899 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
2900 Move fringe handling vars and code to new file fringe.c.
2901 (handle_display_prop): Handle left-fringe and right-fringe
2902 display properties; store user fringe bitmaps in iterator.
2903 (move_it_in_display_line_to): Handle cursor in fringe at eob.
2904 (clear_garbaged_frames): Set force_flush_display_p if resized.
2905 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
2906 (display_line): Handle cursor in fringe at eob.
2907 (display_line): Set row user fringe bitmaps from iterator.
2908
2909 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
2910 Use cursor color for displaying cursor in fringe.
2911 (x_redisplay_interface): Add null handlers for
2912 define_fringe_bitmap and destroy_fringe_bitmap functions.
2913
030400eb
JD
29142004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2915
2916 * macfns.c (Fx_change_window_property): Make doc string and
2917 parameters same as for X version.
2918
2919 * w32fns.c (Fx_change_window_property): Ditto.
2920
3af55251
KS
29212004-02-07 Kim F. Storm <storm@cua.dk>
2922
ec110e9e
KS
2923 * xdisp.c (hscroll_window_tree): Position cursor near to right
2924 margin in hscrolled window when jumping to end of line (rather
2925 than centering cursor).
2926
3af55251
KS
2927 * process.c (wait_reading_process_input): Don't do adaptive read
2928 buffering if waiting for a specific process.
2929
b0c138ce
LT
29302004-02-05 Luc Teirlinck <teirllm@auburn.edu>
2931
2932 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
2933 (Fread_minibuffer, Feval_minibuffer)
2934 (Fread_string, Fread_no_blanks_input)
2935 (Fcompleting_read): Doc fixes.
2936 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
2937 completion-regexp-list. Define Qcase_fold_search and staticpro it.
2938 (read_minibuf): Fix initial comment.
2939 (Ftry_completion, Fall_completions, Ftest_completion): Bind
e8eeaed8 2940 case-fold-search to the value of completion-ignore-case when
b0c138ce
LT
2941 checking completion-regexp-list.
2942 (Fdisplay_completion_list): Make it handle arguments that are
2943 symbols. Doc fix.
2944
9676f5ad 29452004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
64d1e373 2946
9676f5ad 2947 * xterm.h: Add declaration of free_frame_menubar.
64d1e373 2948
9676f5ad
JD
2949 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
2950 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
b0c138ce 2951 (Fx_change_window_property): Add declaration of parameters type and
9676f5ad 2952 format. Remove unused variable cons.
5b698285
JD
2953
2954 * xselect.c: Include stdio,h.
2955
fc1d15f6
KH
29562004-02-05 Kenichi Handa <handa@m17n.org>
2957
ebaff4af
KH
2958 * fns.c (Fset_char_table_range): Fix previous change.
2959
fc1d15f6
KH
2960 * buffer.c (Fset_buffer_multibyte): Fix docstring.
2961
9676f5ad
JD
29622004-02-04 Luc Teirlinck <teirllm@auburn.edu>
2963
2964 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
2965
da75761f
SM
29662004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
2967
2968 * keymap.c (Vmouse_events): Rename from Vmenu_events.
2969 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
2970
13c5d120
KH
29712004-02-04 Kenichi Handa <handa@m17n.org>
2972
2973 * fns.c (Fset_char_table_range): Handle charsets ascii,
2974 eight-bit-control, and eight-bit-graphic correctly.
2975
2883d842
JR
29762004-02-03 Jason Rumney <jasonr@gnu.org>
2977
2978 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
2979
2980 * w32fns.c (x_to_w32_font): Likewise.
2981
69eff41f
JD
29822004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2983
2984 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
2985 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
2986
2987 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
2988 ClientMessages.
2989
2990 * xselect.c: Include termhooks.h and X11/Xproto.h
2991 (x_check_property_data, x_fill_property_data)
2992 (x_property_data_to_lisp, mouse_position_for_drop)
2993 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
da75761f 2994 (Fx_send_client_event): Move here from xfns.c.
69eff41f
JD
2995 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
2996
da75761f 2997 * xfns.c (x-send-client-message): Move to xselect.c
69eff41f
JD
2998 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
2999 OUTER_P.
3000 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
3001 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
3002 if vector_ret_p is true.
3003 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
69eff41f 3004
a6eeaa81 30052004-02-02 Eli Zaretskii <eliz@gnu.org>
dcdbbb5d
EZ
3006
3007 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
3008 basename of FILE relative to it, not FILE itself.
3009
09721b31
KH
30102004-02-02 Kenichi Handa <handa@m17n.org>
3011
3012 * coding.c (coding_restore_composition): Check invalid
3013 composition data more rigidly.
3014
eb996101
LT
30152004-01-30 Luc Teirlinck <teirllm@auburn.edu>
3016
3017 * fileio.c (Fread_file_name_internal): Correctly handle the case
3018 where insert-default-directory is nil.
3019 (Fread_file_name): Always return an empty string if the user exits
3020 with an empty minibuffer. Adapt the docstring accordingly.
3021 (syms_of_fileio): Adapt the docstring of insert-default-directory
3022 to the change in Fread_file_name.
3023
a6eeaa81 30242004-01-29 Eli Zaretskii <eliz@gnu.org>
a0367d42
EZ
3025
3026 * alloca.c [!alloca]: Fix the prototype for xfree.
3027
13f52ed8
KH
30282004-01-29 Kenichi Handa <handa@m17n.org>
3029
3030 * fns.c (string_char_to_byte): Optimize for ASCII only string.
3031 (string_byte_to_char): Likewise.
3032
d57625a0
JR
30332004-01-28 Peter Runestig <peter@runestig.com>
3034
3035 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
3036
a64387ee 30372004-01-27 Steven Tamm <steventamm@mac.com>
911c78b4
ST
3038
3039 * unexmacosx.c (unexec_copy): Do not copy more than was
3040 requested to prevent overwriting during unexec.
3041
eb37b8fd
JD
30422004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3043
ce38070a
JD
3044 * process.c (sigchld_handler): Add comment about not calling malloc.
3045
eb37b8fd
JD
3046 * process.h: Add extern to synch_process_termsig.
3047
a64387ee 30482004-01-27 Steven Tamm <steventamm@mac.com>
21a3e657 3049
da75761f
SM
3050 * macterm.c (make_mac_frame, make_mac_terminal_frame):
3051 Move setting of scroll bars from make_mac_frame to
3052 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
21a3e657 3053
d62a265d
RS
30542004-01-26 Richard M. Stallman <rms@gnu.org>
3055
3056 * search.c (Freplace_match): Handle nonexistent
3057 back-references properly.
3058
30592004-01-03 Richard M. Stallman <rms@gnu.org>
3060
3061 * window.c (decode_any_window): New function.
3062 (Fwindow_height, Fwindow_width, Fwindow_edges)
3063 (Fwindow_pixel_edges, Fwindow_inside_edges)
3064 (Fwindow_inside_pixel_edges): Use decode_any_window.
3065
ff236419
JD
30662004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3067
3068 * process.h: synch_process_termsig new variable.
3069
3070 * callproc.c: Define synch_process_termsig.
3071 (Fcall_process): Initiate synch_process_termsig to zero and
3072 check if non-zero and get signal name after subprocess has ended.
3073
3074 * process.c (sigchld_handler): Set synch_process_termsig
3075 if terminated by a signal. synch_process_death setting removed.
3076
3077 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
3078
41b867ea
AS
30792004-01-26 Andreas Schwab <schwab@suse.de>
3080
3081 * print.c (print_preprocess): Declare size as EMACS_INT to not
3082 lose bits.
3083 (print_object): Likewise.
3084 * alloc.c (Fpurecopy): Likewise.
3085
a08084ff
LT
30862004-01-25 Luc Teirlinck <teirllm@auburn.edu>
3087
3088 * window.c (Fwindow_minibuffer_p): Doc fix.
3089
b19ac475
JY
30902004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
3091
3092 * editfns.c (Fformat): Make both passes accept the same set of flags.
3093
fe905025
KH
30942004-01-23 Kenichi Handa <handa@m17n.org>
3095
3096 * fns.c (Fmd5): If OBJECT is a buffer different from the current
3097 one, set buffer to OBJECT temporarily.
3098
438fc6c0
SM
30992004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
3100
455316e2
SM
3101 * keyboard.c (kbd_buffer_gcpro): Remove.
3102 (kbd_buffer_store_event, clear_event, Fdiscard_input)
3103 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
3104 Don't initialize and/or maintain the variable any more. It was made
3105 redundant by my commit of 2003-06-15.
3106
438fc6c0
SM
3107 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
3108
5335a4ee
JD
31092004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3110
3111 * lisp.h: Add undef DECL_ALIGN.
3112
dcdaeebc
SM
31132004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
3114
3115 * process.c (wait_reading_process_input) [SYNC_INPUT]:
3116 Check interrupt_input_pending explicitly.
3117
3118 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
3119
3120 * keyboard.c (handle_async_input): New fun,
3121 extracted from input_available_signal.
3122 (input_available_signal, reinvoke_input_signal): Use it.
3123
9076a823
SM
31242004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
3125
d7107586
SM
3126 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
3127
3128 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
3129 manipulation macros for when tags are in the lower bits.
3130 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
3131 (DECL_ALIGN): New macro.
3132 (DEFUN): Use it.
3133
3134 * lisp.h [ENABLE_CHECKING]: Don't force union type.
3135
3136 * s/darwin.h (__attribute__): Remove outdated workaround.
3137
3138 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
3139
3140 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
3141 Don't check range of malloc address.
3142 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
3143
9076a823
SM
3144 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
3145
3146 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
3147
ba029065
KH
31482004-01-19 Kenichi Handa <handa@m17n.org>
3149
3150 * fontset.c (fontset_font_pattern): Fix previous change.
3151
7af0e8d7
MB
31522004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
3153
3154 * xdisp.c (Voverflow_newline_into_fringe)
3155 (move_it_in_display_line_to, redisplay_internal)
3156 (update_window_fringes, redisplay_window, display_line, window):
3157 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
3158 that it compiles without a window-system.
3159 * dispnew.c (direct_output_for_insert, update_window): Likewise.
3160
77a9cf69
KS
31612004-01-16 Kim F. Storm <storm@cua.dk>
3162
3163 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
3164
a64387ee 3165 * buffer.c (init_buffer_once): Set buffer_defaults and
77a9cf69
KS
3166 buffer_local_flags for indicate_buffer_boundaries.
3167 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
3168 default- variable for it.
3169
3170 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
3171 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
d7107586 3172 New members exact_window_width_line_p and cursor_in_fringe_p for
77a9cf69
KS
3173 overflowing newlines into right fringe.
3174 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
3175 and indicate_bottom_line_p for buffer boundaries and scrolling.
3176 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
3177 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
3178 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
3179 and HOLLOW_SQUARE_BITMAP.
3180 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
3181 Add prototypes.
3182
3183 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
3184 instead of related indicator fields.
3185 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
3186 (direct_output_for_insert): Handle exact width lines like
3187 contined lines. Call update_window_fringes.
3188 (update_window): Call update_window_fringes.
3189 (scrolling_window): Don't skip desired rows with changed bitmaps.
3190 Check if fringe bitmaps changes when assigning scrolled rows.
3191
3192 * xdisp.c (Voverflow_newline_into_fringe): New variable.
3193 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
3194 (move_it_in_display_line_to): Overflow newline into fringe for
3195 rows that are exactly as wide as the window.
3196 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
3197 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
3198 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
3199 (fringe_bitmaps): Add new bitmaps.
3200 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
3201 Select proper bitmap for cursor in fringe when appropriate.
3202 Handle alignment of bitmap to top or bottom of row.
3203 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
3204 done by update_window_fringes.
3205 (update_window_fringes, draw_window_fringes): New functions.
3206 (redisplay_internal): Call update_window_fringes in case only
3207 cursor row is updated.
3208 (redisplay_window): Call update_window_fringes.
3209 Explicitly call draw_window_fringes if redisplay was done using
3210 the current matrix or the overlay arrow is in the window.
3211 (try_window_reusing_current_matrix): Mark scrolled rows for
3212 fringe update (to update buffer-boundaries / scrolling icons).
3213 (find_last_unchanged_at_beg_row): Handle exact width lines line
3214 continued lines.
3215 (display_line): Overflow newline into fringe for rows that are
3216 exactly as wide as the window. Don't append space for newline
d7107586 3217 in this case.
77a9cf69
KS
3218 (notice_overwritten_cursor): Explicitly clear cursor bitmap
3219 in fringe as if it had been overwritten.
3220 (erase_phys_cursor): Erase cursor bitmap in fringe.
d7107586 3221 (syms_of_xdisp): Mark show-trailing-whitespace and
77a9cf69
KS
3222 void-text-area-pointer as user options.
3223 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
d7107586 3224
77a9cf69
KS
3225 * xterm.c (x_update_window_end): Call draw_window_fringes.
3226 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
3227 in row instead of actually drawing fringe bitmaps.
3228 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
3229 (x_draw_window_cursor): Draw cursor in fringe.
3230
3231 * w32term.c (x_update_window_end): Call draw_window_fringes.
3232 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
3233 in row instead of actually drawing fringe bitmaps.
3234 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
3235 (w32_draw_window_cursor): Draw cursor in fringe.
3236
3237 * macterm.c (x_update_window_end): Call draw_window_fringes.
3238 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
3239 in row instead of actually drawing fringe bitmaps.
3240 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
3241 (mac_draw_window_cursor): Draw cursor in fringe.
3242
a633a954
JD
32432004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3244
3245 * xterm.c (handle_one_xevent): Don't handle characters that are part
3246 of an old style (XLookupString) compose sequence.
3247
80460525
KH
32482004-01-15 Kenichi Handa <handa@m17n.org>
3249
3250 * search.c (Freplace_match): Use make_multibyte_string or
3251 make_unibyte_string according to the buffer multibyteness.
3252
7fc34f85
SM
32532004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
3254
3255 * alloc.c (struct interval_block, struct string_block)
3256 (struct symbol_block, struct marker_block, live_string_p)
3257 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
3258 Better preserve alignment for objects in blocks.
3259 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
3260
3261 * lread.c (defvar_per_buffer): Remove dead declaration.
3262
3263 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
3264 space size.
3265
66070bd1
JD
32662004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3267
3268 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
3269 if a key press should pop down. Only pop down if a key is pressed
3270 outside the menu/dialog.
3271 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
3272 popup_get_selection.
3273 (create_and_show_dialog): Pass 1 for down_on_keypress to
3274 popup_get_selection.
3275
de7515d6
JD
32762004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3277
3278 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
3279 BLOCK/UNBLOCK_INPUT.
3280
160b1b50
JD
32812004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3282
3283 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
3284 specified.
3285
3a9f36e6
KH
32862004-01-08 Kenichi Handa <handa@m17n.org>
3287
3288 * editfns.c (Fformat): Fix '&' to '&&'.
3289
3803eb32
AS
32902004-01-08 Andreas Schwab <schwab@suse.de>
3291
3292 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
3293 size if PSEUDOVECTOR_FLAG is set.
3294
9da88f37
KH
32952004-01-07 Kenichi Handa <handa@m17n.org>
3296
74ac5074
KH
3297 * charset.c (Fdeclare_equiv_charset): Fix docstring.
3298
9da88f37
KH
3299 * fontset.c (fontset_ref_via_base): Fix previous change.
3300
05faee07
KS
33012004-01-07 Kim F. Storm <storm@cua.dk>
3302
3303 * process.c (read_process_output): Only activate adaptive
3304 buffering if we read less than 256 bytes at a time.
3305
634910c8
KS
33062004-01-06 Kim F. Storm <storm@cua.dk>
3307
3308 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
3309 object and image object. Return glyph width and height.
3310 (mode_line_string, marginal_area_string): Ditto.
3311
3312 * dispextern.h (buffer_posn_from_coords, mode_line_string)
3313 (marginal_area_string): Fix prototypes.
3314
3315 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
f63fd14e 3316 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
634910c8
KS
3317 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
3318
3319 * keyboard.c (make_lispy_position): Use modified mode_line_string,
3320 buffer_posn_from_coords, and marginal_area_string functions to
3321 include both string object and image object in the lispy position.
3322 Also add actual glyph width and height to position.
3323 (read_key_sequence): Use real buffer position from mouse
3324 event to find keymap property even when click is in marginal area.
3325
3326 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
3327 mode_line_string and marginal_area_string functions to handle
3328 both string object and image object properties.
d7107586 3329
57951c2e
AS
33302004-01-06 Andreas Schwab <schwab@suse.de>
3331
3332 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
3333 character.
3334
181e6a61
AS
33352004-01-02 Andreas Schwab <schwab@suse.de>
3336
d7107586
SM
3337 * macterm.c (emacs_options, x_initialized, same_x_server):
3338 Remove unused (and duplicated) definitions.
181e6a61 3339
31e0fbdd
KS
33402004-01-02 Kim F. Storm <storm@cua.dk>
3341
3342 * process.h (struct Lisp_Process): New members for adaptive read
3343 buffering: adaptive_read_buffering, read_output_delay, and
3344 read_output_skip.
3345
3346 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
3347 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
3348 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
3349 (process_output_delay_count, process_output_skip): New vars.
3350 (Vprocess_adaptive_read_buffering): New variable.
3351 (make_process): Initialize adaptive read buffering members.
3352 (Fstart_process): Set adaptive_read_buffering member.
3353 (deactivate_process): Cleanup adaptive read buffering.
3354 (wait_reading_process_input): Temporarily omit delayed
3355 subprocesses from the set of file descriptors to read from;
3356 adjust the select timeout if we skipped any subprocesses.
3357 (read_process_output): Increase adaptive read buffering delay if
3358 we read less than a full buffer; reduce delay when we read a
3359 full buffer.
3360 (send_process): Simplify using local Lisp_Process var.
3361 Reset adaptive read buffering delay after write.
3362 (init_process): Initialize process_output_delay_count and
3363 process_output_skip.
3364 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
3365
68c6a789
JR
33662004-01-01 Jason Rumney <jasonr@gnu.org>
3367
d7107586 3368 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
68c6a789 3369
3f70fe82
LT
33702003-12-30 Luc Teirlinck <teirllm@auburn.edu>
3371
3372 * print.c (Ferror_message_string): Add hyperlink in the docstring
3373 to the definition of `signal' in the Elisp manual.
3374 * eval.c (Fsignal): Ditto.
3375
a64387ee 33762003-12-29 James Clark <jjc@jclark.com> (tiny change)
c2be49ed
EZ
3377
3378 * fns.c (internal_equal): Return t for two NaN arguments.
3379
7abd90ea
RS
33802003-12-29 Richard M. Stallman <rms@gnu.org>
3381
3382 * data.c (store_symval_forwarding): Handle setting
3383 default-fill-column, etc., by changing the value in
3384 buffers that use the default.
3385
3386 * minibuf.c (Fset_minibuffer_window): Doc fix.
3387
3388 * fileio.c (choose_write_coding_system): Ignore auto_saving
3389 if using the visited file for auto saves.
3390 (Fwrite_region): Don't update SAVE_MODIFF
3391 if auto-saving in visited file.
3392
3e7cfcdc
KH
33932003-12-29 Kenichi Handa <handa@m17n.org>
3394
3395 * dispextern.h (face_font_available_p): Extern it.
3396
3397 * fontset.c (Voverriding_fontspec_alist): New variable.
3398 (lookup_overriding_fontspec): New function.
d7107586 3399 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
3e7cfcdc
KH
3400 (fontset_font_pattern): Likewise.
3401 (regulalize_fontname): New function.
3402 (Fset_fontset_font): Call regulalize_fontname.
3403 (Fset_overriding_fontspec_internal): New function.
d7107586
SM
3404 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
3405 Defsubr Sset_overriding_fontspec_internal.
3e7cfcdc
KH
3406
3407 * xfaces.c (face_font_available_p): New function.
3408
7abd90ea
RS
34092003-12-28 Richard M. Stallman <rms@gnu.org>
3410
3411 * buffer.c (Fother_buffer): Don't crash if BUF is nil
3412 or if its name is nil.
3413
3414 * buffer.c (Fkill_buffer): Don't delete auto-save file
3415 if it's the same as the visited file.
3416
de1d1a40
LT
34172003-12-28 Luc Teirlinck <teirllm@auburn.edu>
3418
3419 * coding.c (Fcheck_coding_system): Doc fix.
3420
204fb75e
KS
34212003-12-28 Kim F. Storm <storm@cua.dk>
3422
3423 * Makefile.in (eval.o): Depend on dispextern.h.
3424
3425 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
3426 image glyph using image's ascent.
3427 (mode_line_string): Return image glyph as object clicked on.
3428 Adjust y0 for image glyph using image's ascent.
3429
3430 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
3431 (struct glyph): New members, ascent and descent. Used to save
3432 this glyph's ascent and descent, instead of having.
3433 (struct glyph): Declare member face_id using FACE_ID_BITS.
3434 (find_hot_spot): Add prototype.
3435
3436 * keyboard.c (Qimage): Remove extern (now in lisp.h).
3437 (QCmap): Declare extern.
3438 (make_lispy_position): When position is inside image hot-spot,
3439 use hot-spot element's id as posn element.
3440
3441 * lisp.h (IMAGEP): New macro to test for image object type.
3442 (Qimage): Declare extern.
3443
3444 * macfns.c (Qimage): Remove extern (now in lisp.h).
3445 (valid_image_p, parse_image_spec): Use IMAGEP macro.
3446
3447 * macterm.c (Qface, Qmouse_face): Remove unused externs.
3448
3449 * w32fns.c (Qimage): Remove extern (now in lisp.h).
3450 (valid_image_p, parse_image_spec): Use IMAGEP macro.
3451
3452 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
3453
3454 * w32term.c (Qface, Qmouse_face): Remove unused externs.
3455
3456 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
3457 pointer types.
3458 (Qrelative_width, Qalign_to): Remove unused variables.
3459 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
3460 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
3461 image maps.
d7107586 3462 (x_y_to_hpos_vpos): Return glyph relative coordinates through
204fb75e
KS
3463 new dx and dy args.
3464 Remove buffer_only_p arg (always 0). Simplify code accordingly.
3465 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
3466 than row's ascent and height, to get sensible height on tall rows.
3467 (build_desired_tool_bar_string): Remove Qimage extern.
3468 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
3469 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
3470 image glyph is alone on the last line.
3471 (append_glyph, append_composite_glyph, produce_image_glyph)
d7107586 3472 (append_stretch_glyph): Set glyph's ascent and descent.
204fb75e 3473 (on_hot_spot_p): New function to check if position is inside an
d7107586 3474 rectangular, circular, or polygon-shaped image hot-spot,
204fb75e
KS
3475 (find_hot_spot): New function to search for image hot-spot.
3476 (Flookup_image_map): New defun to search for image hot-spot.
3477 (define_frame_cursor1): New aux function to determine frame pointer.
3478 (note_mode_line_or_margin_highlight, note_mouse_highlight):
3479 Handle `pointer' text property and :pointer image property to
3480 control frame pointer shape. Detect image hot-spots for pointer
3481 and help_echo properties. Use define_frame_cursor1.
3482 (note_mouse_highlight): Use Vvoid_text_area_pointer.
f63fd14e 3483 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
204fb75e
KS
3484 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
3485
3486 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
3487
3488 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
3489 (Qimage): Remove extern (now in lisp.h).
3490 (valid_image_p, parse_image_spec): Use IMAGEP macro.
3491
3492 * xmenu.c (show_help_event): Remove unused code.
3493
3494 * xterm.c (Qface, Qmouse_face): Remove unused externs.
3495 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
3496 row's ascent and descent, to get a sensible height on tall rows.
3497
fc052137
LT
34982003-12-25 Luc Teirlinck <teirllm@auburn.edu>
3499
3500 * minibuf.c (Fcompleting_read): Undo previous change.
3501
a64387ee 35022003-12-25 Lars Hansen <larsh@math.ku.dk>
b9148500
LH
3503
3504 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
3505 Arguments GCPRO'ed in call to file name handler.
3506
56ffd194
TTN
35072003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
3508
3509 * termcap.c (tgetst1): Scan for "%pN"; if all
3510 N are continuous in [1,9], remove all "%pN".
3511
5202d23d
JD
35122003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3513
f26fab36
JD
3514 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
3515
5202d23d
JD
3516 * xfaces.c (lface_fully_specified_p): Take into account that
3517 MAC OS always have unspecified stipple.
3518
8babaa59
TTN
35192003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
3520
3521 * tparam.c (tparam1): Add handling for `%pN', which
3522 means use param N for the next substitution.
3523
2d176448
TTN
35242003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
3525
3526 * xfaces.c (Fcolor_gray_p): Fix omission bug:
3527 In case `frame' is nil, consult the selected frame.
3528 (Fcolor_supported_p): Likewise.
3529
adb0708c
LT
35302003-12-23 Luc Teirlinck <teirllm@auburn.edu>
3531
000eeb15
LT
3532 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
3533 Doc fixes.
0dc72b11
LT
3534
3535 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
3536 and an integer. Adapt the introductory comment accordingly.
adb0708c
LT
3537 (Fread_from_minibuffer): Delete code moved into read_minibuf.
3538 Doc fix.
3539 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
3540 read_minibuf.
3541 (Fcompleting_read): Delete code moved into read_minibuf.
d7107586 3542 (Ftest_completion): Make it handle obarrays and hash tables correctly.
adb0708c 3543
2e4d132b
KH
35442003-12-03 Kenichi Handa <handa@m17n.org>
3545
3546 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
3547 encoding sequence.
3548
3999c705
KH
35492003-12-01 Kenichi Handa <handa@m17n.org>
3550
3551 * composite.c (syms_of_composite): Don't make the compostion hash
3552 table week.
3553
d344ecbb
LT
35542003-11-30 Luc Teirlinck <teirllm@auburn.edu>
3555
3556 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
3557 * textprop.c (Fget_char_property_and_overlay): New function.
3558 (syms_of_textprop): Defsubr it.
3559
03d6484e
JD
35602003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3561
019b1f0e
JD
3562 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
3563 to compile on terminal configuration.
3564
03d6484e
JD
3565 * fileio.c (Fread_file_name): Check use_file_dialog also before
3566 calling Fx_file_dialog.
3567
3568 * fns.c: use_file_dialog: New variable.
3569 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
3570
442d3fd0
KS
35712003-11-29 Kim F. Storm <storm@cua.dk>
3572
3573 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
3574 (syms_of_msdos): Don't intern and staticpro them.
3575
0f6a07a8
KS
35762003-11-27 Kim F. Storm <storm@cua.dk>
3577
3578 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
3579 coordinates relative to glyph at posn. If glyph is an image,
3580 return that as object at posn. Callers changed.
3581 (mode_line_string, marginal_area_string): Calculate and return
3582 pixel coordinates relative to glyph. Callers changed.
3583
3584 * dispextern.h (buffer_posn_from_coords, mode_line_string)
3585 (marginal_area_string): Fix prototypes.
3586 (window_box_left_offset, window_box_right_offset): Add prototypes.
3587
3588 * frame.h (get_specified_cursor_type, get_window_cursor_type):
3589 Remove prototypes.
3590
3591 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
3592
3593 * keyboard.c (make_lispy_position): Add x and y coordinates
3594 relative to the current glyph as 7th element of position.
3595 If glyph is an image, return it in the object element.
3596 (read_key_sequence): Skip checks for keymap property in cases
3597 where POSN_STRING is not a string (e.g. an image).
3598
3599 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
3600 (Vshow_text_cursor_in_void): New variable.
3601 (glyph_to_pixel_coords): Don't use negative hpos.
3602 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
3603 (append_stretch_glyph): Change ascent arg to be actual value
f63fd14e 3604 in pixels rather than ratio to height. Callers changed.
0f6a07a8
KS
3605 (calc_pixel_width_or_height): New aux function, implementing
3606 pixel based artihmetic for glyph widths and heights.
3607 (produce_stretch_glyph): Use calc_pixel_width_or_height for
3608 :width, :height, :align-to, and :ascent, thus allowing these to
3609 be specified in pixels as well as multiples of characters.
3610 Don't produce stretch glyphs with zero width or height.
3611 (get_specified_cursor_type): Declare static.
3612 (get_window_cursor_type): Declare static. Add glyph arg to be
3613 able to know when cursor is on an image; always substitute
3614 hollow-box cursor for filled-box cursor on images, to avoid
3615 negative images and flicker when blinking the cursor.
3616 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
3617 (note_mode_line_or_margin_highlight): Use non-text cursor rather
3618 than vertical scroll-bar cursor in display margins.
3619 (note_mouse_highlight): Use non-text cursor rather than text
3620 cursor in fringes and over images in the text area.
3621 Use non-text cursor when mouse pointer is outside editable text,
3622 i.e. in the void after end-of-line or end-of-buffer; this was
3623 already done for W32, but is now standard for all systems --
3624 user can toggle show-text-cursor-in-void to get old behaviour.
3625 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
3626 Vdisplay_pixels_per_inch.
3627
00498bfc
AS
36282003-11-25 Andreas Schwab <schwab@suse.de>
3629
3630 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
3631 EMACS_INT to not lose bits.
3632 (Ffillarray): Don't set bits beyond the size of a bool vector.
3633
edaa824d
KS
36342003-11-25 Kim F. Storm <storm@cua.dk>
3635
3636 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
3637 define this defun on systems that cannot use stderr as lvalue.
3638
74d6f539
GM
36392003-11-24 Gerd Moellmann <gerd@gnu.org>
3640
3641 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
3642 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
3643 ld's default is incompatible with unexec.
3644
6a1ff3ba
KS
36452003-11-23 Kim F. Storm <storm@cua.dk>
3646
63dc7c6b
KS
3647 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
3648 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
3649 (Fforce_window_update): New defun.
3650 (syms_of_window): Defsubr it.
3651 (Fset_window_margins, Fset_window_fringes): Doc fix.
3652
6a1ff3ba
KS
3653 * print.c (Fredirect_debugging_output): New defun.
3654 (syms_of_print): Defsubr it.
3655
aef109b7
LT
36562003-11-22 Luc Teirlinck <teirllm@auburn.edu>
3657
3658 * fns.c (Fset_char_table_parent): Doc fix.
3659
6a1ff3ba 36602003-11-22 Kim F. Storm <storm@cua.dk>
63ccbe21
KS
3661
3662 * dispnew.c (buffer_posn_from_coords): Return actual row/column
3663 for glyph clicked on, rather than (unused) pixel positions.
3664 (mode_line_string, marginal_area_string): Change X and Y args to
3665 pointers for returning actual row/column for glyph clicked on.
3666 Simplify and optimize loops.
3667
aef109b7
LT
3668 * dispextern.h (mode_line_string, marginal_area_string):
3669 Update prototypes.
63ccbe21
KS
3670
3671 * keyboard.c (make_lispy_position): New function for generating
3672 mouse click positions from frame and pixel coordinates.
3673 Enhanced to return buffer position and actual row/column for
3674 events outside the text area using updated mode_line_string and
3675 marginal_area_string functions.
3676 Return left-fringe and right-fringe clicks as such, rather than
3677 clicks in text area.
3678 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
3679 pixel_to_glyph_coords, as we never use the results.
3680 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
3681 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
3682 Eliminate unused code in WHEEL_EVENT handling.
3683 (make_lispy_movement): Use make_lispy_position.
3684
3685 * window.c (coordinates_in_window): Remove redundant tests.
3686 Fix returned X pixel value for left-margin.
3687
3688 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
3689 mode_line_string and marginal_area_string parameters.
3690
a64387ee 36912003-11-22 Lars Hansen <larsh@math.ku.dk>
930a9995 3692
d7107586
SM
3693 * w32.c (struct the_group, getgrgid): Add.
3694 * mac.c (struct my_group, getgrgid): Add.
aef109b7 3695
3dbf3426
LT
36962003-11-21 Luc Teirlinck <teirllm@auburn.edu>
3697
3698 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
3699
cae8ddbb 37002003-11-21 Lars Hansen <larsh@math.ku.dk>
ded4064f 3701
d7107586
SM
3702 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
3703 include in call to file name handler. Optionally translate numeric
3704 UID and GID to strings. Update docstring.
3705 (directory_files_internal): Add parameter ID-FORMAT.
3706 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
3707 include in call to file name handler and call to
3708 directory_files_internal. Update Docstring.
3709 (Fdirectory_files): Add dummy parameter in call to
3710 directory_files_internal.
3711 * lisp.h (Qinteger): Add.
3712 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
3713 (Ffile_attributes): Add parameter.
3714 * data.c (Qinteger): Export.
cae8ddbb 3715
2550b848
LT
37162003-11-21 Luc Teirlinck <teirllm@auburn.edu>
3717
3dbf3426 3718 * fns.c (Freverse, Fnreverse): Doc fixes.
2550b848 3719
88380018
KS
37202003-11-19 Kim F. Storm <storm@cua.dk>
3721
3722 * xdisp.c (init_iterator): Initialize it->start to position
3723 before reseating (in case start position is invisible).
3724 (init_to_row_start): Set it->start to row-start.
3725 (redisplay_window): Accept optional_new_start if start position
3726 is invisible (in which case IT_CHARPOS overshoots PT).
3727 (display_line): Setup row->start from it->start (rather than
3728 it->current which is wrong if first char on line is invisible).
3729 When done, reseat it->start to it->current (= start of next row).
3730 (expose_area): Fix exposure of text area when first char (e.g. TAB)
3731 is only partially visible.
3732
3733 * dispextern.h (struct it): New member start.
3734
854c1a59
SM
37352003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
3736
455316e2
SM
3737 * alloc.c (make_float, Fcons): Clear the markbit at init time.
3738 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
3739 of block_index outside of the macro call.
3740 (Fgarbage_collect): Remove null code.
3741
3742 * m/amdx86-64.h: Don't redefine XPNTR.
3743
854c1a59
SM
3744 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
3745 of VALMASK.
3746
3747 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
3748 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
3749 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
3750
3751 * lisp.h (VALMASK): Only define for non-union type.
3752 (MARKBIT): Remove.
3753 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
3754 (XTYPE): Define unconditionally.
3755 (XSETTYPE): Remove one more remnant.
3756 (EQ): Define differently for the union and non-union cases.
3757 (INTMASK): New bit mask.
3758 (struct Lisp_Marker): Move down to prepare for upcoming patch.
3759 (GC_EQ): Delegate to EQ.
3760
3761 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
3762
a0c6ef2d
JD
37632003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3764
3765 * xterm.c (x_window_to_scroll_bar): Move check of display to
3766 where window_id is compared.
3767
859492c4
KS
37682003-11-17 Kim F. Storm <storm@cua.dk>
3769
3770 * dispextern.h (struct it): New member first_vpos.
3771
3772 * xdisp.c (start_display): Set it->first_vpos.
3773 (try_window_id): Use first_vpos to start display in first _text_
3774 line if no reusable lines at start of window with header line.
3775
810f2256
JD
37762003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3777
7c402969 3778 * w32fns.c (XPutPixel):
854c1a59
SM
3779 * w32bdf.c (w32_init_bdf_font):
3780 * sunfns.c (sel_read):
3781 * process.c (Fmake_network_process):
3782 * frame.c (store_frame_param):
3783 * fontset.c (Fset_fontset_font):
3784 * emacs.c (shut_down_emacs):
a64387ee 3785 * ccl.c (ccl_driver): Remove period at end of error message.
7c402969 3786
a32e9bfd
JD
3787 * config.in: Regenerate.
3788
810f2256
JD
3789 * xfns.c (x_window_to_frame, x_any_window_to_frame)
3790 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
3791 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
3792 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
3793 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
3794
3795 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
3796
3797 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
3798 (XTmouse_position, handle_one_xevent): Pass Display* to
3799 x_window_to_scroll_bar.
3800 (x_window_to_scroll_bar): Take a Display* argument.
3801 Check that display for frame is equal to Display* argument.
854c1a59 3802 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
810f2256
JD
3803 x_display_info_for_display instead. Use Display in xev instead
3804 of GDK_DISPLAY.
3805 (x_dispatch_event): Call x_display_info_for_display.
f63fd14e 3806 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
810f2256
JD
3807 (x_connection_closed): Call xg_display_close for GTK.
3808 (x_term_init): Call xg_display_open for additional displays.
3809 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
3810 for GTK.
3811
3812 * xmenu.c (single_menu_item, mouse_position_for_popup)
3813 (x_activate_menubar): Formatting adjustments.
3814
3815 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
3816 adjustments.
3817
3818 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
3819 (xg_display_close, xg_create_default_cursor)
3820 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
3821 handling.
854c1a59
SM
3822 (xg_left_ptr_cursor): Remove.
3823 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
810f2256
JD
3824 cursor here.
3825 (xg_win_to_widget): Take Display* argument, call
3826 gdk_xid_table_lookup_for_display.
3827 (xg_create_frame_widgets, xg_get_file_name, create_menus)
3828 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
3829 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
3830 in FRAME_X_DISPLAY_INFO.
3831 (xg_get_scroll_id_for_window): Take Display* argument.
3832 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
854c1a59 3833 (xg_initialize): Remove xg_left_ptr_cursor.
810f2256
JD
3834
3835 * gtkutil.h: xg_get_scroll_id_for_window, xg_win_to_widget takes
3836 Display* argument also. Declare xg_display_open,
3837 xg_display_close, xg_create_default_cursor.
3838
0b03cc78
JD
38392003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3840
3841 * xterm.c (x_detect_focus_change): Do not change focus frame for
3842 Enter/LeaveNotify if the current focus frame has explicit focus.
3843
77e688fa
KS
38442003-11-14 Kim F. Storm <storm@cua.dk>
3845
3846 * dispnew.c (update_text_area): Fix redisplay error when hscroll
3847 is active and first glyph is only partially visible.
854c1a59 3848
dd429b03
KH
38492003-11-13 Kenichi Handa <handa@m17n.org>
3850
3851 * xdisp.c (select_frame_for_redisplay): New function.
3852 (redisplay_internal): Record also selected_frame for
3853 unwind_redisplay. Call select_frame_for_redisplay before
3854 redrawing each frame.
3855 (unwind_redisplay): Argument changed to a cons.
3856
6d9266f4
LT
38572003-11-12 Luc Teirlinck <teirllm@auburn.edu>
3858
3859 * fns.c (Fstring_to_multibyte): Doc fix.
3860
80060eb3
KH
38612003-11-11 Kenichi Handa <handa@m17n.org>
3862
3863 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
3864
74305183
JD
38652003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3866
3867 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
3868 program specified positions.
3869
cfda993e
JD
38702003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3871
3872 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
3873
df211069
KH
38742003-11-08 Kenichi Handa <handa@m17n.org>
3875
3876 * Makefile.in (lisp): Add kannada.el.
3877 (shortlisp): Likewise.
3878
4307d534
KH
38792003-11-07 Kenichi Handa <handa@m17n.org>
3880
854c1a59
SM
3881 * coding.c (coding_allocate_composition_data):
3882 Reset coding->composing to COMPOSITION_NO.
4307d534
KH
3883 (coding_restore_composition): Detect invalid composition data.
3884 Give Fstring and Fvector a Lispy integer, not C int.
3885
854c1a59
SM
38862003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
3887
3888 * floatfns.c (Flogb): Don't use VALMASK.
3889
3890 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
3891 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
3892
3893 * lisp.h (XINT): Move the cast to clarify what is going on.
3894 (GCTYPEMASK, XSETTYPE): Remove.
3895 (XGCTYPE): Make it an alias of XTYPE.
3896
d04103a1
JD
38972003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3898
3899 * xterm.c (x_term_init): Fix formatting.
3900
da18b5ac
JD
39012003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3902
3903 * gtkutil.h: Declare xg_have_tear_offs, remove xg_keep_popup
3904 and xg_did_tearoff.
3905
3906 * gtkutil.c: Remove variable xg_did_tearoff.
3907 (xg_have_tear_offs): New function.
3908 (tearoff_remove): Just decrease xg_detached_menus.
3909 (tearoff_activate): Increase xg_detached_menus and call
3910 tearoff_remove when tearoff is removed.
854c1a59 3911 (xg_keep_popup): Remove function.
da18b5ac
JD
3912 (create_menus): Give add_tearoff_p as argument to recursive
3913 call to create_menus.
3914 (xg_create_widget): Use variables instead of multiple
3915 strcmp. Tell create_menus to create tear off only for
3916 menu bar menus.
3917 (xg_update_menubar): Change title for a detached menu also.
3918 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
3919 of deep_p.
3920 (xg_initialize): Initialize xg_detached_menus, remove
3921 initialization of xg_did_tearoff.
3922
3923 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
3924 xg_have_tear_offs returns non-zero.
3925 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
3926 call to xg_keep_popup.
3927
64d4923e
AC
39282003-11-01 Andrew Choi <akochoi@shaw.ca>
3929
3930 * macterm.c (XTread_socket): Handle menubar selection and grow
3931 window only for mouseDown events.
854c1a59 3932
6cc8bc07
JD
39332003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3934
3935 * xterm.c (x_term_init): For GTK part, increase x_initialized
3936 to check for more than one display. Use error instead of return 0.
3937
043131c4
AC
39382003-10-31 Andrew Choi <akochoi@shaw.ca>
3939
854c1a59 3940 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
043131c4
AC
3941 (copy_dysymtab): Call it.
3942
bdda99a1
LT
39432003-10-31 Luc Teirlinck <teirllm@auburn.edu>
3944
3945 * eval.c (Fdefvaralias): Doc fix.
3946
800f42ff 39472003-10-26 Luc Teirlinck <teirllm@auburn.edu>
0d11571e
LT
3948
3949 * data.c (Fsetplist): Doc fix.
3950
ef35b389
LK
39512003-10-14 Lute Kamstra <lute@gnu.org>
3952
3953 * window.c (Fset_window_fringes): Clarify docstring.
07107abc 3954
ef35b389 39552003-10-14 Kim F. Storm <storm@cua.dk>
854c1a59 3956
07107abc
KS
3957 * window.c (Fset_window_margins): Simplify arg checking.
3958
f7005886
RS
39592003-10-13 Richard M. Stallman <rms@gnu.org>
3960
3961 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
3962 (print_partial_compiled_pattern): Replace assert with a printout.
3963 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
3964
3965 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
3966
3967 * window.c (Fset_window_margins): Allow only integers as args.
3968 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
3969 Doc fixes.
3970
9c0c2af5
LK
39712003-10-13 Lute Kamstra <lute@gnu.org>
3972
3973 * window.c (Fset_window_fringes): Elaborate docstring.
3974
3f080e4e
AC
39752003-10-12 Andrew Choi <akochoi@shaw.ca>
3976
854c1a59 3977 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
a4887377 3978
3f080e4e
AC
3979 * s/darwin.h (GC_MARK_STACK): Define.
3980
0aa513ed
JD
39812003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3982
3983 * window.c (shrink_windows): New function.
3984 (size_window): Call shrink_windows to calculate window sizes when
3985 shrinking frame with more than one window.
3986
6aa8858a
KS
39872003-10-12 Kim F. Storm <storm@cua.dk>
3988
3989 * xdisp.c (compute_fringe_widths): Doc fix.
3990
c2164d91
KH
39912003-10-08 Kenichi Handa <handa@m17n.org>
3992
854c1a59 3993 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
c2164d91 3994
f82ac129
KH
39952003-10-07 Kenichi Handa <handa@m17n.org>
3996
3997 * coding.c (Qcoding_system_define_form): New variable.
3998 (syms_of_coding): Intern and staticpro it.
3999 (Fcheck_coding_system): Try to autoload the definition of
4000 CODING-SYSTEM.
4001
9296c947
LT
40022003-10-05 Luc Teirlinck <teirllm@auburn.edu>
4003
4004 * fns.c (Frequire): Doc fix.
4005
c1f0671a
JD
40062003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4007
3d8c3826
JD
4008 * xfns.c (Fx_send_client_event): New function as a base for
4009 manipulating extended window manager hints.
6dc15d98 4010 (Fx_send_client_event): Remove unused variable s.
3d8c3826 4011
068ae0fd
JD
4012 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
4013 that function is removed.
4014
4015 * xterm.c (x_set_offset): Use move_offset_left/top instead of
4016 x/y_pixels_outer_diff.
4017 (x_check_expected_move): Calculate move_offset_left/top.
4018
4019 * xterm.h (struct x_output): New members: move_offset_top/left.
4020
854c1a59 4021 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
068ae0fd
JD
4022 call x_set_offset directly.
4023
4024 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
4025
96f09305
JD
4026 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
4027
4028 * xterm.c (x_delete_display): Free font names and font_encoder
4029 in dpyinfo->font_table.
4030
854c1a59
SM
4031 * xfns.c (Fx_close_connection): Only call XFreeFont here.
4032 Move xfree of font names to x_delete_display.
96f09305 4033
c1f0671a
JD
4034 * xterm.h (struct x_display_info): New member, wm_type.
4035 (struct x_output): New members, expected_top/left and
4036 check_expected_move.
4037
4038 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
4039 is received.
854c1a59
SM
4040 (handle_one_xevent): Rename x_check_expected_move from
4041 x_check_fullscreen_move.
c1f0671a
JD
4042 (x_set_offset): Only add WM decoration sizes to modified_top/left
4043 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
854c1a59 4044 (x_check_expected_move): Rename from x_check_fullscreen_move.
c1f0671a
JD
4045 Removed fullscreen specific code. Use check_expected_move,
4046 expected_left/top instead. Also, set wm_type.
4047 (x_term_init): Initialize wm_type to unknown.
4048
4049 * frame.c (x_fullscreen_move): Remove addition of WM decoration
4050 sizes to move_x/y.
4051
be2fdba9
KH
40522003-10-03 Kenichi Handa <handa@m17n.org>
4053
4054 * macterm.c (x_load_font): Clear all members of FONTP before start
4055 filling them.
4056
40572003-10-02 Kenichi Handa <handa@m17n.org>
4058
4059 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
4060 before calling find_ccl_program_func. Call find_ccl_program_func
4061 only when fontp->font_encoder is not NULL.
4062
4063 * xterm.c (x_load_font): Clear all members of FONTP before start
4064 filling them.
4065
26a6e439
JPW
40662003-10-03 John Paul Wallington <jpw@gnu.org>
4067
4068 * keymap.c (map_keymap): Don't abort when binding is a vector.
4069
0d4c2dc2
JR
40702003-10-02 Jason Rumney <jasonr@gnu.org>
4071
854c1a59
SM
4072 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
4073 Sync dependencies with Makefile.in.
a63cf46f
JR
4074 (alloca.o): Remove.
4075
0d4c2dc2
JR
4076 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
4077 filling them.
4078
4079 * w32bdf.c (w32_load_bdf_font): Likewise.
4080
ab8f7d5c
RS
40812003-09-30 Richard M. Stallman <rms@gnu.org>
4082
4083 * term.c (set_tty_color_mode): Calculate current_mode_spec
4084 regardless of value of VAL.
4085
854c1a59 4086 * intervals.c (graft_intervals_into_buffer):
ab8f7d5c
RS
4087 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
4088 Handle over_used when splitting UNDER.
4089
a64387ee 40902003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
ab8f7d5c
RS
4091
4092 * regex.c (regex_compile): Free the stack when returning from function.
4093
3413f972
KH
40942003-09-28 Kenichi Handa <handa@m17n.org>
4095
4096 * fontset.c (Finternal_char_font): Change return value to
4097 cons (FONT-NAME . GLYPH-CODE).
4098
a6eeaa81 40992003-09-28 Eli Zaretskii <eliz@gnu.org>
40409f05
EZ
4100
4101 * term.c (tty_setup_colors): Treat any negative argument as -1.
4102
f98ddc99
KH
41032003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
4104
4105 * process.c (send_process): Delete unused temp_buf.
4106
66c8f1a8
DL
41072003-09-26 Dave Love <fx@gnu.org>
4108
4109 * xterm.c (x_bitmap_mask): Declare.
4110
ca716c26
DL
41112003-09-25 Dave Love <fx@gnu.org>
4112
4113 * Makefile.in (fns.o): Depend on md5.h.
4114
fbe57420
KS
41152003-09-25 Kim F. Storm <storm@cua.dk>
4116
4117 * window.c (set_window_buffer): Fix redisplay problems when
4118 switching between buffers with different display margin widths.
4119
ef6ae4ff
KS
41202003-09-23 Kim F. Storm <storm@cua.dk>
4121
4122 * process.c (set_socket_option): Fix :bindtodevice option.
4123 (Fset_network_process_option): Update process contact list when
4124 setting option succeeds.
4125 (Fmake_network_process): Doc fix.
4126
68e03c1c
DL
41272003-09-23 Dave Love <fx@gnu.org>
4128
7146d1c1 4129 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
68e03c1c 4130
a6eeaa81 41312003-09-22 Eli Zaretskii <eliz@gnu.org>
2f809aae
EZ
4132
4133 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
4134 color mode is an integer number (it could be -1).
4135
8fe7d8c8
RS
41362003-09-22 Richard M. Stallman <rms@gnu.org>
4137
4138 * intervals.c (graft_intervals_into_buffer): Correct the main loop
4139 in the case where OVER is longer than UNDER.
4140
2f71b5ea
MY
41412003-09-22 Masatake YAMATO <jet@gyve.org>
4142
7146d1c1 4143 * window.c (Fset_window_scroll_bars): Validate the value of
2f71b5ea 4144 `vertical_type'.
7146d1c1 4145
0c4da023
KS
41462003-09-21 Kim F. Storm <storm@cua.dk>
4147
4148 * frame.c (Vdefault_frame_scroll_bars): New variable.
4149 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
4150 (syms_of_frame): DEFVAR_LISP it, and initialize according to
4151 window-system default scroll bar position.
4152
b648413b
KS
4153 * window.c (Fwindow_scroll_bars): Doc fix.
4154
8f5b9e34
JD
41552003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4156
854c1a59 4157 * xterm.c (x_set_offset): Take window manager decorations into account.
8f5b9e34 4158
b0f23edf
RS
41592003-09-19 Richard M. Stallman <rms@gnu.org>
4160
4161 * atimer.h: Don't include lisp.h.
4162 (P_): Define it here (as well as elsewhere).
4163
4164 * print.c (Fprin1_to_string): Move the PRINTPREPARE
4165 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
4166
4167 * data.c (Fvariable_binding_locus): New function.
4168 (syms_of_data): defsubr it.
4169 (Flocal_variable_p): Delete duplicate call to indirect_variable.
4170
e1283999
DL
41712003-09-18 Dave Love <fx@gnu.org>
4172
ad5f3636
DL
4173 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
4174
e1283999
DL
4175 * process.c (Fnetwork_interface_info): Fix type error.
4176 (Fnetwork_interface_list): Doc fix.
4177 (read_process_output, read_process_output): Delete unused var.
4178
b8c7fd71
KS
41792003-09-17 Kim F. Storm <storm@cua.dk>
4180
4181 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
4182 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
4183 (Fnetwork_interface_info): Check that ifreq struct has required
4184 fields before accessing them; this requires that those fields are
4185 defined as macros, which may be too restrictive on some platforms,
4186 but it is better than failing on other platforms.
4187 (syms_of_process): Only defsubr above fns when included.
4188
11e0a411
DL
41892003-09-17 Dave Love <fx@gnu.org>
4190
4191 * unexalpha.c: Don't include varargs.h.
4192
e9c50801
KS
41932003-09-17 Kim F. Storm <storm@cua.dk>
4194
4195 * process.c (Fset_process_sentinel): Add sentinel to childp plist
4196 for network process.
4197 (socket_options): Add `:' prefix to option names. Add optbit field.
4198 (set_socket_option): Remove no_error arg and special handling of s < 0.
4199 Return 1<<optbit for known option, 0 for unknown.
4200 Do not interpret 0 as false for boolean option (only nil).
4201 Pass failed option and value to report_file_error.
7146d1c1 4202 (Fset_network_process_options): Replace by Fset_network_process_option.
e9c50801
KS
4203 (Fset_network_process_option): New function to set just one option.
4204 (Fmake_network_process): Allow :coding arg to be a cons.
4205 Allow :server arg to be an integer specifying backlog size.
4206 Remove :options arg, and allow options to be specified directly
4207 as :KEY, VALUE pairs. Parse these options before binding socket.
4208 As before, :reuseaddr t is default for a server process, but this
4209 can now be disabled by specifying :reuseaddr nil.
4210 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
4211 (init_process): Availability of network options is now checked with
4212 simpler syntax (featurep 'make-network-process :OPTION); use loop to
4213 setup features.
4214 (syms_of_process): Fix defsubr's for the replaced functions.
4215
a0fc3644
DL
42162003-09-16 Dave Love <fx@gnu.org>
4217
4218 * Makefile.in: Depend on coding.h.
4219
6df2a645
KS
42202003-09-14 Kim F. Storm <storm@cua.dk>
4221
4222 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
4223 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
4224 (syms_of_process): Defsubr them.
4225
4226 * config.in: Regenerate.
7146d1c1
SM
4227
42282003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
4229
4230 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
4231 * m/news-r6.h (XUNMARK): Remove.
4232 * m/mips.h (XUNMARK): Remove.
4233 * m/mips-siemens.h (XUNMARK): Remove.
4234 * m/iris4d.h (XUNMARK): Remove.
4235 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
4236
0930c1a1
SM
42372003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
4238
31003b9e
SM
4239 * lisp.h (VALBITS): Don't remove 1 for the markbit.
4240 (union Lisp_Object): Use unsigned int for types. Remove markbit.
4241 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
4242 (XTYPE): Use unsigned right-shift.
4243 (XMARKBIT, XMARK, XUNMARK): Remove.
4244
0930c1a1
SM
4245 * alloc.c (init_intervals, init_symbol, init_marker):
4246 Don't preallocate anything.
4247 (Fgarbage_collect, mark_object): Ignore the markbit.
4248
4249 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
4250
19bb0fcd 42512003-09-08 Lute Kamstra <lute@gnu.org>
5df034de
LK
4252
4253 * xdisp.c (pint2hrstr): New function.
4254 (decode_mode_spec): Add `%i' and `%I' specs.
4255 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
4256 for `mode-line-format'.
4257
03bb6a06
AS
42582003-09-07 Andreas Schwab <schwab@suse.de>
4259
4260 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
4261 avoid warning.
4262
a6eeaa81 42632003-09-07 Eli Zaretskii <eliz@gnu.org>
2063d89c 4264
0930c1a1 4265 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
2063d89c 4266
ed159bbf
KS
42672003-09-03 Kim F. Storm <storm@cua.dk>
4268
4269 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
4270 change (superseded by 2002-08-30 change); the default blink-off
4271 cursor is now again "no cursor".
4272
fe64a394
JR
42732003-09-01 Jason Rumney <jasonr@gnu.org>
4274
4275 * makefile.w32-in (alloca.o): Remove.
4276 (coding.o): Depend on intervals.h
4277 (emacs.o, bytecode.o): Depend on window.h
4278
c0175e24
DL
42792003-09-01 Dave Love <fx@gnu.org>
4280
4281 * Makefile.in (alloca.o): Remove commands.
4282 (coding.o): Depend on intervals.h composite.h window.h.
4283 (emacs.o): Depend on window.h keyboard.h keymap.h.
4284 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
4285 (bytecode.o): Depend on window.h.
4286
a24d4cb2
JR
42872003-08-31 Jason Rumney <jasonr@gnu.org>
4288
4bc2315e
JR
4289 * w32term.c (w32_per_char_metric): Allow cached metrics to be
4290 returned even when font_type is unknown.
4291
a24d4cb2
JR
4292 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
4293
9d35adc7
JD
42942003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4295
4296 * xterm.c (x_term_init): Initialize new fields in x_display_info.
4297
4298 * xterm.h (struct x_display_info): Add red/green/blue_bits and
4299 *_offset.
4300
4301 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
4302 calculate pixel value.
4303
6f68b035
GM
43042003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
4305
0930c1a1
SM
4306 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
4307 Don't tell redisplay display is accurate when it's actually been
4308 paused for pending input.
6f68b035 4309
4828b4d7
RS
43102003-08-29 Richard M. Stallman <rms@gnu.org>
4311
4312 * dispnew.c (adjust_glyph_matrix): Call window_box
4313 whenever W is nonzero.
4314
4315 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
4316 (Fkill_local_variable, Fmake_variable_frame_local)
0930c1a1 4317 (Flocal_variable_p, Flocal_variable_if_set_p):
4828b4d7
RS
4318 Use indirect_variable to trace thru variable aliases.
4319
4320 * config.in: Updated.
4321
4322 * callint.c (Fcall_interactively): Save and restore
4323 Vthis_command, Vthis_original_command, real_this_command,
4324 and current_kboard->Vlast_command.
4325
4326 * abbrev.c (Fexpand_abbrev): Insert before deleting.
4327
e019878d
GM
43282003-08-29 Gerd Moellmann <gerd@gnu.org>
4329
4330 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
4331
85478bc6
KH
43322003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
4333
0930c1a1 4334 * coding.c (decode_coding_iso2022): Initialize local variable c2.
85478bc6
KH
4335 (decode_coding_sjis_big5): Likewise.
4336
07ce82d3
JR
43372003-08-27 Jason Rumney <jasonr@gnu.org>
4338
d3703de3
JR
4339 * w32.c (sys_pipe): Protect against file descriptor overflow.
4340
ee4a01d1
JR
4341 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
4342
07ce82d3
JR
4343 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
4344
a64387ee 43452003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
72d19c66
LK
4346
4347 * xfns.c (Vgtk_version_string): New variable.
4348 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
4349
a6eeaa81 43502003-08-24 Eli Zaretskii <eliz@gnu.org>
5459e42a 4351
0930c1a1 4352 * term.c (term_init): Remove `const' from buffer_size's declaration.
3d8714e7 4353
5459e42a
EZ
4354 * Makefile.in (msdos.o): Depend on intervals.h.
4355
0930c1a1 4356 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
5459e42a 4357
231d6cfb
JD
43582003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4359
4360 * xterm.h (struct x_display_info): New fields: client_leader_window
4361 and Xatom_wm_client_leader.
4362
4363 * xterm.c (x_initialize): Move call to x_session_initialize to ...
4364 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
4365
4366 * xsmfns.c (create_client_leader_window): New function.
4367 (x_session_initialize): Call create_client_leader_window, take
4368 dpyinfo as argument.
4369
4370 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
4371
4372 * Makefile.in (xsmfns.o): Add more depenedencies.
4373
afa88464
DL
43742003-08-21 Dave Love <fx@gnu.org>
4375
4376 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
4377
f730033e
KH
43782003-08-21 Kenichi Handa <handa@m17n.org>
4379
4380 * term.c (term_init): Fix previous change; don't rely on the
4381 length of `buffer' if TERMINFO is defined.
4382
6dca786c
DL
43832003-08-20 Dave Love <fx@gnu.org>
4384
4385 * atimer.h: Include lisp.h.
4386
4387 * lisp.h (EMACS_LISP_H): New.
4388 (popup_activated_flag): Don't declare.
4389
4390 * alloca.c: Some merging with gnulib. Change logic and doc
4391 concerning (x)malloc/(x)free -- no longer Emacs-specific.
4392 [DO_BLOCK_INPUT]: Don't include lisp.h.
4393 (xmalloc, xfree): Declare.
4394 (malloc): Don't declare.
4395
0930c1a1 4396 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
6dca786c
DL
4397 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
4398 atimer.h, blockinput.h.
4399
4400 * alloc.c (lisp_align_malloc): Change type of `aligned'.
4401
4402 * alloca.s: Removed.
4403
3a06a6d9
RS
44042003-08-19 Gerd Moellmann <gerd@gnu.org>
4405
4406 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
4407 use -lncurses.
4408
4409 * term.c (term_init): Use a buffer of size 4096 for tgetent since
4410 FreeBSD returns something longer than 2044. Abort if the end of
4411 the buffer is overwritten.
4412
27eeee55
MB
44132003-08-19 Miles Bader <miles@gnu.org>
4414
4415 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
4416
2f297815
GM
44172003-08-19 Gerd Moellmann <gerd@gnu.org>
4418
f4446bbf
GM
4419 * alloc.c (lisp_align_malloc): Check for memory full when
4420 allocating ablocks, which also avoids freeing a pointer into an
4421 ablocks structure.
4422
4423 * puresize.h (BASE_PURESIZE): Increase to 1100000.
4424
0930c1a1 4425 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
2f297815 4426
0e7d7aae
RS
44272003-08-16 Richard M. Stallman <rms@gnu.org>
4428
4429 * editfns.c (Fencode_time): Doc fix.
4430
44312003-08-16 David Ponce <david@dponce.com>
4432
4433 * fileio.c (Fwrite_region): Fix conditional expression to issue
4434 the right message.
4435
44362003-08-16 Juri Linkov <juri@jurta.org> (tiny change)
4437
4438 * syntax.c (Fforward_word): Argument changed to optional.
0930c1a1 4439 Set default value to 1.
0e7d7aae 4440
5d551295
KH
44412003-08-15 Kenichi Handa <handa@m17n.org>
4442
4443 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
4444 what autoscaled.
4445 (best_matching_font): Once we find a better scalable font, set
4446 non_scalable_has_exact_height_p to 1.
4447 (try_font_list): Call try_alternative_families to try any family
4448 with the given registry.
4449
1661e56b
AS
44502003-08-09 Andreas Schwab <schwab@suse.de>
4451
f29181dc
AS
4452 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
4453
1661e56b
AS
4454 * print.c (print_string): Fix printing of multibyte string with
4455 nontrivial printcharfun.
4456
465aa50a
JD
44572003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4458
4459 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
4460
4461 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
4462
e430e5ba
KH
44632003-07-31 Kenichi Handa <handa@m17n.org>
4464
4465 * process.c (read_process_output): Return the actually read bytes
4466 instead of the result of decoding.
4467
97e7188e
KH
44682003-07-31 Kenichi Handa <handa@m17n.org>
4469
4470 * xterm.h (struct x_bitmap_record): New member have_mask.
4471
4472 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
4473 to 0.
4474 (x_create_bitmap_from_file): Likewise.
4475 (x_destroy_bitmap): Check have_mask member before freeing a mask.
4476 (x_destroy_all_bitmaps): Likewise.
4477 (x_create_bitmap_mask): Set have_mask member to 1.
4478
b53094d6
RS
44792003-07-30 Richard M. Stallman <rms@gnu.org>
4480
4481 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
4482
631f2082
JD
44832003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4484
4485 * gtkutil.c (xg_mark_data): Update calls to mark_object.
4486
c855f2ca
RS
44872003-07-29 Richard M. Stallman <rms@gnu.org>
4488
4489 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
4490 Conditionalize XIM code on HAVE_XIM.
4491
4492 * fns.c (Fclear_string): New function.
4493 (syms_of_fns): defsubr it.
4494
17e6d491
KH
44952003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> (tiny change)
4496
0930c1a1 4497 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
17e6d491 4498
29ea8ae9
SM
44992003-07-22 Stefan Monnier <monnier@cs.yale.edu>
4500
4501 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
4502
4503 * buffer.c (delete_all_overlays): New function.
4504 * buffer.h (delete_all_overlays): Declare.
4505 * coding.c (run_pre_post_conversion_on_str):
4506 * print.c (temp_output_buffer_setup):
4507 * fileio.c (Finsert_file_contents):
4508 * minibuf.c (get_minibuffer): Use it.
4509
1dd7ccf2
AC
45102003-07-22 Andrew Choi <akochoi@shaw.ca>
4511
4512 * unexmacosx.c (unexec_regions_sort_compare):
4513 (unexec_regions_merge): New functions. Sort and merge unexec
4514 regions before dumping them.
4515
f57bd967
DL
45162003-07-22 Dave Love <fx@gnu.org>
4517
4518 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
4519
7cdee936
SM
45202003-07-21 Stefan Monnier <monnier@cs.yale.edu>
4521
4522 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
4523 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
4524 MARKBIT as the gcmarkbit for strings.
4525
e50886d3
RS
45262003-07-21 Richard M. Stallman <rms@gnu.org>
4527
4528 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
4529
29ea8ae9 4530 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
e50886d3
RS
4531 (syms_of_fns): Corresponding change.
4532
4533 * alloc.c (syms_of_alloc): Doc fixes.
4534
45352003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
4536
4537 * s/netbsd.h: Use -Wl syntax.
4538
fdc39b59
RS
45392003-07-17 Richard M. Stallman <rms@gnu.org>
4540
4541 * xterm.c (xim_initialize): Redo 6/24 change.
4542
9c53385f
SM
45432003-07-15 Stefan Monnier <monnier@cs.yale.edu>
4544
4545 * buffer.c (copy_overlays): Use EMACS_INT for positions.
4546 (Fswitch_to_buffer): Don't signal an error when switching to the same
4547 buffer in a dedicated window.
4548
4549 * alloc.c: Use bitmaps for cons, as was done for floats.
4550 (init_float, init_cons): Let the normal code allocate the first block.
4551 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
4552 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
4553 New macros.
4554 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
4555 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
4556 (live_cons_p): Check the pointer is not past the `conses' array.
4557 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
4558 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
4559 (survives_gc_p): Use CONS_MARKED_P and simplify.
4560 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
4561
dde13196
PE
45622003-07-13 Paul Eggert <eggert@twinsun.com>
4563
4564 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
4565 puts it into BSS instead, at least on Solaris 8 and 9.
4566 This is a valid optimization, and it may occur on other platforms,
4567 so Emacs should not assume that initializing a static variable to
4568 zero puts it into data.
4569 * alloc.c (pure, staticvec):
4570 Initialize these arrays to nonzero, so that they're not
4571 put into BSS by that optimization.
4572
a801bc34
SM
45732003-07-13 Stefan Monnier <monnier@cs.yale.edu>
4574
4575 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
4576 (lisp_align_malloc): Use posix_memalign is available.
4577 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
4578 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
4579 for consistency. Update users.
4580
0c8b2afa
RS
45812003-07-13 Richard M. Stallman <rms@gnu.org>
4582
4583 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
4584
668c2ab0
JB
45852003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
4586
4587 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
4588 and use the Gtk+ function gtk_window_icon_from_file if available.
4589
4590 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
4591 handle mask of bitmaps.
4592 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
4593 mask property.
4594 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
4595
4596 * xterm.h (xg_set_icon): New function.
4597
800bebe3
RS
45982003-07-12 Paul Eggert <eggert@twinsun.com>
4599
4600 * unexelf.c (unexec): Consider a section to precede the .bss
4601 section if its addresses overlap that of .bss.
4602
69e38995
RS
46032003-07-12 Richard M. Stallman <rms@gnu.org>
4604
4605 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
4606
4607 * config.in (HAVE_CRTIN): Add #undef.
4608 (INLINE): Really inline only if OPTIMIZE is defined.
4609
4610 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
4611 END_FILES_1.
4612 (START_FILES_1, END_FILES_1): New macros (conditional).
a801bc34 4613 (LD_SWITCH_SYSTEM_TEMACS): Define.
69e38995
RS
4614
4615 * s/openbsd.h: Don't include bsd4-3.h.
a801bc34
SM
4616 (TERMINFO): Define.
4617 (LIBS_TERMCAP): Define.
4618 (LD_SWITCH_SYSTEM): Define (two definitions).
69e38995
RS
4619
4620 * xfns.c: Include libpng/png.h instead of png.h.
4621
f1d0c238
AS
46222003-07-11 Andreas Schwab <schwab@suse.de>
4623
4624 * buffer.c (modify_overlay): Update prototype.
4625 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
4626 Likewise.
4627
5f6bf5fe
SM
46282003-07-09 Stefan Monnier <monnier@cs.yale.edu>
4629
4630 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
4631 (struct interval): Move to intervals.h.
4632 (struct Lisp_Marker): Use EMACS_INT for position info.
4633 (forward_point): Remove prototype of defunct function.
4634 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
4635 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
4636 (syms_of_textprop, set_text_properties): Remove prototypes that are
4637 already in intervals.h.
4638
4639 * intervals.h (struct interval): Move from lisp.h.
4640 Use EMACS_INT for position and size info.
4641
4642 * coding.c: Include intervals.h for Fset_text_properties.
4643
4644 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
4645 position and length information.
4646
2765b457
SM
46472003-07-09 Stefan Monnier <monnier@cs.yale.edu>
4648
4649 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
4650 position and length information.
4651
2410d73a
SM
46522003-07-09 Stefan Monnier <monnier@cs.yale.edu>
4653
4654 Change overlays_after and overlays_before so the overlays themselves
4655 are linked into lists, rather than using cons cells. After all each
4656 Lisp_Misc already occupies 5 words, so we can add a `next' field to
4657 Lisp_Overlay for free and save up one cons cell per overlay (not
4658 to mention one indirection when traversing the list of overlay).
4659
4660 * lisp.h (struct Lisp_Overlay): New field `next'.
4661
4662 * buffer.h (struct buffer): Change overlays_before and overlays_after
4663 from Lisp lists of overlays to pointers to overlays.
4664
4665 * buffer.c (overlay_strings, recenter_overlay_lists):
4666 Fix typo in eassert in last commit.
4667 (unchain_overlay): New function.
4668 (add_overlay_mod_hooklist): Use AREF.
4669 (copy_overlays, reset_buffer, overlays_at, overlays_in)
4670 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
4671 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
4672 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
4673 (report_overlay_modification, evaporate_overlays, init_buffer_once):
4674 Adjust to new type of overlays_(before|after).
4675
4676 * alloc.c (mark_object): Mark the new `next' field of overlays.
4677 (mark_buffer): Manually mark the overlays_(after|before) fields.
4678
4679 * coding.c (run_pre_post_conversion_on_str):
4680 * editfns.c (overlays_around):
4681 * xdisp.c (load_overlay_strings):
4682 * fileio.c (Finsert_file_contents):
4683 * indent.c (current_column):
4684 * insdel.c (signal_before_change, signal_after_change):
4685 * intervals.c (set_point_both):
4686 * print.c (temp_output_buffer_setup): Use new type for
4687 overlays_(before|after).
4688
04812929
SM
46892003-07-08 Stefan Monnier <monnier@cs.yale.edu>
4690
4691 * buffer.c (report_overlay_modification): Don't run hooks while
4692 traversing the list of overlays.
4693
4694 * buffer.h (struct buffer): Use an int for overlay_center.
4695 (overlays_at, evaporate_overlays, recenter_overlay_lists)
4696 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
4697
4698 * buffer.c (reset_buffer, recenter_overlay_lists)
4699 (adjust_overlays_for_insert, adjust_overlays_for_delete)
4700 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
4701 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
4702 (overlays_at, evaporate_overlays, recenter_overlay_lists)
4703 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
4704
4705 * xdisp.c (fast_find_position): Remove unused var.
4706
4707 * cmds.c (Qexpand_abbrev): New sym.
4708 (syms_of_cmds): Initialize it.
4709 (internal_self_insert): Use it to call expand-abbrev.
4710
2e7ecf15
KS
47112003-07-09 Kim F. Storm <storm@cua.dk>
4712
f9711de4 4713 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if Emacs
2e7ecf15 4714 was configured with --without-xim.
42f81f64 4715 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
2e7ecf15 4716
c6de56a0
RS
47172003-07-07 Richard M. Stallman <rms@gnu.org>
4718
4719 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
4720
4721 * alloc.c (Fgarbage_collect): Doc fix.
4722
b93fb365
KH
47232003-07-07 Nozomu Ando <nand@mac.com> (tiny change)
4724
4725 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
4726
bfe1a3f7
SM
47272003-07-06 Stefan Monnier <monnier@cs.yale.edu>
4728
04812929
SM
4729 * minibuf.c (read_minibuf): UNGCPRO before returning.
4730 (Ftry_completion, Fall_completions): Doc fix.
4731
bfe1a3f7
SM
4732 * alloc.c (live_float_p): Check that p is not past the `floats' array,
4733 now that `floats' is not the last element of the struct any more.
4734
ee79d1aa
JR
47352003-07-06 Jason Rumney <jasonr@gnu.org>
4736
4737 * w32term.h (ClipboardSequence_Proc): New type.
4738
4739 * w32fns.c (clipboard_sequence_fn): New variable.
4740 (globals_of_w32fns): Initialize it.
4741
4742 * w32select.c (last_clipboard_sequence_number): New variable.
4743 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
4744 number if possible.
4745
49723c04
SM
47462003-07-06 Stefan Monnier <monnier@cs.yale.edu>
4747
4698665f
SM
4748 * m/amdx86-64.h (MARKBIT):
4749 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
4750 MARKBIT and ARRAY_MARK_FLAG any more.
4751
4752 * m/hp800.h (XSETMARKBIT):
4753 * m/sr2k.h (XSETMARKBIT):
4754 * lisp.h (XSETMARKBIT): Remove unused macro.
4755
49723c04
SM
4756 * lisp.h (mark_object): Change prototype.
4757
4758 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
4759 (last_marked): Change accordingly.
4760 (mark_interval, mark_maybe_object, mark_maybe_pointer)
4761 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
4762 (mark_buffer): Update calls to mark_object.
4763
4764 * bytecode.c (mark_byte_stack):
4765 * fns.c (sweep_weak_table):
4766 * keyboard.c (mark_kboards): Update calls to mark_object.
4767
1d660eca
JR
47682003-07-06 Jason Rumney <jasonr@gnu.org>
4769
4770 * alloc.c (struct ablock): Only include padding when there is some.
4771
618b5ae4
SM
47722003-07-04 Stefan Monnier <monnier@cs.yale.edu>
4773
4774 * alloc.c (ALIGN): Add casts to simplify usage.
4775 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
4776 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
4777 (struct ablock, struct ablocks): New types.
4778 (free_ablock): New global var.
4779 (lisp_align_malloc, lisp_align_free): New functions.
4780 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
4781 (struct float_block): Reorder and add gcmarkbits.
4782 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
4783 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
4784 (init_float, make_float): Use lisp_align_malloc.
4785 (free_float, live_float_p): Don't use `type' any more.
4786 (make_float): Use FLOAT_UNMARK to access to mark bit.
4787 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
4788 Use FLOAT_MARKED_P to access the mark bit.
4789 (pure_alloc): Simplify use of ALIGN.
4790 (mark_object): Use FLOAT_MARK to access the mark bit.
4791 (gc_sweep): Use new macros to access the float's mark bit.
4792 (init_alloc_once): Init free_ablock.
4793
4794 * lisp.h (struct Lisp_Float): Remove unused field `type'.
4795
3ef06d12
SM
47962003-06-27 Stefan Monnier <monnier@cs.yale.edu>
4797
4798 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
4799 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
4800 (allocate_buffer): Move.
4801 (string_bytes): Don't mask markbit of `size_byte'.
4802 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
4803 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
4804 Use the `size' field of buffers (rather than the `name' field) for
4805 the mark bit, as is done for all other vectorlike objects.
4806 Use the new macros to access the mark bit of vectorlike objects.
4807
e81043aa
RS
48082003-06-26 Richard M. Stallman <rms@gnu.org>
4809
4810 * puresize.h (BASE_PURESIZE): Increment base size.
4811
4812 * xdisp.c (fast_find_position): Enable Gerd's new definition.
4813
4814 * xterm.c (xim_initialize): Undo previous change.
4815
2d0834cc
SM
48162003-06-26 Stefan Monnier <monnier@cs.yale.edu>
4817
4818 * alloc.c (survives_gc_p): Simplify.
4819
4820 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
4821
4822 * window.c (Fset_window_dedicated_p): Simplify.
4823 (display_buffer_1): Don't raise the win from which minibuf was entered.
4824 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
4825 (Fminibuffer_selected_window): Simplify.
4826
4827 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
4828
4829 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
4830 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
4831
4832 * insdel.c (check_markers, adjust_markers_for_delete)
4833 (adjust_markers_for_insert, adjust_markers_for_replace)
4834 (prepare_to_modify_buffer, RESTORE_VALUE):
4835 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
4836 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
4837 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
4838 * alloc.c (Fmake_marker, free_marker, gc_sweep):
4839 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
4840 * editfns.c (save_excursion_restore, transpose_markers):
4841 * window.c (delete_window):
4842 * xdisp.c (message_dolog): Update for new types.
4843
d54ae3d8
JD
48442003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4845
a5f696ac
JD
4846 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
4847 (realize_default_face): Use default_face_done_p for the force_p
2d0834cc 4848 argument to set_lface_from_font_name. Set default_face_done_p to one.
a5f696ac
JD
4849
4850 * frame.c (make_frame): Initialize default_face_done_p.
4851
4852 * frame.h (struct frame): Add default_face_done_p.
4853
d54ae3d8
JD
4854 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
4855 will be defined.
4856
2336fe58
SM
48572003-06-25 Stefan Monnier <monnier@cs.yale.edu>
4858
4859 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
4860 Initialize the new field `gcmarkbit'.
4861 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
4862 (mark_interval_tree): Don't mark the tree separately from the nodes.
4863 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
4864 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
4865 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
4866
4867 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
4868 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
4869 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
4870 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
4871 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
4872
bcea31c2
DL
48732003-06-24 Dave Love <fx@gnu.org>
4874
4875 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
4876
4877 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
4878 from gnulib.
4879
2601f59e
RS
48802003-06-21 Richard M. Stallman <rms@gnu.org>
4881
4882 * fileio.c (Fwrite_region): Alternate messages
4883 for append and partial write.
4884
4885 * keyboard.c (read_key_sequence): When converting upcase fn key to
4886 downcase, update fkey and keytran so `backspace' gets translated.
4887
4888 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
4889
4890 * process.c (wait_reading_process_input): Don't signal SIGIO
4891 in batch mode.
4892
b5d2c621
KH
48932003-06-17 Kenichi Handa <handa@m17n.org>
4894
4895 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
4896 composite.h.
4897
4898 * xselect.c: Don't include charset.h, coding.h, composite.h.
4899 (Qforeign_selection): New variable.
4900 (syms_of_xselect): Intern and static it.
4901 (selection_data_to_lisp_data): Return a unibyte string made from
4902 data with `foreign-selection' text property.
4903
6793bc63
SM
49042003-06-15 Stefan Monnier <monnier@cs.yale.edu>
4905
4906 * termhooks.h (EVENT_INIT): New macro.
4907
4908 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
4909
4910 * alloc.c (mark_kboards): Move to keyboard.c.
4911
4912 * keyboard.c (record_asynch_buffer_change, read_avail_input):
4913 * xterm.c (x_dispatch_event):
4914 * xmenu.c (find_and_call_menu_selection):
4915 * xdisp.c (handle_tool_bar_click):
4916 * w32menu.c (menubar_selection_callback):
4917 * sysdep.c (kbd_input_ast, read_input_waiting):
4918 * msdos.c (dos_rawgetc):
4919 * macterm.c (mac_check_for_quit_char):
4920 * macmenu.c (menubar_selection_callback):
4921 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
4922 data to kbd_buffer_store_event.
4923
b3ea810c
KS
49242003-06-15 Kim F. Storm <storm@cua.dk>
4925
4926 * xdisp.c (x_fix_overlapping_area): Always use area relative X
6793bc63 4927 to fix redisplay problem with tall characters (such as \e,AC\e(B).
b3ea810c 4928
b8f75eda
KG
49292003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
4930
4931 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
4932
ba92ce48
KH
49332003-06-12 Kenichi Handa <handa@m17n.org>
4934
4935 * fileio.c (Fwrite_region): Save and restore restriction.
4936
b80263be
DL
49372003-06-12 Dave Love <fx@gnu.org>
4938
4939 * alloca.c (alloca): Declare arg as size_t.
4940
6793bc63
SM
4941 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
4942 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
b80263be 4943
b23c0a83
DL
49442003-06-11 Dave Love <fx@gnu.org>
4945
4946 * search.c (shrink_regexp_cache): Use xrealloc.
4947 (syms_of_search): Use xmalloc.
4948
700e47c2
KS
49492003-06-10 Kim F. Storm <storm@cua.dk>
4950
4951 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
4952 Adjust phys_cursor.x to be relative to window box, rather than
4953 text area before checking -- to ensure cursor is redrawn when
4954 exposing window.
4955 Note: This also fixes a similar (older) bug if display margins
4956 are present.
4957
f11aa0b2
KH
49582003-06-06 Kenichi Handa <handa@m17n.org>
4959
4960 * coding.c (encoding_buffer_size): If coding->type is
4961 coding_type_ccl, double magnification on CRLF encoding.
4962
3d143690
JR
49632003-06-06 Jason Rumney <jasonr@gnu.org>
4964
4965 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
4966 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
4967
4968 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
4969 Mac too.
4970
f16205ca
DL
49712003-06-05 Dave Love <fx@gnu.org>
4972
b23c0a83
DL
4973 * strftime.c: Merge changes from gnulib.
4974
f16205ca
DL
4975 * mktime.c (__mktime_internal): Merge changes from gnulib
4976 involving year 69 and dst2.
4977
4978 Changes to merge with gnulib version and be consistent with the
4979 autoconf test:
4980
6793bc63
SM
4981 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
4982 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
f16205ca
DL
4983 [HAVE_LOCALE_H]: Include locale.h.
4984 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
4985
9b87a0bc
KS
49862003-06-05 Kim F. Storm <storm@cua.dk>
4987
4988 * window.c (coordinates_in_window): Convert X and Y to window
4989 relative coordinates inside mode-line and header-line parts.
4990 Convert X and Y to margin area relative coordinates inside left
4991 and right display margin parts.
4992
5a8a15ec
JR
49932003-06-05 Jason Rumney <jasonr@gnu.org>
4994
4995 * w32fns.c (add_system_logical_colors_to_map): New function.
4996 (Fx_open_connection): Use it.
4997
01ed8ff1
SM
49982003-06-04 Stefan Monnier <monnier@cs.yale.edu>
4999
5000 * process.c (allocate_pty): Revert part of the previous patch.
5001 (Faccept_process_output): Simplify.
5002
b427b65d
JR
50032003-06-04 Jason Rumney <jasonr@gnu.org>
5004
5005 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
5006
5007 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
5008 (lispy_mouse_wheel_names): Remove.
5009 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
5010 Always define drag_and_drop_syms.
5011
5012 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
5013 WHEEL_EVENT events.
5014
914a8c47
SM
50152003-06-03 Stefan Monnier <monnier@cs.yale.edu>
5016
01ed8ff1
SM
5017 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
5018
914a8c47
SM
5019 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
5020
adcb132c
JD
50212003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5022
5023 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
5024 menu item label.
5025
be781fa7
RS
50262003-06-03 Richard M. Stallman <rms@gnu.org>
5027
5028 * window.c (Fwindow_edges): Doc fix.
5029 (Fwindow_pixel_edges, Fwindow_inside_edges)
5030 (Fwindow_inside_pixel_edges): New functions.
5031 (syms_of_window): defsubr them.
5032
5033 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
5034 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
5035
914a8c47
SM
50362003-06-02 Stefan Monnier <monnier@cs.yale.edu>
5037
5038 * dispnew.c (Fsit_for): Don't lie about the number of args.
5039
5b07197a
DL
50402003-06-02 Dave Love <fx@gnu.org>
5041
5042 * callproc.c: Use HAVE_FCNTL_H, not USG5.
5043 (syms_of_callproc) <process-environment>: Doc fix.
5044
5045 * doc.c: Use HAVE_FCNTL_H, not USG5.
5046
5047 * xfaces.c (font_rescale_ratio): Fix for K&R.
5048
5049 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
5050
5051 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
5052
5053 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
5054
5055 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
5056 (xg_create_frame_widgets): Use ENCODE_UTF_8.
5057
d7107586 5058 * xterm.c (Qutf_8): Move to coding.c
5b07197a
DL
5059
5060 * xmenu.c (ENCODE_MENU_STRING): New.
5061 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
5062 Use it.
5063
5064 * coding.h (ENCODE_UTF_8): New.
5065 (Qutf_8): Declare.
5066
5067 * coding.c (Qutf_8): New.
5068 (syms_of_coding): Intern it.
5069
5070 * fns.c: Doc fixes.
5071
7335b336
KH
50722003-06-02 Kenichi Handa <handa@m17n.org>
5073
5074 * buffer.c (Fset_buffer_multibyte): Fix previous change.
5075
914a8c47
SM
50762003-06-01 Stefan Monnier <monnier@cs.yale.edu>
5077
5078 * lread.c (openp): Make sure STR is a string.
5079
9862c135
JR
50802003-06-01 David Ponce <david@dponce.com>
5081
5082 * termhooks.h (enum event_kind): Added new WHEEL_EVENT event.
5083 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
5084
5085 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
5086 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
5087 (discard_mouse_events): Discard WHEEL_EVENT events too.
5088 (lispy_wheel_names, wheel_syms): New.
5089 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
5090 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX
5091 defined.
914a8c47 5092 (make_lispy_event): Add WHEEL_EVENT handler.
9862c135
JR
5093
5094 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
5095 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
5096 WHEEL_EVENT events.
5097
f984e73e
JPW
50982003-05-31 John Paul Wallington <jpw@gnu.org>
5099
5100 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
5101 timer are in lisp/emacs-lisp.
5102
1efcd78f
KH
51032003-05-31 Kenichi Handa <handa@m17n.org>
5104
458c8af4
KH
5105 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
5106 region when a buffer is changed to unibyte.
5107
1efcd78f
KH
5108 * charset.h (VALID_LEADING_CODE_P): New macro.
5109 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
5110
778e2804
KH
5111 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
5112 is nonzero, accept multibyte form of eight-bit-control chars.
5113 (decode_composition_emacs_mule): Likewise.
5114 (decode_coding_emacs_mule): Likewise.
5115 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
5116 multibyte form of eight-bit-control chars.
5117
5118 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
5119 (Finsert_file_contents): If coding-system-for-read is bound to
5120 Qauto_save_coding, use the coding system emacs-mule with special
5121 setting for recovering a file.
5122 (choose_write_coding_system): On auto saving, use the coding
5123 system emacs-mule with special setting for auto saving.
5124 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
5125
034060e4
KH
51262003-05-30 Kenichi Handa <handa@m17n.org>
5127
5128 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
5129 properly before calling ccl_driver.
5130
778e2804 5131 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
034060e4
KH
5132
5133 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is
5134 nonzero.
5135 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
5136 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
5137
595f5aa5
GM
51382003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
5139
5140 * xfaces.c (realize_default_face): Do not abort if lface is
5141 non-existent - reverts change from 2003-05-19.
5142
103e0180
KH
51432003-05-29 Kenichi Handa <handa@m17n.org>
5144
5145 * coding.c (decode_coding_iso2022): Pay attention to the byte
5146 sequence of CTEXT extended segment, and retain those bytes as is.
5147
51482003-05-28 Kenichi Handa <handa@m17n.org>
5149
5150 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjusted for the name change
5151 of CODING_REPLACEMENT_CHARACTER.
5152 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
5153 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
5154 check this flag on encoding.
5155 (encode_coding_sjis_big5): Check
5156 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
5157 (Fset_terminal_coding_system_internal): Set
5158 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
5159 instead of setting CODING_FLAG_ISO_SAFE flag in
5160 terminal_coding.flags.
5161
5162 * coding.h (CODING_REPLACEMENT_CHARACTER): Renamed from
5163 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
5164 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
5165
ff6a3bfb 51662003-05-28 Richard M. Stallman <rms@gnu.org>
45f266dc 5167
ff6a3bfb
RS
5168 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
5169
5170 * eval.c (unbind_to): Move init of this_binding to separate statement.
45f266dc 5171
1963c428
KS
51722003-05-28 Kim F. Storm <storm@cua.dk>
5173
5174 * xdisp.c (expose_window): Fix error in calculation of
5175 window relative coordinates of area to redisplay.
5176
2b5d4601
JR
51772003-05-27 Jason Rumney <jasonr@gnu.org>
5178
5179 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
5180
1c64a4a2
JB
51812003-05-27 David Ponce <david@dponce.com>
5182
5183 Handle W32 mouse wheel events as mouse click events, like in X.
5184
5185 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
5186 MOUSE_WHEEL_EVENT anymore.
5187
5188 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
5189 Scrolling down/up the mouse wheel is respectively mapped to mouse
5190 button 4 and 5.
5191 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
5192 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
5193 WM_MOUSEWHEEL events.
5194
2d031b89
AS
51952003-05-27 Andreas Schwab <schwab@suse.de>
5196
20464fdf
AS
5197 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
5198
2d031b89
AS
5199 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
5200 partially visible line.
5201
5202 * alloc.c (Fgarbage_collect): Fix last change.
5203
97bc76d4
JPW
52042003-05-26 John Paul Wallington <jpw@gnu.org>
5205
5206 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
5207
56613f06
SM
52082003-05-25 Stefan Monnier <monnier@cs.yale.edu>
5209
5210 * window.c (Fset_window_buffer): Add type of `keep_margins'.
5211 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
5212
5213 * window.h (window_box_text_cols): Declare.
5214
5215 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
5216 (x_draw_vertical_border): Remove unused var `f'.
5217
5218 * xfaces.c (build_scalable_font_name): Remove `unused var
5219 pixel_size' warning.
5220
5221 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
5222
5223 * unexelf.c (unexec): Remove `unused var n' warning.
5224
5225 * strftime.c (my_strftime_localtime_r): Remove `defined but
5226 unused' warning.
5227
5228 * process.c (allocate_pty): Remove `unused var stb' and
5229 `cp might be used uninitialized' warnings.
5230
5231 * dispnew.c (mode_line_string): Remove unused var `f'.
5232
5233 * coding.c (find_safe_codings): Remove unused var `i'.
5234
5235 * bytecode.c (Fbyte_code): Remove `unused val' warning.
5236
5237 * buffer.c (Fkill_buffer): Remove unused var `list'.
5238
5239 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
5240
93421a1f
JD
52412003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5242
5243 * frame.c (make_frame): Condition want_fullscreen with
5244 HAVE_WINDOW_SYSTEM.
5245
c4b8aebc
JB
52462003-05-25 Juanma Barranquero <lektu@terra.es>
5247
5248 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
5249 (Fwindow_scroll_bars): Fix typo in docstring.
5250
0416870b
KS
52512003-05-24 Kim F. Storm <storm@cua.dk>
5252
5253 The following changes serve several purposes:
5254
5255 1) Swap the position of fringes and display margins in windows, i.e.
5256 the fringes are now displayed between the margins and the text area
5257 (by default).
5258
5259 2) Allow fringe and scroll bar parameters to be set per-buffer and
5260 per-window (like display margins). Such settings are now stored
5261 in window configurations, preserved when frames are resized, and
9018a88e 5262 copied when windows are split vertically or horizontally.
0416870b
KS
5263 Several bugs related to display margins have been fixed.
5264
5265 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
9018a88e 5266
0416870b
KS
5267 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
5268 rather than FRAME_WIDTH (FRAME_FONT (f)).
5269
5270 5) Introduce a consistent naming of variables, members and macros
5271 depending on whether their value is measured in pixels or in
5272 canonical columns/lines. Pixel dimensions are named *_width and
5273 *_height, while canonical columns/lines are named *_cols and
5274 *_lines. Pixel positions are named *_x and *_y, while column/line
5275 positions are named *_col and *_line.
5276
5277 6) Consolidate more of the X, W32, and MAC gui code by moving
5278 common data into struct frame, and generalize it for the non-gui
5279 case by using suitable defaults.
5280
5281 7) Cleanup and consolidate the macros controlling frame and window
5282 layout into frame.h and window.h, and generalize the use of the
5283 various window_box_* functions (enhanced to handle the new fringe
5284 position and the per-window fringe and scroll bar settings).
5285
5286 * frame.h (struct frame): Rename members height to text_lines,
5287 width to text_cols, window_height to total_lines, window_width to
5288 total_cols, new_height to new_text_lines, new_width to
5289 new_text_cols. All uses changed.
5290 (struct frame): New members which consolidate common members of
5291 x_output, w32_output, and mac_output structures: left_pos,
5292 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
5293 win_gravity, size_hint_flags, border_width, internal_border_width,
5294 line_height, fringe_cols, left_fringe_width, right_fringe_width,
5295 want_fullscreen. All uses changed.
5296 (struct frame): New member column_width contaning the canonical
5297 column width, analogue to line_height. All uses changed.
5298 (struct frame): Rename members scroll_bar_pixel_width to
5299 config_scroll_bar_width, and scroll_bar_cols to
5300 config_scroll_bar_cols. All uses changed.
5301 (struct frame): New member scroll_bar_actual_width which
5302 consolidates and renames the vertical_scroll_bar_extra member of
5303 x_output, w32_output, and mac_output structures. All uses changed.
5304 (FRAME_PIXEL_HEIGHT): Renamed from PIXEL_HEIGHT and moved
5305 from x/w32/macterm.h files. All uses changed. Also change code
5306 which referred to f->output_data...->pixel_height.
5307 (FRAME_PIXEL_WIDTH): Renamed from PIXEL_WIDTH and moved
f63fd14e 5308 from x/w32/macterm.h files. All uses changed. Also change code
0416870b
KS
5309 which referred to f->output_data...->pixel_width.
5310 (FRAME_LINES): Renamed from FRAME_HEIGHT. All uses changed.
5311 Also change code which referred to f->height.
5312 (FRAME_COLS): Renamed from FRAME_WIDTH. All uses changed.
5313 Also change code which referred to f->width.
5314 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
5315 to update new_text_lines and new_text_cols members directly.
5316 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Renamed from
5317 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
5318 (FRAME_CONFIG_SCROLL_BAR_COLS): Renamed from
5319 FRAME_SCROLL_BAR_COLS. All uses changed.
5320 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
5321 Renamed from FRAME_LEFT_SCROLL_BAR_WIDTH and
5322 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
5323 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
5324 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
5325 (FRAME_TOTAL_COLS): Renamed from FRAME_WINDOW_WIDTH.
5326 (SET_FRAME_COLS): Renamed from SET_FRAME_WIDTH.
5327 (FRAME_TOTAL_COLS_ARG): Renamed from FRAME_WINDOW_WIDTH_ARG.
5328 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
5329 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
5330 (FRAME_LINE_HEIGHT): Renamed from CANON_Y_UNIT. Unconditionally
5331 return line_height member (it now has proper value also for
5332 non-window frames).
5333 (FRAME_COLUMN_WIDTH): Renamed from CANON_X_UNIT. Unconditionally
5334 return new column_width member (rather than the default font width).
5335 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
5336 (FRAME_RIGHT_FRINGE_WIDTH): Renamed from FRAME_X_... and moved
5337 from x/w32/macterm.h files. Unconditionally return corresponding
5338 member of frame structure (they now have proper values also for
5339 non-window frames).
5340 (FRAME_TOTAL_FRINGE_WIDTH): Renamed from FRAME_FRINGE_WIDTH.
5341 Calculate return value from left and right widths.
5342 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
5343 internal_border_width member (has proper value for non-window frame).
5344 (FRAME_PIXEL_X_FROM_CANON_X): Renamed from PIXEL_X_FROM_CANON_X.
5345 (FRAME_PIXEL_Y_FROM_CANON_Y): Renamed from PIXEL_Y_FROM_CANON_Y.
5346 (FRAME_CANON_X_FROM_PIXEL_X): Renamed from CANON_X_FROM_PIXEL_X.
5347 (FRAME_CANON_Y_FROM_PIXEL_Y): Renamed from CANON_Y_FROM_PIXEL_Y.
5348 (FRAME_LINE_TO_PIXEL_Y): Renamed from CHAR_TO_PIXEL_ROW,
5349 consolidated from xterm.h, macterm.h, and w32term.h.
5350 (FRAME_COL_TO_PIXEL_X): Renamed from CHAR_TO_PIXEL_COL,
5351 consolidated from xterm.h, macterm.h, and w32term.h.
5352 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Renamed from
5353 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
5354 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Renamed from
5355 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
5356 (FRAME_PIXEL_Y_TO_LINE): Renamed from PIXEL_TO_CHAR_ROW
5357 consolidated from x/mac/w32term.h.
5358 (FRAME_PIXEL_X_TO_COL): Renamed from PIXEL_TO_CHAR_COL
5359 consolidated from x/mac/w32term.h.
5360 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Renamed from
5361 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
5362 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Renamed from
5363 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
5364
5365 * window.h (struct window): Rename members left to left_col,
5366 top to top_line, height to total_lines, width to total_cols,
5367 left_margin_width to left_margin_cols, right_margin_width to
5368 right_margin_cols, orig_height to orig_total_lines, orig_top to
5369 orig_top_line. All uses changed.
5370 (struct window): New members left_fringe_width, right_fringe_width,
5371 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
5372 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
5373 New macros primarily used to simplify other macros.
5374 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
5375 referred to XINT (w->width).
5376 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
5377 referred to XINT (w->height).
5378 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
5379 referred to XINT (w->width) * canon_x_unit.
5380 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
5381 referred to XINT (w->height) * canon_y_unit.
5382 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
5383 referred to XINT (w->left).
5384 (WINDOW_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_EDGE. Change
5385 all uses and code that referred to XINT (w->left) + XINT (w->width).
5386 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
5387 referred to XINT (w->top).
5388 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
5389 referred to XINT (w->top) + XINT (w->height).
5390 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
5391 referred to XINT (w->left) * canon_x_unit.
5392 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
5393 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
5394 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
5395 referred to XINT (w->top) * canon_y_unit.
5396 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
5397 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
5398 (WINDOW_LEFTMOST_P): New macro.
5399 (WINDOW_BOX_LEFT_EDGE_COL): Renamed from WINDOW_LEFT_MARGIN.
5400 All uses changed.
5401 (WINDOW_BOX_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_MARGIN.
5402 All uses changed.
5403 (WINDOW_BOX_LEFT_EDGE_X): Renamed from
5404 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
5405 Do not exclude left fringe width.
5406 (WINDOW_BOX_RIGHT_EDGE_X): Renamed from
5407 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
5408 Do not exclude fringe widths.
5409 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
5410 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
5411 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
5412 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
5413 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
5414 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
5415 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
5416 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
5417 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
5418 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
5419 New macros. Change code which referenced corresponding
5420 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
5421 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
5422 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
5423 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
5424 allow per-window scroll-bar settings.
5425 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
5426 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
5427 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
5428 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
5429 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
5430 FRAME_SCROLL_BAR_WIDTH.
5431 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
9018a88e 5432 (WINDOW_SCROLL_BAR_AREA_X): New macros.
0416870b
KS
5433 (WINDOW_HEADER_LINE_HEIGHT): Renamed from
5434 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
5435 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Renamed from
5436 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
5437 (WINDOW_BOX_TEXT_HEIGHT): Renamed from
5438 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
5439 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
5440 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
5441 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Moved here from dispextern.h.
5442 (WINDOW_LEFT_MARGIN_WIDTH): Renamed from
5443 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
5444 (WINDOW_RIGHT_MARGIN_WIDTH): Renamed from
5445 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
5446 (window_from_coordinates): Update prototype.
5447 (Fset_window_buffer): Update EXFUN.
5448 (set_window_buffer): Update prototype.
9018a88e 5449
0416870b 5450 * dispextern.h (struct glyph_matrix): Rename members window_left_x
9018a88e 5451 to window_left_col, window_top_y to window_top_line. All uses
0416870b
KS
5452 changed.
5453 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
5454 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
5455 internal_border_width is now set to 0 for non-window frames.
5456 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
5457 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
5458 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
5459 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
5460 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
5461 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
5462 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
5463 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
5464 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
9018a88e 5465 Move to window.h and renamed [see window.h changes].
0416870b
KS
5466 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
5467 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
9018a88e
SM
5468 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
5469 Use WINDOW_TOTAL_LINES.
0416870b
KS
5470 (frame_update_line_height): Remove prototype.
5471
5472 * buffer.h (struct buffer): Rename members measured in columns:
5473 left_margin_width to left_margin_cols, right_margin_width to
5474 right_margin_cols. All uses changed.
5475 New members left_fringe_width, right_fringe_width,
5476 fringes_outside_margins for per-buffer fringe settings.
5477 New members scroll_bar_width and vertical_scroll_bar_type for
5478 per-buffer scroll bar settings.
5479
5480 * buffer.c (init_buffer_once): Set buffer_defaults and
5481 buffer_local_flags for new buffer-local variables
5482 left_fringe_width, right_fringe_width, fringes_outside_margins,
5483 scroll_bar_width, and vertical_scroll_bar_type.
5484 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
5485 default-* variables for them.
5486
5487 * dispnew.c: Make (many) trivial substitutions for renamed and
5488 new macros in dispextern.h, frame.h and window.h.
5489 (mode_line_string): No need to adjust width for mode lines, as it
5490 is already adjusted by the caller.
5491 (marginal_area_string): Handle fringes inside/outside margins.
9018a88e 5492
0416870b
KS
5493 * frame.c: Make (many) trivial substitutions for renamed and
5494 new macros in dispextern.h, frame.h and window.h.
5495 (make_frame): Initialize left_fringe_width, right_fringe_width,
5496 fringe_cols, scroll_bar_actual_width, border_width,
5497 internal_border_width, column_width, line_height, x_pixels_diff,
5498 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
5499 members with values suitable for a non-window frames.
5500
5501 * gtkutil.c: Make (many) trivial substitutions for renamed and
5502 new macros in dispextern.h, frame.h and window.h.
9018a88e 5503
0416870b
KS
5504 * indent.c: Make (few) trivial substitutions for renamed and
5505 new macros in dispextern.h, frame.h and window.h.
5506
5507 * keyboard.c: Make (many) trivial substitutions for renamed and
5508 new macros in dispextern.h, frame.h and window.h.
5509 (make_lispy_event): Use window positions returned from
5510 window_from_coordinates when constructing the lisp event for
5511 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
5512 (incorrect) values locally.
5513 (make_lispy_movement): Use window positions returned from
5514 window_from_coordinates when constructing the lisp event, rather
5515 than calculating (incorrect) values locally.
5516
5517 * scroll.c: Make (some) trivial substitutions for renamed and
5518 new macros in dispextern.h, frame.h and window.h.
5519
5520 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
5521 scroll-bars.
5522
5523 * sysdep.c: Make (few) trivial substitutions for renamed and
5524 new macros in dispextern.h, frame.h and window.h.
5525
5526 * term.c: Make (some) trivial substitutions for renamed and
5527 new macros in dispextern.h, frame.h and window.h.
5528
5529 * widget.c: Make (few) trivial substitutions for renamed and
5530 new macros in dispextern.h, frame.h and window.h.
5531
5532 * window.c: Make (many) trivial substitutions for renamed and
5533 new macros in dispextern.h, frame.h and window.h.
5534 (make_window): Initialize new members
5535 left_margin_cols, right_margin_cols, left_fringe_width,
5536 right_fringe_width, fringes_outside_margins, scroll_bar_width,
5537 and vertical_scroll_bar_type.
5538 (coordinates_in_window): Adapted to new fringe/margin positions
9018a88e 5539 and per-window fringes and scroll-bars.
0416870b 5540 Fix bug related to incorrectly adjusting coordinates by
9018a88e 5541 frame's internal_border_width (the effect normally negible since
0416870b
KS
5542 the internal_border_width is typically 0 or 1 pixel, but very
5543 noticeable for an internal_border_width of e.g. 25 pixels).
5544 Upon successful return (other than ON_NOTHING), the coordinates
5545 are now always properly converted to window relative for the
5546 given display element.
5547 (window_from_coordinates): Add new parameters wx and wy to
5548 return the window relative x and y position in the returned
5549 window and part. A null arg means, don't return the position.
5550 All callers changed.
5551 (adjust_window_margins): New function which may reduce the width
5552 of the display margins if a window's text area is too small after
5553 resizing or splitting windows.
5554 (size_window): Fix bug that did not account for display margin
5555 widths when checking the minimum width of a window; use
5556 adjust_window_margins.
5557 (set_window_buffer): Call Fset_window_fringes and
5558 Fset_window_scroll_bars to setup per-window elements.
5559 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
5560 existing display margin, fringe widths, and scroll bar settings
9018a88e
SM
5561 (e.g. after splitting a window or resizing the frame).
5562 All callers changed.
0416870b
KS
5563 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
5564 (Fsplit_window): Duplicate original window's display margin,
5565 fringe, and scroll-bar settings; then call Fset_window_buffer with
5566 KEEP_MARGINS non-nil. This fixes a bug which caused a split
5567 window to only preserve the display margins in one of the windows.
c4b8aebc 5568 When splitting horizontally, call adjust_window_margins on both
0416870b 5569 windows to ensure that the text area of the new windows is non too
f9711de4 5570 narrow. This fixes a bug which could cause Emacs to trap if the
0416870b
KS
5571 width of the split window was less than the width of the display
5572 margins.
9018a88e
SM
5573 (window_box_text_cols): Renamed from window_internal_width.
5574 All uses changed. Adapt to per-window fringes and scroll bars.
0416870b
KS
5575 Fix bug that caused vertical separator to be subtracted also on
5576 window frames. Fix another bug that did not reduce the returned
5577 value by the columns used for display margins.
5578 (window_scroll_line_based): Fix bug related to scrolling too much
5579 when display margins are present (implicitly fixed by the fix to
5580 window_box_text_cols).
5581 (scroll_left, scroll_right): Fix bug related to scrolling too far
5582 by default when display margins are present (implicitly fixed by
5583 the fix to window_box_text_cols).
5584 (struct saved_window): Rename members left to left_col, top to
5585 top_line, width to total_cols, height to total_lines, orig_top to
5586 orig_top_line, orig_height to orig_total_lines. All uses changed.
5587 New members left_margin_cols, right_margin_cols,
5588 left_fringe_width, right_fringe_width, fringes_outside_margins,
5589 scroll_bar_width, and vertical_scroll_bar_type for saving
5590 per-window display elements.
5591 (Fset_window_configuration): Restore display margins, fringes,
5592 and scroll bar settings. This fixes a bug which caused display
5593 margins to be discarded when saving and restoring a window
5594 configuration.
5595 (save_window_save): Save display margins, fringes, and scroll bar
5596 settings. This fixes a bug which caused display margins to be
5597 discarded when saving and restoring a window configuration.
5598 (Fset_window_margins): Do nothing if display margins are not
5599 really changed. Otherwise, call adjust_window_margins to ensure
5600 the text area doesn't get too narrow. This fixes a bug which
f9711de4 5601 could cause Emacs to trap if setting display margins wider than
0416870b
KS
5602 the width of the window.
5603 (Fset_window_fringes): New defun to allow user to specifically set
5604 this window's fringe widths and position vs. display margins.
5605 (Fwindow_fringes): New defun to return window's actual fringe
5606 settings.
5607 (Fset_window_scroll_bars): New defun to allow user to specifically
5608 set this window's scroll bar width and position.
5609 (Fwindow_scroll_bars): New defun to return window's actual scroll
5610 bar settings.
5611 (compare_window_configurations): Also compare display margins,
5612 fringes, and scroll bar settings.
5613 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
5614
5615 * xdisp.c: Make (many) trivial substitutions for renamed and
5616 new macros in dispextern.h, frame.h and window.h.
5617 (window_box_width): Adapt to per-window fringes and scroll bars,
f63fd14e 5618 and new fringe vs. display margin position. Note that returned
0416870b
KS
5619 value is no longer guaranteed to be a whole multiple of the frame
5620 column width, since per-window fringes may now be any width.
5621 (window_box_left_offset): New function like window_box_left, but
5622 value is relative to left border of window (rather than frame).
5623 (window_box_right_offset): New function like window_box_right,
5624 but value is relative to left border of window.
5625 (window_box_left): Adapt to per-window fringes and scroll bars,
5626 and new fringe vs. display margin position. Simplify by using
5627 WINDOW_LEFT_EDGE_X and window_box_left_offset.
5628 (window_box): Allow null args for unnecessary return values;
5629 change/simplify relevant callers.
5630 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
9018a88e
SM
5631 and new fringe vs. display margin position.
5632 Use window_box_left_offset and window_box_right_offset
0416870b 5633 (get_glyph_string_clip_rect): Adapt to per-window fringes and
9018a88e
SM
5634 scroll bars, and new fringe vs. display margin position.
5635 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
0416870b
KS
5636 (draw_fringe_bitmap): Rework to handle per-window fringes and new
5637 fringe vs. display margin position.
5638 (hscroll_window_tree): Use window_box_width instead of window_box.
a64387ee
JB
5639 (redisplay_window): Adapt to per-window scroll bars.
5640 (draw_glyphs): Rework to handle per-window fringes and scroll
9018a88e
SM
5641 bars, and new fringe vs. display margin position.
5642 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
a64387ee 5643 (x_clear_end_of_line): Adapt to per-window fringes and scroll
0416870b
KS
5644 bars, and new fringe vs. display margin position. Fix bug which
5645 increased total width of full_width rows by width of scroll bars
5646 although window's total width already includes that.
5647 (x_fix_overlapping_area): Simplify using window_box_left_offset.
5648 (expose_area): Simplify using window_box_left_offset.
5649 (x_draw_vertical_border): Handle per-window scroll bar settings,
5650 mixing windows with left, right and no scroll bars.
5651
5652 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
5653 where it's used in x_list_fonts (for clarity).
5654 (frame_update_line_height): Remove unused function; functionality
5655 is now done directly when setting the default font in x_set_font.
5656
5657 * xfns.c: Make (many) trivial substitutions for renamed and
5658 new macros in dispextern.h, frame.h and window.h.
5659
5660 * xmenu.c: Make (some) trivial substitutions for renamed and
5661 new macros in dispextern.h, frame.h and window.h.
5662
5663 * xterm.h (struct x_output): Move members left_pos, top_pos,
5664 border_width, pixel_height, pixel_width, line_height,
5665 internal_border_width, vertical_scroll_bar_extra,
5666 left_fringe_width, right_fringe_width, fringe_cols,
5667 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
5668 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
5669 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
5670 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
5671 (PIXEL_WIDTH, PIXEL_HEIGHT)
5672 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
5673 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
5674 frame.h and renamed [see frame.h changes].
5675 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
5676 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
5677 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
5678 and renamed [see frame.h changes].
9018a88e 5679
0416870b
KS
5680 * xterm.c: Make (several) trivial substitutions for renamed and
5681 new macros in dispextern.h, frame.h and window.h.
5682 (x_draw_glyph_string_box): Adapt to per-window fringes and
5683 scroll-bars.
5684 (scroll_run): Adapt to new fringe position.
5685 (glyph_rect): Use window coordinates returned from
5686 window_from_coordinates rather than frame_to_window_pixel_xy.
5687 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
5688 scroll-bars.
5689 (handle_one_xevent): Simplify a USE_GTK conditional.
5690 (x_clip_to_row): Remove superfluous whole_line_p arg and code
5691 (fringes are now inside margins, i.e. always in the clipping area).
5692 All callers changed.
5693 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
5694 directly, then call compute_fringe_widths. Don't call
5695 frame_update_line_height.
5696
5697 * w32term.h (struct w32_output): Move members left_pos, top_pos,
5698 border_width, pixel_height, pixel_width, line_height,
5699 internal_border_width, vertical_scroll_bar_extra,
5700 left_fringe_width, right_fringe_width, fringe_cols,
5701 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
5702 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
5703 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
5704 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
5705 (PIXEL_WIDTH, PIXEL_HEIGHT)
5706 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
5707 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
5708 frame.h and renamed [see frame.h changes].
5709 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
5710 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
5711 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
5712 and renamed [see frame.h changes].
9018a88e 5713
0416870b
KS
5714 * w32term.c: Make (several) trivial substitutions for renamed and
5715 new macros in dispextern.h, frame.h and window.h.
5716 (x_draw_glyph_string_box): Adapt to per-window fringes and
5717 scroll-bars.
5718 (glyph_rect): Use window coordinates returned from
5719 window_from_coordinates rather than frame_to_window_pixel_xy.
5720 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
5721 scroll-bars.
5722 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
5723 (fringes are now inside margins, i.e. always in the clipping area).
5724 All callers changed.
5725 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
5726 directly, then call compute_fringe_widths. Don't call
5727 frame_update_line_height.
5728
5729 * w32console.c: Make (few) trivial substitutions for renamed and
5730 new macros in dispextern.h, frame.h and window.h.
5731
5732 * w32fns.c: Make (many) trivial substitutions for renamed and
5733 new macros in dispextern.h, frame.h and window.h.
5734
5735 * w32menu.c: Make (few) trivial substitutions for renamed and
5736 new macros in dispextern.h, frame.h and window.h.
5737
5738 * macterm.h (struct mac_output): Move members left_pos, top_pos,
5739 border_width, pixel_height, pixel_width, line_height,
5740 internal_border_width, vertical_scroll_bar_extra,
5741 left_fringe_width, right_fringe_width, fringe_cols,
5742 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
5743 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
5744 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
5745 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
5746 (PIXEL_WIDTH, PIXEL_HEIGHT)
5747 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
5748 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
5749 frame.h and renamed [see frame.h changes].
5750 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
5751 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
5752 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
5753 and renamed [see frame.h changes].
9018a88e 5754
0416870b
KS
5755 * macterm.c: Make (several) trivial substitutions for renamed and
5756 new macros in dispextern.h, frame.h and window.h.
5757 (x_draw_glyph_string_box): Adapt to per-window fringes and
5758 scroll-bars.
5759 (glyph_rect): Use window coordinates returned from
5760 window_from_coordinates rather than frame_to_window_pixel_xy.
5761 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
5762 scroll-bars.
5763 (x_clip_to_row): Remove superfluous whole_line_p arg and code
5764 (fringes are now inside margins, i.e. always in the clipping area).
5765 All callers changed.
5766 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
5767 directly, then call compute_fringe_widths. Don't call
5768 frame_update_line_height.
5769
5770 * macfns.c: Make (several) trivial substitutions for renamed and
5771 new macros in dispextern.h, frame.h and window.h.
9018a88e 5772 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
0416870b
KS
5773
5774 * macmenu.c: Make (few) trivial substitutions for renamed and
5775 new macros in dispextern.h, frame.h and window.h.
5776
5777 * msdos.h (struct x_output): Remove members left_pos, top_pos,
5778 and line_height, and use corresponding new members in struct
5779 frame. All uses changed.
5780 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
5781 superseeded by corresponding macros in frame.h.
5782
5783 * msdos.c: Make (several) trivial substitutions for renamed and
5784 new macros in dispextern.h, frame.h and window.h.
5785 (IT_note_mouse_highlight): Use updated window coordinates returned
9018a88e 5786 by window_from_coordinates, rather than adjusting them locally.
0416870b
KS
5787 (internal_terminal_init): No need to initialize line_height here;
5788 it now defaults to 1.
5789
9018a88e
SM
57902003-05-24 Stefan Monnier <monnier@cs.yale.edu>
5791
5792 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
5793 dropping `down' events.
5794
016bd3c0
AS
57952003-05-24 Andreas Schwab <schwab@suse.de>
5796
5797 * coding.c (find_safe_codings): Fix last change.
5798
4dacadcc
TTN
57992003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
5800
5801 * xfns.c (x_window): Fix typo from 2003-05-21 change.
5802
319830ce
SM
58032003-05-23 Stefan Monnier <monnier@cs.yale.edu>
5804
9018a88e
SM
5805 * xdisp.c (display_mode_element): Increase max depth.
5806 Simplify the error handling code. Use a different error string
5807 for the case where we hit the depth limit.
5808
319830ce
SM
5809 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
5810
5811 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
5812
58132003-05-21 Stefan Monnier <monnier@cs.yale.edu>
5814
5815 * intervals.c (get_local_map): Don't get char-property of previous
5816 point any more: get_pos_property already does it and better.
5817
c67de8ba
DL
58182003-05-21 Dave Love <fx@gnu.org>
5819
5820 [Merged from unicode branch.]
5821
5822 * xfns.c (x_window, x_window): Use use_xim.
5823
5824 * xterm.c (use_xim): Initialize.
5825 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
5826 (x_term_init): Maybe set use_xim.
5827
5828 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
5829
edd3ff1d
JR
58302003-05-21 Jason Rumney <jasonr@gnu.org>
5831
5832 * unexw32.c (_start): Remove _fmode initialization.
5833
5834 * emacs.c (main) [WINDOWSNT]: Move it here.
5835
463f55ee
DL
58362003-05-20 Dave Love <fx@gnu.org>
5837
5838 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
5839
af253914
RS
58402003-05-19 Richard M. Stallman <rms@gnu.org>
5841
5842 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
5843 as value for QCfont attribute.
5844 (realize_default_face): lface should already exist; crash if not.
5845 Specify 0 for FORCE_P when calling set_lface_from_font_name.
5846
5847 * frame.c (Fignore_event): Doc fix.
5848
1d211019
KH
58492003-05-19 Kenichi Handa <handa@m17n.org>
5850
5851 * coding.c (decode_coding_string): Handle post-read-conversion
5852 even if the coding doesn't require decoding.
5853
4dd68254
RS
58542003-05-18 Richard M. Stallman <rms@gnu.org>
5855
5856 * callproc.c (Fcall_process_region): Doc fix.
5857
14d87dc9
SM
58582003-05-17 Stefan Monnier <monnier@cs.yale.edu>
5859
deca5d96
SM
5860 * lread.c (Fload): Print a message if package is obsolete.
5861
14d87dc9
SM
5862 * window.c (Fselect_window): Add optional `norecord' arg.
5863 (select_window_1): Fold into Fselect_window.
5864 (select_window_norecord): New function.
5865 (temp_output_buffer_show): Use it. Preserve current buffer.
5866
5867 * window.h (Fselect_window): Update declaration.
5868
5869 * window.c (delete_window, Fother_window, Fset_window_configuration):
5870 * minibuf.c (read_minibuf):
5871 * macterm.c (x_new_focus_frame):
5872 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
5873 * callint.c (Fcall_interactively):
5874 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
5875
5876 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
5877
78f52183
DK
58782003-05-17 David Kastrup <dak@gnu.org>
5879
5880 * process.c (read_process_output): Back out change from 2003-03-09.
5881
14d87dc9
SM
58822003-05-17 Stefan Monnier <monnier@cs.yale.edu>
5883
5884 * editfns.c (get_pos_property): Don't assume that `object' = nil.
5885
5886 * textprop.c (text_property_stickiness): New arg `buffer'.
5887
5888 * intervals.h (text_property_stickiness): New arg `buffer'.
5889 (get_pos_property): Declare.
5890
5891 * intervals.c (get_local_map): Use get_pos_property, to obey
5892 stickiness and empty overlays.
5893 (create_root_interval, graft_intervals_into_buffer): Use BEG.
5894 (merge_properties, intervals_equal, merge_properties_sticky):
5895 Use XCAR, XCDR.
5896 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
5897
1fd1cc2f
RS
58982003-05-17 Richard M. Stallman <rms@gnu.org>
5899
4f9f637a
RS
5900 * minibuf.c (read_minibuf): If buffer is empty, record the default
5901 in the history.
5902 (Fminibuffer_complete_word): When deleting the overlap, take account
5903 of its real position.
5904
5905 * fns.c (map_char_table): Fix previous change.
5906
1fd1cc2f
RS
5907 * syntax.c (find_defun_start):
5908 When open_paren_in_column_0_is_defun_start,
5909 return beginning of buffer.
5910
5911 * lisp.h (map_char_table): Declare added arg.
5912
5913 * fns.c (map_char_table): New arg TABLE gets the master table.
5914 All calls changed.
5915 Process default and inheritance, resorting to Faref if necessary.
5916
5917 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
5918 (Faccessible_keymaps): Pass new arg to map_char_table.
5919
5920 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
5921
5922 * casetab.c (set_case_table): Pass new arg to map_char_table.
5923
5924 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
5925
5926 * lisp.h (specbinding_func): New typedef.
5927 (struct specbinding): Use specbinding_func, to put the `volatile'
5928 in the right place.
5929
5930 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
5931 to avoid GCC warning.
14d87dc9 5932
b4bd27c5
RS
59332003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org> (tiny change)
5934
14d87dc9 5935 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
b4bd27c5 5936
35fb885d
SM
59372003-05-15 Stefan Monnier <monnier@cs.yale.edu>
5938
5939 * keyboard.c (apply_modifiers): Don't fill the other cache.
5940
9a274fbd
SM
59412003-05-14 Stefan Monnier <monnier@cs.yale.edu>
5942
c55b5fad
SM
5943 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
5944
9a274fbd
SM
5945 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
5946 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
5947 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
5948 (Fset_window_configuration, Fcurrent_window_configuration)
5949 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
5950 (Fpos_visible_in_window_p, mark_window_cursors_off)
5951 (window_internal_height, window_internal_width, Frecenter)
5952 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
5953 (replace_buffer_in_all_windows, init_window_once, init_window)
5954 (syms_of_window, keys_of_window): Move from lisp.h.
5955 * lisp.h: Move window.c declarations to window.h.
5956
5957 * bytecode.c: Include window.h.
5958 * emacs.c: Include window.h.
5959
14d87dc9 5960 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
9a274fbd
SM
5961 (keyremap): Add `parent' field.
5962 (keyremap_step): Use it. Remove `parent' argument.
5963 (read_key_sequence): Setup and use the new `parent' field.
5964
fd93e331
SM
59652003-05-11 Stefan Monnier <monnier@cs.yale.edu>
5966
5967 * keyboard.c (adjust_point_for_property): Ensure termination.
5968
1c4001a1
SM
59692003-05-10 Stefan Monnier <monnier@cs.yale.edu>
5970
5971 * keyboard.c (follow_key): Remove dead variable `did_meta'.
5972 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
5973 duplicated handling of function-key-map and key-translation-map
5974 in read_key_sequence.
5975 (read_key_sequence): Use them.
5976
5977 * keyboard.c (adjust_point_for_property): Try harder to move point
5978 to the non-sticky end of an invisible property.
5979
5980 * xdisp.c (single_display_prop_intangible_p): Make `space' display
5981 property intangible as well.
5982
780379b1
AS
59832003-05-10 Andreas Schwab <schwab@suse.de>
5984
5985 * xmenu.c (single_menu_item): Change last parameter to void* to
5986 avoid warning.
5987
ca2de342
RS
59882003-05-09 Richard M. Stallman <rms@gnu.org>
5989
5990 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
5991 Bind Qinhibit_modification_hooks to t so there will be no GC.
5992 Rename local `tem' to `save_deactivate_mark'.
5993
5994 * eval.c (specpdl_ptr): Declare volatile.
5995 (unbind_to): Copy the whole binding and decrement specpdl_ptr
5996 before doing the work of unbinding it.
5997
5998 * lisp.h (struct specbinding): Declare elements volatile.
5999 (specpdl_ptr): Declare volatile.
6000
6001 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
6002
6003 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
6004 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
6005
347003be
DL
60062003-05-08 Dave Love <fx@gnu.org>
6007
6008 * coding.c (Vlast_coding_system_used): Doc fix.
6009
5adcec23
JR
60102003-05-07 Jason Rumney <jasonr@gnu.org>
6011
6012 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
6013 when system does not support them.
6014
5fe3b8a4
SM
60152003-05-05 Stefan Monnier <monnier@cs.yale.edu>
6016
6017 * fileio.c (Qwrite_region_annotate_functions): New var.
6018 (build_annotations): Use it to process the global part of the hook.
6019 (syms_of_fileio): Init and staticpro it.
6020
6021 * keyboard.c (safe_run_hooks_error): Display a message instead of
6022 silently ignoring the error.
6023
60242003-05-03 Stefan Monnier <monnier@cs.yale.edu>
6025
6026 * keyboard.c (input_available_signal): Mark static.
6027 (menu_bar_items): Use map_keymap.
6028 (menu_bar_one_keymap): Remove.
6029 (menu_bar_item): Adjust arglist (for use in map_keymap).
6030 Properly hide a second binding when not both are keymaps.
6031
6032 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
6033 (single_keymap_panes): Use it and map_keymap.
6034 (single_menu_item): Use skp as well.
6035
6036 * keymap.h (map_keymap_function_t): New type.
6037 (map_keymap): Declare.
6038
6039 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
6040 (map_keymap_call, Fmap_keymap): New functions.
6041 (syms_of_keymap): Defsubr map-keymap.
6042
4b1b4443
JD
60432003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6044
6045 * gtkutil.c (create_dialog, make_widget_for_menu_item)
6046 (make_menu_item, create_menus, xg_update_menu_item): Don't call
6047 ..._with_mnemonic functions for menu items.
6048
1f816871
KH
60492003-05-01 Kenichi Handa <handa@m17n.org>
6050
6051 * coding.c (coding_system_accept_latin_extra_p): Delete this
6052 function.
6053 (find_safe_codings): Pay attention to
6054 the property tranlsation-table-for-encode of each codings.
6055 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
6056
5ed6ba5b
SM
60572003-05-01 Stefan Monnier <monnier@cs.yale.edu>
6058
6059 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
6060
32c06229
SM
60612003-04-30 Stefan Monnier <monnier@cs.yale.edu>
6062
6063 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
6064
6065 * lisp.h (CHECK): Wrap args in parenthesis.
6066 (specbind): Fix doc: symbol = Qnil is not supported any more.
6067
6068 * bytecode.c (Fbyte_code) <unwind-protect>:
6069 Use Fprogn rather than 0 and Qnil.
6070
6071 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
6072 `double', and `triple' modifiers as well.
6073
ed3c3314
RS
60742003-04-30 Richard M. Stallman <rms@gnu.org>
6075
6076 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
6077
6078 * alloc.c (abort_on_gc): New variable.
6079 (Fgarbage_collect): Abort if abort_on_gc is set.
6080
6081 * lisp.h (abort_on_gc): Add decl.
6082
6083 * eval.c (Fsignal): Clear abort_on_gc.
6084
6085 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
32c06229 6086 Reinit FORMAT_START and END before second scan.
ed3c3314
RS
6087
6088 * xdisp.c (move_it_vertically_backward): Do the final big else
6089 even if nlines is 0.
6090
6091 * xdisp.c (redisplay_internal): Finish the per-frame loop
6092 even if redisplay is suspended by input.
6093
0b325c12
AC
60942003-04-24 Andrew Choi <akochoi@shaw.ca>
6095
6096 * macterm.c (x_list_fonts): Return all fonts that match if
6097 maxnames = -1.
6098
4e837cd0
KH
60992003-04-25 Kenichi Handa <handa@m17n.org>
6100
6101 * syntax.c (skip_chars): Fix previous change.
6102
9af7511a
KH
61032003-04-24 Kenichi Handa <handa@m17n.org>
6104
6105 * syntax.c (skip_chars): Make the code faster by using the common
6106 technique of *p, *stop, and *endp.
6107
e3b2c21f
JD
61082003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6109
6110 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
32c06229 6111 tool_bar_items so GTK tool bar expose callback does not access items
e3b2c21f
JD
6112 being updated.
6113
32c06229
SM
61142003-04-19 Stefan Monnier <monnier@cs.yale.edu>
6115
6116 * eval.c (Fapply): Undo last change and add a comment about why.
6117
c6464167
MB
61182003-04-18 Miles Bader <miles@gnu.org>
6119
6120 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
6121 pickier PARSE_MULTIBYTE_SEQ.
6122
e509f168
SM
61232003-04-17 Stefan Monnier <monnier@cs.yale.edu>
6124
6125 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
6126 Use XCDR, XCAR, CONSP.
6127 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
6128 (Fapply): Remove unnecessary GCPRO.
6129
6130 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
6131
6132 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
6133
6134 * buffer.h: Don't hardcode BEG==1.
6135
6136 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
6137
5ceea398
RS
61382003-04-16 Richard M. Stallman <rms@gnu.org>
6139
6140 * xdisp.c (try_window, try_window_reusing_current_matrix):
6141 When at end of window, set window_end_pos to Z-ZV.
6142
6143 * buffer.c (Foverlay_recenter): Doc fix.
6144
e509f168
SM
61452003-04-14 Stefan Monnier <monnier@cs.yale.edu>
6146
6147 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
6148
d243e605
AC
61492003-04-14 Andrew Choi <akochoi@shaw.ca>
6150
6151 * macterm.c (mac_check_for_quit_char): Don't check more often than
6152 once a second.
6153
6901b111
SM
61542003-04-11 Stefan Monnier <monnier@cs.yale.edu>
6155
6156 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
6157 specially, so that they can't hide an implicit switch-frame event.
6158 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
6159 (head_table): Use switch-frame as event_kind for select-window.
6160 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
6161
6162 * editfns.c (Fformat): Lisp_Object/int mixup.
6163 (format2): Remove unused var numargs.
6164
e301806f 61652003-04-11 Kenichi Handa <handa@m17n.org>
aa95b710 6166
6901b111 6167 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
aa95b710
KH
6168 (Qafter_insert_file_set_coding): New variable.
6169 (syms_of_fileio): Initialize and staticpro it. Delete declaration
6170 for after-insert-file-adjust-coding-function.
6171 (Finsert_file_contents): Call Qafter_insert_file_set_coding
6172 instead of Vafter_insert_file_adjust_coding_function.
6173
38914424
KH
61742003-04-11 Kenichi Handa <handa@m17n.org>
6175
6176 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
6177
6178 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
6179 string. Callers changed.
6180
61812003-04-10 Kenichi Handa <handa@m17n.org>
a288d979 6182
6901b111 6183 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
a288d979 6184 (syms_of_fileio): Declare it as a lisp variable.
6901b111
SM
6185 (Finsert_file_contents):
6186 Call Vafter_insert_file_adjust_coding_function before calling
a288d979
KH
6187 decode-format.
6188
f979dc05
JD
61892003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6190
6191 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
6192 get GtkAdjustment as widget now is a GtkRange.
6193
6194 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
6195 GtkRange to avoid memory leak.
6196
f8c6b4c2 61972003-04-09 Kenichi Handa <handa@m17n.org>
cb98871c 6198
50ebc53d
KH
6199 * xfaces.c (Vface_font_rescale_alist): New variable.
6200 (struct font_name): New member rescale_ratio.
6201 (font_rescale_ratio): New function.
6901b111 6202 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
50ebc53d
KH
6203 (better_font_p): On comparing point sized, pay attention to
6204 recale_ratio member of fonts.
6205 (build_scalable_font_name): Reflect font->rescale_ratio in the
6206 font name.
6901b111 6207 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
50ebc53d 6208
cb98871c
KH
6209 * lread.c (read1): Before calling index, check if the 2nd
6210 arguemnt is in ASCII range.
6211
4773b8ca
RS
62122003-04-08 Richard M. Stallman <rms@gnu.org>
6213
b0ada147
RS
6214 * fileio.c (Ffile_symlink_p): Doc fix.
6215
6216 * editfns.c (Fformat): Translate positions of text properties
6217 in the format string to apply them to the result.
6218
4773b8ca
RS
6219 * fileio.c (Finsert_file_contents): Doc fix.
6220 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
6221
62222003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
6901b111 6223
4773b8ca
RS
6224 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
6225
e8f25745 62262003-04-08 Steven Tamm <steventamm@mac.com>
b0ada147 6227
e8f25745
ST
6228 * mac.c (init_mac_osx_environment): Switch libexec and bin so
6229 that self-contained application finds libexec files.
6230
f8c6b4c2 62312003-04-08 Kenichi Handa <handa@m17n.org>
2310d84c 6232
6901b111
SM
6233 * coding.c (code_convert_region_unwind):
6234 Set Vlast_coding_system_used to the argument.
2310d84c
KH
6235 (code_convert_region): If post-read-conversion function changed
6236 the value of last-coding-sytem, keep the new value in
6237 coding->symbol so that it won't be overridden.
6238 (run_pre_post_conversion_on_str): Likewise.
7c086845
KH
6239 (coding_system_accept_latin_extra_p): New function.
6240 (find_safe_codings): Pay attention to characters registered in
6241 latin-extra-code-table.
2310d84c 6242
39c9a034
TTN
62432003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
6244
6245 * Makefile.in (md5.o): Add missing dependency info.
6246
eb67c5d6
RS
62472003-04-06 Richard M. Stallman <rms@gnu.org>
6248
6249 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
6250
6251 * marker.c (verify_bytepos): New function.
6252
6253 * intervals.c (set_intervals_multibyte_1): When becoming
6254 multibyte, adjust right and left child sizes to a whole set of
6255 characters. If an interval gets zero total-length, delete it.
6256 If an interval consists of just its children, delete one of them.
6257
6258 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
6259 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
39c9a034 6260
eb67c5d6
RS
6261 * alloc.c: (VALIDATE_LISP_STORAGE): Macro deleted.
6262 All calls deleted.
6263 (lisp_malloc): Do the work here directly.
6264
b1f81fc5
JB
62652003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
6266
6267 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
6268 char tables.
6269
62702003-04-04 Kenichi Handa <handa@m17n.org>
aa8b70ae
KH
6271
6272 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
6273 destructively change "%S" to "%s".
6274
774666fb
MB
62752003-04-03 Miles Bader <miles@gnu.org>
6276
6277 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
6278 always set.
6279
19c37f01
DL
62802003-04-01 Dave Love <fx@gnu.org>
6281
6282 * xfns.c (xpm_lookup_color): Grok "opaque".
6283
2f4b24c3
AC
62842003-03-31 Andrew Choi <akochoi@shaw.ca>
6285
6286 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
6287 parent window ID.
6288
6289 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
6290
6291 * macterm.h (struct mac_output): Define x_pixels_diff and
6292 y_pixels_diff.
b1f81fc5 6293
9443fcf6
JB
62942003-03-31 Juanma Barranquero <lektu@terra.es>
6295
6296 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
6297 blockinput.h and files included from it.
6298
e072891b
KS
62992003-03-31 Kim F. Storm <storm@cua.dk>
6300
6301 The following changes consolidates the common code related to
6302 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
6303 files into frame.c.
9443fcf6 6304
e072891b
KS
6305 * frame.c: Include blockinput.h.
6306 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
6307 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
6308 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
6309 related vars here.
6310 (struct frame_parm_table, frame_parms): New table for describing
6311 frame parameters and their associated Q-variable.
6312 The order of the parameters corresponds to the sequence of the
6313 frame_parm_handlers table in redisplay_interface.
6314 (x_fullscreen_move, x_set_frame_parameters)
6315 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
6316 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
6317 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
6318 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
6319 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
6320 Generic functions for processing of frame parameters.
6321 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
6322 (display_x_get_resource, x_get_resource_string): Functions for
6323 generic access to X resources.
6324 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
6325 (x_default_parameter, Fx_parse_geometry): Functions for generic
6326 access to frame parameters.
6901b111
SM
6327 (x_figure_window_size): Generic calculation of frame size.
6328 Fixed to add space needed for tool bar. Also setup size_hint_flags.
e072891b
KS
6329 (syms_of_frame): Intern and staticpro frame parameter variables.
6330 Defvar_lisp Vx_resource_class and Vx_resource_name here.
6331 Defsubr Sx_get_resource and Sx_parse_geometry.
9443fcf6 6332
e072891b
KS
6333 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
6334 parameter related vars defined in frame.c.
6335 (EMACS_CLASS): Define here.
6336 (enum FULLSCREEN_*): Define here.
6337 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
6338 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
6339 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
6340 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
6341 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
6342 (x_set_visibility, x_set_autoraise, x_set_autolower)
6343 (x_set_unsplittable, x_set_vertical_scroll_bars)
6344 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
6345 (x_figure_window_size): Add prototypes.
6346
6347 * dispextern.h (frame_parm_handler): New typedef.
6348 (struct redisplay_interface): New member frame_parm_handlers.
6349 (enum resource_types): Move declaration here.
6350 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
6351 (x_default_parameter): Add prototypes.
6352
6353 * window.c: Remove extern decl for frame parameter vars.
6354 (change_window_heights): New generic function;
6355 replaces x_change_window_heights. All users changed.
6356
6357 * window.h (change_window_heights): Add prototype.
6358
6359 * xfaces.c: Remove extern decl for frame parameter vars.
6360
6361 * xterm.h (EMACS_CLASS): Remove. Use generic define.
6362 (struct w32_display_info): Fix type of xrdb member.
6363 (enum FULLSCREEN_*): Remove.
6364 Remove prototypes for generic functions (in frame.h).
6365
6366 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
6367 parameters now defined in frame.h and frame.c.
f63fd14e 6368 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
6369 (enum x_frame_parms): Remove (bogus, unused enum).
6370 (check_x_display_info): Make non-static (for frame.c).
6371 (struct x_frame_parm_table, x_frame_parms): Remove.
6372 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
6373 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
6374 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
6375 (x_change_window_heights, x_set_autoraise, x_set_autolower)
6376 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
6377 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
6378 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
6379 Remove. Use generic functions instead.
6380 (enum resource_types): Remove.
6381 (x_set_scroll_bar_default_width): New global function (for frame.c).
6382 (Fx_create_frame): Depend on x_figure_window_size to add space for
6383 toolbar and setup size_hint_flags.
6384 (x_frame_parm_handlers): New table for redisplay_interface.
6385 (syms_of_xfns): Don't intern/staticpro removed vars.
9443fcf6 6386
e072891b 6387 * xterm.c: Remove unnecessary extern declarations.
f63fd14e 6388 (x_fullscreen_adjust): Remove. Use generic instead.
e072891b
KS
6389 (x_redisplay_interface): Add x_frame_parm_handlers member.
6390
6391 * w32gui.h (XrmDatabase): New (dummy) typedef.
6392
6393 * w32term.h (EMACS_CLASS): Remove. Use generic define.
6394 (struct w32_display_info): Fix type of xrdb member.
6395 (enum FULLSCREEN_*): Remove.
6396 (x_fullscreen_adjust): Remove prototype.
6397
6398 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
6399 parameters now defined in frame.h and frame.c.
f63fd14e 6400 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
6401 (enum x_frame_parms): Remove (bogus, unused enum).
6402 (check_x_display_info): Make non-static (for frame.c).
6403 (struct x_frame_parm_table, x_frame_parms): Remove.
6404 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
6405 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
6406 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
6407 (x_change_window_heights, x_set_autoraise, x_set_autolower)
6408 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
6409 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
6410 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
6411 Remove. Use generic functions instead.
6412 (enum resource_types): Remove.
6413 (x_set_scroll_bar_default_width): New global function (for frame.c).
6414 (Fx_create_frame): Depend on x_figure_window_size to add space for
6415 toolbar and setup size_hint_flags.
6416 (w32_frame_parm_handlers): New table for redisplay_interface.
6417 (syms_of_w32fns): Don't intern/staticpro removed vars.
9443fcf6 6418
e072891b
KS
6419 * w32term.c: Remove unnecessary extern declarations.
6420 (x_fullscreen_adjust): Remove. Use generic instead.
6421 (x_redisplay_interface): Add w32_frame_parm_handlers member.
6422
6423 * w32reg.c (x_get_string_resource): Use XrmDatabase.
6424
6425 * macgui.h (XrmDatabase): New (dummy) typedef.
6426
6427 * macterm.h (EMACS_CLASS): Remove.
6428 (struct mac_display_info): Add xrdb member.
6429 (struct mac_output): Add want_fullscreen member.
6430
6431 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
6432 parameters now defined in frame.h and frame.c.
f63fd14e 6433 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
6434 (check_x_display_info): Make non-static (for frame.c).
6435 (struct x_frame_parm_table, x_frame_parms): Remove.
6436 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
6437 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
6438 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
6439 (x_change_window_heights, x_set_autoraise, x_set_autolower)
6440 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
6441 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
6442 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
6443 Remove. Use generic functions instead.
6444 (enum resource_types): Remove.
6445 (x_set_scroll_bar_default_width): New global function (for frame.c).
6446 (mac_frame_parm_handlers): New table for redisplay_interface.
6447 (syms_of_macfns): Don't intern/staticpro removed vars.
9443fcf6 6448
e072891b
KS
6449 * macterm.c: Remove unnecessary extern declarations.
6450 (x_redisplay_interface): Add mac_frame_parm_handlers member.
6451
3e6a560b
KS
6452 * Makefile.in (frame.o): Add dependency on blockinput.h and files
6453 included from it (atimer.h and systime.h).
6454
7b7b454e
AS
64552003-03-30 Andreas Schwab <schwab@suse.de>
6456
6457 * xdisp.c (x_insert_glyphs): Fix swapped width and height
6458 parameters for shift_glyphs_for_insert.
6459
6460 * macterm.c (x_redisplay_interface): Add missing entry for
6461 draw_vertical_window_border.
6462
beb402de
KG
64632003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
6464
6465 * fileio.c (Fexpand_file_name): In the no-handler case, after
6466 expanding, look again for a handler and invoke it. This is needed
6467 for filenames like "/foo/../user@host:/bar/../baz" -- the first
6468 expansion produces "/user@host:/bar/../baz" which needs to be
6469 expanded again for the finame result "/user@host:/baz".
6470
b676f356
JD
64712003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6472
6473 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
6474 of area to be redrawn for better performance.
6475
3c671a56
SM
64762003-03-28 Stefan Monnier <monnier@cs.yale.edu>
6477
6478 * xterm.c (take_vertical_position_into_account): Remove.
6479 (xt_action_hook): Call set_vertical_scroll_bar if needed.
6480 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
6481 (xm_scroll_callback, x_create_toolkit_scroll_bar)
6482 (x_set_toolkit_scroll_bar_thumb): Simplify.
6483 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
6484 (XTread_socket): Remove unused var.
6485 (x_make_frame_invisible): Replace goto with else.
6486
6487 * xdisp.c (set_vertical_scroll_bar): New fun.
6488 (redisplay_window): Use it.
6489
84f2e615
RS
64902003-03-26 Richard M. Stallman <rms@gnu.org>
6491
6492 * xdisp.c (update_tool_bar): Recompute tool bar if
6493 update_mode_lines is set. Set w->update_mode_line
6494 only if the tool bar contents actually change.
6495 (update_menu_bar): Undo previous change.
6496
70b6104c
JD
64972003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6498
5fd6f727
JD
6499 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
6500 (xg_frame_set_char_size): Calculate scroll bar width before frame
6501 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
6502 (xg_separator_p): Check for all documented separator types.
6503 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
6504 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
6505
70b6104c
JD
6506 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
6507 so tool bar gets updated.
6508
d9b36d19
SM
65092003-03-26 Stefan Monnier <monnier@cs.yale.edu>
6510
6511 * data.c (store_symval_forwarding): Re-instate part of the code
6512 that was deleted with too much enthusiasm.
6513
65142003-03-25 Stefan Monnier <monnier@cs.yale.edu>
6515
6516 * data.c (store_symval_forwarding): Delete special read-only
6517 hack for type == -1, since we now use ->constant instead.
6518 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
6519
6520 * buffer.c (overlays_in): Declare static.
6521 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
6522 `constant' field rather than the variable's `type' field.
6523
365fa1b3
AC
65242003-03-24 Andrew Choi <akochoi@shaw.ca>
6525
6526 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
6527
6528 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
6529
6530 * fns.c [MAC_OSX]: Do not redefine vector.
6531
6532 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
6533
6534 * macgui.h: Remove definition of No_Cursor.
6535
d9b36d19 6536 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
365fa1b3
AC
6537
6538 * xdisp.c: Define No_Cursor.
6539 (x_write_glyphs, notice_overwritten_cursor)
6540 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
6541 (note_mouse_highlight): Remove Mac-specific code.
6542 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
d9b36d19 6543
c0bcce6f
JPW
65442003-03-24 John Paul Wallington <jpw@gnu.org>
6545
6546 * xdisp.c (redisplay_window): If mini window's buffer is not
6547 empty, then redisplay it like other windows.
6548
a526b96c
KS
65492003-03-23 Kim F. Storm <storm@cua.dk>
6550
6551 * w32term.c (w32_draw_window_cursor): Fix last change.
6552
37ab321e
KH
65532003-03-23 Kenichi Handa <handa@m17n.org>
6554
a526b96c
KS
6555 * alloc.c (make_string_from_bytes, make_specified_string):
6556 Add `const' for the arg CONTENTS.
37ab321e
KH
6557
6558 * lisp.h (make_string_from_bytes, make_specified_string):
6559 Prototypes adjusted.
6560
7863d625
JD
65612003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6562
a526b96c 6563 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
fd4c9408 6564
7863d625
JD
6565 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
6566 (XG_SB_RANGE): New define.
6567
6568 * gtkutil.c (xg_fixed_handle_expose): New function.
6569 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
6570 expose events.
6571 (xg_update_scrollbar_pos): Take two more arguments, left and width
6572 of scroll bar including borders.
6573 Clear left and right part outside scroll bar separately as some
6574 themes have bars that are not an even number of pixels.
d9b36d19 6575 Don't set reallocate_redraws, don't call
7863d625
JD
6576 gdk_window_process_all_updates.
6577 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
6578 so no need to change it. Calculate size and value with XG_SB_RANGE.
6579
d9b36d19
SM
6580 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
6581 Pass left and width of scroll bar including borders to
7863d625
JD
6582 xg_update_scrollbar_pos.
6583
af0ad939
TTN
65842003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
6585
6586 * Makefile.in: Make sure space precedes end-of-line backslashes.
6587
b22139fd
KS
65882003-03-22 Kim F. Storm <storm@cua.dk>
6589
6590 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
6591 Add generic versions here. Remove system specific versions
6592 defined elsewhere.
6593
6594 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
6595 Add prototypes.
6596
6e6410cf
KS
6597 * xterm.h (STORE_NATIVE_RECT): New macro.
6598
5c9cc435
KS
65992003-03-21 Kim F. Storm <storm@cua.dk>
6600
00c64fab
SM
6601 * xdisp.c (get_glyph_string_clip_rect):
6602 Use FRAME_INTERNAL_BORDER_WIDTH.
5c9cc435
KS
6603
6604 * dispextern.h (struct redisplay_interface): Add active_p
6605 argument to draw_window_cursor member. All uses changed.
6606
acd37560
KS
66072003-03-21 Kim F. Storm <storm@cua.dk>
6608
6609 The following changes consolidate code related to writing and
6610 inserting glyphs, exposing frame, the tool bar, the mouse face,
6611 the output cursor, and help echo from xterm.c, w32term.c and
6612 macterm.c into xdisp.c. It also generalizes the use of the
6613 window_part enum instead of using numeric values throughout.
af0ad939 6614
acd37560
KS
6615 * xdisp.c: Consolidate gui-independent code here.
6616 Include keymap.h.
6617 (Qhelp_echo): Import.
6618 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
6619 (help_echo_string, help_echo_window, help_echo_object)
6620 (previous_help_echo_string, help_echo_pos): Declare here.
6621 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
6622 (estimate_mode_line_height): Define here. Handle windowing
6623 systems directly (without using estimate_mode_line_height_hook).
6624 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
6625 (update_window_cursor, update_cursor_in_window_tree)
6626 (fast_find_position, fast_find_string_pos)
6627 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
6628 (expose_area, expose_line, expose_overlaps, expose_window)
6629 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
6630 declared static as they are only used locally in xdisp.c.
6631 (draw_glyphs): Rename from x_draw_glyphs and make static.
6632 (tool_bar_item_info, notice_overwritten_cursor): Make static.
6633 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
6634 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
af0ad939 6635 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
acd37560
KS
6636 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
6637 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
6638 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
6639 (note_mouse_highlight, x_clear_window_mouse_face)
6640 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
6641 (x_intersect_rectangles): New generic functions for use by xdisp.c
6642 and GUI front-ends.
6643 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
6644 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
6645
6646 * dispextern.h (Display_Info): Generic typedef for *_display_info.
6647 (NativeRectangle): Generic typedef for rectangle type.
6648 (enum window_part): Move here from window.c.
6649 (struct redisplay_interface): New members flush_display_optional,
6650 define_frame_cursor, clear_frame_area, draw_window_cursor,
6651 draw_vertical_window_border, shift_glyphs_for_insert.
6652 Rename member clear_mouse_face to clear_window_mouse_face.
6653 (estimate_mode_line_height_hook): Remove hook.
6654 (auto_raise_tool_bar_buttons_p): Don't declare extern.
6655 (tool_bar_item_info): Remove prototype.
6656 (help_echo_string, help_echo_window, help_echo_object)
6657 (previous_help_echo_string, help_echo_pos)
6658 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
6659 (x_stretch_cursor_p, output_cursor): Declare extern.
6660 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
6661 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
6662 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
6663 (display_and_set_cursor, set_output_cursor, x_cursor_to)
6664 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
6665 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
6666 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
6667 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
6668 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
6669 Add prototypes.
6670 (mode_line_string, marginal_area_string): Fix prototypes.
6671
6672 * window.c (enum window_part): Move to dispextern.h.
6673 (coordinates_in_window): Use enum window_part member names
6674 instead of numbers to describe return value.
6675 (struct check_window_data): Change part member to window_part.
6676 (check_window_containing): Return window_part unaltered.
6677 (window_from_coordinates): Change part arg from int to enum
6678 window_part. Allow part arg to be null. All users changed.
6679
6680 * window.h (window_from_coordinates): Fix prototype.
6681
6682 * term.c (estimate_mode_line_height): Move to xdisp.c.
6683
6684 * keyboard.c (make_lispy_event): Use enum window_part.
6685
6686 * dispnew.c (mode_line_string, marginal_area_string): Use enum
6687 window_part instead of int in arg list. Users changed.
6688
6689 * xterm.h (No_Cursor): Declare as None for X.
6690 (struct mac_output): Replace member cross_cursor by hand_cursor.
af0ad939 6691
acd37560
KS
6692 * xterm.c: Remove consolidated defines and code.
6693 (BETWEEN): Remove unused macro.
6694 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
6695 (x_define_frame_cursor, x_clear_frame_area)
6696 (x_draw_window_cursor): New X-specific functions for RIF.
6697 (x_redisplay_interface): Add new members.
6698
6699 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
6700
6701 * w32term.h (struct w32_output): Remove cross_cursor member.
6702
6703 * w32term.c: Remove consolidated defines and code.
6704 (BETWEEN): Remove unused macro.
6705 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
6706 (w32_define_frame_cursor, w32_clear_frame_area)
6707 (w32_draw_window_cursor): New W32-specific functions for RIF.
6708 (w32_redisplay_interface): Add new members.
6709
a64387ee 6710 * w32gui.h (No_Cursor): Define as 0 for W32.
acd37560
KS
6711 (XRectangle): Add X compatible rectangle type.
6712 (NativeRectangle): Declare as RECT for W32.
6713 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
6714
6715 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
6716
6717 * w32console.c: Remove consolidated defines and code.
af0ad939 6718
acd37560
KS
6719 * msdos.h (Display_Info): Add generic typedef.
6720
6721 * msdos.c: Remove consolidated defines and code.
6722 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
6723
6724 * macterm.h (struct mac_output): Replace member cross_cursor by
6725 hand_cursor.
6726 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
6727
6728 * macterm.c: Remove consolidated defines and code.
6729 (BETWEEN): Remove unused macro.
6730 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
6731 (mac_define_frame_cursor, mac_clear_frame_area)
6732 (mac_draw_window_cursor): New Mac-specific functions for RIF.
6733 (x_redisplay_interface): Add new members.
6734
6735 * macgui.h (No_Cursor): Define as 0 for Mac.
6736 (XRectangle): Add X compatible rectangle type.
6737 (NativeRectangle): Declare as Rect for Mac.
6738 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
6739
204ccab1
KS
6740 * macfns.c (x_set_mouse_color): Setup hand_cursor.
6741 (x_set_cursor_color): Use x_display_and_set_cursor.
acd37560 6742
9443fcf6 6743 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
acd37560
KS
6744 included from it. Add dependency on keymap.h.
6745
6746 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
6747
8ba01a70 67482003-03-21 Kenichi Handa <handa@m17n.org>
3f817c73
KH
6749
6750 * fileio.c (Fexpand_file_name): Fix previous change.
6751
8ba01a70 67522003-03-19 Kenichi Handa <handa@m17n.org>
4f497b0a
KH
6753
6754 * fileio.c (Ffile_name_directory): Reconstruct file name by
6755 make_specified_string.
6756 (Ffile_name_nondirectory, Ffile_name_as_directory)
6757 (Fdirectory_file_name, Fexpand_file_name)
6758 (Fsubstitute_in_file_name): Likewise.
6759 (Fread_file_name): Compare decoded homedir with DIR and
6760 DEFAULT_FILENAME.
6761
6762 * alloc.c (make_specified_string): If NCHARS is negative, count
6763 the number of characters.
6764
19536747
JD
67652003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6766
de38ae5a
JD
6767 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
6768 all widgets.
6769
19536747
JD
6770 * gtkutil.h: Removed xg_ignore_next_thumb.
6771
37ab321e 67722003-03-18 Kenichi Handa <handa@m17n.org>
cb0d4562
KH
6773
6774 * coding.c (Vchar_coding_system_table): Remove this variable.
6775 (Vcoding_system_safe_chars): New variable.
6776 (intersection): Remove this function.
6777 (find_safe_codings): Don't use Vchar_coding_system_table, but try
6778 all codings in SAFE_CODINGS.
00c64fab 6779 (Ffind_coding_systems_region_internal): Adjust for the change of
cb0d4562
KH
6780 find_safe_codings. Get generic coding systems from
6781 Vcoding_system_safe_chars.
6782 (Fdefine_coding_system_internal): New function.
6783 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
6784 Initialize and staticpro Vcoding_system_safe_chars.
6785
17097258
JD
67862003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6787
2a2071c3
JD
6788 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
6789 equal old values before updating.
6790
17097258
JD
6791 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
6792
6793 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
6794
67952003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6796
6797 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
6798 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
6799 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
6800 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
6801 (xg_create_scroll_bar): Pass bar to button event callback.
6802 (xg_find_top_left_in_fixed): New function.
6803 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
6804 whole scroll bar area. Get old position with
6805 xg_find_top_left_in_fixed, calculate and only clear needed areas.
6806 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
6807 dragging is in progress. Calculate whole as for Motif.
6808 Remove code that saved last values. Call gtk_range functions to
6809 set scroll bar sizes.
6810
6811 * gtkutil.h: Removed xg_ignore_next_thumb.
6812
8cb9dfbf
JB
68132003-03-17 Juanma Barranquero <lektu@terra.es>
6814
6815 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
6816 and files included from it.
6817
00c64fab
SM
68182003-03-18 Stefan Monnier <monnier@cs.yale.edu>
6819
6820 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
6821 multiple occurrences of the same keymap under different prefixes.
6822 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
6823
c45bb3b2
JR
68242003-03-16 Jason Rumney <jasonr@gnu.org>
6825
6826 * w32gui.h: Use HDC for Display.
6827
6828 * w32term.c (w32_encode_char): Prevent double-byte chars from
6829 crashing Emacs.
6830
6831 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
6832 as binary.
6833
2a6d0874
JB
68342003-03-16 Juanma Barranquero <lektu@terra.es>
6835
6836 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
6837
03eb5fab
KS
68382003-03-16 Kim F. Storm <storm@cua.dk>
6839
6840 The following changes consolidate some of the gui-independent
6841 parts of the processing and drawing of "glyph strings" from
6842 xterm.c, w32term.c, and macterm.c into xdisp.c.
2a6d0874 6843
03eb5fab
KS
6844 * dispextern.h (struct glyph): Reduce face_id member from 22 to
6845 21 bits (this reduces number of faces from 4M to 2M).
6846 Replace W32 specific w32_font_type member (2 bits) by generic
6847 font_type member (3 bits) for portability.
6848 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
6849 (enum draw_glyphs_face): Define here.
6850 (struct glyph_string): Define here. Merge W32 and X versions.
6851 (struct redisplay_interface): New members per_char_metric,
6852 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
6853 (VCENTER_BASELINE_OFFSET): Define here.
6854 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
6855 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
6856
6857 * xdisp.c: Consolidate gui-independent "glyph string" code here.
6858 (dump_glyph_string): Moved here.
6859 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
6860 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
6861 (fill_composite_glyph_string, fill_glyph_string)
6862 (fill_image_glyph_string, fill_stretch_glyph_string)
6863 (left_overwritten, left_overwriting, right_overwritten)
6864 (right_overwriting, get_char_face_and_encoding)
6865 (set_glyph_string_background_width, compute_overhangs_and_x)
6866 (append_glyph, append_composite_glyph, produce_image_glyph)
6867 (take_vertical_position_into_account, append_stretch_glyph)
6868 (produce_stretch_glyph): New generic functions (based on X version).
6869 Call platform specific functions through rif.
6870 (INIT_GLYPH_STRING): New macro, hides W32 details.
6871 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
6872 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
6873 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
6874 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
6875 (notice_overwritten_cursor):
6876 Generic functions exported to platform modules. Users changed.
6877
6878 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
6879 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
6880 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
fad49844 6881 New macros for consolidated code.
2a6d0874 6882
03eb5fab
KS
6883 * xterm.c: Remove consolidated defines and code.
6884 (x_per_char_metric, x_encode_char)
6885 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
6886 (x_redisplay_interface): Add new members.
6887
6888 * w32gui.h (Display): Add dummy typedef for consolidation.
6889 (XChar2b): Define alias for wchar_t for consolidation.
6890 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
6891
6892 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
2a6d0874 6893 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
03eb5fab
KS
6894 New macros for consolidation.
6895
fad49844 6896 * w32term.c: Remove consolidated defines and code.
03eb5fab
KS
6897 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
6898 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
6899 (w32_per_char_metric): Change font_type arg to int for RIF.
6900 (w32_encode_char): Return int according to RIF requirements.
6901 (w32_compute_glyph_string_overhangs): Adapt to RIF.
6902 (w32_get_glyph_overhangs): New function for RIF. Uses generic
6903 x_get_glyph_overhangs.
6904 (w32_redisplay_interface): Add new members.
6905
6906 * macgui.h (XChar2b): Move typedef here for consolidation.
6907 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
6908
6909 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
6910 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
6911 consolidation.
6912
6913 * macterm.c: Remove consolidated defines and code.
6914 (mac_per_char_metric): New function for RIF.
00c64fab 6915 (mac_encode_char): Adapt to new RIF requirements.
03eb5fab
KS
6916 (mac_compute_glyph_string_overhangs): Adapt for RIF.
6917 (x_redisplay_interface): Add new members.
6918
00c64fab
SM
69192003-03-15 Stefan Monnier <monnier@cs.yale.edu>
6920
6921 * keymap.c (Vmenu_events): New var.
6922 (syms_of_keymap): Initialize it.
6923 (where_is_internal): Check more carefully what is a menu event.
6924
225c7a07
RS
69252003-03-14 Richard M. Stallman <rms@gnu.org>
6926
6927 * lread.c (read1): After #!, exit loop on eof.
6928
cea9be54
JD
69292003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6930
9ea0e54d
JD
6931 * gtkutil.h: Add declaration for xg_frame_cleared.
6932
0cb35f4e
JD
6933 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
6934
cea9be54
JD
6935 * gtkutil.c (struct xg_last_sb_pos): New structure.
6936 (handle_fixed_child): New function.
6937 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
6938 and force a redraw on them.
6939 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
6940 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
6941 so we can avoid unneeded redraws.
6942 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
6943 and force a redraw on the scroll bar.
6944 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
6945 if xg_last_sb_pos shows the positions are up to date.
0cb35f4e 6946 (xg_frame_cleared): New function.
cea9be54 6947
20b853f3
KH
69482003-03-13 Kenichi Handa <handa@m17n.org>
6949
6950 * coding.c (Fdetect_coding_region): Fix docstring.
6951 (Fdetect_coding_string): Fix docstring.
6952
7a555aff
AS
69532003-03-13 Andreas Schwab <schwab@suse.de>
6954
25cc0080
AS
6955 * gtkutil.c: Add prototype for create_menus.
6956
30225431
AS
6957 * data.c (long_to_cons): Fix type of top.
6958
6959 * xselect.c (selection_data_to_lisp_data): Use int instead of
6960 long for an integer of size 4.
6961
7a555aff 6962 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
30225431 6963 (xg_tool_bar_help_callback): Likewise.
7a555aff 6964
a3e4741f
AS
69652003-03-12 Andreas Schwab <schwab@suse.de>
6966
6967 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
6968
9668be7c
KS
69692003-03-12 Kim F. Storm <storm@cua.dk>
6970
03eb5fab 6971 The following changes consolidate the fringe handling from
9668be7c 6972 xterm.c, w32term.c, and macterm.c into xdisp.c.
00a88f32 6973
9668be7c
KS
6974 * xdisp.c: Consolidate fringe handling code here.
6975 (left_bits, right_bits, continued_bits, continuation_bits)
6976 (ov_bits, zv_bits): Define fringe bitmaps.
6977 (fringe_bitmaps): New array holding fringe bitmaps.
6978 (draw_fringe_bitmap): Draw a specific bitmap; call display
6979 specific drawing routine via rif->draw_fringe_bitmap.
6980 (draw_row_fringe_bitmaps): Generic replacement for
6981 x_draw_row_fringe_bitmaps; all callers changed.
6982 (compute_fringe_widths): Generic replacement for
6983 x_compute_fringe_widths; all callers changed.
6984
6985 * dispextern.h (enum fringe_bitmap_type): Define here.
6986 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
6987 (fringe_bitmaps): Declare extern.
6988 (struct redisplay_interface): New member draw_fringe_bitmap.
6989 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
6990
6991 * xterm.c: Remove generic fringe code.
6992 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
6993 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
6994
6995 * w32term.c: Remove generic fringe code.
6996 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
6997 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
00a88f32 6998
9668be7c
KS
6999 * macterm.c: Remove generic fringe code.
7000 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
7001 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
7002
00a88f32
SM
70032003-03-11 Stefan Monnier <monnier@cs.yale.edu>
7004
7005 * print.c (Fprin1_to_string): Return unibyte string if possible.
7006
1d1de695
DK
70072003-03-09 David Kastrup <dak@gnu.org>
7008
7009 * process.c (read_process_output): We have allocated enough space
7010 for readmax and carryover, so actually use the alloted space.
7011
257f40f2
JD
70122003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7013
7014 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
7015 toolkit scrollbar click.
7016
7017 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
7018 for USE_GTK.
7019 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
7020 also.
7021 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
7022 scrollbar and control is pressed, call x_scroll_bar_handle_click.
00a88f32 7023
257f40f2
JD
7024 * gtkutil.h: Declare xg_get_scroll_id_for_window.
7025
7026 * gtkutil.c (xg_get_scroll_id_for_window): New function.
7027 (xg_tool_bar_item_expose_callback): New function.
7028 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
7029 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
7030 on the tool bar widget.
7031 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
7032 to expose on the tool bar item widgets.
7033
15213141
JD
70342003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7035
26b74a0b 7036 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
00a88f32 7037 struct image* when deciding to update (struct image* may have been
26b74a0b
JD
7038 deleted from the image cache).
7039
15213141
JD
7040 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
7041 the event isn't for a frame (i.e. for dialogs).
7042
20b853f3 70432003-03-07 Kenichi Handa <handa@m17n.org>
cb681b34
KH
7044
7045 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
7046 composition components reaches the limit, terminate composing.
7047 (COMPOSITION_OK): New macro.
00a88f32 7048 (detect_coding_iso2022): Use it if an escape sequence for
cb681b34
KH
7049 composition is found.
7050 (coding_restore_composition): Adjust the number of composition
7051 components if it is not sane.
7052
c9029fe5
JB
70532003-03-06 Juanma Barranquero <lektu@terra.es>
7054
7055 * w32term.h (struct w32_display_info): Add xrdb member to support
7056 passing resources via -xrm on Windows.
7057
7058 * w32term.c (w32_make_rdb): New function.
7059 (w32_term_init): Use it to initialize xrdb member of w32_display_info
7060 struct. Delete leftover code.
7061
7062 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
7063 for resources passed on the command line.
7064
7065 * w32reg.c (w32_get_rdb_resource): New function.
7066 (x_get_string_resource): Use it, so resources passed with -xrm
7067 supercede the ones in the registry.
7068
9d00001f
JD
70692003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7070
7071 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
7072 instead of x_top_window_to_frame.
7073
ca2417b9
JD
70742003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7075
7076 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
7077 when restarting Emacs.
7078
5b20caf0
RS
70792003-03-03 Richard M. Stallman <rms@gnu.org>
7080
7081 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
7082 to run kill-buffer-query-functions.
7083 (Qkill_buffer_query_functions): New var.
7084 (syms_of_buffer): Init and staticpro it.
7085
58e91b77
JD
70862003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7087
7088 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
7089
932357b4
KS
70902003-02-25 Kim F. Storm <storm@cua.dk>
7091
7092 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
7093 If centering point failed to make whole line visible and vscroll
7094 is non-zero, disable vscroll and try centering point again.
7095
7096 * lread.c (read1): Accept `single space' syntax like (? x).
7097
bb8db7e1
JD
70982003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7099
7100 * keyboard.c (cancel_hourglass_unwind): Surround with
7101 #ifdef HAVE_X_WINDOWS
7102
47d77aab
KH
71032003-02-25 Kenichi Handa <handa@m17n.org>
7104
7105 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
7106 process only when "subprocesses" is defined.
7107
6a097c0c
SM
71082003-02-24 Stefan Monnier <monnier@cs.yale.edu>
7109
7110 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
7111
0b063c27
JB
71122003-02-24 Juanma Barranquero <lektu@terra.es>
7113
d1135afc
JB
7114 * callint.c (fix_command): Declare as static void and move before
7115 Fcall_interactively.
7116
0b063c27
JB
7117 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
7118 (syms_of_xdisp): Don't initialize Qwhen.
7119
0af912f0
JD
71202003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7121
7122 * keyboard.c (cancel_hourglass_unwind): New function.
7123 (command_loop_1): Cancel hourglass with unwind-protect.
7124
120d0a23
RS
71252003-02-23 Richard M. Stallman <rms@gnu.org>
7126
7127 * callint.c (fix_command): New subroutine, from Fcall_interactively.
7128 Detect (when ... (region-beginning)) etc.
7129 (Fcall_interactively): Call fix_command.
7130 (Qif, Qwhen): New variables.
7131 (syms_of_callint): Init and staticpro them.
0b063c27 7132
120d0a23
RS
7133 * regex.c (print_partial_compiled_pattern): Output to stderr.
7134
4ece81a6
KG
71352003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
7136
7137 * dired.c (directory_files_internal): Don't expand directory.
7138 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
7139 instead. From Lars Hansen <larsh@math.ku.dk>.
7140
e52bd6b7
SM
71412003-02-22 Stefan Monnier <monnier@cs.yale.edu>
7142
7143 * fns.c (string_to_multibyte): Remove unused var i.
7144 (Flanginfo): Fix int/Lisp_Object mixup.
7145 (void_call2): New fun.
7146 (Fmap_char_table): Use it in place of call2.
7147
7148 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
7149
7150 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
7151
7152 * keymap.c (copy_keymap_1): Make it static.
7153
7154 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
7155
c33ef7c4
JB
71562003-02-22 David Ponce <david@dponce.com>
7157
7158 * lread.c (Fload): Don't check STRING_MULTIBYTE.
7159
16782258
JD
71602003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7161
7162 * process.h: Removed subtty field from struct Lisp_Process.
7163
7164 * process.c (create_process): Remove setting of subtty.
7165 (emacs_get_tty_pgrp): New function.
e52bd6b7
SM
7166 (Fprocess_running_child_p, process_send_signal):
7167 Call emacs_get_tty_pgrp instead of ioctl.
16782258
JD
7168 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
7169
3abeca61
KG
71702003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
7171
7172 * keymap.c (Fdefine_key): Doc fix.
7173
92a8ce63
JB
71742003-02-21 Juanma Barranquero <lektu@terra.es>
7175
7176 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
7177
7178 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
7179 POLLING_PROBLEM_IN_SELECT.
7180
7181 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
7182 Delete #undef of POLLING_PROBLEM_IN_SELECT.
7183
7184 * s/hpux10-20.h: New file.
7185
e52bd6b7
SM
7186 * process.c (wait_reading_process_input):
7187 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
92a8ce63 7188
20f1ef2e
KH
71892003-02-20 Kenichi Handa <handa@m17n.org>
7190
32d0a9dc
KH
7191 * fontset.c (check_fontset_name): If NAME is nil, return the
7192 default fontset.
7193 (override_font_info): New function.
e52bd6b7 7194 (Fset_fontset_font): Document that NAME nil means the default fontset.
32d0a9dc
KH
7195 (Ffontset_info): If FONTSET is not the default fontset, merge
7196 FONTSET onto the copy of the default fontset, and work on that
7197 copy. Document that NAME nil means the default fontset.
7198 (Ffontset_font): Document that NAME nil means the default fontset.
7199
20f1ef2e
KH
7200 * process.c (setup_process_coding_systems): If the process's
7201 in/out descriptor is -1, do nothing.
7202
77d1daf2
AS
72032003-02-19 Andreas Schwab <schwab@suse.de>
7204
e52bd6b7
SM
7205 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
7206 Add prototypes.
77d1daf2 7207
f9a45bb3
KH
72082003-02-19 Kenichi Handa <handa@m17n.org>
7209
7210 * xfaces.c (try_alternative_families): Try all scalable fonts if
7211 Vscalable_fonts_allowed is not Qt.
7212
72ecb43c
JD
72132003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7214
7215 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
7216
ee5be7c3
JD
72172003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7218
7219 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
7220 names.
7221
7222 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
e52bd6b7 7223 (sorted_font_list): Move allocation of struct font_name to
ee5be7c3
JD
7224 x_face_list_fonts.
7225 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
7226 (Fx_list_fonts): Set maxnames to -1 to get all font names.
7227
4cd519a7
KS
72282003-02-18 Kim F. Storm <storm@cua.dk>
7229
068f9882
KS
7230 * lread.c (read1): Fix last change.
7231 "`" is not always special. Allow "?" after a character constant.
4cd519a7 7232
7290a344
AC
72332003-02-18 Andrew Choi <akochoi@shaw.ca>
7234
7235 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
7236
1f7fa69b
AS
72372003-02-18 Andreas Schwab <schwab@suse.de>
7238
7239 * window.c (window_scroll_pixel_based): Move outside a
7240 multi-glyph character before setting new window start.
7241
7242 * xdisp.c (in_display_vector_p): New function.
7243 * dispextern.h (in_display_vector_p): Declare.
7244
23e21195
KS
72452003-02-18 Kim F. Storm <storm@cua.dk>
7246
7247 * lread.c (read1): Fix and relax read syntax.
7248 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
7249 Only recognize "," after dotted-pair dot if inside backquote.
7250 Never include "`" or "," (inside backquote) in a symbol.
7251 Allow dotted-pair dot after a character constant.
7252 Allow "`" and "," (inside backquote) after a character constant.
92a8ce63 7253
f098b121
JD
72542003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7255
7256 * gtkutil.c (xg_tool_bar_expose_callback): New function.
7257 (xg_create_tool_bar): Force style of tool bar to be horizontal with
7258 icons. Set name of tool bar to emacs-toolbar.
7259 (update_frame_tool_bar): Connect expose event to
7260 xg_tool_bar_expose_callback.
7261
63020c46
RS
72622003-02-17 Richard M. Stallman <rms@gnu.org>
7263
7264 * keyboard.c (this_command_key_count_reset): New variable.
7265 Initiatize to 0 where this_command_key_count is set.
7266 (read_char): Save and restore this_command_key_count_reset
7267 around input method code.
7268 (read_char): If this_command_key_count_reset, echo reread commands.
7269 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
7270
fb4452cc
KH
72712003-02-17 Kenichi Handa <handa@m17n.org>
7272
7273 * fns.c (string_to_multibyte): Always return a multibyte string.
7274
bd11cc09
JR
72752003-02-16 Jason Rumney <jasonr@gnu.org>
7276
e52bd6b7
SM
7277 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
7278 Negative max_fonts parameter means list all.
bd11cc09 7279
4cdf4bde
DL
72802003-02-14 Dave Love <fx@gnu.org>
7281
7282 * fns.c (Flanginfo): Doc fix.
7283
023b93f6
KS
72842003-02-13 Kim F. Storm <storm@cua.dk>
7285
37cd4238
KS
7286 * lread.c (read_escape): Interpret \s as a SPACE character, except
7287 for \s-X in a character constant which still is the super modifier.
7288 (read1): Signal an `invalid read syntax' error if a character
7289 constant is immediately followed by a digit or symbol character.
7290
140a6b7e
KS
7291 * search.c (Fmatch_data): Doc fix. Explicitly state that
7292 match-data is undefined if last search failed.
7293
023b93f6
KS
7294 * keymap.c (Fcommand_remapping): Renamed from Fremap_command.
7295 All uses changed.
7296
7d5c86e5
JB
72972003-02-12 Juanma Barranquero <lektu@terra.es>
7298
7299 * eval.c (Fdefmacro): Fix typo.
7300
295fff2c
KS
73012003-02-12 Kim F. Storm <storm@cua.dk>
7302
7303 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
7304 macro is a string, convert meta modifiers in string when copying
7305 the string into a vector.
7306
60f3202d
KS
73072003-02-11 Kim F. Storm <storm@cua.dk>
7308
7309 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
7310
61cb0b53
KH
73112003-02-11 Kenichi Handa <handa@m17n.org>
7312
7313 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
7314
7392e23c
KS
73152003-02-10 Kim F. Storm <storm@cua.dk>
7316
7317 * process.c: Doc fixes.
7318 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
7319
ce4254bd
KH
73202003-02-10 Kenichi Handa <handa@m17n.org>
7321
9c7a329a
KH
7322 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
7323
ce4254bd
KH
7324 * process.c (QCfilter_multibyte): New variable.
7325 (setup_process_coding_systems): New function.
e52bd6b7
SM
7326 (Fset_process_buffer, Fset_process_filter):
7327 Call setup_process_coding_systems.
ce4254bd
KH
7328 (Fstart_process): Initialize the member `filter_multibyte' of
7329 struct Lisp_Process.
7330 (create_process): Call setup_process_coding_systems.
7331 (Fmake_network_process): New keyward `:filter-multibyte'.
7332 Initialize the member `filter_multibyte' of struct Lisp_Process.
7333 Call setup_process_coding_systems.
7334 (server_accept_connection): Call setup_process_coding_systems.
7335 (read_process_output): If the process has a filter, decide the
7336 multibyteness of a string to given to the filter by
7337 `filter_multibyte' member of the process. If the process doesn't
7338 have a filter and the result of conversion is unibyte, use
7339 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
7340 multibyte form.
7341 (Fset_process_coding_system): Call setup_process_coding_systems.
7342 (Fset_process_filter_multibyte): New function.
7343 (Fprocess_filter_multibyte_p): New function.
7344 (syms_of_process): Intern and staticpro QCfilter_multibyte.
7345 Defsubr Sset_process_filter_multibyte and
7346 Sprocess_filter_multibyte_p.
7347
7348 * process.h (struct Lisp_Process): New member filter_multibyte.
7349
7350 * lisp.h (setup_process_coding_systems): Add prototype.
7351
7352 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
7353 process, update coding systems for the process.
7354
b08d5f59
KH
73552003-02-09 Kenichi Handa <handa@m17n.org>
7356
7357 * fns.c (string_to_multibyte): New function.
7358 (Fstring_to_multibyte): New function.
7359 (syms_of_fns): Defsubr it.
7360
0dfd93c0
AS
73612003-02-08 Andreas Schwab <schwab@suse.de>
7362
7363 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
7364 instead of the substitution.
7365
7b76ca1c
JD
73662003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7367
7368 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
7369
7370 * xmenu.c (menu_position_func): Adjust menu popup position so that
7371 the menu is fully visible.
7b76ca1c 7372
2436a4e4
JD
73732003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7374
7375 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
e52bd6b7
SM
7376 (x_make_frame_invisible, x_wm_set_icon_position):
7377 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
2436a4e4
JD
7378
7379 * xfns.c (x_set_name, x_set_title): Ditto.
7380
37d1e680
RS
73812003-02-04 Richard M. Stallman <rms@gnu.org>
7382
7383 * keyboard.c (echo_now): Update before_command_echo_length.
7384 (Freset_this_command_lengths): Reset this_command_key_count etc.
7385 immediately rather than arranging to do it later.
7386 (before_command_key_count_1, before_command_echo_length_1)
7387 (before_command_restore_flag): Vars deleted.
7388 (add_command_key): Don't handle before_command_restore_flag.
7389 (read_char, record_menu_key): Don't update before_command_key_count or
7390 before_command_echo_length.
7391 (read_char): Don't handle before_command_restore_flag.
7392
7393 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
7394 in direct-output clauses if it wouldn't be called in the ordinary case.
7395
578846a3
KS
73962003-02-04 Kim F. Storm <storm@cua.dk>
7397
7398 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
7399
49853a4d
JD
74002003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7401
7402 * gtkutil.c (remove_from_container): Copying list is not needed.
7403 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
7404 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
7405 on list returned from gtk_container_get_children to avoid memory leak.
7406
8b53dc06
JR
74072003-02-01 Jason Rumney <jasonr@gnu.org>
7408
5d54d177
JR
7409 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
7410 local malloc.
7411 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
7412 definitions in xpm.h.
7413 (init_xpm_functions): New function.
f63fd14e 7414 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
5d54d177
JR
7415 (init_external_image_libraries): Try to load libXpm.dll.
7416
8b53dc06
JR
7417 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
7418 timestamp.
7419
b222e415
DL
74202003-01-31 Dave Love <fx@gnu.org>
7421
7422 * syntax.c (Fskip_chars_forward)
7423 (open-paren-in-column-0-is-defun-start): Doc fix.
7424
c60ee5e7
JB
74252003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
7426
7427 * fileio.c: Support // at start of name for Cygwin (just added proper
7428 preprocessor tests).
7429
7430 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
7431
7432 * Makefile.in: Use @EXEEXT@ for Cygwin.
7433
7434 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
7435
7436 * s/cygwin.h: Added for Cygwin port.
7437
53b37591
JB
74382003-01-31 Juanma Barranquero <lektu@terra.es>
7439
7440 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
7441 when including gif_lib.h.
fe929957 7442 (init_gif_functions, init_tiff_functions): New functions.
f63fd14e
JB
7443 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
7444 Windows. Disable color table lookups. Call library functions
53b37591 7445 through pointers determined at runtime.
fe929957
JB
7446 (init_external_image_libraries): Try to load libungif.dll and
7447 libtiff.dll.
53b37591 7448
45415a8f
KH
74492003-01-31 Kenichi Handa <handa@m17n.org>
7450
7451 * xdisp.c (SKIP_GLYPHS): New macro.
e52bd6b7 7452 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
45415a8f 7453
a97e4138
JD
74542003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7455
e52bd6b7 7456 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
a97e4138 7457
6eed9bed
DL
74582003-01-30 Dave Love <fx@gnu.org>
7459
7460 * alloc.c (Vgc_elapsed, gcs_done): New variables.
7461 (Fgarbage_collect): Use them.
7462 (init_alloc, syms_of_alloc): Set them up.
7463
100dcd40
JB
74642003-01-30 Juanma Barranquero <lektu@terra.es>
7465
7466 * w32fns.c (init_external_image_libraries): Add missing operator.
7467
fbd852af
JR
74682003-01-29 Jason Rumney <jasonr@gnu.org>
7469
7470 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
7471 an alternative name for jpeg.dll.
7472
8a2d8020
KH
74732003-01-29 Kenichi Handa <handa@m17n.org>
7474
7475 * xdisp.c (set_cursor_from_row): Pay attention to string display
7476 properties.
7477
058c18c7
AC
74782003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
7479
7480 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
7481 <escape>.
7482 (keycode_to_xkeysym_table): Reformat and add more comments.
7483 (XTread_socket): Drop special case for backspace.
7484
385f11cf
AC
74852003-01-28 Andrew Choi <akochoi@shaw.ca>
7486
7487 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
7488 values in old-style RGB specs.
7489
c922a224
JB
74902003-01-27 Juanma Barranquero <lektu@terra.es>
7491
7492 * w32fns.c (init_external_image_libraries): Try alternate names for the
7493 jpeg dll.
7494
0a1d6de0
JD
74952003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7496
7497 * gtkutil.c (create_dialog, xg_separator_p)
7498 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
7499 before calling strcmp or strlen.
7500
a97e4138 75012003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1d1885fc
JD
7502
7503 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
7504 and handle image load failure.
7505
28908312
JR
75062003-01-26 Jason Rumney <jasonr@gnu.org>
7507
7508 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
7509 New functions.
f63fd14e
JB
7510 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
7511 Disable color table lookups. Call jpeg library functions
28908312
JR
7512 through pointers determined at runtime.
7513 (init_external_image_libraries): Try to load jpeg.dll.
7514
84e47416
RS
75152003-01-25 Richard M. Stallman <rms@gnu.org>
7516
7517 * lisp.h: Declare format2 instead of format1.
7518
7519 * fileio.c (barf_or_query_if_file_exists):
7520 Call format2 instead of format1.
7521
7522 * editfns.c (format2): New function, replaces format1
7523 but takes exactly two Lisp Objects as format args.
7524
7525 * buffer.c (Fkill_buffer): Call format2 instead of format1.
7526
a97e4138 75272003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1fcfb866
JD
7528
7529 * xterm.h: Change to return value of x_dispatch_event to int.
7530
7531 * xterm.c (x_filter_event): New function.
7532 (event_handler_gdk, XTread_socket): Call x_filter_event.
7533 (x_dispatch_event): Change to return value of finish.
7534 (event_handler_gdk): Use return value from x_dispatch_event.
7535
7536 * xfns.c (x_window): Call create_frame_xic for GTK version to
7537 initialize input methods.
7538
7539 * gtkutil.h: Add (void) prototypes.
7540
7541 * gtkutil.c (create_menus): Remove code that puts the help menu to
7542 the right.
7543
54eefef1
JR
75442003-01-25 Jason Rumney <jasonr@gnu.org>
7545
7546 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
7547 [HAVE_PNG]: Sync with xfns.c version.
f63fd14e
JB
7548 (png_load): Adjust colors for Windows. Use Windows
7549 bitmaps. Disable color table lookups.
c262430d
JR
7550 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
7551 (init_png_functions): New function.
7552 (png_read_from_memory, png_load): Call png library functions
7553 through pointers determined at runtime.
7554 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
7555 (init_external_image_libraries): New function.
7556 (init_xfns): Call it.
54eefef1 7557
1a9e275b
AS
75582003-01-24 Andreas Schwab <schwab@suse.de>
7559
7560 * minibuf.c (Fminibuffer_message): Verify type of parameter.
7561
a97e4138 75622003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
81e302ef
JD
7563
7564 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
7565 of static initializer.
7566
422eec7e
DL
75672003-01-24 Dave Love <fx@gnu.org>
7568
7569 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
7570 architectures.
7571
7572 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
7573 Use __alignof__.
7574
2a026b04
KH
75752003-01-24 Kenichi Handa <handa@m17n.org>
7576
7577 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
e52bd6b7 7578 It it is nonzero, don't pretend that an invisible area doesn't exist.
2a026b04
KH
7579 (command_loop_1): Call adjust_point_for_property with proper
7580 second arg.
7581
a18bb28d
JR
75822003-01-22 Jason Rumney <jasonr@gnu.org>
7583
7584 Sync changes with xterm.c and xfns.c.
7585
7586 * w32term.c (x_draw_glyph_string_foreground)
7587 (x_draw_composite_glyph_string_foreground): Implement overstriking.
7588
7589 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
7590 phys_cursor's hpos is overwritten. This is still not completely
7591 correct, as it doesn't really make sense to use hpos at all to
7592 get the cursor glyph (as that is relative to the width of the
7593 characters on the line, which may have changed during the update).
7594
7595 * w32term.c (notice_overwritten_cursor): Handle the special case
7596 of the cursor being in the first blank non-text line at the
7597 end of a window.
7598
7599 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
7600 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
7601 Compute from the x position returned by x_draw_glyphs.
7602
7603 (x_display_and_set_cursor): Don't set phys_cursor_width here,
7604 except for NO_CURSOR and system caret, to make phys_cursor_width
7605 contain what its name suggests.
7606 (notice_overwritten_cursor): Consider the cursor image erased if
7607 the output area intersects the cursor image in y-direction.
7608
6a097c0c
SM
7609 * w32term.c (note_mode_line_or_margin_highlight): Rename from
7610 note_mode_line_highlight and extend.
a18bb28d
JR
7611
7612 * w32term.c (last_window): New variable.
7613 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
7614 (note_mouse_movement): Remove reimplemented code in #if 0.
7615
7616 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
7617 not update_mode_lines, and always set it to 1.
7618
ac6e47ef
JR
76192003-01-21 Jason Rumney <jasonr@gnu.org>
7620
7621 * w32fns.c (IDC_HAND): Define it if system headers don't.
7622
76232003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
7624
7625 * w32term.h (struct w32_output): New member hand_cursor.
7626 (WM_EMACS_SETCURSOR): New message definition.
7627
7628 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
7629 function w32_define_cursor.
7630 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
7631 position, change member name output_data.x to output_data.w32 and
7632 add function w32_define_cursor.
7633 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
7634 and change member name output_data.x to output_data.w32.
e52bd6b7
SM
7635 (w32_initialize_display_info):
7636 Setup dpyinfo->vertical_scroll_bar_cursor.
ac6e47ef
JR
7637
7638 * w32fns.c (Vx_hand_shape): New variable.
7639 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
7640 WM_EMACS_SETCURSOR.
7641 (x-create-frame): Setup Cursor types.
7642
ceb39a17
JB
76432003-01-21 David Ponce <david@dponce.com>
7644
ac6e47ef 7645 * w32term.c (w32_encode_char): For DIM=1 charset, set
f63fd14e 7646 ccl->reg[2] to -1 before calling ccl_driver. (Sync. with xterm.c
ac6e47ef 7647 x_encode_char change by Kenichi Handa <handa@m17n.org> on
ceb39a17 7648 2002-09-30.)
ac6e47ef
JR
7649 (w32_draw_relief_rect): Declare all args.
7650 (w32_define_cursor): New.
7651
7652 * w32fns.c (w32_load_cursor): New function.
7653 (w32_init_class): Use it.
7654 (x_put_x_image): Declare all args.
7655
46cf0bed
JB
76562003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
7657
7658 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
7659
a97e4138 76602003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e8794476
JD
7661
7662 * gtkutil.c: Must include stdio.h before termhooks.h
7663
83fc9c63
DL
76642003-01-21 Dave Love <fx@gnu.org>
7665
7666 * alloc.c (Fgc_status): Print zombie list.
7667 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
7668 Fix assignment of zombies.
7669 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
7670 Don't take car of non-cons.
7671
7672 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
7673
7674 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
7675
fe04b8c8
JR
76762003-01-20 David Ponce <david@dponce.com>
7677
7678 * w32menu.c (digest_single_submenu): Declare all args.
7679
7680 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
7681 changes in xmenu.c:
7682
7683 (parse_single_submenu): Use individual keymap's prompt
7684 string as pane name, if there is one.
7685 (set_frame_menubar): Save menu_items_n_panes from each call to
7686 parse_single_submenu and use it when calling digest_single_submenu.
7687
539e69a9
ST
76882003-01-20 Steven Tamm <steventamm@mac.com>
7689
7690 * macterm.c (XTread_socket): Checks for valid, visible window
7691 before sending a scroll-wheel event.
7692
675d000f
RS
76932003-01-20 Richard M. Stallman <rms@gnu.org>
7694
7695 * xdisp.c (redisplay_window): If mini window's buffer is not
7696 a minibuffer, then redisplay it like other windows.
7697
a97e4138 76982003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
22174d10
JD
7699
7700 * gtkutil.c (xg_create_frame_widgets): Check if there is an
7701 external tool bar before setting tool bar height.
7702
048addec
JD
77032003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7704
7705 * xterm.c (handle_one_xevent): Surround popup_activated
7706 with #ifdef:s for non-toolkit version.
7707
7708 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
7709 (gtkutil.o): New file.
7710 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
7711 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
7712
7713 * gtkutil.c: New file for GTK version.
7714
7715 * gtkutil.h: New file for GTK version.
7716
7717 * xterm.h: Add xt_or_gtk_widget.
7718 Include gtk files for USE_GTK.
7719 (struct x_output): Add toolbar_height.
7720 (struct x_output): Add GTK widgets and Gdk size_hints.
7721 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
7722 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
7723 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
7724
7725 * xterm.c: Include gtkutil.h for USE_GTK.
7726 Declare extern void free_frame_menubar for USE_GTK.
7727 (note_mouse_highlight): Check popup_activated for USE_GTK.
7728 (xt_action_hook): Don't compile if USE_GTK.
7729 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
7730 (xg_scroll_callback): New function.
7731 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
7732 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
7733 for USE_GTK.
7734 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
7735 xg_show_scroll_bar for USE_GTK.
7736 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
7737 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
7738 (event_handler_gdk): New function for USE_GTK.
7739 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
7740 (handle_one_xevent): Make sure widget is mapped before
7741 calling x_real_positions for USE_GTK.
7742 (XTread_socket): Add GTK event loop for USE_GTK.
7743 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
7744 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
7745 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
7746 (x_iconify_frame): Add code for USE_GTK.
7747 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
7748 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
7749 is in gtkutil.c.
7750 (x_term_init): Add initialization for GTK.
7751 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
7752
7753 * xmenu.c: Include gtkutil.h for USE_GTK.
7754 (Fx_popup_menu): Use current position if x and y is NIL.
6bdb309a
SM
7755 (single_menu_item, single_menu_item, Fx_popup_dialog):
7756 Check for USE_GTK.
048addec
JD
7757 (popup_widget_loop): New function for USE_GTK.
7758 (x_activate_menubar): Add code for USE_GTK.
7759 (popup_activate_callback, popup_deactivate_callback)
6bdb309a
SM
7760 (menu_highlight_callback, menubar_selection_callback):
7761 Add USE_GTK versions.
048addec
JD
7762 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
7763 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
7764 (free_frame_menubar): Only compile if not USE_GTK. GTK version
7765 is in gtkutil.c.
7766 (popup_selection_callback): New version for USE_GTK.
7767 (create_and_show_popup_menu): New fuction, one USE_GTK version and
6bdb309a 7768 one USE_X_TOOLKIT version.
048addec
JD
7769 (xmenu_show): Call create_and_show_popup_menu.
7770 (dialog_selection_callback): New version for USE_GTK.
7771 (create_and_show_dialog): New fuction, one USE_GTK version and
6bdb309a 7772 one USE_X_TOOLKIT version.
048addec
JD
7773 (xdialog_show): Call create_and_show_dialog.
7774
7775 * xfns.c: Include gtkutil for USE_GTK.
7776 (x_window_to_frame, x_any_window_to_frame)
7777 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
7778 (x_top_window_to_frame): Add code for USE_GTK.
7779 (x_set_background_color): Call xg_set_background_color for GTK.
7780 (x_set_menu_bar_lines): Check for USE_GTK.
7781 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
7782 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
7783 (x_window): Call xg_create_frame_widgets for USE_GTK.
7784 (Fx_create_frame): Check for USE_GTK
7785 (Fx_file_dialog): New implementation for USE_GTK.
7786
7787 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
7788 (update_menu_bar): Add check for USE_GTK.
7789 (update_tool_bar): Add check for USE_GTK and external tool bar.
7790 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
7791 (redisplay_internal): Add check for USE_GTK and popup_activated.
7792 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
7793 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
7794 (display_menu_bar): Add check for USE_GTK
7795
7796 * lisp.h: Declare Vx_resource_name extern.
7797
a64387ee 7798 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
048addec
JD
7799 for USE_GTK.
7800 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
7801
7802 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
7803 (FRAME_EXTERNAL_TOOL_BAR): New macro.
7804 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
7805
7806 * fileio.c (Fread_file_name): Add check for USE_GTK.
7807
6bdb309a
SM
7808 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
7809 Add check for USE_GTK.
048addec
JD
7810
7811 * config.in: Added HAVE_GTK
7812
7813 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
7814
78152003-01-18 Stefan Monnier <monnier@cs.yale.edu>
7816
7817 * charset.h (Funibyte_char_to_multibyte): Export.
7818
78192003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7820
7821 * xmenu.c (mouse_position_for_popup): New function.
7822 (Fx_popup_menu): Call mouse_position_for_popup for X and
7823 mouse_position_hook for others.
7824
78252003-01-17 Kim F. Storm <storm@cua.dk>
7826
7827 * editfns.c (Finsert): Mention `string-make-multibyte' and
7828 `string-as-multibyte' in doc string.
7829
78302003-01-17 Kenichi Handa <handa@m17n.org>
7831
7832 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
3c02a6f5 7833
048addec
JD
7834 * editfns.c (Fformat): Convert an unibyte char argument that is
7835 formatted by "%c" to multibyte if the total result must be a
7836 multibyte string.
cd7df9c0 7837
048addec 78382003-01-16 Kim F. Storm <storm@cua.dk>
cd7df9c0 7839
048addec
JD
7840 * process.c (set-process-filter): Document unibyte/multibyte-ness
7841 of string argument.
56210ecd 7842
048addec 78432003-01-16 Kenichi Handa <handa@m17n.org>
56210ecd 7844
048addec 7845 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
56210ecd 7846
048addec
JD
7847 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
7848 (re_search_2): Likewise.
6df8b9fe 7849
048addec 78502003-01-15 Kenichi Handa <handa@m17n.org>
6df8b9fe 7851
048addec
JD
7852 * xdisp.c (message_dolog): Fix bug of the case that *Message*
7853 buffer is unibyte.
292ddc31 7854
048addec 78552003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
292ddc31 7856
048addec 7857 * fns.c (Fsubstring): Clarify doc string.
292ddc31 7858
048addec
JD
7859 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
7860 (Fprevious_char_property_change)
7861 (Fnext_single_char_property_change)
7862 (Fprevious_single_char_property_change, Fnext_property_change)
7863 (Fnext_single_property_change, Fprevious_property_change)
7864 (Fprevious_single_property_change, Fadd_text_properties)
7865 (Fput_text_property, Fset_text_properties)
7866 (Fremove_text_properties, Fremove_list_of_text_properties)
7867 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
63e4e4c6 7868
048addec 78692003-01-14 Kim F. Storm <storm@cua.dk>
63e4e4c6 7870
048addec
JD
7871 * process.h (struct Lisp_Process): New member plist replaces old
7872 member private_vars. All uses changed.
63e4e4c6 7873
048addec 7874 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
6bdb309a 7875 (QCplist): Rename from QCvars. Change all uses.
048addec 7876 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
6bdb309a 7877 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
048addec 7878 (syms_of_process): Intern, staticpro, defsubr these.
6bdb309a 7879 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
7ed16567 7880
048addec 78812003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
7ed16567 7882
6bdb309a 7883 * m/delta.h: Remove (obsolete).
e833850f 7884
048addec 78852003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
e833850f 7886
048addec
JD
7887 * fileio.c (Fdelete_directory, Fdelete_file): Document the
7888 behaviour in front of symlinks.
7889 (Fdelete_file): Raise an error on directories.
817cb127 7890
048addec 78912003-01-13 Dave Love <fx@gnu.org>
817cb127 7892
048addec 7893 * fns.c (Freverse): Use QUIT.
3e8cf2ea 7894
048addec 78952003-01-13 Richard M. Stallman <rms@gnu.org>
3e8cf2ea 7896
048addec
JD
7897 * minibuf.c (minibuffer_completion_contents):
7898 Error if point is inside prompt.
3e8cf2ea 7899
048addec
JD
7900 * keyboard.c (command_loop_1): Don't redisplay directly
7901 if there's a post-command-hook.
3e8cf2ea 7902
048addec
JD
7903 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
7904 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
2c10f029 7905
048addec 79062003-01-12 Kim F. Storm <storm@cua.dk>
94e8ffca 7907
048addec 7908 * process.h (struct Lisp_Process): New member private_vars.
94e8ffca 7909
048addec
JD
7910 * process.c (QCvars): New variable.
7911 (syms_of_process): Intern and staticpro it.
7912 (Fset_process_contact): Removed function.
7913 (Fprocess_variable, Fset_process_variable): New functions.
7914 (syms_of_process): Defsubr them.
7915 (Fstart_process): Initialize private_vars plist to nil.
7916 (Fmake_network_process): New arg :vars to setup the private
7917 variables for new network process.
7918 (server_accept_connection): Copy server's private variables to
7919 client process.
2c10f029 7920
048addec
JD
7921 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
7922 crashes). Code rewritten and simplified. Now directly aligns the
7923 pointer and recalculates pure_bytes_used, rather than aligning the
7924 size and adjusting the pointer.
b8a76c6c 7925
048addec 79262003-01-11 Kim F. Storm <storm@cua.dk>
b8a76c6c 7927
048addec
JD
7928 * process.c (Fset_process_contact): New function.
7929 (syms_of_process): defsubr it.
7930 (make-network-process): Update doc.
3a8d0899 7931
048addec 79322003-01-10 Andreas Schwab <schwab@suse.de>
3a8d0899 7933
048addec
JD
7934 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
7935 Reported by Berthold Gunreben <b.gunreben@web.de>.
4abc7470 7936
048addec 79372003-01-10 Dave Love <fx@gnu.org>
4abc7470 7938
048addec 7939 * composite.c (syms_of_composite): Make composition_hash_table weak.
b809d662 7940
048addec 79412003-01-09 Kim F. Storm <storm@cua.dk>
b809d662 7942
048addec
JD
7943 * process.c (Fmake_network_process): Convert new port number
7944 to host byte order for `:service t' case. From Mario Lang.
bf338245 7945
048addec 79462003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
bf338245 7947
048addec
JD
7948 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
7949 instead of XtAppProcessEvent.
bf338245 7950
048addec
JD
7951 * xterm.c (handle_one_xevent): New function.
7952 (x_dispatch_event): New function.
7953 (XTread_socket): Call handle_one_xevent.
bf338245 7954
048addec 7955 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
e833850f 7956
048addec
JD
7957 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
7958 call XQueryPointer to get coordinates.
7959 (popup_get_selection): Do not set popup_activated_flag to zero,
7960 let popup_deactivate_callback do that. Needed for Motif.
7961 Call x_dispatch_event instead of XtDispatchEvent.
7962 (xmenu_show): Calculate root coordinate from frame top/left position.
c4af2bce 7963
048addec 79642003-01-08 Kim F. Storm <storm@cua.dk>
c4af2bce 7965
6bdb309a 7966 * process.c (server_accept_connection): Fix recording of new
048addec
JD
7967 connection's local address in :local property of contact info.
7968 (Fmake_network_process): Record local network address for new
7969 client processes in :local property of contact info.
6bdb309a 7970 (format-network-address): Add arg OMIT-PORT. Change callers.
00e3ab56 7971
048addec 79722003-01-07 Dave Love <fx@gnu.org>
00e3ab56 7973
048addec 7974 * Makefile.in (fns.o): Depend on coding.h.
f387e1fd 7975
048addec 79762003-01-07 Markus Rost <rost@math.ohio-state.edu>
f387e1fd 7977
048addec 7978 * minibuf.c (Fread_variable): Doc fix.
f387e1fd 7979
048addec
JD
7980 * eval.c (Fuser_variable_p): Doc change. For custom variables,
7981 use the same test as for custom-variable-p.
8c6d74c6 7982
048addec 79832003-01-05 Richard M. Stallman <rms@gnu.org>
e833850f 7984
048addec
JD
7985 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
7986 Count LAST_LINE_MISFIT in scroll margin for end of window.
7987 Move label too_near_end before setting SCROLL_MARGIN_POS.
7988 Set LAST_LINE_MISFIT before jumping there.
8c6d74c6 7989
048addec
JD
7990 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
7991 scroll_conservatively case. If scrolling that much doesn't change
7992 STARTP, move it down one line.
e833850f 7993
048addec
JD
7994 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
7995 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
8c6d74c6 7996
048addec
JD
7997 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
7998 selected frame.
8c6d74c6 7999
048addec
JD
8000 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
8001 (syms_of_keymap): staticpro them.
8002 (Fapropos_internal): Initialize them and clear them out.
8003 Don't GCPRO them.
8c6d74c6 8004
048addec
JD
8005 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
8006 Doc fixes.
8c6d74c6 8007
048addec
JD
8008 * lisp.h: New misc type Lisp_Save_Value.
8009 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
8010 (XSAVE_VALUE): New macro.
8011 (struct Lisp_Save_Value): New data type.
8012 (union Lisp_Misc): Add u_save_value alternative.
8013 (make_save_value): Declared.
8c6d74c6 8014
048addec 8015 * alloc.c (make_save_value): New function.
8c6d74c6 8016
048addec
JD
8017 * xterm.c (x_catch_errors): Save dpy using make_save_value.
8018 (x_catch_errors_unwind): Call XSync.
8c6d74c6 8019
048addec 80202003-01-01 Richard M. Stallman <rms@gnu.org>
8c6d74c6 8021
048addec 8022 * window.c (window_scroll_pixel_based): Partially undo last change.
8c6d74c6 8023
048addec
JD
8024 * keyboard.c (command_loop_1): Call adjust_point_for_property
8025 in direct action cases for Qforward_char and Qbackward_char.
8026 Set already_adjusted so it won't be done twice.
8c6d74c6 8027
048addec 80282002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
8c6d74c6 8029
048addec
JD
8030 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
8031 type definition of size_t.
8c609cff 8032
048addec 80332003-01-02 Steven Tamm <steventamm@mac.com>
8c609cff 8034
048addec
JD
8035 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
8036 distinguish Carbon GUI builds from X11 builds on darwin.
b37113a1 8037
048addec 80382002-12-30 Steven Tamm <steventamm@mac.com>
b37113a1 8039
048addec
JD
8040 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
8041 to default to t.
fa634a5e 8042
048addec 80432002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
fa634a5e 8044
048addec 8045 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
ce0669d4 8046
048addec 80472002-12-28 Steven Tamm <steventamm@mac.com>
ce0669d4 8048
048addec
JD
8049 * Makefile.in (macosx-bundle): Fixes to Mac OS X/Carbon port to
8050 allow building in a different directory than source. Uses some
8051 GNU Make extensions, but there is no other make on Mac OS X.
2308af15 8052
048addec 80532002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
2308af15 8054
048addec
JD
8055 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
8056 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
8057 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
8058 (Fstring_to_number): Mention the returned value in the doc strings.
2155ecf3 8059
048addec 80602002-12-23 Richard M. Stallman <rms@gnu.org>
2155ecf3 8061
048addec
JD
8062 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
8063 <scroll-down-aggressively>: Doc fix.
2155ecf3 8064
048addec
JD
8065 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
8066 string as pane name, if there is one.
8067 (set_frame_menubar): Save menu_items_n_panes from each call to
8068 parse_single_submenu and use it when calling digest_single_submenu.
2155ecf3 8069
048addec
JD
8070 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
8071 Don't try to make last line fully visible if it is past end of window.
61f1d295 8072
048addec 80732002-12-22 Steven Tamm <steventamm@mac.com>
61f1d295 8074
048addec
JD
8075 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
8076 (mac_menu_show): Add support for hierarchical popup menus.
8077 (add_menu_item): Remove indentation support.
8078 (fill_submenu, fill_menu): Create hierarchical menus
8079 instead of using indentation.
0b17a217 8080
048addec 80812002-12-22 Richard M. Stallman <rms@gnu.org>
0b17a217 8082
048addec
JD
8083 * xdisp.c (try_cursor_movement): Don't call try_window here.
8084 (redisplay_window): Never redisplay minibuffer when inactive.
0b17a217 8085
048addec 8086 * window.c (select_window_1): Undo 9/21 change.
402e4f8b 8087
048addec 80882002-12-22 Steven Tamm <steventamm@mac.com>
402e4f8b 8089
048addec
JD
8090 * macterm.c (XTread_socket): Call KeyTranslate for control and
8091 meta to deal correctly shifted non-alpha characters, like C-S-5
8092 being treated like C-%. Does not look for shift key to deal
8093 with masking off control-key with mac-reverse-ctrl-meta.
f02cac82 8094
048addec 80952002-12-21 Richard M. Stallman <rms@gnu.org>
f02cac82 8096
048addec
JD
8097 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
8098 If it is non-nil, run timers. Use an unwind-protect to requeue
8099 the events that were read ahead.
8100 (popup_get_selection_unwind): New subroutine.
8101 (popup_get_selection_queue): File-scope variable now holds that queue.
8102 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
8103 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
8104 Use an unwind-protect to pop down the dialog box.
8105 (xdialog_show_unwind): New subroutine implements that.
f02cac82 8106
048addec
JD
8107 * xdisp.c (row_containing_pos): Change exit test using last_y.
8108 (try_window_id): Abort if row_containing_pos returns null.
f02cac82 8109
048addec
JD
8110 * lread.c (load_error_handler): New function.
8111 (Fload): Handle errors in Fsubstitute_in_file_name.
8112 Don't expect Fsignal to return.
f02cac82 8113
048addec
JD
8114 * eval.c: Errors and throws work right with interrupt blocking.
8115 (struct catchtag): New elt interrupt_input_blocked.
8116 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
8117 (internal_catch, Fcondition_case, internal_condition_case)
8118 (internal_condition_case_1, internal_condition_case_2): Save it.
8119 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
f02cac82 8120
048addec 8121 * editfns.c (Fformat): Add parens.
f02cac82 8122
048addec
JD
8123 * dired.c (file_name_completion): Fix that change.
8124 Delete special quit-handling code; just use QUIT.
f02cac82 8125
048addec 81262002-12-21 Tak Ota <Takaaki.Ota@am.sony.com> (tiny change)
f02cac82 8127
048addec
JD
8128 * dired.c (file_name_completion): Close directory on error
8129 just as in directory_files_internal.
1a590729 8130
048addec 81312002-12-19 David Kastrup <David.Kastrup@t-online.de>
1a590729 8132
048addec
JD
8133 * window.c (Fset_window_configuration): Set old_point to correct
8134 value when new_current_buffer == current_buffer.
f02cac82 8135
048addec 81362002-12-17 Ben Key <bkey1@tampabay.rr.com>
2308af15 8137
048addec
JD
8138 Revisited my earlier fix for the following entry in etc/PROBLEMS:
8139 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
8140 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
9785d95b 8141
048addec
JD
8142 These changes were in part based upon suggestions made by Peter
8143 'Luna' Runestig [peter@runestig.com].
9785d95b 8144
048addec
JD
8145 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token,
8146 g_b_init_get_token_information, g_b_init_lookup_account_sid,
6bdb309a 8147 g_b_init_get_sid_identifier_authority ): Add several static
048addec 8148 global variables.
9785d95b 8149
048addec
JD
8150 * w32.c (globals_of_w32): New function. Used to initialize those
8151 global variables that must always be initialized on startup even
8152 when the global variable initialized is non zero. Its primary
8153 purpose at this time is to set the global variables
8154 g_b_init_is_windows_9x, g_b_init_open_process_token,
8155 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
8156 g_b_init_get_sid_identifier_authority to 0 on startup.
8157 Called from main.
9785d95b 8158
048addec
JD
8159 * w32.c (is_windows_9x): Perform initialization only if
8160 g_b_init_is_windows_9x is equal to 0. On initialization set
8161 g_b_init_is_windows_9x equal to 1.
2308af15 8162
048addec
JD
8163 * w32.c (open_process_token): Perform initialization only if
8164 g_b_init_open_process_token is equal to 0. On initialization set
8165 g_b_init_open_process_token equal to 1.
2308af15 8166
048addec
JD
8167 * w32.c (get_token_information): Perform initialization only if
8168 g_b_init_get_token_information is equal to 0. On initialization
8169 set g_b_init_get_token_information equal to 1.
9785d95b 8170
048addec
JD
8171 * w32.c (lookup_account_sid): Perform initialization only if
8172 g_b_init_lookup_account_sid is equal to 0. On initialization
8173 set g_b_init_lookup_account_sid equal to 1.
9785d95b 8174
048addec
JD
8175 * w32.c (get_sid_identifier_authority): Perform initialization
8176 only if g_b_init_get_sid_identifier_authority is equal to 0.
8177 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
9785d95b 8178
f63fd14e 8179 * w32fns.c (globals_of_w32fns): New function. Used to initialize
048addec
JD
8180 those global variables that must always be initialized on startup
8181 even when the global variable initialized is non zero.
8182 Its primary purpose at this time is to initialize the global variable
8183 track_mouse_event_fn.
9785d95b 8184
a64387ee 8185 * w32fns.c (w32_wnd_proc): Remove initialization of
048addec 8186 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
9785d95b 8187
048addec 8188 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
9785d95b 8189
f63fd14e 8190 * w32menu.c (globals_of_w32menu): New function. Used to
048addec
JD
8191 initialize those global variables that must always be initialized
8192 on startup even when the global variable initialized is non zero.
8193 Its primary purpose at this time is to initialize the global
8194 variables get_menu_item_info and set_menu_item_info.
9785d95b 8195
048addec
JD
8196 * w32menu.c (initialize_frame_menubar): Remove initialization of
8197 get_menu_item_info and set_menu_item_info.
9785d95b 8198
048addec 8199 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
9785d95b 8200
048addec
JD
8201 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
8202 Declare them.
9785d95b 8203
048addec
JD
8204 * emacs.c (main): Call globals_of_w32 prior to calling
8205 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
8206 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
8207 is defined.
9785d95b 8208
048addec
JD
8209 * w32term.c (x_update_window_begin): Fix Windows API error
8210 detected by BoundsChecker. Test to determine if
8211 w32_system_caret_hwnd is NULL prior to attempting to use
8212 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
2308af15 8213
048addec
JD
8214 * w32term.c (x_update_window_end): Fix Windows API error
8215 detected by BoundsChecker. Test to determine if
8216 w32_system_caret_hwnd is NULL prior to attempting to use
8217 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
b6da19ef 8218
048addec 82192002-12-17 Kenichi Handa <handa@m17n.org>
b6da19ef 8220
048addec
JD
8221 * coding.c (coding_system_require_warning): New variable.
8222 (syms_of_coding): DEFVAR it.
b6da19ef 8223
048addec 8224 * coding.h (coding_system_require_warning): Extern it.
b6da19ef 8225
048addec
JD
8226 * fileio.c (choose_write_coding_system): Even if
8227 Vcoding_system_for_write is non-nil, if
8228 coding_system_require_warning is nonzero, call
8229 Vselect_safe_coding_system_function.
bfcf6dbe 8230
048addec 82312002-12-17 Markus Rost <rost@math.ohio-state.edu>
bfcf6dbe 8232
048addec
JD
8233 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
8234 (lisp): Add font-core.
2c568af5 8235
048addec 82362002-12-13 Stefan Monnier <monnier@cs.yale.edu>
2c568af5 8237
048addec
JD
8238 * textprop.c (text_read_only): New arg `propval'.
8239 (get_char_property_and_overlay): Remove unused var `next_overlay'.
8240 (verify_interval_modification): Use text_read_only's new arg.
b8c6225c 8241
048addec 82422002-12-13 Kenichi Handa <handa@m17n.org>
b8c6225c 8243
048addec 8244 * coding.c (Funencodable_char_position): Set pend correctly.
706ddb8f 8245
048addec 82462002-12-12 Jason Rumney <jasonr@gnu.org>
706ddb8f 8247
048addec
JD
8248 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
8249 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
8250 Be more careful about when help_events are generated.
96720f09 8251
048addec 82522002-12-12 Steven Tamm <steventamm@mac.com>
96720f09 8253
048addec
JD
8254 * macterm.c (mac_check_for_quit_char): Correctly set the
8255 modifiers of the event to 0.
8256 * mac.c (sys_select): Duplicate rfds before calling select to
8257 ensure that rfds survive the while loop.
e5ae1c49 8258
048addec 82592002-12-11 Kim F. Storm <storm@cua.dk>
e5ae1c49 8260
048addec
JD
8261 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
8262 row_containing_pos returned NULL.
2eb46b2d 8263
048addec 82642002-12-10 Steven Tamm <steventamm@mac.com>
2eb46b2d 8265
6bdb309a 8266 * mac.c (sys_read): Fix sys_read to not call select if IO is
048addec 8267 non-blocking.
6bdb309a 8268 (sys_select): Fix sys_select to not use a timeout larger than
048addec 8269 the one given.
b11f1d8a 8270
048addec 82712002-12-10 Juanma Barranquero <lektu@terra.es>
b11f1d8a 8272
048addec 8273 * editfns.c (Fformat): Use alloca, not _alloca.
d8528226 8274
048addec 82752002-12-09 Richard M. Stallman <rms@gnu.org>
d8528226 8276
048addec
JD
8277 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
8278 as the last thing.
a4ac5b17 8279
048addec 82802002-12-09 Dave Love <fx@gnu.org>
a4ac5b17 8281
048addec 8282 * s/sol2-8.h: Removed. (Not necessary.)
ac42d7b9 8283
048addec 82842002-12-09 Matthew Swift <swift@alum.mit.edu>
ac42d7b9 8285
048addec
JD
8286 * editfns.c (Fformat): Handle precision in string conversion
8287 specifiers like libc functions do (ie, print at most that many
8288 characters).
85cce843 8289
048addec 82902002-12-08 Richard M. Stallman <rms@gnu.org>
85cce843 8291
048addec
JD
8292 * xdisp.c (row_containing_pos): Check more carefully
8293 whether charpos is really in the row before returning it.
0d4d26a7 8294
048addec 82952002-12-07 Steven Tamm <steventamm@mac.com>
0d4d26a7 8296
048addec 8297 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
b11f1d8a 8298
048addec
JD
8299 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
8300 each stack frame. This may change as it could be time consuming.
0d4d26a7 8301
048addec
JD
8302 * macterm.c (mac_check_for_quit_char, quit_char_comp)
8303 (init_quit_char_handler, mac_determine_quit_char_modifiers)
6bdb309a 8304 (mac_initialize): Add code to check for pressing of quit_char
048addec 8305 in the OS event queue.
b11f1d8a 8306
048addec
JD
8307 * mac.c (sys_select): Call mac_check_for_quit_char every second
8308 while blocking on select.
0d4d26a7 8309
048addec
JD
8310 * mac.c (sys_read): Use sys_select to test for input first
8311 before calling read, to allow C-g to break.
9252f7bc 8312
048addec 83132002-12-07 Richard M. Stallman <rms@gnu.org>
9252f7bc 8314
048addec 8315 * minibuf.c (Fcompleting_read): Doc fix.
9252f7bc 8316
048addec 8317 * lread.c (syms_of_lread) <load-history>: Doc fix.
9252f7bc 8318
048addec 8319 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
9252f7bc 8320
048addec
JD
8321 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
8322 autoload.
9252f7bc 8323
048addec 8324 * data.c (Fdefalias): Record in load-history redefining an autoload.
9252f7bc 8325
048addec 8326 * alloca.c: Undo ifdef change accidentally made on 12-04.
bfa261c0 8327
048addec 83282002-12-06 Francesco Potorti` <pot@gnu.org>
bfa261c0 8329
048addec 8330 * xfns.c (png_load): Avoid double gamma correction for PNG images.
c5992177 8331
048addec 83322002-12-04 Richard M. Stallman <rms@gnu.org>
c5992177 8333
048addec 8334 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 8335
048addec 8336 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 8337
048addec 8338 * alloca.c: Don't use #error.
02d588e2 8339
048addec 83402002-12-03 Dave Love <fx@gnu.org>
02d588e2 8341
048addec
JD
8342 * buffer.c (Qucs_set_table_for_input): New.
8343 (Fget_buffer_create): Use it.
8344 (Qset_buffer_major_mode_hook): Deleted.
8345 (Fset_buffer_major_mode): Revert previous change.
8346 (init_buffer_once): Intern ucs-set-table-for-input.
8347 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
8348 Add &Qucs_set_table_for_input.
451e2697 8349
048addec 83502002-12-03 Andreas Schwab <schwab@suse.de>
451e2697 8351
048addec
JD
8352 * callint.c (Fcall_interactively): Use next_event only if less
8353 than key_count.
72742a99 8354
048addec 83552002-12-02 Andrew Choi <akochoi@shaw.ca>
72742a99 8356
048addec
JD
8357 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
8358 names to 255 characters.
72742a99 8359
048addec
JD
8360 * macterm.c (XTread_socket): If all frames have been collapsed,
8361 expand the first one before handling drag-and-drop events.
72742a99 8362
048addec
JD
8363 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
8364 which is detected by autoconf.
40e6ff95 8365
048addec 83662002-12-01 Steven Tamm <steventamm@mac.com>
40e6ff95 8367
048addec
JD
8368 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
8369 offset in two hints table to allow prebinding to be redone and
8370 allow the executable to be stripped.
c02138c6 8371
048addec 83722002-11-29 Dave Love <fx@gnu.org>
c02138c6 8373
048addec
JD
8374 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
8375 already provided.
0e47bbf7 8376
048addec 83772002-11-29 Richard M. Stallman <rms@gnu.org>
0e47bbf7 8378
048addec
JD
8379 * xdisp.c (start_display): Check more intelligently for
8380 whether the line is continued.
8381 (move_it_vertically_backward): Clear it->continuation_lines_width.
44129dcb 8382
048addec 83832002-11-28 Dave Love <fx@gnu.org>
44129dcb 8384
048addec
JD
8385 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
8386 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
f707342d 8387
048addec 83882002-11-27 Steven Tamm <steventamm@mac.com>
f707342d 8389
048addec
JD
8390 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
8391 more descriptive error output from lread.c:Fload upon most require
8392 cycles during boostrapping.
1637fd2c 8393
048addec 83942002-11-27 Jason Rumney <jasonr@gnu.org>
1637fd2c 8395
048addec
JD
8396 * fileio.c (Finsert_file_contents): Give a more appropriate error
8397 for files bigger than 2Gb when off_t is 32 bit.
1637fd2c 8398
048addec
JD
8399 * dired.c (Ffile_attributes): Don't return negative file sizes for
8400 files bigger than 2Gb when off_t is 32 bit.
540c2788 8401
048addec 84022002-11-27 Dave Love <fx@gnu.org>
6b2fd6ea 8403
048addec 8404 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
6b2fd6ea 8405
048addec
JD
8406 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
8407 Test GETPGRP_VOID instead.
8408 [BSD_TERMIOS]: Remove definitions (never used).
6b2fd6ea 8409
048addec
JD
8410 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
8411 Don't define.
8412 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
540c2788 8413
048addec 8414 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
8cc03716 8415
048addec 84162002-11-25 Jason Rumney <jasonr@gnu.org>
8cc03716 8417
048addec
JD
8418 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
8419 supported.
4042a81a 8420
048addec 84212002-11-25 Dave Love <fx@gnu.org>
4042a81a 8422
048addec 8423 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
4042a81a 8424
048addec 8425 * Makefile.in (TEMACS_LDFLAGS): Update last change.
be4ee72f 8426
048addec 84272002-11-25 Andreas Schwab <schwab@suse.de>
be4ee72f 8428
048addec 8429 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
82122254 8430
048addec 84312002-11-24 Steven Tamm <steventamm@mac.com>
82122254 8432
048addec
JD
8433 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
8434 determine the size of pointers alloced in unexed space instead
8435 of using possibly invalid emacs_zone pointers. This fixes the
8436 binary incompatibility problems caused by updates to libSystem.B.
c1ee53bc 8437
048addec 84382002-11-24 Richard M. Stallman <rms@gnu.org>
c1ee53bc 8439
048addec 8440 * search.c (Fstring_match): Doc fix.
c1ee53bc 8441
048addec
JD
8442 * callint.c (Fcall_interactively): If a command fails because
8443 `*' detects a read-only buffer, but RECORD_FLAG is set,
8444 record it anyway if the args don't actually do tty input.
5598c32e 8445
048addec 84462002-11-22 Dave Love <fx@gnu.org>
5598c32e 8447
048addec 8448 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
5598c32e 8449
048addec
JD
8450 * keyboard.c (interrupt_signal): Provide forward declaration.
8451 (kbd_buffer_store_event): Don't declare interrupt_signal.
5598c32e 8452
048addec 8453 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
97b14e22 8454
048addec 84552002-11-21 Richard M. Stallman <rms@gnu.org>
97b14e22 8456
048addec
JD
8457 * eval.c (interactive_p): Skip any number of bytecode
8458 and special form frames, in any order.
516eea8e 8459
048addec 84602002-11-20 Jason Rumney <jasonr@gnu.org>
516eea8e 8461
048addec
JD
8462 * w32fns.c (convert_mono_to_color_image): New function.
8463 (xbm_load, xbm_load_image): Use it when foreground or background
8464 is explicitly set.
04dbfa08 8465
048addec 84662002-11-19 Dave Love <fx@gnu.org>
04dbfa08 8467
048addec 8468 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
b4aebae3 8469
048addec 84702002-11-18 Jason Rumney <jasonr@gnu.org>
b4aebae3 8471
048addec
JD
8472 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
8473 (XPutPixel): Swap blue and red.
8474 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
8475 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
8476 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
8477 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
1998560a 8478
048addec 84792002-11-18 Dave Love <fx@gnu.org>
d824beee 8480
048addec 8481 * m/orion105.h (HAVE_ALLOCA): Don't define.
d824beee 8482
048addec 8483 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
d824beee 8484
048addec 8485 * m/intel386.h: Don't include alloca.h or define alloca.
d824beee 8486
048addec
JD
8487 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
8488 malloc, realloc, calloc.
d824beee 8489
048addec
JD
8490 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
8491 (bcmp): Don't define.
d824beee 8492
048addec 8493 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
d824beee 8494
048addec 8495 * m/amdahl.h: Don't define LIB_STANDARD.
d824beee 8496
048addec 8497 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
d824beee 8498
048addec 8499 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
d824beee 8500
048addec
JD
8501 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
8502 Don't include alloca.h.
d824beee 8503
048addec 8504 * s/aix3-2.h (HAVE_FSYNC): Don't define.
1998560a 8505
048addec 8506 * regex.c (_GNU_SOURCE): Don't define.
1998560a 8507
048addec 8508 * process.c (_GNU_SOURCE): Don't define.
1998560a 8509
048addec 8510 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
8704a6ab 8511
048addec 85122002-11-18 Markus Rost <rost@math.ohio-state.edu>
8704a6ab 8513
048addec 8514 * s/sol2-8.h: Include sol2-6.h.
6ae2cd57 8515
048addec 85162002-11-18 Miles Bader <miles@gnu.org>
6ae2cd57 8517
048addec
JD
8518 * dispextern.h (struct face): Add `overstrike' field.
8519 * xterm.c (x_draw_glyph_string_foreground)
8520 (x_draw_composite_glyph_string_foreground): Implement overstriking.
8521 * xfaces.c (load_face_font): Set `face->overstrike' based on
8522 result from choose_face_font.
8523 (best_matching_font, choose_face_font): Add `needs_overstrike'
8524 argument, and use it to return whether overstriking is desirable
8525 for this face/font combo.
8526 (set_font_frame_param: Pass new argument to choose_face_font.
6ae2cd57 8527
048addec 85282002-11-17 Ben Key <BKey1@tampabay.rr.com>
3582b6a3 8529
048addec
JD
8530 This change is my fix for the following entry in etc/PROBLEMS:
8531 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
8532 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
f60ae425 8533
048addec
JD
8534 * w32.c: Added wrapper functions around the win32 API functions
8535 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
8536 GetSidIdentifierAuthority. These wrapper functions serve two
8537 purposes:
8538 1. They ensure that the wrapped function can never be called
8539 when Emacs is running on an operating system on which they are
8540 not supported (Microsoft Windows 95 / 98 / ME).
8541 2. They call the wrapped functions via function pointers rather
8542 than calling them directly. This avoids taking advantage of the
8543 undocumented fact that although these functions are not supported
8544 in the 9x branch of Microsoft Windows, the functions do exist in
8545 the version of advapi32.dll that is found in the 9x branch of
8546 Microsoft Windows.
f60ae425 8547
6bdb309a 8548 * w32.c (init_user_info): Replace the calls to the win32 API
048addec
JD
8549 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
8550 and GetSidIdentifierAuthority with calls to the newly added
8551 wrapper functions.
f60ae425 8552
048addec
JD
8553 * w32.h: Added extern declarations for the following functions:
8554 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
8555 syms_of_w32menu, and void syms_of_fontset.
f60ae425 8556
6bdb309a 8557 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
048addec
JD
8558 function pointer track_mouse_event_fn in the handler for the
8559 WM_SETFOCUS message.
3582b6a3 8560
6bdb309a 8561 * w32menu.c (initialize_frame_menubar): Add code to
048addec
JD
8562 reinitialize the function pointers set_menu_item_info and
8563 get_menu_item_info.
f60ae425 8564
048addec 85652002-11-17 Ben Key <BKey1@tampabay.rr.com>
f60ae425 8566
048addec
JD
8567 * sound.c: Added a partial implementation of play-sound-internal
8568 for Microsoft Windows. Added various #ifdef / #else / #endif
8569 code blocks to separate the code that will compile under
8570 Microsoft Windows from the code that is specific to Gnu/Linux.
8571 Moved several blocks of code around to make this separation of code
8572 into Windows compatible and Gnu/Linux compatible code blocks easier.
f60ae425 8573
048addec 8574 * makefile.w32-in: Include sound.c and link with WinMM.lib.
a0f0878d 8575
048addec
JD
8576 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
8577 added support for play-sound-internal under Windows would be
8578 included in the build of Emacs.
517f42a0 8579
048addec 85802002-11-16 Jason Rumney <jasonr@gnu.org>
517f42a0 8581
048addec 8582 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
517f42a0 8583
048addec 8584 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
a0f0878d 8585
048addec 85862002-11-15 Stefan Monnier <monnier@cs.yale.edu>
a0f0878d 8587
048addec
JD
8588 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
8589 (adjust_point_for_property): Move out of display and invisible even if
8590 we were already inside before (in case a property was added while
8591 we weren't looking). Be more careful when handling invisible props.
8592 Skip invisible text as if it really wasn't there at all.
aab83f91 8593
048addec 85942002-11-15 Jason Rumney <jasonr@gnu.org>
aab83f91 8595
048addec
JD
8596 * w32term.c (x_draw_image_foreground)
8597 (w32_draw_image_foreground_1): Use standard copy and invert
8598 operations to draw images.
aab83f91 8599
048addec
JD
8600 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
8601 depth of 1.
8602 (xbm_read_bitmap_data): Invert bits as xbm is read in.
8603 (XPutPixel): Don't invert bits here.
a4478a76 8604
048addec 86052002-11-15 Jason Rumney <jasonr@gnu.org>
a4478a76 8606
048addec
JD
8607 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
8608 (w32_draw_image_foreground_1): Handle image masks.
8609 (x_draw_image_glyph_string): Don't BitBlt transparently.
a4478a76 8610
048addec
JD
8611 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
8612 (x_from_xcolors): Adjust RGB values for W32.
8613 (image_background, image_background_transparent)
8614 (postprocess_image, x_to_xcolors, x_disable_image)
8615 (x_build_heuristic_mask): Adapt for W32 and enable.
8616 (x_create_x_image_and_pixmap): Mark images with palettes as such.
8617 (xbm_load): Remove unused variable.
03670a65 8618
048addec 86192002-11-14 Richard M. Stallman <rms@gnu.org>
03670a65 8620
048addec 8621 * buffer.c (syms_of_buffer): Doc fix.
59daa29a 8622
048addec 86232002-11-14 Dave Love <fx@gnu.org>
59daa29a 8624
048addec 8625 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
59daa29a 8626
048addec
JD
8627 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
8628 * xmenu.c (unuse_menu_items, digest_single_submenu):
8629 * xfns.c (x_put_x_image):
8630 * xdisp.c (message2_nolog, set_message):
8631 * undo.c (record_point):
8632 * terminfo.c (tparam):
8633 * syntax.c (scan_sexps_forward):
8634 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
8635 * composite.c (update_compositions):
8636 * cm.c (calccost, cmgoto):
8637 * charset.c (c_string_width): Declare all args (per C99).
59daa29a 8638
048addec 8639 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
59daa29a 8640
048addec
JD
8641 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
8642 Don't declare.
59daa29a 8643
048addec 8644 * emacs.c (main) [!VMS]: Avoid third arg.
59daa29a 8645
048addec
JD
8646 * fns.c (Fcopy_sequence): Doc fix.
8647 (Fmap_char_table): Cast `call2'.
3947677c 8648
048addec
JD
86492002-11-14 Francesco Potorti` <pot@gnu.org>
8650
8651 * s/sol2-8.h: New file.
8652
86532002-11-14 Kim F. Storm <storm@cua.dk>
8654
8655 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
8656 dependency on `risky-local-variable' and the :propertize form.
8657
86582002-11-12 Stefan Monnier <monnier@cs.yale.edu>
8659
8660 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
8661
8662 * syntax.c (scan_sexps_forward): Undo last patch.
8663 Use a more obvious fix: check eob before updating the syntax table.
8664
86652002-11-09 Stefan Monnier <monnier@cs.yale.edu>
8666
8667 * syntax.c (scan_sexps_forward): Update syntax table before reading
8668 a char rather than after so we don't update the table past eob.
8669
86702002-11-09 Dave Love <fx@gnu.org>
8671
8672 * buffer.c (Fset_buffer_major_mode): Fix last change.
8673
8674 * regex.c (regexec): Fix pmatch declaration.
8675
8676 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
8677
8678 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
8679 to self-inserting characters.
8680 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
8681
8682 * coding.c (Vtranslation_table_for_input): New.
8683 (syms_of_coding): DEFVAR it.
8684
86852002-11-08 Juanma Barranquero <lektu@terra.es>
8686
8687 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
8688 window.
8689
86902002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8691
6bdb309a 8692 * process.c (Fformat_network_address): Remove unused locals p,
048addec
JD
8693 cp, and i.
8694
86952002-11-06 Dave Love <fx@gnu.org>
8696
8697 * buffer.c (Qset_buffer_major_mode_hook): New.
8698 (Fset_buffer_major_mode): Use it.
8699
87002002-11-06 Richard M. Stallman <rms@gnu.org>
8701
8702 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
8703 and stop_polling.
8704
8705 * process.c (wait_reading_process_input):
8706 Test POLLING_PROBLEM_IN_SELECT, not hpux.
8707 Avoid initialization for auto Lisp_Object var.
8708
8709 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
8710
8711 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
8712
87132002-11-05 Richard M. Stallman <rms@gnu.org>
8714
8715 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
8716
8717 * callint.c (Fcall_interactively): New local filter_specs.
8718 (Fcall_interactively): Check for progn as well as let.
8719 Add a gcpro.
8720 (Qprogn): New variable.
8721 (syms_of_callint): Staticpro and init Qprogn.
8722
87232002-11-04 John Paul Wallington <jpw@shootybangbang.com>
8724
8725 * lread.c (Feval_buffer): Doc fix.
8726
87272002-11-04 Dave Love <fx@gnu.org>
8728
8729 * keyboard.c (read_char): Always translate iff
8730 Vkeyboard_translate_table is a char table and c is valid.
8731
8732 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
8733 and fix C types.
8734
87352002-11-03 Stefan Monnier <monnier@cs.yale.edu>
8736
8737 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
8738
8739 * editfns.c (get_pos_property): Don't hardcode Qfield.
8740
8741 * keyboard.c (adjust_point_for_property): Handle `display' prop on
8742 overlays. Also handle `invisible' prop.
8743
87442002-11-02 Stefan Monnier <monnier@cs.yale.edu>
8745
8746 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
8747 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
8748
87492002-11-01 Andreas Schwab <schwab@suse.de>
8750
8751 * editfns.c (Fmessage): Revert last change to properly handle %%.
8752
87532002-11-01 Stefan Monnier <monnier@cs.yale.edu>
8754
8755 * xmenu.c (unuse_menu_items): New fun.
8756 (menu_items_inuse): New var.
8757 (syms_of_xmenu): Initialize it.
8758 (init_menu_items): Use it to detect re-entrance.
8759 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
8760 (Fx_popup_menu): Remove spurious XSETFRAME.
8761
8762 * editfns.c (find_field): Make an exception for nil fields.
8763
87642002-11-01 Dave Love <fx@gnu.org>
8765
8766 * m/gec63.h: Deleted.
8767
87682002-10-31 Dave Love <fx@gnu.org>
8769
8770 * xterm.c (XTread_socket): Fix last change.
8771 (xaw_scroll_callback): Cast call_data to long to avoid warning.
8772
87732002-10-31 Stefan Monnier <monnier@cs.yale.edu>
8774
8775 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
8776
87772002-10-30 Stefan Monnier <monnier@cs.yale.edu>
8778
8779 * editfns.c (overlays_around, get_pos_property): New funs.
8780 (find_field): Use them.
8781 Also be careful not to modify POS before its last use.
8782 (Fmessage): Don't Fformat if there's nothing to format.
8783
87842002-10-30 Dave Love <fx@gnu.org>
8785
8786 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
8787 [HAVE_PTY_H]; Include pty.h.
8788
8789 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
8790
8791 * xterm.c (Qeql): Declare.
8792 (Vx_keysym_table): New.
8793 (syms_of_xterm): Initialize it.
8794 (XTread_socket): Use it. Deal with ASCII keysyms.
8795 (XSetIMValues) [HAVE_X11R6]: Prototype.
8796
8797 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
8798 (lispy_kana_keys): Comment out.
8799 (make_lispy_event) [XK_kana_A]: Comment out.
8800 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
8801 Fix sprintf call.
8802
8803 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
8804 regexp.h change).
8805 (TERMINFO, LIBS_TERMCAP): Define.
8806
8807 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
8808 (bcmp): Define conditional on HAVE_BCMP.
8809 (NO_SIOCTL_H): Don't define.
8810 (TIOCSIGSEND): Don't make conditional on IRIX6.
8811
8812 * s/sol2-5.h: Don't include strings.h.
8813 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
8814
8815 * s/irix6-0.h (IRIX6): Don't define.
8816 (bcopy, bcmp, bzero): Don't undef.
8817
8818 * s/irix6-5.h: Don't include strings.h.
8819 (IRIX6): Don't define.
8820 (bcopy, bcmp, bzero): Don't undef.
8821
8822 * syntax.c (Fforward_comment): Doc fix.
8823
88242002-10-29 Kim F. Storm <storm@cua.dk>
8825
8826 * process.c (Fsignal_process): Allow PROCESS to be specified by
8827 name in addition to pid (as integer or string).
8828
88292002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
8830
8831 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
8832 environments.
8833
88342002-10-27 Kim F. Storm <storm@cua.dk>
8835
8836 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
8837
8838 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
8839
8840 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
8841
8842 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
8843
88442002-10-26 Richard M. Stallman <rms@gnu.org>
8845
8846 * editfns.c (Fformat): Detect invalid format letters for floats.
8847
88482002-10-25 Kenichi Handa <handa@m17n.org>
8849
8850 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
8851 (x_set_title): Likewise.
8852
88532002-10-25 Juanma Barranquero <lektu@terra.es>
8854
8855 * macgui.h:
8856 * w32gui.h: Remove definition of XColor.
8857
8858 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
8859
88602002-10-24 Kim F. Storm <storm@cua.dk>
8861
8862 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
8863 Callers changed (supply dummy arg).
8864
8865 * lisp.h (get_window_cursor_type): Update prototype.
8866
8867 * w32term.c (x_display_and_set_cursor): Get active_cursor from
8868 get_window_cursor_type to track system caret.
8869
88702002-10-24 Kim F. Storm <storm@cua.dk>
8871
8872 * process.c (Fformat_network_address): New function.
8873 (syms_of_process): Defsubr it.
8874 (list_processes_1): Use it to format :local/:remote address if
f9711de4 8875 service/host is not set; before Emacs would crash in that case.
048addec
JD
8876 (Fmake_network_process): Don't use Ffind_operation_coding_system
8877 to setup coding system if host or service is not set.
8878
88792002-10-23 Juanma Barranquero <lektu@terra.es>
8880
8881 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
8882
8883 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
8884 COLORREF.
8885
8886 * macgui.h:
8887 * w32gui.h: Add definition of XColor.
8888
8889 * macfns.c:
8890 * w32fns.c:
8891 * xfaces.c: Remove definition of XColor.
8892
88932002-10-22 Stefan Monnier <monnier@cs.yale.edu>
8894
8895 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
8896
8897 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
8898 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
8899 window if it is dedicated.
8900 (Fshrink_window): Add preserve_before as was done for enlarge_window.
8901 (Vspecial_display_function): Update docstring.
8902
8903 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
8904 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
8905 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
8906
89072002-10-21 Stefan Monnier <monnier@cs.yale.edu>
8908
8909 * casefiddle.c (casify_region): Don't treat a prefix char as part
8910 of a word when at the beginning.
8911
89122002-10-17 Juanma Barranquero <lektu@terra.es>
8913
8914 * lread.c (syms_of_lread): Fix typos.
8915
89162002-10-17 Dave Love <fx@gnu.org>
8917
8918 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
8919
89202002-10-16 Richard M. Stallman <rms@gnu.org>
8921
8922 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
8923
89242002-10-14 Juanma Barranquero <lektu@terra.es>
8925
8926 * w16select.c (syms_of_win16select): Fix docstring for
8927 `selection-coding-system'.
8928
8929 * w32select.c (syms_of_w32select): Likewise.
8930
89312002-10-14 Stefan Monnier <monnier@cs.yale.edu>
8932
8933 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
8934 a backslash-quoted char.
8935 (scan_lists, scan_sexps_forward): Pacify the compiler.
8936
89372002-10-13 Richard M. Stallman <rms@gnu.org>
8938
8939 * window.c (window_scroll): Set immediate_quit.
8940
8941 * print.c (print): When backquote form is the car of a list,
8942 output in old style. Use old_backquote_output to output all
8943 comma forms inside it in old style too.
8944
8945 * buffer.h (struct buffer): Move `undo_list' down below `name'.
8946
89472002-10-11 Markus Rost <rost@math.ohio-state.edu>
8948
8949 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
8950 batch mode).
8951
8952 * lread.c (Fload): Doc fix (load-suffixes).
8953
89542002-10-10 Steven Tamm <steventamm@mac.com>
8955
8956 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
8957 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
8958 Also switch the default to Qnil from Qt.
8959
89602002-10-08 Kenichi Handa <handa@m17n.org>
8961
8962 * coding.c (code_convert_region): When we need more GAP for
8963 conversion, pay attention to the case that coding->produced is not
8964 greater than coding->consumed.
8965
89662002-10-07 Richard M. Stallman <rms@gnu.org>
8967
8968 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
8969
89702002-10-06 Andrew Choi <akochoi@shaw.ca>
8971
8972 * macmenu.c (mac_menu_show): Add j to count menu items; match
8973 menu_item_selection to it to find selected item.
8974
89752002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8976
8977 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
8978 cases. The correct fix is to pass ReparentNotify to Xt.
8979 The shell widget interprets ConfigureNotify differently depending
8980 on if it has been reparented or not.
8981
89822002-10-05 Markus Rost <rost@math.ohio-state.edu>
8983
8984 * editfns.c (Fformat_time_string): Doc fix.
8985
89862002-10-05 John Paul Wallington <jpw@shootybangbang.com>
8987
8988 * fns.c (Flength): Doc fix.
8989
89902002-10-04 Stefan Monnier <monnier@cs.yale.edu>
8991
8992 * keyboard.c (keyremap): New struct.
8993 (read_key_sequence): Use it: globally replace keytran_foo with
8994 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
8995 keytran_next and fkey_next to just `next'.
8996
89972002-10-04 Steven Tamm <steventamm@mac.com>
8998
8999 * macterm.c (keycode_to_xkeysym_table): Change return to be
9000 treated like an X keysym.
9001
90022002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9003
9004 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
9005 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
9006 This is to also handle x/y changes that occur because of a resize.
9007
90082002-10-02 John Paul Wallington <jpw@shootybangbang.com>
9009
9010 * frame.c (Vdelete_frame_functions): New variable.
9011 (syms_of_frame): Initialize and defvar it.
9012 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
9013 it when frame's `tooltip' parameter is non-nil.
9014
9015 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
9016
9017 * w32fns.c (x_create_tip_frame): Likewise.
9018
9019 * macfns.c (x_create_tip_frame): Likewise.
9020
90212002-09-30 Kenichi Handa <handa@m17n.org>
9022
9023 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
9024 -1 before calling ccl_driver.
9025
9026 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
9027 Only when it is non-nil, handle composition sequence.
9028 (setup_coding_system) <0>: Don't force composition handling.
9029
9030 * Makefile.in (lisp, shortlisp): Add utf-16.elc
9031
90322002-09-29 Richard M. Stallman <rms@gnu.org>
9033
9034 * search.c (Freplace_match): Adjust match data for the substitution
9035 just made in the buffer.
9036
9037 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
9038 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
9039
90402002-09-27 Richard M. Stallman <rms@gnu.org>
9041
9042 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
9043 (read_char): Use them. Do all exits thru the end of the function.
9044
90452002-09-27 Kenichi Handa <handa@etl.go.jp>
9046
9047 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
9048 is nil.
9049
90502002-09-26 Richard M. Stallman <rms@gnu.org>
9051
9052 * regex.h (__restrict_arr): Don't define if already defined.
9053
9054 * coding.c (run_pre_post_conversion_on_str):
9055 Save and restore Vdeactivate_mark.
9056
90572002-09-26 John Paul Wallington <jpw@shootybangbang.com>
9058
9059 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
9060
90612002-09-26 Kenichi Handa <handa@etl.go.jp>
9062
9063 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
9064 nonzero, try face's family at first. Otherwise try FAMILY at first.
9065 (choose_face_font): If C is a single byte char or latin-1, call
9066 try_font_list with PREFER_FACE_FAMILY 1.
9067
90682002-09-21 Richard M. Stallman <rms@gnu.org>
9069
9070 * window.c (select_window_1): Don't select frame.
9071 Set frame's selected window only when frame itself is selected.
9072 (Fselect_window): Doc fix.
9073
90742002-09-18 Kim F. Storm <storm@cua.dk>
9075
9076 * process.c (make-network-process): Doc fix (there is no
9077 network-server-log-function hook).
9078
90792002-09-18 Richard M. Stallman <rms@gnu.org>
9080
9081 * print.c (print): Clear out the unused parts of Vprint_number_table.
9082 (syms_of_print): Doc fix for `print-number-table'.
9083
9084 * unexelf.c (unexec): Undo previous change.
9085
90862002-09-17 Andreas Schwab <schwab@suse.de>
9087
9088 * m/alpha.h [LINUX]: Don't define DATA_START.
9089
90902002-09-16 Dave Love <fx@gnu.org>
9091
9092 * unexelf.c (unexec): Deal with .got, reinstating change from
9093 25-08-1999.
9094
90952002-09-13 Richard M. Stallman <rms@gnu.org>
9096
9097 * s/sol2-6.h (UNEXEC): Comment out definition.
9098
9099 * unexsol.c (unexec): Don't downcase first letter of error msg.
9100
9101 * xfaces.c (Fcolor_supported_p): Just one arg is required.
9102
91032002-09-12 Markus Rost <rost@math.ohio-state.edu>
9104
9105 * unexsol.c: Include buffer.h, charset.h, coding.h.
9106
91072002-09-11 Richard M. Stallman <rms@gnu.org>
9108
9109 * unexsol.c: Don't use report_file_error; do it by hand
9110 using dlerror.
9111
9112 * process.c (wait_reading_process_input, both versions):
9113 Before calling turn_on_atimers, call stop_polling.
9114
9115 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
9116
9117 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
9118 we go to too_near_end, call clear_glyph_matrix.
9119 (redisplay_window): After make_cursor_line_fully_visible,
9120 call clear_glyph_matrix and bypass `goto done'.
9121
9122 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
9123 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
9124
91252002-09-10 Richard M. Stallman <rms@gnu.org>
9126
9127 * fileio.c (Fdo_auto_save): Catch error making directory.
9128 Only call push_message if we need to.
9129 At the same time, make an unwind-protect to pop it.
9130 Rename local message_p to old_message_p.
9131 (do_auto_save_make_dir, do_auto_save_eh): New functions.
9132 (do_auto_save_unwind): Don't call pop_message.
9133
9134 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
9135
9136 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
9137
9138 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
9139
9140 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
9141
91422002-09-10 Stefan Monnier <monnier@cs.yale.edu>
9143
9144 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
9145 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
9146 (re_match_2_internal): Be more careful with infinite loops.
9147
91482002-09-10 Kim F. Storm <storm@cua.dk>
9149
9150 * macros.c (end_kbd_macro): New function.
9151 (Fend_kbd_macro): Use it.
9152
9153 * macros.h (end_kbd_macro): Declare extern.
9154
9155 * keyboard.c (Fdiscard_input): If defining keyboard macro,
9156 end and save it instead of discarding it.
9157
91582002-09-09 Markus Rost <rost@math.ohio-state.edu>
9159
9160 * s/sol2-6.h: Fix typo. Add comment.
9161
91622002-09-09 Richard M. Stallman <rms@gnu.org>
9163
9164 * regex.c (regnum_t): Use signed int, not unsigned int.
9165
9166 * s/sol2-6.h: New file.
9167
9168 * s/sol2-5.h (UNEXEC): Definition deleted.
9169
91702002-09-08 Kim F. Storm <storm@cua.dk>
9171
9172 * macros.c (executing_macro_index): Change type to EMACS_INT.
9173 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
9174
9175 * macros.h (executing_macro_index): Change type to EMACS_INT.
9176
91772002-09-06 Richard M. Stallman <rms@gnu.org>
9178
9179 * casetab.c (set_case_table): Make canon table point to eqv table.
9180
91812002-09-06 Juanma Barranquero <lektu@terra.es>
9182
9183 * coding.c (syms_of_coding): Fix spacing.
9184
9185 * composite.c (Fcompose_region_internal)
9186 (Fcompose_string_internal): Likewise.
9187
9188 * data.c (Flsh): Likewise.
9189
9190 * fontset.c (Fset_fontset_font): Likewise.
9191
9192 * macfns.c (Fx_server_max_request_size): Likewise.
9193
9194 * w16select.c (syms_of_win16select): Likewise.
9195
9196 * w32select.c (syms_of_w32select): Likewise.
9197
9198 * xselect.c (syms_of_xselect): Likewise.
9199
92002002-09-05 Richard M. Stallman <rms@gnu.org>
9201
9202 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
9203 call EXTEND_RANGE_TABLE and return a proper value.
9204 (set_image_of_range): Don't call set_image_of_range_1
9205 if no TRANSLATE or if range includes all of Latin-1.
9206 Only call it for the Latin-1 part of the range.
9207 For other cases, make two separate ranges,
9208 one for the original specified characters and one for
9209 their case-conversions.
9210
92112002-09-04 Richard M. Stallman <rms@gnu.org>
9212
9213 * s/sol2-5.h (UNEXEC): Use unexsol.o.
9214
9215 * window.c (displayed_window_lines): Correct for one-off bug
9216 in HEIGHT on non-window displays.
9217
9218 * regex.c (set_image_of_range_1): New function.
9219 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
9220 Return a value to indicate running out of memory.
9221 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
9222 (extend_range_table_work_area): New subroutine.
9223 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
9224 Different calling conventions, and used from set_image_of_range{,_1}.
9225 (IMMEDIATE_QUIT_CHECK): Definitions moved.
9226
92272002-09-04 Juanma Barranquero <lektu@terra.es>
9228
9229 * makefile.w32-in: All dependencies updated.
9230
92312002-09-01 Richard M. Stallman <rms@gnu.org>
9232
9233 * unexsol.c: New file.
9234
9235 * xfns.c (Qbox): Declare external, don't define.
9236
9237 * xdisp.c (redisplay_window) <force-start case>:
9238 If point is on semi-visible last line, reposition
9239 it at previous line.
9240
9241 * alloc.c (display_malloc_warning): Use display-warning.
9242 (malloc_warning_1): Function deleted.
9243
9244 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
9245
9246 * lread.c (read1): Handle #! by skipping the line.
9247
92482002-08-31 Richard M. Stallman <rms@gnu.org>
9249
9250 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
9251 Don't include LDFLAGS.
9252 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
9253
92542002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
9255
9256 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
9257 member of x_display_info unless we compile for some window system.
9258
92592002-08-31 Kim F. Storm <storm@cua.dk>
9260
9261 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
9262 (get_window_cursor_type): Don't use them.
9263 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
9264
92652002-08-30 Kenichi Handa <handa@etl.go.jp>
9266
9267 * xdisp.c (get_next_display_element): Fix previous change.
9268
92692002-08-30 Andrew Choi <akochoi@shaw.ca>
9270
9271 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
9272 (expose_window): Use it to fix the display of overlapping
9273 rows (merge code from xterm.c).
9274
9275 * macfns.c (Qbox): Add extern declaration.
9276
92772002-08-30 Juanma Barranquero <lektu@terra.es>
9278
9279 * w32fns.c (Qbox): Make extern.
9280 (syms_of_w32fns): Remove initialization of Qbox.
9281
92822002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
9283
9284 * xfns.c (Fx_open_connection): Fix error message.
9285
92862002-08-30 Kim F. Storm <storm@cua.dk>
9287
9288 The following changes consolidates the handling of the cursor
9289 type in xdisp.c, moving duplicate code and functionality from
9290 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
9291
9292 * frame.h (enum text_cursor_kinds): Consolidated here.
9293 Added DEFAULT_CURSOR value.
9294 (struct frame) <desired_cursor, cursor_width>
9295 <blink_off_cursor, blink_off_cursor_width>: New fields.
9296 Consolidated from output_x, output_w32 and output_mac structs.
9297 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
9298 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
9299
9300 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
9301 Variables consolidated here.
9302 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
9303 (Vcursor_in_non_selected_windows): Renamed from
9304 cursor_in_non_selected_windows and changed to Lisp_Object.
9305 (syms_of_xdisp): Define and staticpro new and moved variables.
9306 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
9307 consolidated here. Recognize Qhollow setting.
9308 (set_frame_cursor_types): New function to set frame cursor types
9309 based on the frame parameters.
9310 (get_window_cursor_type): New function to calculate new cursor
9311 type and width for the specified window. Based on duplicated
9312 code consolidated here.
9313 Enhancements: cursor-in-non-selected-windows may be a cursor type,
9314 check buffer-local alternate-cursor-type and blink-cursor-alist
9315 before using built-in blink off methods.
9316
9317 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
9318
9319 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
9320 (get_specified_cursor_type, get_window_cursor_type)
9321 (set_frame_cursor_types): Added prototypes.
9322
9323 * macfns.c (x_specified_cursor_type): Removed.
9324 (x_set_cursor_type): Use set_frame_cursor_types.
9325 (Qbar, Qbox): Removed.
9326 (syms_of_macfns): Don't intern or staticpro them.
9327
9328 * macterm.c (x_specified_cursor_type): Remove prototype.
9329 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
9330 (x_display_and_set_cursor): Use get_window_cursor_type.
9331 Remove unused local variables cursor_non_selected, active_cursor.
9332 Redraw cursor if hbar cursor width changes.
9333 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
9334
9335 * macterm.h (enum text_cursor_kinds): Removed.
9336 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
9337 <blink_off_cursor, blink_off_cursor_width>: Members removed.
9338 (FRAME_DESIRED_CURSOR): Macro removed.
9339
9340 * w32fns.c (Vblink_cursor_alist): Removed.
9341 (Qbar, Qhbar, Qbox, Qhollow): Removed.
9342 (syms_of_w32fns): Don't intern, staticpro, or define them.
9343 (x_specified_cursor_type): Removed.
9344 (x_set_cursor_type): Use set_frame_cursor_types.
9345
9346 * w32term.c (x_specified_cursor_type): Remove prototype.
9347 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
9348 (x_display_and_set_cursor): Use get_window_cursor_type.
9349 Remove unused local variables cursor_off_state.
9350 Redraw cursor if hbar cursor width changes.
9351 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
9352
9353 * w32term.h (enum text_cursor_kinds): Removed.
9354 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
9355 <blink_off_cursor, blink_off_cursor_width>: Members removed.
9356 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
9357 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
9358 (struct w32_display_info) <x_highlight_frame>: Renamed member from
9359 w32_highlight_frame.
9360
9361 * xfns.c (Vblink_cursor_alist): Removed.
9362 (Qbar, Qhbar, Qbox, Qhollow): Removed.
9363 (syms_of_xfns): Don't intern, staticpro, or define them.
9364 (x_specified_cursor_type): Removed.
9365 (x_set_cursor_type): Use set_frame_cursor_types.
9366
9367 * xterm.c (x_specified_cursor_type): Remove prototype.
9368 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
9369 (x_display_and_set_cursor): Use get_window_cursor_type.
9370 Remove unused local variables cursor_off_state.
9371 Redraw cursor if hbar cursor width changes.
9372
9373 * xterm.h (enum text_cursor_kinds): Removed.
9374 (struct output_x) <current_cursor, desired_cursor, cursor_width>
9375 <blink_off_cursor, blink_off_cursor_width>: Members removed.
9376 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
9377 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
9378 (x_specified_cursor_type): Remove prototype.
9379
93802002-08-28 Richard M. Stallman <rms@gnu.org>
9381
9382 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
9383 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
9384 (Vblink_cursor_alist): New variable.
9385 (syms_of_w32fns): Initialize and defvar it.
9386 (x_specified_cursor_type): Recognize Qbox for filled box.
9387 Exceptions are hollow boxes.
9388 (Qbox, Qhollow): New variables.
9389 (syms_of_w32fns): Initialize and staticpro them.
9390
9391 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
9392 New macros.
9393 (struct w32_output): New fields blink_off_cursor,
9394 blink_off_cursor_width.
9395 (FRAME_CURSOR_WIDTH): New macro.
9396
9397 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
9398 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
9399
9400 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
9401 for bar cursor.
9402
9403 * w32term.c (expose_overlaps): New function.
9404 (expose_window): Use it to fix the display of overlapping rows.
9405
94062002-08-28 Simon Josefsson <jas@extundo.com>
9407
9408 * xfns.c (Fx_open_connection): Improve help when X connection
9409 fails, xhost is insecure and xauth is better.
9410
94112002-08-28 Juanma Barranquero <lektu@terra.es>
9412
9413 * makefile.w32-in: Add missing dependencies on w32term.h and
9414 composite.h.
9415
9416 * emacs.c (USAGE1): Add missing newline.
9417
94182002-08-27 Andrew Choi <akochoi@shaw.ca>
9419
9420 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
9421
94222002-08-27 Richard M. Stallman <rms@gnu.org>
9423
9424 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
9425 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
9426 (Vblink_cursor_alist): New variable.
9427 (syms_of_xfns): Initialize and defvar it.
9428 (x_specified_cursor_type): Recognize Qbox for filled box.
9429 Exceptions are hollow boxes.
9430 (Qbox, Qhollow): New variables.
9431 (syms_of_xfns): Initialize and staticpro them.
9432
9433 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
9434 New macros.
9435 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
9436
9437 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
9438 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
9439
9440 * emacs.c (main): Handle --script.
9441 (USAGE1): Mention --script.
9442 (standard_args): Define sort order for --script.
9443
94442002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
9445
9446 * xdisp.c (redisplay_updating_p): Variable removed.
9447 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
9448 New variables.
9449 (init_iterator): Don't free realized faces if
9450 inhibit_free_realized_faces is set.
9451 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
9452 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
9453 initialize Qinhibit_free_realized_faces.
9454
9455 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
9456 when iterator is adding glyphs to a glyph matrix.
9457
94582002-08-27 Kenichi Handa <handa@etl.go.jp>
9459
9460 * xdisp.c (get_next_display_element): In unibyte case, don't use
9461 octal form for such eight-bit characters that can be converted to
9462 multibyte char.
9463
94642002-08-26 Kim F. Storm <storm@cua.dk>
9465
9466 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize foreground
9467 and background colors. From Joe Buehler (tiny change).
9468
94692002-08-26 Miles Bader <miles@gnu.org>
9470
9471 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
9472
94732002-08-25 Andrew Choi <akochoi@shaw.ca>
9474
9475 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
9476 defined instead of MAC_OSX.
9477
9478 * s/darwin.h (select): Define select to sys_select only if
9479 HAVE_CARBON is defined.
9480 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
9481 (DONT_REOPEN_PTY): #def it.
9482
9483 * macterm.c (XTread_socket): Remove code to call
9484 SendEventToEventTarget for keys with command modifiers when
9485 mac_command_key_is_meta is nil.
9486
94872002-08-24 Andreas Schwab <schwab@suse.de>
9488
9489 * eval.c (Fdefvar): Fix last change.
9490
94912002-08-23 Richard M. Stallman <rms@gnu.org>
9492
9493 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
9494 Record variables in load history as (defvar . VAR).
9495 (Fdefvar): Don't record in load history if no initial value.
9496 (Qdefvar): New variable.
9497 (syms_of_eval): Init and staticpro it.
9498
9499 * lread.c (syms_of_lread): Doc fix.
9500 (build_load_history): Use Fmember to see if a definition
9501 is already in the Vload_history element.
9502
9503 * process.c (Fstart_process): Remove /: from program name.
9504
9505 * emacs.c (decode_env_path): Don't add /: if file name handler
9506 has a `safe-magic' property.
9507
9508 * callproc.c (Fcall_process): Remove /: from program name.
9509
95102002-08-23 Stefan Monnier <monnier@cs.yale.edu>
9511
9512 * regex.c (PATFETCH): Remove the translating fetch.
9513 (PATFETCH_RAW): Rename to PATFETCH.
9514 (set_image_of_range): New fun.
9515 (SET_RANGE_TABLE_WORK_AREA): Use it.
9516 (regex_compile): Don't translate the pattern chars so eagerly.
9517 Only do it when inserting an `exactn' bytecode or when handling
9518 a char-range.
9519 (mutually_exclusive_p): Avoid empty statement.
9520
95212002-08-22 Kim F. Storm <storm@cua.dk>
9522
9523 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
9524 end up on a partially visible line; this reverts a specific part
9525 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
9526 display error which has been reported several times now.
9527 However it introduces the problem that changes was supposed to fix.
9528 See my comments in the source if you want to debug this further.
9529
95302002-08-20 Kenichi Handa <handa@etl.go.jp>
9531
9532 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
9533
95342002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
9535
9536 * msdos.c (croak): Add `void' to definition.
9537
c1380aa6 9538 * sysdep.c (request_sigio, unrequest_sigio) [MSDOS]:
048addec
JD
9539 Don't define them, they are defined in msdos.c.
9540
9541 * mem-limits.h [MSDOS]: Declare etext.
9542
9543 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
9544 `const' since CORRECT_DIR_SEPS modifies its target.
9545
95462002-08-19 Kim F. Storm <storm@cua.dk>
9547
2fb0ce67 9548 * keyboard.c (Fclear_this_command_keys): Add optional arg
048addec
JD
9549 KEEP-RECORD to avoid clearing lossage when we just want to clear
9550 the current key sequence (kmacro needs this).
9551
95522002-08-19 Kenichi Handa <handa@localhost>
9553
9554 * composite.c (run_composition_function): Call FUNC if it is fboundp.
9555
9556 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
9557 cons, return Qnil.
9558
95592002-08-17 Richard M. Stallman <rms@gnu.org>
9560
9561 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
9562
9563 * sysdep.c [!VMS]: Include sys/files.h.
9564
9565 * editfns.c (save_restriction_restore): Defend from unchained marker.
9566
9567 * buffer.c (overlays_at): Handle extending vec uniformly.
9568 (overlays_in): Handle extending vec from length 0 as in overlays_at.
9569
95702002-08-15 Andrew Choi <akochoi@shaw.ca>
9571
9572 * mac.c (init_mac_osx_environment): New function.
9573
9574 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
9575
95762002-08-14 Kim F. Storm <storm@cua.dk>
9577
9578 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
9579 executing macro before appending to it (when used from Lisp).
9580 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
9581 which is called prior to each iteration of macro (for kmacro.el).
9582 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
9583
9584 * lisp.h (Fexecute_kbd_macro): Update prototype.
9585
9586 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
9587
95882002-08-14 Kenichi Handa <handa@etl.go.jp>
9589
9590 * xselect.c (QUTF8_STRING): New variable.
9591 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
9592 (x_atom_to_symbol): Likewise.
9593 (x_get_local_selection): New argument local_request. If it is
9594 nonzero, call handler_fn with the second arg nil.
9595 (x_handle_selection_request): Call x_get_local_selection with
9596 local_request 0.
9597 (lisp_data_to_selection_data): Don't encode the string here.
9598 (Fx_get_selection_internal): Call x_get_local_selection with
9599 local_request 1.
9600 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
9601
9602 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
9603
9604 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
9605
96062002-08-13 Richard M. Stallman <rms@gnu.org>
9607
9608 * minibuf.c (Fminibufferp): New function.
9609 (syms_of_minibuf): Defsubr it.
9610 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
9611
96122002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
9613
9614 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
9615
96162002-08-12 Richard M. Stallman <rms@gnu.org>
9617
9618 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
9619 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
9620 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
9621 already.
9622
9623 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
9624
96252002-08-11 Andrew Choi <akochoi@shaw.ca>
9626
9627 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
9628 (Vmac_pass_command_to_system): New variable.
9629 (Vmac_pass_control_to_system): New variable.
9630 (do_mouse_moved): Check wp with is_emacs_window.
9631 (XTread_socket): Check window_ptr with is_emacs_window.
9632 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
9633 events back to Mac Toolbox for processing, depending on values of
9634 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
9635 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
9636 Vmac_pass_control_to_system.
9637
96382002-08-10 Kenichi Handa <handa@etl.go.jp>
9639
9640 * coding.c (unencodable_char_position): New function.
9641 (Funencodable_char_position): New function.
9642 (syms_of_coding): Defsubr Funencodable_char_position.
9643
96442002-08-10 Andrew Choi <akochoi@shaw.ca>
9645
9646 * mac.c (sys_select) [MAC_OSX]: New function.
9647
9648 * macterm.c (MakeMeTheFrontProcess): New function.
9649 (mac_initialize): Call MakeMeTheFrontProcess.
9650
9651 * s/darwin.h: Define select to sys_select.
9652
96532002-08-09 Richard M. Stallman <rms@gnu.org>
9654
9655 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
9656
96572002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
9658
9659 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
9660 end of the buffer.
9661
96622002-08-08 Ken Raeburn <raeburn@mit.edu>
9663
9664 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
9665
9666 * puresize.h (BASE_PURESIZE): Increase to 910000.
9667
96682002-08-08 Kenichi Handa <handa@etl.go.jp>
9669
9670 * coding.c (Ffind_operation_coding_system): For write-region, if
9671 VISIT is a filename, make it the target.
9672
96732002-08-07 Richard M. Stallman <rms@gnu.org>
9674
9675 * alloc.c (mark_object): Detect long lists for debugging.
9676 (mark_object_loop_halt): New variable.
9677
9678 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
9679
9680 * data.c (Fmake_variable_frame_local): Doc fix.
9681
96822002-08-01 David Ponce <david@dponce.com>
9683
9684 * w32menu.c (local_heap, local_alloc, local_free): New macros.
9685 (malloc_widget_value, free_widget_value)
9686 (w32_free_submenu_strings): Use them.
9687
9688 (push_submenu_start, push_submenu_end, push_left_right_boundary)
9689 (push_menu_pane, push_menu_item, single_keymap_panes)
9690 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
9691 (single_submenu, set_frame_menubar)
9692 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
9693
9694 (Fx_popup_menu): Don't show pop up menu until preceding one is
9695 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
9696
9697 * w32menu.c: Changes adapted from xmenu.c
9698 (set_frame_menubar): First parse all submenus,
9699 then make widget_value trees from them.
9700 Don't allocate any widget_value objects
9701 until we are done with the parsing.
9702 (parse_single_submenu): New function.
9703 (digest_single_submenu): New function.
9704 (single_submenu): Function deleted, replaced by those two.
9705
97062002-08-04 Andrew Choi <akochoi@shaw.ca>
9707
9708 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
9709 returns a valid window pointer before proceeding for keyDown and
9710 autoKey events.
9711
97122002-08-03 Andrew Choi <akochoi@shaw.ca>
9713
9714 * macterm.c (USE_CARBON_EVENTS): New macro.
9715 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
9716 (x_iconify_frame): Call CollapseWindow.
9717 (Vmac_reverse_ctrl_meta): New variable.
9718 (Vmac_wheel_button_is_mouse_2): New variable.
9719 (init_mac_drag_n_drop): New function.
9720 (mac_do_receive_drag): New function.
9721 (mac_handle_service_event): New function.
9722 (init_service_handler): New function.
9723 (mac_to_emacs_modifiers): New function.
9724 (mac_event_to_emacs_modifiers): New function.
9725 (mac_get_mouse_btn): New function.
9726 (mac_convert_event_ref): New function.
9727 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
9728 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
9729 mac_get_mouse_btn.
9730 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
9731
9732 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
9733 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
9734 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
9735 TOOL_BAR_EVENT for MAC_OS as well.
9736 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
9737 as for WINDOWS_NT.
9738 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
9739
9740 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
9741
97422002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
9743
9744 * xdisp.c (forward_to_next_line_start): Fix a condition that
9745 lead to a newline being skipped.
9746
97472002-08-02 Andrew Choi <akochoi@shaw.ca>
9748
9749 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
9750
97512002-08-01 Richard M. Stallman <rms@gnu.org>
9752
9753 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
9754
97552002-07-31 Andrew Choi <akochoi@shaw.ca>
9756
9757 * macfns.c: #undef init_process before #define-ing it.
9758
9759 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
9760 HAVE_CARBON is defined.
9761
97622002-07-31 Richard M. Stallman <rms@gnu.org>
9763
9764 * xmenu.c (set_frame_menubar): First parse all submenus,
9765 then make widget_value trees from them.
9766 Don't allocate any widget_value objects
9767 until we are done with the parsing.
9768 (parse_single_submenu): New function.
9769 (digest_single_submenu): New function.
9770 (single_submenu): Function deleted, replaced by those two.
9771
97722002-07-30 Juanma Barranquero <lektu@terra.es>
9773
9774 * w32proc.c (syms_of_ntproc): Fix docstring of
9775 `w32-get-true-file-attributes'.
9776
97772002-07-28 Richard M. Stallman <rms@gnu.org>
9778
9779 * s/hpux8.h (HPUX8): Define this before including hpux.h.
9780 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
9781
9782 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
9783
9784 * keyboard.c (make_lispy_event):
9785 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
9786 Explicitly clear up_modifier in event->modifiers.
9787
97882002-07-27 Richard M. Stallman <rms@gnu.org>
9789
9790 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
9791
9792 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
9793 for bar cursor.
9794
97952002-07-26 Kenichi Handa <handa@etl.go.jp>
9796
9797 * coding.c (detect_coding_iso2022): While checking a byte sequence
9798 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
9799 it in the normal loop.
9800
98012002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
9802
9803 * xterm.c (expose_overlaps): New function.
9804 (expose_window): Use it to fix the display of overlapping rows.
9805
9806 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
9807
98082002-07-23 Ken Raeburn <raeburn@gnu.org>
9809
9810 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
9811 since it only depends on XUINT.
9812
9813 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
9814 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
9815 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
9816 Macros deleted.
3947677c 9817
77d1daf2
AS
9818 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
9819 its value over other approaches.
9820 * sysdep.c (start_of_data): Don't define the function if a macro
9821 form has been defined.
8a8e19a3 9822
048addec
JD
98232002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
9824
9825 * xdisp.c (redisplay_updating_p): New variable.
9826 (init_iterator): Don't free realized faces when
9827 redisplay_updating_p is set.
9828 (redisplay_internal): Set redisplay_updating_p while updating
9829 the display.
9830
98312002-07-23 Richard M. Stallman <rms@gnu.org>
9832
9833 * editfns.c (Fmessage): Treat "" like nil.
9834
98352002-07-23 Kenichi Handa <handa@etl.go.jp>
9836
9837 * xdisp.c (face_before_or_after_it_pos):
9838 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
9839
98402002-07-22 Juanma Barranquero <lektu@terra.es>
9841
9842 * callproc.c (init_callproc) [DOS_NT]:
9843 Initialize Vshared_game_score_directory to nil.
9844 (syms_of_callproc) [DOS_NT]: Likewise.
9845
98462002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
9847
9848 * xdisp.c (display_line): Replace an abort with xassert.
9849
98502002-07-21 Richard M. Stallman <rms@gnu.org>
9851
9852 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
9853 and END_UNCHANGED when setting buffer_unchanged_p.
9854 Use current_matrix_up_to_date_p to decide whether to use
9855 try_cursor_movement.
9856
9857 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
9858
9859 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
9860
9861 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
9862 Set to nil if dir does not exist.
9863 (syms_of_callproc): Init unconditionally and simply.
9864
9865 * buffer.c (Fbuffer_list): Doc fix.
9866
98672002-07-21 Ken Raeburn <raeburn@gnu.org>
9868
9869 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
9870
9871 * buffer.c (mmap_realloc): When shrinking, make sure number of
9872 pages to unmap is rounded towards zero.
9873
9874 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
9875 (XSETINT): Deleted.
9876
9877 * m/att3b.h (XINT): Don't define.
9878 (VALBITS, VALMASK, XTYPE): Deleted.
9879 (DATA_SEG_BITS): Define.
9880 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
9881 ARRAY_MARK_FLAG): Deleted.
9882 (DATA_SEG_BITS): Define.
9883 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
9884 (DATA_SEG_BITS): Define.
9885
98862002-07-20 Richard M. Stallman <rms@gnu.org>
9887
9888 * print.c (print_error_message): New args CONTEXT and CALLER.
9889 Calls changed.
9890
9891 * lisp.h (print_error_message): Declare new args.
9892
9893 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
9894 and CONTEXT to print_error_message, don't print them here.
9895 For a Quit, don't use Vsignaling_function.
9896 Call message_log_maybe_newline.
9897
9898 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
9899
99002002-07-20 Kim F. Storm <storm@cua.dk>
9901
9902 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
9903
99042002-07-19 Ken Raeburn <raeburn@gnu.org>
9905
9906 * bytecode.c (struct byte_stack): Pointers into byte string now
9907 point to const.
9908 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
9909 const.
9910 * charset.h (BCOPY_SHORT): Source pointer now points to const.
9911 * coding.c (encode_eol, detect_coding, detect_eol):
9912 (decode_coding, encode_coding, detect_coding_system):
9913 Source strings now treated as const.
9914 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
9915 modify Lisp string contents.
9916 * coding.h (decode_coding, encode_coding, detect_coding,
9917 detect_eol): Declarations updated.
9918 * composite.c (compose_chars_in_text): Treat Lisp string contents
9919 as const.
9920 * dispnew.c (safe_bcopy): Source pointer now points to const.
9921 * lisp.h (STRING_COPYIN): New macro.
9922 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
9923 (internal_with_output_to_temp_buffer): Declarations updated.
9924 * print.c (temp_output_buffer_setup):
9925 (internal_with_output_to_temp_buffer): Buffer name argument is now
9926 pointer to const.
9927 * sound.c (struct sound_device): Function pointer field "write"
9928 buffer argument now points to const.
9929 (vox_write): Buffer argument points to const.
9930 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
9931 contents as const.
9932 * sysdep.c (emacs_write): Buffer pointer now const.
9933 * term.c (encode_terminal_code): Buffer pointer now const.
9934 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
9935 (x_face_list_fonts, x_update_menu_appearance):
9936 (hash_string_case_insensitive): Treat Lisp string contents as const.
9937
99382002-07-19 Juanma Barranquero <lektu@terra.es>
9939
048addec
JD
9940 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
9941
9942 * fileio.c (syms_of_fileio): Likewise.
c62aec78
JB
9943 (Ffile_name_as_directory): Fix argument name in docstring.
9944 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
048addec
JD
9945
99462002-07-18 Richard M. Stallman <rms@gnu.org>
9947
9948 * data.c (Fdefalias): Doc fix.
9949
99502002-07-17 Dave Love <fx@gnu.org>
9951
9952 * intervals.h (text_property_stickiness): Use P_.
9953
9954 * ccl.c: Remove `emacs' conditionals.
9955 (ccl_backtrace_table): Fix size spec.
9956 (ccl_driver): Fix type errors.
9957
99582002-07-16 Ken Raeburn <raeburn@gnu.org>
9959
9960 * alloc.c (xstrdup, make_string, make_unibyte_string)
9961 (make_multibyte_string, build_string): String pointer args now
9962 point to const.
9963 * charset.c (find_charset_in_text, c_string_width):
9964 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
9965 * fileio.c (report_file_error):
9966 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
9967 (count_combining_before, count_combining_after, insert_1_both):
9968 (insert, insert_and_inherit, insert_string):
9969 (insert_before_markers, insert_before_markers_and_inherit):
9970 * lread.c (intern, oblookup, hash_string):
9971 * minibuf.c (temp_echo_area_glyphs):
9972 * search.c (fast_c_string_match_ignore_case):
9973 * sysdep.c (emacs_open, set_file_times):
9974 * xfaces.c (xstricmp):
9975 * xdisp.c (store_frame_title, string_char_and_length):
9976 (message_dolog, message2, message2_nolog, set_message): Likewise.
9977 (set_message_1): Cast message string argument to const pointer.
9978 * editfns.c (general_insert_function): Insertion function now
9979 takes pointer to const for input data.
9980 * charset.h (find_charset_in_text, c_string_width):
9981 (parse_str_as_multibyte): Declarations updated.
9982 * dispextern.h (xstricmp): Declaration updated.
9983 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
9984 (count_size_as_multibyte, count_combining_before):
9985 (count_combining_after, insert_1, insert_1_both, message_dolog):
9986 (insert, insert_and_inherit, insert_before_markers)
9987 (insert_before_markers_and_inherit, set_message, message2):
9988 (message2_dolog, build_string, make_string, make_unibyte_string):
9989 (make_multibyte_string, intern, oblookup, report_file_error):
9990 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
9991 (emacs_open, xstrdup): Declarations updated.
9992 * systime.h (set_file_times): Declaration updated.
9993
9994 * charset.c (find_charset_in_text, lisp_string_width): Use const
9995 for pointer to lisp string data.
9996 * charset.h (FETCH_STRING_CHAR_ADVANCE):
9997 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
9998 * coding.c (Ffind_coding_systems_region_interval):
9999 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
10000 (Fmake_directory_internal, Fdelete_directory):
10001 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
10002 * fontset.c (font_family_registry, fs_query_fontset):
10003 (list_fontsets):
10004 * frame.c (Fframe_parameter):
10005 * keyboard.c (cmd_error_internal):
10006 * keymap.c (Fdescribe_buffer_bindings):
10007 * lread.c (complete_filename_p, openp):
10008 * minibuf.c (Fminibuffer_complete_word):
10009 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
10010 (face_before_or_after_it_pos, next_element_from_string):
10011 (get_overlay_arrow_glyph_row, display_mode_element):
10012 (decode_mode_spec_coding):
10013 * xterm.c (same_x_server): Likewise.
10014
10015 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
10016 settings of non-existent fields.
10017
10018 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
10019 copy a lisp value.
10020
10021 * lread.c (Fintern_soft): Use string macros instead of
10022 Lisp_String fields.
10023 * keyboard.c (echo_char, parse_modifiers_uncached):
10024 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
10025 * textprop.c (validate_interval_range, interval_of): Likewise.
10026
10027 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
10028
10029 * charset.h (FETCH_STRING_CHAR_ADVANCE)
10030 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
10031 XSTRING()->size_byte.
10032
10033 * lisp.h (SDATA, SREF): Produce rvalue.
10034 (SSET): New macro.
10035 * alloc.c (make_event_array): Use SSET for storing into a string.
10036 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
10037 a string.
10038 * casefiddle.c (casify_object): Use SSET.
10039 * charset.h (FETCH_STRING_CHAR_ADVANCE)
10040 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
10041 address of string contents.
10042 * data.c (Faref): Use SDATA.
10043 (Faset): Use SDATA, SSET.
10044 * dired.c (directory_files_internal): Use SSET.
10045 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
10046 (Fread_file_name): Use SREF, SSET.
10047 * fns.c (concat): Use SSET.
10048 (concat, Fdelete): Use SDATA.
10049 * insdel.c (insert_from_string_1): Use SDATA.
10050 * keyboard.c (Fevent_convert_list): Use SREF.
10051 * lread.c (Fload): Use SDATA, SSET.
10052 * macfns.c (validate_x_resource_name): Use SSET.
10053 * process.c (status_message): Use SSET.
10054 * search.c (wordify): Use SDATA.
10055 (Freplace_match): Use SREF.
10056 * w32fns.c (validate_x_resource_name): Use SSET.
10057 * xfns.c (validate_x_resource_name): Use SSET.
10058 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
10059
100602002-07-16 Richard M. Stallman <rms@gnu.org>
10061
10062 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
10063
10064 * xdisp.c (reconsider_clip_changes):
10065 Don't test prevent_redisplay_optimizations_p.
10066 (redisplay_internal): Test prevent_redisplay_optimizations_p
10067 along with clip_changed in some cases.
10068 (try_window_id): Likewise.
10069 (redisplay_window): New local var buffer_unchanged_p.
10070
10071 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
10072
10073 * process.c (create_process): Test USG_SUBTTY_WORKS.
10074 (process_send_signal): Clean up handling of GID.
10075 Detect errors in ioctls meant to set GID.
10076
10077 * window.c (temp_output_buffer_show):
10078 Don't set prevent_redisplay_optimizations_p.
10079
100802002-07-15 Juanma Barranquero <lektu@terra.es>
10081
10082 * eval.c (Fdefvaralias): Add docstring argument.
10083
100842002-07-15 Ken Raeburn <raeburn@gnu.org>
10085
10086 * lisp.h (STRING_INTERVALS): Produce rvalue.
10087 (STRING_SET_INTERVALS): New macro.
10088 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
10089 * fns.c (Fstring_as_multibyte): Likewise.
10090 * intervals.c (balance_possible_root_interval, delete_interval)
10091 (create_root_interval, copy_intervals_to_string): Likewise.
10092 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
10093 instead of 0.
10094
100952002-07-14 Ken Raeburn <raeburn@gnu.org>
10096
10097 * lisp.h (STRING_SET_CHARS): New macro.
10098 (SCHARS, SBYTES): Produce rvalues.
10099 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
10100 * fns.c (concat): Likewise.
10101 * lread.c (read_vector): Likewise.
10102
10103 * lisp.h (SMBP): Deleted. All uses changed to STRING_MULTIBYTE.
10104 (STRING_SET_UNIBYTE): New macro.
10105 (SET_STRING_BYTES): Deleted. Callers (all of which supplied a
10106 length of -1) changed to use STRING_SET_UNIBYTE.
10107 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
10108 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
10109 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
10110 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
10111 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
10112 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
10113 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
10114 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
10115 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
10116 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
10117 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
10118 STRING_BYTES or indirection changed to SCHARS, SBYTES,
10119 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
10120 unchanged for now.
10121
101222002-07-13 Kim F. Storm <storm@cua.dk>
10123
10124 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
10125
101262002-07-12 Richard M. Stallman <rms@gnu.org>
10127
10128 * fileio.c (Fwrite_region): Doc fix.
10129
10130 * print.c (print_error_message): Don't handle Vsignaling_function here.
10131
10132 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
10133 (command_loop_1): Avoid certain actions after memory-full error.
10134
10135 * eval.c (Fsignal): Don't call cancel_hourglass.
10136 For a memory-full error, don't call Vsignal_hook_function
10137 and don't set Vsignaling_function.
10138
10139 * process.c (process_send_signal): Add abort call.
10140
101412002-07-11 Markus Rost <rost@math.ohio-state.edu>
10142
10143 * keymap.c (Fkey_binding): Fix typo.
10144
101452002-07-11 Richard M. Stallman <rms@gnu.org>
10146
10147 * alloc.c (Vmemory_full): New variable.
10148 (Vmemory_signal_data): Renamed from memory_signal_data.
10149 Uses changed.
10150 (syms_of_alloc): Defvar them.
10151 (memory_full, buffer_memory_full): Set Vmemory_full.
10152
10153 * lisp.h (Vmemory_full): Add declaration.
10154 (current_column, indented_beyond_p): Change declaration.
10155
10156 * indent.c (last_known_column): Declare as double, not float.
10157 (current_column, current_column_1, string_display_width)
10158 (position_indentation): Return `double'.
10159 (indented_beyond_p): Arg `column' is `double'. Callers changed.
10160
10161 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
10162 (back_to_previous_visible_line_start)
10163 (reseat_at_next_visible_line_start, next_element_from_buffer):
10164 Use `double', not `float', when calling indented_beyond_p.
10165
10166 * s/hpux11.h (BROKEN_SA_RESTART): Defined.
10167
10168 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
10169
101702002-07-11 Juanma Barranquero <lektu@terra.es>
10171
10172 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
f9711de4
JB
10173 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
10174 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
10175 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
10176 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
10177 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
048addec
JD
10178
101792002-07-10 Juanma Barranquero <lektu@terra.es>
10180
d814862a
JB
10181 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE.
10182 All callers changed.
048addec
JD
10183
101842002-07-09 Stefan Monnier <monnier@cs.yale.edu>
10185
10186 * data.c (Fdefalias): Add an optional `docstring' argument.
10187 (set_internal, Fsetq_default): Use XCAR/XCDR.
10188
10189 * composite.c (HASH_VALUE, HASH_KEY):
10190 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
10191
101922002-07-09 Kenichi Handa <handa@etl.go.jp>
10193
10194 * callproc.c (Fcall_process): Fix previous change.
10195
101962002-07-07 Stefan Monnier <monnier@cs.yale.edu>
10197
10198 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
10199 Add support for hash-tables.
10200 (Ftry_completion): Return t even if the string appears multiple times.
10201
10202 * fns.c (Fnconc): Use XCDR.
10203 (Fprovide): Use CONSP and XCDR.
10204 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
10205 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
10206 (Fmake_hash_table): Accept `:size nil'.
10207 (Fmakehash): Delete: moved to subr.el.
10208 (syms_of_fns): Don't defsubr makehash.
10209
10210 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
10211 (HASH_TABLE_SIZE): Move from fns.c.
10212
102132002-07-07 Richard M. Stallman <rms@gnu.org>
10214
10215 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
10216 Instead just return 0 when there is something to be done.
10217 (try_scrolling): If make_cursor_line_fully_visible returns 0,
10218 retry scrolling as if cursor were off the bottom.
10219 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
10220 return CURSOR_MOVEMENT_MUST_SCROLL.
10221 (redisplay_window): If make_cursor_line_fully_visible returns 0,
10222 go to try_to_scroll.
10223
10224 * buffer.c (Fbuffer_local_value): Store current value into its binding
10225 so we get the up-to-date value for the binding that is loaded.
10226
10227 * eval.c (Fdefmacro): Doc fix.
10228
102292002-07-05 Dave Love <fx@gnu.org>
10230
10231 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
10232 correctly.
10233
10234 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
10235 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
10236 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
10237 CCL_LookupCharConstTbl.
10238 (syms_of_ccl): Defvar translation-hash-table-vector.
10239
102402002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10241
10242 * xdisp.c: Remove unused variable `face'.
10243
102442002-07-04 Juanma Barranquero <lektu@terra.es>
10245
10246 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
10247 obsolescence information.
10248
102492002-07-03 Andrew Choi <akochoi@shaw.ca>
10250
10251 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
10252 pattern. Search cache first.
10253 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
10254 for Japanese font.
10255 (XLoadQueryFont): Use it.
10256
102572002-07-02 Richard M. Stallman <rms@gnu.org>
10258
10259 * keymap.c (Fdefine_key): Doc fix.
10260
10261 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
10262
102632002-07-02 Juanma Barranquero <lektu@terra.es>
10264
10265 * keymap.c (syms_of_keymap): Fix typo.
10266
102672002-07-01 Andrew Choi <akochoi@shaw.ca>
10268
10269 * s/darwin.h: Define POSIX_SIGNALS.
10270
10271 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
10272 and FSRefMakePath to convert FSSpec returned with Apple Event to
10273 Posix pathname.
10274 (mac_initialize) [TARGET_API_MAC_CARBON]:
10275 Call init_required_apple_events and disable the `Quit' menu item
10276 provided automatically by the Carbon Toolbox.
10277
102782002-07-01 Dave Love <fx@gnu.org>
10279
10280 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
10281 for K&R.
10282
10283 * xterm.c: Fix prototype for K&R.
10284
10285 * term.c (costs_set): Declare static, non-initialized for pcc.
10286
102872002-07-01 Richard M. Stallman <rms@gnu.org>
10288
10289 * keyboard.c (timer_last_idleness_start_time): New variable.
10290 (timer_start_idle): Set that.
10291 (read_key_sequence): Use that to reset timer_idleness_start_time
10292 to previous value.
10293
10294 * window.c (Frecenter): With arg, set optional_new_start.
10295
10296 * xdisp.c (redisplay_internal): Make optional_new_start really work.
10297
10298 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
10299 buffer for completion.
10300
103012002-06-29 Ken Raeburn <raeburn@gnu.org>
10302
10303 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
10304
103052002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10306
10307 * keyboard.c (readable_filtered_events): New function that filters
10308 FOCUS_IN_EVENT depending on parameter.
10309 (readable_events): Calls readable_filtered_events, not filtering
10310 FOCUS_IN_EVENT.
10311 (get_filtered_input_pending): New function, filtering parameter passed
10312 to readable_filtered_events.
10313 (get_input_pending): Calls get_filtered_input_pending, not filtering
10314 FOCUS_IN_EVENT.
10315 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
10316 FOCUS_IN_EVENT.
10317
10318 * xterm.h (struct x_output): Add focus_state.
10319
10320 * xterm.c (x_focus_changed): New function.
10321 (x_detect_focus_change): New function.
10322 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
10323 EnterNotify and LeaveNotify to track X focus changes.
10324
103252002-06-28 Andreas Schwab <schwab@suse.de>
10326
10327 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
10328
103292002-06-27 Kim F. Storm <storm@cua.dk>
10330
10331 * xdisp.c: (mode_line_string_list, mode_line_string_face)
10332 (mode_line_string_face_prop): New variables.
10333 (store_mode_line_string): New function.
10334 (display_mode_element): Use store_mode_line_string to
10335 add mode-line string elements to mode_line_string_list
10336 when mode_line_string_list is non-nil.
10337 (Fformat_mode_line): Now returns propertized string by
10338 default. New arg NO-PROPS to ignore properties.
10339 (decode_mode_spec): Only add two dashes for %- in propertized
10340 mode-line string.
10341 (syms_of_xdisp): Init and staticpro mode_line_string_list.
10342
103432002-06-27 Stefan Monnier <monnier@cs.yale.edu>
10344
10345 * minibuf.c (minibuffer_completion_contents): Add return type.
10346
103472002-06-27 Juanma Barranquero <lektu@terra.es>
10348
10349 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
10350
103512002-06-26 Juanma Barranquero <lektu@terra.es>
10352
10353 * fileio.c (read_file_name_cleanup): Add missing return.
10354
103552002-06-26 Richard M. Stallman <rms@gnu.org>
10356
10357 * window.c (Frecenter): Don't set force_start flag.
10358
10359 * minibuf.c (do_completion, Fminibuffer_complete_word)
10360 (Fminibuffer_completion_help): Complete just the text before point.
10361 (minibuffer_completion_contents): New function.
10362
10363 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
10364
10365 * frame.c (frames_bury_buffer): Function deleted.
10366
103672002-06-25 Miles Bader <miles@gnu.org>
10368
10369 * callint.c (Fcall_interactively): When checking to see if doprnt hit
10370 the end of callint_message, allow for a terminating '\0'.
10371
103722002-06-24 Juanma Barranquero <lektu@terra.es>
10373
10374 * w32select.c: Include composite.h
10375
10376 * w16select.c: Likewise.
10377
103782002-06-24 Kenichi Handa <handa@etl.go.jp>
10379
10380 * callproc.c (Fcall_process): If code detection is necessary,
10381 call detect_coding directly here.
10382
10383 * coding.c (detect_eol): Preserve coding->cmp_data.
10384
10385 * w16select.c (Fw16_get_clipboard_data):
10386 * w32fns.c (w32_to_x_font):
10387 * w32select.c (Fw32_get_clipboard_data):
10388 * xselect.c (selection_data_to_lisp_data):
10389 * xterm.c (XTread_socket): Disable composition handling.
10390
103912002-06-24 Stefan Monnier <monnier@cs.yale.edu>
10392
10393 * print.c (temp_output_buffer_setup): Kill all local variables.
10394
103952002-06-22 Stefan Monnier <monnier@cs.yale.edu>
10396
10397 * lread.c (Fread): Remove redundant and imprecise declaration.
10398
10399 * xfns.c (check_x_display_info): Use check_x_frame.
10400
10401 * .gdbinit (xprintsym): Use the new `xname' field.
10402 (xsymbol): Use it.
10403
104042002-06-22 Jason Rumney <jasonr@gnu.org>
10405
10406 * w32fns.c (file_dialog_callback): New function.
10407 (Fx_file_dialog): Allow selecting directories as well as files.
10408
104092002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10410
10411 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
f63fd14e 10412 OpenBSD. Add support for mipseb-*-netbsd* machines.
048addec
JD
10413
104142002-06-17 Andrew Choi <akochoi@shaw.ca>
10415
10416 * macterm.c (mac_scroll_area): Set foreground and backcolor to
10417 black and white before scrolling. Restore frame background and
10418 foreground color after scrolling.
10419 (do_window_update): Call XClearWindow before calling expose_frame.
10420 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
10421 FRAME_FOREGROUND_PIXEL of frame.
10422
10423 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
10424 test Mac command key as <ALT> key.
10425
104262002-06-17 Stefan Monnier <monnier@cs.yale.edu>
10427
10428 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
10429
10430 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
10431 Lookup keys in function-key-map immediately so that key-translation-map
10432 can be applied earlier.
10433 Remove function_key_possible and key_translation_possible, replaced
10434 by checking `keytran_start < t'.
10435
10436 * .gdbinit (xsymbol): Use the new `xname' field.
10437
104382002-06-17 Andrew Choi <akochoi@shaw.ca>
10439
10440 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
10441 test Mac command key as <ALT> key.
10442
10443 * mac.c (do_applescript): Call initialize_applescript if necessary
10444 when first called. Dispose of result_desc only when there is no error.
10445 (Fdo_applescript): Use %d format specifier instead of %ld.
10446
104472002-06-16 Andrew Choi <akochoi@shaw.ca>
10448
10449 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
10450 of FrontWindow for cases keyDown and autoKey.
10451
10452 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
10453 Vdefault_fontset to Monaco with mac-roman coding.
10454
10455 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
10456 init_process before and after inclusion of Carbon/Carbon.h, resp.
10457
10458 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
10459 cursor_gc.
10460 (add_font_name_table_entry): New function.
10461 (init_font_name_table): Use add_font_name_table_entry; add italic,
10462 bold, and bold-italic entries for truetype fonts.
10463
10464 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
10465 for Mac too.
10466 (try_font_list) [MAC_OS]: If no font matches given registry, try
10467 fonts with any registry matching face_family.
10468 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
10469
10470 * s/darwin.h: If autoconf detects the Ncurses library, define
10471 LIBS_TERMCAP to -lncurses to use it.
10472
104732002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
10474
10475 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
10476
104772002-06-15 Richard M. Stallman <rms@gnu.org>
10478
10479 * window.c (Fset_window_configuration): Explicitly preserve
10480 the point value that new_current_buffer had at the start.
10481
104822002-06-14 Juanma Barranquero <lektu@terra.es>
10483
10484 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
10485 Fix typos.
10486
104872002-06-14 Kim F. Storm <storm@cua.dk>
10488
10489 * insdel.c (insert_1_both, insert_from_string_1)
10490 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
10491 insert happened in the end_unchanged region. Otherwise, the
10492 redisplay may be confused and duplicate the last line in the
10493 buffer [seen after save-buffer when require-final-newline==t].
10494
104952002-06-13 Jason Rumney <jasonr@gnu.org>
10496
10497 * w32.c (init_environment): Remove EMACSLOCKDIR.
10498 (stat): Swap _S_IFDIR and _S_IFREG.
10499
105002002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10501
10502 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
10503 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
10504 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
10505 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
10506 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
10507 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
10508 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
10509 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
10510 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
10511 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
10512 SELECTION_REQUEST_EVENT, selection_clear_event to
10513 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
10514 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
10515 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
10516 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
10517 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
10518 no_event to NO_EVENT.
10519
105202002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10521
10522 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
10523
105242002-06-12 Stefan Monnier <monnier@cs.yale.edu>
10525
10526 * intervals.c (textget): Don't forget to `return'.
10527 (lookup_char_property): Use XCAR/XCDR.
10528
105292002-06-12 Juanma Barranquero <lektu@terra.es>
10530
10531 * xdisp.c (Fformat_mode_line): Fix typo.
10532
105332002-06-12 Kim F. Storm <storm@cua.dk>
10534
10535 * xdisp.c (Fformat_mode_line): New function.
10536 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
10537 (store_frame_title_char, store_frame_title): Use unconditionally.
10538 (init_xdisp): Defsubr Fformat_mode_line.
10539 Initialize frame_title_buf etc. unconditionally.
10540
105412002-06-11 Stefan Monnier <monnier@cs.yale.edu>
10542
10543 * keyboard.c (read_key_sequence):
10544 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
10545 things through those maps after downcasing events.
10546 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
10547 applies after function-key-map.
10548 Make sure that keytran can be done in the middle in the sequence.
10549 Be careful not to throw away events past the one we downcase.
10550
10551 * lread.c (read_integer): Remove unused var `tem'.
10552 (read1): Fix int/Lisp_Object mixup.
10553
10554 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
10555
105562002-06-11 Richard M. Stallman <rms@gnu.org>
10557
10558 * keyboard.c (readable_events): Ignore any number of
10559 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
10560
105612002-06-09 Miles Bader <miles@gnu.org>
10562
10563 * xfaces.c (Ftty_supports_face_attributes_p): New function.
10564 (parse_rgb_list, tty_lookup_color): New functions.
10565 (tty_defined_color): Use `tty_lookup_color' to do all the work.
10566 (color_distance, Fcolor_distance): New functions.
10567 (TTY_SAME_COLOR_THRESHOLD): New macro.
10568 (Qtty_color_standard_values): New variable.
10569 (syms_of_xfaces): Initialize new vars & functions.
10570
105712002-06-08 Colin Walters <walters@verbum.org>
10572
10573 * textprop.c (Vchar_property_alias_alist): New variable.
10574 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
10575
10576 * intervals.c (lookup_char_property): New function for looking up
10577 overlay and text properties, created from textget.
10578 (textget): Use it.
10579
10580 * intervals.h (lookup_char_property): Declare.
10581 (Vchar_property_alias_alist): Declare.
10582
10583 * buffer.c (Foverlay_get): Use lookup_char_property.
10584
105852002-06-07 Sam Steingold <sds@gnu.org>
10586
10587 * xselect.c (lisp_data_to_selection_data): Fix last change:
10588 *data_ret is not a Lisp string, while unibyte_string is.
10589
105902002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
10591
10592 * xselect.c (lisp_data_to_selection_data): Fix last change:
10593 set size_ret.
10594
105952002-06-07 Andreas Schwab <schwab@suse.de>
10596
10597 * m/amdx86-64.h: New file.
10598
105992002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
10600
10601 * fns.c (Fstring_make_unibyte): Doc fix.
10602
10603 * xselect.c (lisp_data_to_selection_data): If the requested type
10604 is STRING, call string_make_unibyte to encode the selected text
10605 as a string.
10606
10607 * window.c (Fset_window_hscroll): Doc fix.
10608
106092002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10610
10611 * fileio.c (choose_write_coding_system):
10612 Call select-safe-coding-system properly.
10613
106142002-06-03 Richard M. Stallman <rms@gnu.org>
10615
10616 * xdisp.c (message_with_string): Error if STRING is not a string.
10617
10618 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
10619
10620 * fileio.c (choose_write_coding_system): Pass FILE arg to
10621 Vselect_safe_coding_system_function.
10622
106232002-06-03 Ken Raeburn <raeburn@gnu.org>
10624
10625 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
10626
106272002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
10628
10629 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
10630 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
10631 * keymap.c (describe_command): Likewise.
10632 * minibuf.c (read_minibuf): Likewise.
10633
10634 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
10635 Cast `current_column' return value to int.
10636 (back_to_previous_visible_line_start)
10637 (reseat_at_next_visible_line_start, next_element_from_buffer):
10638 Cast `indented_beyond_p' 3rd arg to float.
10639
10640 * indent.c (last_known_column): Now a float.
10641 (current_column_1, position_indentation, current_column)
10642 (string_display_width): Return float.
10643 (Fcurrent_column): Cast `current_column' return value to int.
10644 (Fcurrent_indentation): Cast `position_indentation' retval to int.
10645 (indented_beyond_p): Third arg now a float.
10646 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
10647
10648 * lisp.h (current_column): Now returns float.
10649 (indented_beyond_p): 3rd arg now a float.
10650
106512002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
10652
10653 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
10654 is Qcompound_text_with_extensions.
10655
10656 * xselect.c (lisp_data_to_selection_data): Always set selection
10657 type as string if x_encode_text returns streingp non-NULL.
10658
10659 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
10660
106612002-05-30 Richard M. Stallman <rms@gnu.org>
10662
10663 * window.c (Fset_window_configuration): Correct the handling
10664 of point in current buffer, to work with multiple windows.
10665
106662002-05-29 Colin Walters <walters@verbum.org>
10667
10668 * lread.c (Fread_from_string): Don't depend on order of evaluation
10669 for C function parameters.
10670
106712002-05-28 Richard M. Stallman <rms@gnu.org>
10672
10673 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
10674 way for blinked-off state and for a nonselected window.
10675
10676 * window.c (window_scroll_pixel_based): Don't call Fbolp;
10677 instead, see if the new start pos is at beginning of line.
10678
10679 * fileio.c (Fwrite_region): If START is a string, don't
10680 make any annotations.
10681
10682 * eval.c (syms_of_eval): Doc fix.
10683
106842002-05-28 Colin Walters <walters@debian.org>
10685
10686 * emacs.c (USAGE1): Add --no-splash.
10687 (standard_args): Ditto.
10688
106892002-05-28 Colin Walters <walters@gnu.org>
10690
10691 * lread.c (readchar_count): New variable.
10692 (readchar): Increment it.
10693 (unreadchar): Decrement it.
10694 (read_multibyte): Decrement it.
10695 (Vread_with_symbol_positions): New variable.
10696 (Vread_symbol_positions_list): New variable.
10697 (read_internal_start): New function, created from Fread and
10698 Fread_from_string. Handle Vread_symbol_positions_list and
10699 Vread_with_symbol_positions.
10700 (readevalloop, Fread, Fread_from_string): Use it.
10701 (read1): Use readchar_count to add symbol positions to
10702 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
10703 (syms_of_lread): DEFVAR_LISP and initialize them.
10704
10705 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
10706 (substitute_object_recurse, substitute_object_in_subtree)
10707 (substitute_in_interval): Prototype.
10708 (read_multibyte): Return c if it's less than zero.
10709
107102002-05-28 Kim F. Storm <storm@cua.dk>
10711
10712 * fileio.c (Fread_file_name_internal): Added brute-force
10713 speed up for using predicate file-directory-p.
10714
107152002-05-28 Kim F. Storm <storm@cua.dk>
10716
10717 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
10718 New variables.
10719 (syms_of_fileio): DEFVAR_LISP them.
10720 (read_file_name_cleanup): New unwind function.
10721 (Fread_file_name_internal): Only return completions satifying
10722 Vread_file_name_predicate. Temporarily unwind protect and rebind
10723 default-directory while checking completions against the predicate.
10724 (Fread_file_name): Added PREDICATE argument. Specbind it to
10725 Vread_file_name_predicate during completion.
10726 Call Vread_file_name_function to read the file name if non-nil.
10727
10728 * lisp.h (Fread_file_name): Now has 6 args.
10729
10730 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
10731 predicate for Fread_file_name when reading directory name.
10732 Supply Qnil for predicate in other calls to Fread_file_name.
10733
107342002-05-26 Miles Bader <miles@gnu.org>
10735
10736 * term.c (tty_capable_p): New function.
10737 * dispextern.h (tty_capable_p): New function declaration.
10738 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
10739 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
10740
107412002-05-23 Stefan Monnier <monnier@cs.yale.edu>
10742
10743 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
10744 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
10745 (Vwrite_region_annotate_functions): Docstring fix.
10746
107472002-05-23 Kim F. Storm <storm@cua.dk>
10748
10749 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
10750 phys_cursor's hpos is overwritten. This is still not completely
10751 correct, as it doesn't really make sense to use hpos at all to
10752 get the cursor glyph (as that is relative to the width of the
10753 characters on the line, which may have changed during the update).
10754
107552002-05-22 Jason Rumney <jasonr@gnu.org>
10756
10757 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
10758 Lisp_Object.
10759 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
10760 Use modified enumfont_t struct.
10761
10762 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
10763
10764 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
10765 Handle the `hbar' cursor type.
10766 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
10767
10768 * w32fns.c (Qhbar): New variable.
10769 (x_specified_cursor_type): Use it.
10770
107712002-05-21 Ken Raeburn <raeburn@gnu.org>
10772
10773 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
10774 now, when the address is needed.
10775
107762002-05-21 Colin Walters <walters@gnu.org>
10777
10778 * Makefile.in (shortlisp): Add font-core.el.
10779
107802002-05-20 Richard M. Stallman <rms@gnu.org>
10781
10782 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
10783
10784 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
10785 equivalent key bindings here.
10786
107872002-05-20 Ken Raeburn <raeburn@gnu.org>
10788
10789 Change symbol structure to contain a lisp object for the symbol
10790 name:
10791 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
10792 object field named "xname".
10793 (SYMBOL_NAME): New macro.
10794 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
10795 name field.
10796 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
10797 (mark_object, gc_sweep): Use symbol xname field and XSTRING
10798 instead of name field.
10799 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
10800 SYMBOL_NAME instead of XSYMBOL and name field.
10801 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
10802 instead of XSYMBOL and name field.
10803 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
10804 and SYMBOL_NAME instead of XSYMBOL and name field.
10805 * coding.c (Fread_coding_system, code_convert_region1)
10806 (code_convert_string1, code_convert_string_norecord)
10807 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
10808 XSYMBOL and name field.
10809 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
10810 (Fmake_variable_buffer_local, Fmake_local_variable)
10811 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
10812 of XSYMBOL and name field.
10813 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
10814 XSYMBOL and name field.
10815 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
10816 instead of XSYMBOL and name field.
10817 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
10818 XSYMBOL and name field.
10819 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
10820 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
10821 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
10822 instead of XSYMBOL and name field.
10823 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
10824 (parse_modifiers, apply_modifiers, Fevent_convert_list)
10825 (parse_solitary_modifier, Fexecute_extended_command):
10826 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
10827 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
10828 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
10829 of XSYMBOL and name field.
10830 (describe_command, describe_translation): Use SYMBOL_NAME and
10831 assignment instead of XSYMBOL and name field and XSETSTRING.
10832 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
10833 instead of XSYMBOL and name field.
10834 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
10835 name field and XSETSTRING.
10836 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
10837 of XSYMBOL and name field.
10838 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
10839 assignment instead of XSYMBOL and name field and XSETSTRING.
10840 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
10841 XSTRING instead of XSYMBOL and name field.
10842 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
10843 and XSTRING instead of XSYMBOL and name field.
10844 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
10845 and XSTRING instead of XSYMBOL and name field.
10846 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
10847 XSTRING instead of XSYMBOL and name field.
10848 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
10849 of XSYMBOL and name field.
10850 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
10851 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
10852
108532002-05-19 Ken Raeburn <raeburn@gnu.org>
10854
10855 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
10856 and XCDR real rvalues in most configurations.
10857
10858 * buffer.c (fix_overlays_in_range, fix_overlays_before):
10859 Don't take the address of the cdr part of a cons cell; instead, track
10860 the parent cell and call XSETCDR, or set the variable for the head
10861 of the list if we haven't started down the list yet.
10862
108632002-05-19 Richard M. Stallman <rms@gnu.org>
10864
10865 * doc.c (reread_doc_file): Don't ask for confirmation.
10866
108672002-05-18 Jason Rumney <jasonr@gnu.org>
10868
10869 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
10870 (xbm_load_image): Use it.
10871 (xbm_load): Ditto.
10872 (xbm_read_bitmap_data): Reverted to xfns.c version.
10873 From David Ponce <david@dponce.com>.
10874
108752002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
10876
10877 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
10878 2.02 and later.
10879
108802002-05-16 Juanma Barranquero <lektu@terra.es>
10881
10882 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
10883
108842002-05-15 Stefan Monnier <monnier@cs.yale.edu>
10885
10886 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
10887 meaningful test.
10888 (read_char_minibuf_menu_prompt): Fix typo.
10889
108902002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
10891
10892 * eval.c (Fcommandp): Doc fix.
10893
108942002-05-13 Stefan Monnier <monnier@cs.yale.edu>
10895
10896 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
10897 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
10898 (Fset_keymap_parent): Gcpro a bit more.
10899 (access_keymap): Gcpro around meta_map call and around the main loop.
10900 (get_keyelt): Gcpro when following indirect references.
10901 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
10902 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
10903 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
10904 Remove useless ad-hoc remap code.
10905
109062002-05-13 Richard M. Stallman <rms@gnu.org>
10907
10908 * search.c (search_buffer): Give up boyer moore search if inverse
10909 translation change charset_base.
10910
109112002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
10912
10913 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
10914 characters is carried over from the previous block of text, adjust
10915 coding->produced to account for the extra character.
10916
109172002-05-11 Andreas Schwab <schwab@suse.de>
10918
10919 * coding.c (intersection): Keep the elements of the returned list
10920 in the same order as in the first list.
10921
109222002-05-11 Kim F. Storm <storm@cua.dk>
10923
10924 * keymap.c (current_minor_maps): Fixed resizing of cmm_maps;
10925 only update cmm_size if realloc actually succeeds.
10926 Testing with initial size of 2 elements revealed that using
10927 realloc on GNU/Linux would cause a random trap in xmalloc
10928 later on, so I rewrote the code to use malloc/bcopy/free instead
10929 of realloc.
10930
109312002-05-10 Jason Rumney <jasonr@gnu.org>
10932
10933 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
10934
109352002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
10936
10937 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
10938 parens, to ensure correct evaluation order.
10939
109402002-05-10 Kim F. Storm <storm@cua.dk>
10941
10942 * keymap.c (Vemulation_mode_map_alists): New variable.
10943 (syms_of_keymap): DEFVAR_LISP it.
10944 (current_minor_maps): Process keymap alists in that list before
10945 minor-mode-overriding-map-alist and minor-mode-map-alist.
10946
109472002-05-09 Richard M. Stallman <rms@gnu.org>
10948
10949 * search.c (Freplace_match): Doc fix.
10950
109512002-05-09 Kim F. Storm <storm@cua.dk>
10952
10953 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
10954 Enlarge cursor rectangle drawn around image with non-zero relief.
10955
10956 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
10957 Enlarge cursor rectangle drawn around image with non-zero relief.
10958
10959 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
10960 Enlarge cursor rectangle drawn around image with non-zero relief.
10961
109622002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
10963
10964 * xselect.c (lisp_data_to_selection_data): Don't set selection
10965 type if comes from the Lisp object's car. If the selection
10966 contains a pure ASCII text, always return QSTRING as its type.
10967
109682002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10969
10970 * mac.c (mac-cut-function): Doc fix.
10971
109722002-05-05 Richard M. Stallman <rms@gnu.org>
10973
10974 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
10975
109762002-05-04 Jason Rumney <jasonr@gnu.org>
10977
10978 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
10979 for event-click-count.
10980
10981 * process.c (init_process): Only add server subfeature if we can
10982 use non-blocking I/O.
10983
109842002-05-04 Andrew Choi <akochoi@shaw.ca>
10985
10986 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
10987 repeatedly.
10988
109892002-05-03 Jason Rumney <jasonr@gnu.org>
10990
10991 * process.c (Fmake_network_process): Only support server sockets
10992 when we can make them non-blocking.
10993
10994 * s/ms-w32.h (HAVE_SELECT): Define.
10995
10996 * w32.h (FILE_NDELAY): New flag.
10997
10998 * w32.c (sys_getpeername, fcntl): New functions.
10999 (_sys_read_ahead): Temporarily block on non-blocking sockets.
11000
11001 * w32proc.c: include sys/file.h.
11002
110032002-05-03 Colin Walters <walters@verbum.org>
11004
11005 * callproc.c (Vgame_score_directory): Renamed to
11006 Vshared_game_score_directory.
11007
110082002-04-30 Richard M. Stallman <rms@gnu.org>
11009
11010 * s/gnu.h [emacs]: Include stdio.h.
11011 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
11012
11013 * eval.c (do_autoload): Error if called while preparing to dump.
11014
11015 * fns.c (Frequire): Error if need to load while preparing to dump.
11016
110172002-04-28 Colin Walters <walters@verbum.org>
11018
11019 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
11020 Default to "~/.emacs.d/games".
11021
110222002-04-29 Stefan Monnier <monnier@cs.yale.edu>
11023
11024 * lread.c (openp): Change arg exec_only to predicate.
11025 (build_load_history): Use XCAR/XCDR.
11026 (Flocate_file_internal): New fun.
11027 (syms_of_lread): Defsubr it.
11028 (Fload): Update call to openp.
11029
11030 * lisp.h (openp): Update prototype.
11031
11032 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
11033 * w32proc.c (sys_spawnve):
11034 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
11035 * w32.c (check_windows_init_file):
11036 * sound.c (Fplay_sound_internal):
11037 * process.c (Fstart_process):
11038 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
11039 * mac.c (run_mac_command):
11040 * emacs.c (init_cmdargs):
11041 * callproc.c (Fcall_process): Update call to openp.
11042
11043 * textprop.c (remove_properties): Don't use XCAR without CONSP.
11044
11045 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
11046
110472002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11048
11049 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
11050 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
11051
110522002-04-28 Richard M. Stallman <rms@gnu.org>
11053
11054 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
11055
11056 * eval.c (Fcommandp): New arg for_call_interactively.
11057 * lisp.h (Fcommandp): Declare new arg.
11058
110592002-04-28 Jason Rumney <jasonr@gnu.org>
11060
11061 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
11062
11063 * w32.c (stat, fstat): Use file index information to generate
11064 inodes for directories where available.
11065
110662002-04-26 Andrew Choi <akochoi@shaw.ca>
11067
11068 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
11069 [HAVE_CARBON]: Include Mac object files.
11070
11071 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
11072 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
11073 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
11074 MAC_OSX, and MAC_OS instead of macintosh.
11075
11076 * editfns.c [MAC_OS8]: Include stdio.h.
11077
11078 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
11079
11080 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
11081 Apple Monaco.
11082
11083 * process.c: Declare QCfamily and QCfilter as extern.
11084 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
11085 calling select.
11086
11087 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
11088
11089 * tparam.c [MAC_OSX]: Don't define BC and UP.
11090
11091 * config.in [HAVE_CARBON]: Add.
11092
11093 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
11094 Move here from mac/src and mac/inc.
11095
11096 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
11097
110982002-04-26 Gerd Moellmann <gerd@gnu.org>
11099
11100 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
11101 Compute phys_cursor_width from the x position returned
11102 by x_draw_glyhs, which is cheaper.
11103 (x_display_and_set_cursor): Compute the buffer-local value
11104 of `cursor-in-non-selected-windows' only when needed.
11105
111062002-04-25 Gerd Moellmann <gerd@gnu.org>
11107
11108 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
11109 cursor on a stretch glyph has a width that depends on
11110 x_stretch_cursor_p.
11111
111122002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11113
11114 * abbrev.c (abbrev-start-location): Doc fix.
11115
11116 * indent.c (Fvertical_motion): Fix last change.
11117
111182002-04-25 Gerd Moellmann <gerd@gnu.org>
11119
11120 * indent.c (Fvertical_motion): Move to the start of the line
11121 containing PT before moving up or down.
11122
111232002-04-24 Gerd Moellmann <gerd@gnu.org>
11124
11125 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
11126 case of writing a whole row, more or less analogous to the case of
11127 writing only parts of a row.
11128
11129 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
11130 0 for NO_CURSOR.
11131
11132 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
11133
111342002-04-23 Colin Walters <walters@verbum.org>
11135
11136 * buffer.c (syms_of_buffer): Doc fix.
11137
111382002-04-23 Gerd Moellmann <gerd@gnu.org>
11139
11140 * xterm.c (notice_overwritten_cursor): Handle the special case
11141 of the cursor being in the first blank non-text line at the
11142 end of a window.
11143
11144 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
11145 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
11146 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
11147 bar cursors only, to make phys_cursor_width contain what its name
11148 suggests.
11149 (notice_overwritten_cursor): Consider the cursor image erased if
11150 the output area intersects the cursor image in y-direction.
11151
111522002-04-23 Simon Marshall <simon@gnu.org>
11153
11154 * xfns.c (x_set_mouse_color): Change default for cross_cursor
11155 to XC_hand2.
11156
111572002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11158
11159 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
11160
111612002-04-22 Kim F. Storm <storm@cua.dk>
11162
11163 * textprop.c (remove_properties): Fixed trap for malformed plist.
11164
111652002-04-22 Richard M. Stallman <rms@gnu.org>
11166
11167 * cmds.c (Fend_of_line): Handle intangible text in mid line.
11168
11169 * window.c (make_window): Initialize height_fixed_p,
11170 last_cursor_off_p, and p->cursor_off_p slots.
11171
111722002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11173
11174 * fns.c (use-dialog-box): Doc fix.
11175
111762002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11177
11178 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
11179 variables `row', `i' and `area'.
11180 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
11181 toolkit library.
11182
111832002-04-19 Stefan Monnier <monnier@cs.yale.edu>
11184
11185 * xfaces.c (clear_font_table): Don't free the default font of
11186 a frame even if it's on another display.
11187 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
11188 that could be Qt.
11189
111902002-04-19 Juanma Barranquero <lektu@terra.es>
11191
11192 * indent.c (Fmove_to_column): Remove unused local variable
11193 `next_boundary_byte'.
11194 (current_column_1): Likewise.
11195
111962002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
11197
11198 * msdos.c (Qhbar): New variable.
11199 (syms_of_msdos): Intern and staticpro it.
11200 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
11201 cursor type.
11202
112032002-04-19 Dave Lambert <dlambert@acm.org>
11204
11205 Theses change implement an underscore-like (`hbar') cursor.
11206
11207 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
11208
11209 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
11210 Handle the `hbar' cursor type.
11211 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
11212
11213 * xfns.c (Qhbar): New variable.
11214 (syms_of_xfns): Intern and staticpro it.
11215 (x_specified_cursor_type): Handle `hbar' cursor.
11216
11217 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
11218 not defined.
11219
112202002-04-18 Richard M. Stallman <rms@gnu.org>
11221
11222 * textprop.c (remove_properties): New arg LIST allows scanning
11223 either a list or a plist.
11224 (interval_has_some_properties_list): New function, like
11225 interval_has_some_properties using list instead of plist.
11226 All callers changed.
11227 (Fremove_list_of_text_properties): New function.
11228 (syms_of_textprop): Defsubr it.
11229
112302002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
11231
11232 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
11233
112342002-04-17 Juanma Barranquero <lektu@terra.es>
11235
11236 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
11237
112382002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
11239
11240 * window.c (coordinates_in_window): Don't report on margin area
11241 if its width is zero.
11242
112432002-04-16 Jason Rumney <jasonr@gnu.org>
11244
11245 * w32fns.c (Fx_file_dialog): Decode file name before using.
11246
11247 * w32term.c (construct_drag_n_drop): Likewise.
11248
112492002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
11250
11251 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
11252 store load-history in pure space.
11253
11254 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
11255
112562002-04-16 Stefan Monnier <monnier@cs.yale.edu>
11257
11258 * xterm.c (Qlatin_1, Qutf_8): New vars.
11259 (syms_of_xterm): Initialize them.
11260 (XTread_socket): Eliminate incorrect optimization that tried to avoid
11261 decoding the output of X*LookupString.
11262 Always use latin-1 to decode the output of XLookupString.
11263 Try Xutf8LookupString if XmbLookupString failed.
11264
11265 * region-cache.c (new_region_cache): Use BEG.
11266
112672002-04-16 Gerd Moellmann <gerd@gnu.org>
11268
11269 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
11270 configuration files.
11271 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
11272 returns 0.
11273
112742002-04-15 Andreas Schwab <schwab@suse.de>
11275
11276 * config.in: Regenerated using autoheader.
11277
11278 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
11279 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
11280 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
11281 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
11282 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
11283 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
11284 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
11285 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
11286 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
11287 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
11288 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
11289 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
11290 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
11291 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
11292 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
11293 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
11294 STACK_DIRECTION, now set by autoconf.
11295
112962002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11297
11298 * dispnew.c (marginal_area_string): Sort arguments.
11299
11300 * dispextern.h (marginal_area_string): Add prototype.
11301
113022002-04-13 Richard M. Stallman <rms@gnu.org>
11303
11304 * fileio.c (Finsert_file_contents):
11305 Don't call temp_output_buffer_setup--do just part, by hand.
11306
11307 * coding.c (run_pre_post_conversion_on_str):
11308 Don't call temp_output_buffer_setup--do just part, by hand.
11309
11310 * keyboard.c (command_loop_1): Don't call start_hourglass
11311 or cancel_hourglass when executing a macro.
11312
11313 * marker.c (count_markers): New function.
11314
11315 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
11316 grow without limit. Move recently used elements to the front.
11317
113182002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
11319
11320 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
11321
113222002-04-12 Gerd Moellmann <gerd@gnu.org>
11323
11324 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
11325 rows marginal areas.
11326 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
11327 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
11328
11329 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
11330
113312002-04-12 Dave Love <fx@gnu.org>
11332
11333 * dispnew.c (marginal_area_string): New.
11334
11335 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
11336 (Qleft_margin, Qright_margin): Declare.
11337 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
11338
11339 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
11340 note_mode_line_highlight and extended.
11341
11342 * keyboard.c (Qleft_margin, Qright_margin): Declare.
11343 (make_lispy_event): Deal with mouse events in margins.
11344
113452002-04-12 Stefan Monnier <monnier@cs.yale.edu>
11346
11347 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
11348
11349 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
11350 than deactivating the mark if tmm is set to `lambda'.
11351 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
11352 Use a single event for HELP_EVENT.
11353 (Fexecute_extended_command): Save last_point_position.
11354
113552002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11356
11357 * lisp.h (Fpropertize): Add prototype.
11358
11359 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
11360
113612002-04-10 Colin Walters <walters@verbum.org>
11362
11363 * config.in: Add HAVE_SHARED_GAME_DIR.
11364
11365 * callproc.c: (Vgame_score_directory): New variable.
11366 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
11367
113682002-04-10 Richard M. Stallman <rms@gnu.org>
11369
11370 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
11371
113722002-04-09 Stefan Monnier <monnier@cs.yale.edu>
11373
11374 * minibuf.c (read_minibuf): Use empty_string.
11375 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
11376 Short-circuit the search as soon as it "failed".
11377 (Fall_completions): Allow lambda forms and lists of strings for alist.
11378 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
11379 when require_match is nil.
11380 (Ftest_completion): Rename from `test_completion' and export to elisp.
11381 Call the predicate also when alist is a list.
11382 Obey Vcompletion_regexp_list.
11383 (do_completion, Fminibuffer_complete_and_exit): Use it.
11384 (Fassoc_string): Rename from `assoc_for_completion'.
11385 Allow list of strings as well and export to elisp.
11386
113872002-04-08 Stefan Monnier <monnier@cs.yale.edu>
11388
11389 * puresize.h (BASE_PURESIZE): Increase to 900KB.
11390
113912002-04-08 Juanma Barranquero <lektu@terra.es>
11392
11393 * w32.c (sys_accept): Don't hide variable `s'.
11394
113952002-04-05 Gerd Moellmann <gerd@gnu.org>
11396
11397 * callint.c (Fcall_interactively): Use INTEGERP instead of
11398 NUMBERP for checking Vhistory_length.
11399
114002002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11401
11402 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
11403 Doc fix to reflect it.
11404
114052002-04-04 Richard M. Stallman <rms@gnu.org>
11406
11407 * xdisp.c (display_mode_element): New arg RISKY.
11408 Disregard text props found or specified within a variable
11409 that isn't marked risky-local-variable.
11410 (Qrisky_local_variable): New variable.
11411 (syms_of_xdisp): Init and staticpro it.
11412
114132002-04-04 Stefan Monnier <monnier@cs.yale.edu>
11414
11415 * undo.c (record_point): New fun.
11416 (record_delete, record_insert): Use it.
11417
114182002-04-03 Juanma Barranquero <lektu@terra.es>
11419
11420 * doc.c (Fdocumentation): Add missing parentheses.
11421 (Fdocumentation_property): Likewise.
11422
114232002-04-03 Stefan Monnier <monnier@cs.yale.edu>
11424
11425 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
11426 data is 0, just return nil.
11427
114282002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
11429
11430 * msdos.c (syms_of_msdos): Fix last change with
11431 mouse_autoselect_window.
11432
114332002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11434
11435 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
11436 mouse_autoselect_window.
11437
114382002-04-02 Stefan Monnier <monnier@cs.yale.edu>
11439
11440 * keyboard.c (make_lispy_event): Handle unknown keysyms together
11441 with system-specific keysyms. Use it also for unknown function keys.
11442
11443 * doc.c (reread_doc_file): Return whether reload was attempted.
11444 (Fdocumentation, Fdocumentation_property): Don't try to reload
11445 if the doc is 0 and only ask once.
11446
11447 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
11448
114492002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
11450
11451 * keyboard.c (read_char): If the event was Qselect_window,
11452 restore timer_idleness_start_time to its previous value.
11453
11454 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
11455
114562002-04-01 Stefan Monnier <monnier@cs.yale.edu>
11457
11458 * region-cache.c (new_region_cache): Use BEG.
11459
11460 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
11461 Use BEG and BEG_BYTE.
11462
11463 * doc.c (get_doc_string): Return nil if the location is wrong.
11464 (reread_doc_file): New fun.
11465 (Fdocumentation, Fdocumentation_property):
11466 Call it if get_doc_string fails.
11467 (Fsnarf_documentation): Make it work for a dumped Emacs.
11468
11469 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
11470 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
11471
11472 * charset.c (Fstring): Allow 0 arguments.
11473
11474 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
11475
11476 * process.c (DATAGRAM_CONN_P, list_processes_1)
11477 (Fprocess_datagram_address, Fset_process_datagram_address)
11478 (Fset_network_process_options, server_accept_connection):
11479 Fix some int/Lisp_Object confusions (thank you union types).
11480
114812002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11482
11483 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
11484
11485 * w32term.c: Likewise.
11486 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
11487
11488 * keyboard.c (Qselect_window): New symbol.
11489 (head_table): Use it.
11490 (keys_of_keyboard): Bound select-window event to handle-select-window.
11491 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
11492
11493 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
11494 (last_window): New variable.
11495 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
11496 (note_mouse_movement): Remove reimplemented code in #if 0.
11497 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
11498 Emacs windows.
11499
11500 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
11501
115022002-03-31 Gerd Moellmann <gerd@gnu.org>
11503
11504 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
11505 Callers changed.
11506
115072002-03-30 Richard M. Stallman <rms@gnu.org>
11508
11509 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
11510 loop whenever it stops making progress.
11511
11512 * widget.c (set_frame_size): Don't call change_frame_size.
11513
115142002-03-30 Gerd Moellmann <gerd@gnu.org>
11515
11516 * dispnew.c (direct_output_for_insert):
11517 Call mark_window_display_accurate.
11518
115192002-03-29 Jason Rumney <jasonr@gnu.org>
11520
11521 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
11522
115232002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
11524
11525 * Makefile.in (lread.o): Depend on coding.h.
11526
11527 * lread.c (openp, Fload): Encode the file name before passing it
11528 to `stat', `access', and `emacs_open'.
11529 (openp): GCPRO the encoded file name. Don't recompute Lisp
11530 strings unnecessarily.
11531
115322002-03-29 Kim F. Storm <storm@cua.dk>
11533
11534 * fns.c (Flax_plist_put): Doc fix.
11535
115362002-03-28 Miles Bader <miles@gnu.org>
11537
11538 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
11539
115402002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11541
11542 * process.c (set-network-process-options): Add usage.
11543 (make-network-process): Doc fix.
11544
115452002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
11546
11547 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
11548
115492002-03-26 Richard M. Stallman <rms@gnu.org>
11550
11551 * fns.c (Fsubstring_no_properties): New function.
11552 (Flax_plist_get, Flax_plist_put): New functions.
11553 (syms_of_fns): defsubr them.
11554
11555 * xdisp.c (update_menu_bar): Test only update_mode_lines;
11556 don't test or alter w->update_mode_line.
11557
11558 * window.c (Fdisplay_buffer): Doc fix.
11559
115602002-03-24 Richard M. Stallman <rms@gnu.org>
11561
11562 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
11563
115642002-03-24 Gerd Moellmann <gerd@gnu.org>
11565
11566 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
11567 (Fdefmacro): Handle `(declare ...)'.
11568 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
11569 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
11570
115712002-03-24 Jason Rumney <jasonr@gnu.org>
11572
11573 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
11574 (xbm_file_p): Add prototypes.
11575 (xbm_format, xbm_image_p): Sync with xfns.c.
11576 (reflect_byte): New function.
11577 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
11578 (xbm_load_image): Create bitmaps with a depth of 1.
11579 (init_xfns): Enable XBM images.
11580
115812002-03-23 Jason Rumney <jasonr@gnu.org>
11582
11583 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
11584 correctly. Do not pass up_modifier to keyboard buffer.
11585
11586 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
11587
115882002-03-22 Stefan Monnier <monnier@cs.yale.edu>
11589
11590 * Makefile.in (bootstrapclean): New target.
11591 (bootstrap-temacs, bootstrap-doc): Remove.
11592 (bootstrap-emacs): Use a bog-standard `temacs'.
11593 Don't bother to build a DOC file.
11594
11595 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
11596
11597 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
11598 in temacs even if !CANNOT_DUMP.
11599 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
11600
11601 * alloc.c (check_pure_size): Only output a warning.
11602
116032002-03-22 Jason Rumney <jasonr@gnu.org>
11604
11605 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
11606 supported.
11607
11608 * w32term.c (zv_bits): Declare as short, for word alignment.
11609 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
11610 (syms_of_w32term): Define x-use-underline-position-properties.
11611
11612 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
11613 (clear_image_cache): Block input, fix logic, clear matrices in
11614 all frames that share this cache.
11615
116162002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
11617
11618 * emacs.c (main): Update the Copyright year in the blurb printed
11619 by "emacs --version".
11620
11621 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
11622
11623 * xterm.c (XTread_socket): If XK_ISO_Lock and
11624 XK_ISO_Last_Group_Lock are defined, handle keysyms between
11625 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
11626
116272002-03-21 Kim F. Storm <storm@cua.dk>
11628
11629 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
11630 menu-bar bindings in keymap and local-map properties _are_ used.
11631 But try keymap property first in accordance with 2002-01-03 patch.
11632 Added comment describing why this is not always reliable.
11633 (tool_bar_items): Ditto for tool-bar.
11634
116352002-03-21 Jason Rumney <jasonr@gnu.org>
11636
11637 * w32fns.c (x_clear_image_1): Disable color table code.
11638
116392002-03-21 Kim F. Storm <storm@cua.dk>
11640
11641 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
11642 removed the wrong version of the DEFUN macro; fixed it.
11643
11644 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
11645 Fmember rather than Fmemq).
11646 (Fprovide): Check that subfeatures is a list.
11647
11648 * process.c (QCfeature, QCdatagram): Removed variables.
11649 (QCtype, Qdatagram): New variables.
11650 (network_process_featurep): Removed function.
11651 (Fmake_network_process): Removed :feature check.
11652 Use :type 'datagram instead of :datagram t to create a datagram
11653 socket. This allows us to add other connection types (e.g. raw
11654 sockets) later in a consistent manner.
11655 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
11656 supported subfeatures for feature make-network-process.
11657 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
11658 Intern and staticpro QCtype and Qdatagram.
11659 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
11660
11661 * xfns.c: (QCtype): Remove duplicate declaration and
11662 initialization (is now declared in process.c).
11663
11664 * w32fns.c: (QCtype): Remove duplicate declaration and
11665 initialization (is now declared in process.c).
11666
116672002-03-21 Richard M. Stallman <rms@gnu.org>
11668
11669 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
11670 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
11671 when jumping to `fail' to avoid undoing reg changes in the
11672 last iteration of the loop.
11673 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
11674
11675 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
11676 Depend on process.h.
11677
116782002-03-20 Jason Rumney <jasonr@gnu.org>
11679
11680 Most of the following changes are still conditional on HAVE_IMAGES
11681 which is not set by default on Windows.
11682
11683 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
11684
11685 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
11686 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
11687 (four_corners_best, x_clear_image_1, x_clear_image)
11688 (x_alloc_image_color, postprocess_image)
11689 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
11690 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
11691 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
11692
11693 * w32gui.h (struct XImage): Define.
11694
11695 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
11696 extract mouse co-ordinates.
11697
116982002-03-20 Jason Rumney <jasonr@gnu.org>
11699
11700 * w32.c (init_winsock): Dynamically load new server and UDP
11701 socket functions.
11702 (socket_to_fd): New function.
11703 (sys_socket): Use it.
11704 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
11705 (sys_recvfrom, sys_sendto): New wrapper functions.
11706
11707 * process.c (QCfamily, QCfilter): Remove duplicate declaration
11708 and initialization.
11709
11710 * makefile.w32-in (LIBS): Remove $(WSOCK32).
11711
117122002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
11713
11714 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
11715 Don't use "sun" as a variable, it's a predefined constant on Sun
11716 machines.
11717
117182002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11719
11720 * bytecode.c (Fbyte_code): Revert last change.
11721
117222002-03-19 Kim F. Storm <storm@cua.dk>
11723
11724 * makefile.w32-in (LIBS): Add $(WSOCK32).
11725 From David Ponce <dponce@voila.fr>.
11726
117272002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11728
11729 * process.c (wait_reading_process_input): Move variables `pname'
11730 and `pnamelen' down where they are used.
11731
11732 * bytecode.c (Fbyte_code): Discard unused computed value to
11733 prevent gcc warning.
11734
11735 * lisp.h (Fplist_member): Add prototype.
11736
117372002-03-18 Kim F. Storm <storm@cua.dk>
11738
11739 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
11740 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
11741
11742 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
11743 Remove explicit GNU_LINUX settings for datagram support.
11744
117452002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11746
11747 * process.c (Fmake_network_process): Remove unused variable `sa'.
11748 Doc fix. Add usage:.
11749 (set_socket_options): Remove unused variables `optnum' and `opttype'.
11750
117512002-03-17 Richard M. Stallman <rms@gnu.org>
11752
11753 * xdisp.c (cursor_type_changed): New variable.
11754 (redisplay_internal): Redisplay all windows if cursor_type_changed.
11755 Clear it when clearing windows_or_buffers_changed.
11756 (try_cursor_movement, redisplay_window, try_window_id)
11757 (try_window_reusing_current_matrix): Test cursor_type_changed
11758 along with windows_or_buffers_changed.
11759
11760 * window.h (cursor_type_changed): New variable.
11761
11762 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
11763 not update_mode_lines, and always set it to 1.
11764
11765 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
11766 if no frames needed redrawing.
11767
117682002-03-17 Kim F. Storm <storm@cua.dk>
11769
11770 The following changes add support for network server processes,
11771 datagram connections, and local (unix) sockets.
11772
11773 * process.h (struct Lisp_Process): New member log.
11774 Doc fix: Member command used to indicate stopped network process.
11775 Doc fix: Member childp contains plist for network process.
11776 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
11777
11778 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
11779 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
11780 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
11781 New variables.
11782 (NETCONN1_P): New macro.
11783 (DATAGRAM_SOCKETS): New conditional symbol.
11784 (datagram_address): New array.
11785 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
11786 (status_message): Use concat3.
11787 (Fprocess_status): Add `listen' status to doc string. Return `stop'
11788 for a stopped network process.
11789 (Fset_process_buffer): Update contact plist for network process.
11790 (Fset_process_filter): Ditto. Don't enable input for stopped
11791 network processes. Server must listen, even if filter is t.
11792 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
11793 New functions.
11794 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
11795 (Fprocess_contact): Added KEY argument. Handle datagrams.
11796 (list_processes_1): Optionally show only processes with the query
11797 on exit flag set. Dynamically adjust column widths. Omit tty
11798 column if not needed. Report stopped network processes.
11799 Identify server and datagram network processes.
11800 (Flist_processes): New optional arg `query-only'.
11801 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
11802 (conv_lisp_to_sockaddr, set_socket_options)
11803 (network_process_featurep, unwind_request_sigio): New helper functions.
11804 (Fprocess_datagram_address, Fset_process_datagram_address):
11805 (Fset_network_process_options): New lisp functions.
11806 (Fopen_network_stream): Removed. Now defined in simple.el.
11807 (Fmake_network_process): New lisp function. Code is based on previous
11808 Fopen_network_stream, but heavily reworked with new property list based
11809 argument list, support for datagrams, server processes, and local
11810 sockets in addition to old client-only functionality.
11811 (server_accept_connection): New function.
11812 (wait_reading_process_input): Use it to handle incoming connects.
11813 Do not enable input on a new connection if process is stopped.
f63fd14e 11814 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
048addec
JD
11815 (send_process): Handle datagram sockets.
11816 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
11817 network process is indicated by setting command field to t .
11818 (Fprocess_send_eof): No-op if datagram connection.
11819 (Fstatus_notify): Don't read input for a stream server socket or a
11820 stopped network process.
11821 (init_process): Initialize datagram_address array.
11822 (syms_of_process): Intern and staticpro new variables, defsubr new
11823 functions.
11824
118252002-03-16 Jason Rumney <jasonr@gnu.org>
11826
11827 * w32fns.c (w32_to_all_x_charsets): Return correct type in
11828 startup case.
11829
118302002-03-16 Richard M. Stallman <rms@gnu.org>
11831
11832 * xdisp.c (redisplay_internal, redisplay_windows):
11833 Use list_of_error to call internal_condition_case_1.
11834 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
11835 so as to catch all errors with no possibility of debugger redisplay.
11836 (list_of_error): New variable.
11837 (syms_of_xdisp): Init and staticpro it.
11838
11839 * print.c (print_object): Delete `\ ' from printed rep of frame.
11840
118412002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
11842
11843 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
11844 until its implementation is fixed.
11845
118462002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11847
11848 * xfns.c (png_load): Remove unused variable `gamma_str'.
11849
118502002-03-14 Richard M. Stallman <rms@gnu.org>
11851
11852 * xfns.c (x_real_positions): Handle failure in XQueryTree.
11853
118542002-03-14 Miles Bader <miles@gnu.org>
11855
11856 * intervals.c (adjust_for_invis_intang): New function.
11857 (set_point_both): Use `adjust_for_invis_intang' to do most of the
11858 work for dealing with invisible+intangible regions. Do so before
11859 and after both forward and backward movements, to handle both
11860 front-sticky and rear-sticky cases.
11861 * textprop.c (text_property_stickiness): Function moved here from
11862 `editfns.c'.
11863 * intervals.h (text_property_stickiness): New declaration.
11864 * editfns.c (char_property_eq): Function removed.
11865 (text_property_stickiness): Function moved to `textprop.c'.
11866
118672002-03-13 Jason Rumney <jasonr@gnu.org>
11868
11869 * config.in: Add STRFTIME_NO_POSIX2.
11870
11871 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
11872 and %OX when underlying strftime does not.
11873
118742002-03-13 Stefan Monnier <monnier@cs.yale.edu>
11875
11876 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
11877 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
11878 line) to avoid annoying flicker.
11879 (xm_scroll_callback): Get rid of the now unnecessary kludge.
11880 (XTread_socket): Mark it static.
11881
11882 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
11883
118842002-03-13 Kim F. Storm <storm@cua.dk>
11885
11886 * puresize.h (BASE_PURESIZE): Increase to 775000.
11887
118882002-03-12 Juanma Barranquero <lektu@terra.es>
11889
11890 * editfns.c (syms_of_editfns): Fix typo.
11891
118922002-03-12 Gerd Moellmann <gerd@gnu.org>
11893
11894 * xsmfns.c: Include stdio.h because termhooks.h needs it.
11895 Include termopt.h for interrupt_input.
11896
118972002-03-11 Andreas Schwab <schwab@suse.de>
11898
11899 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
11900
119012002-03-11 Gerd Moellmann <gerd@gnu.org>
11902
11903 * xterm.c (note_mouse_movement): Put code for
11904 x_autoselect_window_p in #if 0.
11905
11906 * lread.c (Fload): Don't assume that message_with_string uses the
11907 string it is given like a C string.
11908
119092002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11910
11911 * xterm.h (x_session_check_input, x_session_initialize): Declared.
11912
11913 * xterm.c: (XTread_socket): Add call to x_session_check_input and
11914 x_session_have_connection.
11915 (x_initialize): Add call to x_session_initialize.
11916
11917 * termhooks.h (enum event_kind): Add save_session_event.
11918
11919 * keyboard.c: Add Emacs event save_session_event.
11920
11921 * emacs.c (main): Add call to syms_of_xsmfns.
11922
11923 * lisp.h: Declare syms_of_xsmfns as extern.
11924
11925 * config.in: Add HAVE_X_SM.
11926
11927 * Makefile.in (LIBXT): Add -lSM -lICE
11928 if HAVE_X_SM and not USE_X_TOOLKIT.
11929 (XOBJ): New file xsmfns.c added.
11930
11931 * xsmfns.c: New file for X session management.
11932
119332002-03-09 Jason Rumney <jasonr@gnu.org>
11934
11935 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
11936 read-only when setting modified time.
11937
119382002-03-08 Gerd Moellmann <gerd@gnu.org>
11939
11940 * xdisp.c (move_it_vertically_backward): At the end of the function,
11941 when moving forward by lines, treat terminal frames specially.
11942
11943 * keyboard.c (echo_char): Make sure to add a separator between
11944 keys even if echo_dash hasn't been called.
11945
11946 * xdisp.c: Use new string macros.
11947 (update_echo_area): Pass number of bytes to message3 instead of
11948 number of chars.
11949 (set_message_1): Don't access a string's size_byte directly.
11950 (decode_mode_spec_coding): Use number of bytes of eoltype string
11951 instead number of chars.
11952
11953 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
11954
119552002-03-08 Juanma Barranquero <lektu@terra.es>
11956
11957 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
11958 24-bit.
11959
119602002-03-06 Jason Rumney <jasonr@gnu.org>
11961
11962 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
11963
119642002-03-06 Gerd Moellmann <gerd@gnu.org>
11965
11966 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
11967 (cancel_echoing, echo_length, echo_truncate): Changed to
11968 work with new kboard definition.
11969 (echo_now): Use message3_nolog instead of message2_nolog.
11970
11971 * alloc.c (mark_kboards): Mark echo_string.
11972
11973 * keyboard.h (ECHOBUFSIZE): Removed.
11974 (struct kboard): Member echoptr removed, member echobuf renamed
11975 to echo_string.
11976
11977 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
11978 message3 instead of message2 to display the message using STRING's
11979 text properties.
11980
119812002-03-05 Andreas Schwab <schwab@suse.de>
11982
11983 * xdisp.c (hscroll_margin): Change to EMACS_INT.
11984
119852002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
11986
11987 * frame.c (default-frame-alist): Explain that setting it doesn't
11988 affect existing frames.
11989
119902002-03-05 Stefan Monnier <monnier@cs.yale.edu>
11991
11992 * indent.c (skip_invisible): Fix my brain fart.
11993
11994 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
11995
119962002-03-04 Stefan Monnier <monnier@cs.yale.edu>
11997
11998 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
11999 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
12000 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
12001 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
12002 and variables to use EMACS_INT instead of just int.
12003
12004 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
12005
120062002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
12007
12008 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
12009 environment, pass it down with corrected value.
12010
120112002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12012
12013 * lread.c (read_filtered_event): Do not call start_hourglass
12014 before returning.
12015
120162002-03-04 Juanma Barranquero <lektu@terra.es>
12017
12018 * w32term.c (x_display_and_set_cursor): Fix typo.
12019
120202002-03-03 Richard M. Stallman <rms@gnu.org>
12021
12022 * fileio.c (Fmake_temp_name): Doc fix.
12023
120242002-03-03 Gary Wong <gtw@gnu.org>
12025
12026 * termcap.c [!emacs]: Replace ospeed for building standalone
12027 libtermcap, for binary compatibility.
12028
12029 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
12030
120312002-03-03 Richard M. Stallman <rms@gnu.org>
12032
12033 * xrdb.c (file_p): Rename arg `path' to `filename'.
12034
12035 * abbrev.c (Fexpand_abbrev): Increment plist as use count
12036 only if it is an integer.
12037
12038 * xfns.c (png_load): Set screen_gamma based on f->gamma.
12039 If png_get_sRGB gives an answer, call png_set_gamma
12040 using the default image gamma value.
12041
12042 * lread.c (read1): When reading from a file, default string to
12043 multibyte only if it has some multibyte characters.
12044
12045 * print.c (print_object): Output multibyte chars 128...255
12046 using \x even if ! print_escape_multibyte.
12047
12048 * xdisp.c (display_mode_element): Move the places where
12049 bytepos, charpos, this, and lisp_string are set.
12050 Use lisp_string to set bytepos.
12051
12052 * xdisp.c (redisplay_internal):
12053 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
12054
12055 * xdisp.c (display_mode_element): Merge properties specified with
12056 :propertize onto those that come with the string.
12057
120582002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
12059
12060 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
12061 automatic-hscrolling. Users changed.
12062 <hscroll-margin>: Renamed from automatic-hscroll-margin.
12063 Users changed.
12064 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
12065
120662002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
12067
12068 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
12069
120702002-03-02 Kim F. Storm <storm@cua.dk>
12071
12072 * window.c (Fminibuffer_selected_window): New function.
12073 (syms_of_window): Defsubr it.
12074
120752002-03-01 Kim F. Storm <storm@cua.dk>
12076
12077 * window.h (struct window): New member phys_cursor_width.
12078
12079 * window.c (make_window, replace_window): Init phys_cursor_width.
12080
12081 * xterm.c (x_display_and_set_cursor): Blink box cursor using
12082 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
12083
12084 * w32term.c (x_display_and_set_cursor): Blink box cursor using
12085 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
12086
12087 * lisp.h (GCPRO6): New macro.
12088
12089 * process.c (Fopen_network_stream): Use GCPRO6.
12090
120912002-03-01 Kim F. Storm <storm@cua.dk>
12092
12093 * process.c (Qconnect, Qfailed): New variables.
12094 (syms_of_process): Intern and staticpro them.
12095 (Fprocess_status): Document connect and failed return values.
12096 [NON_BLOCKING_CONNECT]: New conditional.
12097 (connect_wait_mask, num_pending_connects): New variables.
12098 (status_message): Convert Qfailed status.
12099 (Fopen_network_stream): Added support for non-blocking connect.
12100 New optional args: filter, sentinel, non_blocking. Doc updated.
12101 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
12102 (deactivate_process): Handle pending non-blocking connect.
12103 (wait_reading_process_input): Poll for status of non-blocking
12104 connects. Exec sentinel directly when connect succeeds.
12105 (status_notify): Don't read process output if not yet connected.
12106
121072002-02-28 Kim F. Storm <storm@cua.dk>
12108
12109 * window.c: (minibuf_selected_window): Renamed from
12110 Vminibuf_selected_window. Users changed.
12111 (syms_of_window): Staticpro it.
12112
121132002-02-26 Kim F. Storm <storm@cua.dk>
12114
12115 The following changes add a new Vminibuf_selected_window variable
12116 which is similar to Vminibuf_scroll_window, but which is only set
12117 on entry to the minibuffer (from a non-minibuffer window):
12118
12119 * window.c: (Vminibuf_selected_window): New variable.
12120 (struct save_window_data): New member minibuf_selected_window.
12121 (Fset_window_configuration): Restore Vminibuf_selected_window.
12122 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
12123 Set minibuf_scroll_window member to nil if minibuf_level is 0.
12124 (compare_window_configurations): Compare minibuf_selected_window.
12125
12126 * window.h: (Vminibuf_selected_window): Declare extern.
12127
12128 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
12129 entry to minibuffer or on entry from a non-minibuffer window.
12130
12131 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
12132 Vminibuf_selected_window instead of Vminibuf_scroll_window.
12133
12134 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
12135 instead of Vminibuf_scroll_window when deciding in which window
12136 the region should be highlighted. Consequently, the region remains
12137 highlighteded even when a completion buffer is also displayed.
12138
121392002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
12140
12141 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
12142
12143 * xselect.c (Qcompound_text_with_extensions): Renamed from
12144 Qcompound_text_no_extensions.
12145 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
12146
121472002-02-26 Juanma Barranquero <lektu@terra.es>
12148
12149 * w32proc.c (syms_of_ntproc): Doc fix.
12150
121512002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12152
12153 * intervals.h: Include "dispextern.h" unconditionally.
12154
121552002-02-24 Jason Rumney <jasonr@gnu.org>
12156
12157 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
12158 and disp-table.elc.
12159 (lisp): Add emacs-lisp/backquote.elc.
12160
121612002-02-24 Kim F. Storm <storm@cua.dk>
12162
12163 * keymap.c (Flookup_key): Fixed problem in 2001-12-28 patch:
12164 The validation of the event type was too strict as it didn't
12165 allow string events; buffer names are used in bindings for
12166 menu-bar-select-buffer (see `menu-bar-update-buffers').
12167
121682002-02-23 Kim F. Storm <storm@cua.dk>
12169
12170 The following changes rework my patch of 2002-02-06 which
12171 added command remapping by entering the commands directly into
12172 the keymaps. Now, command remapping uses an explicit `remap'
12173 prefix in the keymaps, i.e. [remap COMMAND].
12174
12175 * keymap.c (Qremap, remap_command_vector): New variables.
12176 (is_command_symbol): Removed function.
12177 (Fdefine_key): No longer accept a symbol for KEY.
12178 Added validation of [remap COMMAND] argument for KEY.
12179 The DEF is no longer required to be a symbol when remapping a command.
12180 (Fremap_command): New function to remap command through keymaps.
12181 (Flookup_key): Perform command remapping initiated by
12182 Fremap_command directly for speed.
12183 (Fkey_binding): Use Fremap_command for command remapping.
12184 (where_is_internal): Handle new command remapping representation.
12185 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
12186 staticpro them. Defsubr Fremap_command.
12187
12188 * keymap.h (Fremap_command): Declare extern.
12189 (is_command_symbol): Remove extern.
12190
12191 * keyboard.c (command_loop_1): Use Fremap_command for command
12192 remapping; now try command remapping for all symbols.
12193
121942002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
12195
12196 * coding.h (run_pre_post_conversion_on_str): Add prototype.
12197
121982002-02-23 Jason Rumney <jasonr@gnu.org>
12199
12200 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
12201 on the string before encoding it.
12202 (Fw32_get_clipboard_data): Run post-read-conversion on the string
12203 after decoding it.
12204
12205 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
12206
122072002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12208
12209 * w32term.c (enter_timestamp): Remove unused static variable to
12210 prevent warning.
12211
12212 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
12213
122142002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
12215
12216 * w16select.c (Fw16_get_clipboard_data): Fix last change.
12217
12218 * xselect.c (selection_data_to_lisp_data): Fix last change.
12219
122202002-02-22 Jason Rumney <jasonr@gnu.org>
12221
12222 * w32term.h (struct w32_output): New member menu_command_in_progress.
12223
12224 * w32menu.c (menubar_selection_callback): Free the menu and
12225 clear the menu_command_in_progress flag.
12226
12227 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
12228 (menu_free_timer): New variable.
12229 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
12230 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
12231 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
12232 menu command is in progress.
12233 <WM_COMMAND>: Set the menu_command_in_progress flag.
12234 Kill any menu_free_timer that is running.
12235
12236 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
12237 Call ExtTextOutA rather than ExtTextOut.
12238
122392002-02-22 Eli Zaretskii <eliz@gnu.org>
12240
12241 * puresize.h (BASE_PURESIZE): Increase to 755000.
12242
122432002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
12244
12245 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
12246 on the string before encoding it.
12247 (Fw16_get_clipboard_data): Run post-read-conversion on the string
12248 after decoding it.
12249
122502002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
12251
12252 Support for ICCCM Extended Segments in X selections:
12253
12254 * xselect.c <Qcompound_text_no_extensions>: New variable.
12255 (syms_of_xselect): Intern and staticpro it.
12256 (selection_data_to_lisp_data): Run post-read-conversion on decoded
12257 selection text.
12258 (lisp_data_to_selection_data): If next-selection-coding-system is
12259 compound-text-no-extensions, set the type of selection to be
12260 compound-text.
12261
12262 * xterm.h (x_encode_text): Update prototype.
12263
12264 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
12265 callers changed. If SELECTIONP is non-zero, run the
12266 pre-write-conversion function before encoding the selection text.
12267
122682002-02-21 Kim F. Storm <storm@cua.dk>
12269
12270 * frame.c (syms_of_frame): Change mouse-highlight default to t.
12271
12272 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
12273 Correct composing of language-change event.
12274
122752002-02-20 Kim F. Storm <storm@cua.dk>
12276
12277 * keyboard.c (menu_bar_items): Don't include keymap or local-map
12278 bindings at PT when building menu (the menu is not updated often
12279 enough for this to work reliable).
12280 (tool_bar_items): Likewise.
12281 (current_active_maps): Removed unused (and buggy) function.
12282
122832002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12284
12285 * xfns.c (gif_load): Use correct width and height for GIF images.
12286
122872002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
12288
12289 * floatfns.c (Fatan): Accept an optional second arg and call
12290 atan2 if passed 2 args.
12291
122922002-02-18 Jason Rumney <jasonr@gnu.org>
12293
12294 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
12295
122962002-02-17 Jason Rumney <jasonr@gnu.org>
12297
12298 * w32term.c (x_autoselect_window_p): New variable.
12299 (syms_of_w32term): DEFVAR_BOOL and initialize it.
12300 (note_mouse_movement): Use it.
12301
12302 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
12303
12304 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
12305
12306 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
12307 New variables.
12308 (syms_of_w32fns): Intern and staticpro them.
12309 (x_frame_parms) <"fullscreen">: New parameter.
12310 (x_fullscreen_move, x_set_fullscreen): New functions.
12311 (x_set_frame_parameters): Support Qfullscreen.
12312 (x_real_positions): Save x/y_pixels_diff frame params.
12313 (x_figure_window_size): Support full-screen frames.
12314 (Fx_create_frame): Default the fullscreen parameter.
12315
12316 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
12317 (x_fullscreen_adjust): New functions.
12318 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
12319 fullscreen. Call x_check_fullscreen_move, and set the
12320 want_fullscreen member of output_data.w32
12321 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
12322
12323 * w32term.h: New enum for FULLSCREEN_* constants.
12324 (struct w32_output): New members want_fullscreen, x_pixels_diff,
12325 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
12326 (x-fullscreen-adjust): New prototype.
12327
123282002-02-17 Kim F. Storm <storm@cua.dk>
12329
12330 * frame.c: (Vmouse_highlight): New variable.
12331 (syms_of_frame): DEFVAR_LISP it.
12332
12333 * frame.h: (Vmouse_highlight): Declare extern.
8a8e19a3 12334
048addec 12335 * xterm.h (struct x_display_info): Add mouse_face_hidden.
8a8e19a3 12336
048addec
JD
12337 * xterm.c (disable_mouse_highlight): Removed variable.
12338 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
12339 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
12340 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
12341 and on after keyboard input.
12342 (x_term_init): Initialize mouse_face_hidden.
8a8e19a3 12343
048addec 12344 * msdos.h (struct display_info): Add mouse_face_hidden.
8a8e19a3 12345
048addec
JD
12346 * msdos.c (disable_mouse_highlight): Removed variable.
12347 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
12348 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
12349 (internal_terminal_init): Initialize mouse_face_hidden.
12350 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
12351 and on after keyboard input.
4f1b1854 12352
048addec 12353 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
4f1b1854 12354
048addec
JD
12355 * w32term.c (disable_mouse_highlight): Removed variable.
12356 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
12357 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
12358 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
12359 and on after keyboard input.
12360 (w32_initialize_display_info): Initialize mouse_face_hidden.
4f1b1854 12361
048addec 123622002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
4f1b1854 12363
048addec
JD
12364 * msdos.c (last_mouse_window): New variable.
12365 (dos_rawgetc): Fix last change--if the mouse is in the same window
12366 as recorded in last_mouse_window, don't select this window.
5cb6905d 12367
048addec 12368 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
5cb6905d 12369
048addec
JD
12370 * msdos.c (x_autoselect_window_p): New variable.
12371 (syms_of_msdos): Defvar it.
12372 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
12373 which the last mouse movement occured, unless it is already selected.
437dfb9f 12374
048addec
JD
12375 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
12376 New variables.
12377 (syms_of_xdisp): DEVFAR them.
12378 (hscroll_window_tree): Use automatic_hscroll_margin and
12379 Vautomatic_hscroll_step to compute the amount of window scrolling.
437dfb9f 12380
048addec 123812002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9f696a00 12382
048addec
JD
12383 * xterm.c (x-autoselect-window): New variable.
12384 (note_mouse_movement): Use it.
9f696a00 12385
048addec 12386 * keyboard.c: Do not include "systime.h" twice.
d57966d7 12387
048addec 123882002-02-15 Andreas Schwab <schwab@suse.de>
d57966d7 12389
048addec 12390 * puresize.h (BASE_PURESIZE): Increase to 9/5.
d57966d7 12391
048addec 12392 * alloc.c (NSTATICS): Increase to 1280.
74779f52 12393
048addec 123942002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
74779f52 12395
048addec 12396 * alloc.c (NSTATICS): Bump to 1026.
a474d59c 12397
048addec
JD
12398 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
12399 (Vx_super_keysym): New variables.
12400 (syms_of_xterm): DEFVAR_LISP them.
12401 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
12402 variables to determine which keys to use for the various modifiers.
a474d59c 12403
048addec 124042002-02-13 Kim F. Storm <storm@cua.dk>
fbb70ad9 12405
048addec
JD
12406 * window.c: (Vmode_line_in_non_selected_windows): Removed.
12407 (mode_line_in_non_selected_windows): New variable.
12408 (syms_of_window): DEFVAR_BOOL it.
fbb70ad9 12409
048addec
JD
12410 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
12411 Use mode_line_in_non_selected_windows.
12412 (mode_line_in_non_selected_windows): Declare extern.
12413 (Vmode_line_in_non_selected_windows): Removed extern.
2d10309f 12414
048addec 124152002-02-13 Richard M. Stallman <rms@gnu.org>
2d10309f 12416
048addec
JD
12417 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
12418 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
12419 (Fclear_this_command_keys): Doc fixes.
2d10309f 12420
048addec
JD
12421 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
12422 (update_face_from_frame_parameter): Increment face_change_count
12423 and windows_or_buffers_changed to force redisplay using changed faces.
7f2cddf3 12424
048addec
JD
12425 * xdisp.c (QCpropertize): New variable.
12426 (mode_line_proptrans_alist): New variable.
12427 (display_mode_element): New arg PROPS; all calls changed.
12428 Implement this, for strings.
12429 Handle literal output of strings by sharing the
12430 main-line code for strings, using local var `literal'.
12431 Handle :propertize feature.
12432 (syms_of_xdisp): Initialze and staticpro QCpropertize and
12433 mode_line_proptrans_alist.
0b1e6b54 12434
048addec 124352002-02-11 Kim F. Storm <storm@cua.dk>
7f2cddf3 12436
048addec
JD
12437 * window.c: (Vmode_line_in_non_selected_windows): New variable.
12438 (syms_of_window): DEFVAR_LISP it.
7f2cddf3 12439
048addec
JD
12440 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
12441 (CURRENT_MODE_LINE_FACE_ID): Use it.
12442 (Vmode_line_in_non_selected_windows): Declare extern.
e17144de 12443
048addec
JD
12444 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
12445 to get mode line face.
e17144de 12446
048addec 124472002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 12448
048addec
JD
12449 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
12450 variables; cus-start.el doesn't need them anymore.
44368f8f 12451
048addec 124522002-02-09 Kim F. Storm <storm@cua.dk>
f884b6f4 12453
048addec
JD
12454 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
12455 reduction. This fixes a display problem where stray newlines were
12456 inserted in the window (corrected by C-l). Clarified code (IMHO).
6637c996 12457
048addec 124582002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 12459
048addec 12460 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
6637c996 12461
048addec 12462 * xdisp.c (display_mode_lines): Fix last change.
453c5510 12463
048addec 124642002-02-09 Jason Rumney <jasonr@gnu.org>
453c5510 12465
048addec
JD
12466 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
12467 match each other.
12468 (w32_load_system_font): Prevent Cleartype fonts from loading.
12469 (Fx_show_tip): Ensure tip frames are above other topmost windows.
d1d070e3 12470
048addec 124712002-02-09 Kim F. Storm <storm@cua.dk>
d1d070e3 12472
048addec
JD
12473 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
12474 (CURRENT_MODE_LINE_HEIGHT): Use it.
12475 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 12476
048addec
JD
12477 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
12478 (pos_visible_p, handle_face_prop): Likewise.
12479 (display_mode_lines): Likewise, but for the real selected window.
12480 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 12481
048addec
JD
12482 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
12483 in non-selected windows.
12484 (realize_basic_faces): Realize it.
12485 (syms_of_term): Intern and staticpro it.
308dd672 12486
048addec 124872002-02-08 Kim F. Storm <storm@cua.dk>
edde72f6 12488
048addec
JD
12489 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
12490 Changed mail addresses to emacs-devel@gnu.org.
308dd672 12491
048addec 124922002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
3c1e6b46 12493
048addec
JD
12494 * fileio.c (Fsubstitute_in_file_name): If the file name includes
12495 ~user, and there's no such user, don't discard everything before ~user.
03950b5b 12496
048addec 12497 * floatfns.c (Fround): Doc fix.
3c1e6b46 12498
048addec 124992002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c1e11810 12500
048addec 12501 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
c1e11810 12502
048addec 125032002-02-07 Stefan Monnier <monnier@cs.yale.edu>
1996baee 12504
048addec 12505 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
1996baee 12506
048addec 125072002-02-07 Kim F. Storm <storm@cua.dk>
0065bb74 12508
048addec
JD
12509 * keymap.c (where_is_internal): Only check whether definition is
12510 remapped if it fulfills is_command_symbol.
0065bb74 12511
048addec 125122002-02-07 Andreas Schwab <schwab@suse.de>
0065bb74 12513
048addec 12514 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
b5cb6072 12515
048addec 12516 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
b5cb6072 12517
048addec 125182002-02-06 Kim F. Storm <storm@cua.dk>
15fff01d 12519
048addec
JD
12520 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
12521 defining command remapping. Doc updated.
12522 (Flookup_key): Remap command through keymap if KEY is a symbol.
12523 (is_command_symbol): New function.
12524 (Fkey_binding): Use it. New optional argument NO-REMAP.
12525 Doc updated. Callers changed. Perform command remapping via
12526 recursive call unless that arg is non-nil.
12527 (where_is_internal): New argument no_remap. Callers changed.
12528 Call recursively to find original key bindings for a remapped
12529 comand unless that arg is non-nil.
12530 (Fwhere_is_internal): New optional argument NO-REMAP.
12531 Doc updated. Callers changed. Pass arg to where_is_internal.
0065bb74 12532
048addec
JD
12533 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
12534 (is_command_symbol): Added prototype.
0d8466cc 12535
048addec
JD
12536 * keyboard.c (Vthis_original_command): New variable.
12537 (syms_of_keyboard): DEFVAR_LISP it.
12538 (command_loop_1): Set it, and perform command remapping.
15fff01d 12539
048addec 125402002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2fae9111 12541
048addec 12542 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
2d6c1fc0 12543
048addec 125442002-02-06 Jason Rumney <jasonr@gnu.org>
07025a55 12545
048addec 12546 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
07025a55 12547
048addec 125482002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
07025a55 12549
048addec 12550 * charset.c (get_charset_id): Use if-else instead of ?:.
3a232704 12551
048addec 125522002-02-06 Richard M. Stallman <rms@gnu.org>
539e92ad 12553
048addec 12554 * filelock.c (S_ISLNK): Define if not defined.
3a232704 12555
048addec 125562002-02-03 Richard M. Stallman <rms@gnu.org>
0cb8bb48 12557
048addec 12558 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
539e92ad 12559
048addec
JD
12560 * lread.c (read1): Redesign strategy for force_multibyte and
12561 force_singlebyte. Now is_multibyte records whether read_buffer
12562 is multibyte. Encountering any multibyte character makes it so.
4e02881b 12563
048addec 125642002-02-02 Stefan Monnier <monnier@cs.yale.edu>
4e02881b 12565
048addec
JD
12566 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
12567 with the same sequence, map that sequence to f10 rather than f0.
1ab964d7 12568
048addec 125692002-02-03 Andreas Schwab <schwab@suse.de>
1ab964d7 12570
048addec
JD
12571 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
12572 latter never being defined on GNU/Linux.
749f499f 12573
048addec 125742002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
749f499f 12575
048addec
JD
12576 * xfaces.c (realize_default_face): Don't set the weight and slant of
12577 the default face to Qnormal, unless these attributes are unspecified.
b5d9aaba 12578
048addec 125792002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3a232704 12580
048addec
JD
12581 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
12582 Call cancel_hourglass unconditionally.
d0fd26dd 12583
048addec
JD
12584 * eval.c (Fsignal): Remove duplicated declaration of
12585 the variable `display_hourglass_p'.
b4c45162 12586
048addec 125872002-01-31 Richard M. Stallman <rms@gnu.org>
d0fd26dd 12588
048addec 12589 * editfns.c (region_limit): Nicer error message.
c95eaa61 12590
048addec
JD
12591 * coding.c (decode_composition_emacs_mule):
12592 Give up if NCOMPONENT gets too large to index `component'.
c95eaa61 12593
048addec
JD
12594 * callint.c (check_mark): New arg to specify clearer error message.
12595 Callers changed.
c95eaa61 12596
048addec 125972002-01-27 Richard M. Stallman <rms@gnu.org>
c95eaa61 12598
048addec 12599 * minibuf.c (Fcompleting_read): Doc fix.
c95eaa61 12600
048addec 126012002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c95eaa61 12602
048addec
JD
12603 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
12604 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
12605 Fix doc-strings.
c95eaa61 12606
048addec 126072002-01-26 Richard M. Stallman <rms@gnu.org>
c95eaa61 12608
048addec 12609 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
c95eaa61 12610
048addec
JD
12611 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
12612 and scroll_up_aggressively.
c95eaa61 12613
048addec 126142002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
31877e0a 12615
048addec 12616 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
31877e0a 12617
048addec 126182002-01-25 Stefan Monnier <monnier@cs.yale.edu>
e2c3786a 12619
048addec
JD
12620 * textprop.c (Fnext_property_change, Fnext_single_property_change)
12621 (Fprevious_property_change, Fprevious_single_property_change):
12622 Stay within the narrowed-buffer boundaries.
e2c3786a 12623
048addec 126242002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
c513fc03 12625
048addec
JD
12626 * term.c (Ftty_display_color_cells): New function.
12627 (syms_of_term): Defsubr it.
12628 (Ftty_display_color_cells, Ftty_display_color_p): Change the
12629 argument name to DISPLAY. Doc fix.
bf794306 12630
048addec
JD
12631 * dispextern.h: Add prototype for set_tty_color_mode and
12632 tty_setup_colors.
bf794306 12633
048addec 126342002-01-24 Jason Rumney <jasonr@gnu.org>
bf794306 12635
048addec
JD
12636 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
12637 If region left to draw is not what was expected, mark the frame as
12638 garbaged.
62582985 12639
048addec
JD
12640 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
12641 Combine the regions returned by BeginPaint and GetUpdateRect.
c513fc03 12642
048addec 126432002-01-23 Jason Rumney <jasonr@gnu.org>
3509a04c 12644
048addec
JD
12645 * w32term.c (x_update_window_begin): Only hide caret if
12646 w32_use_visible_system_caret is set.
12647 (x_update_window_end): Only show caret if
12648 w32_use_visible_system_caret is set.
12649 (syms_of_w32term): Handle SystemParametersInfo call failing.
3509a04c 12650
048addec 12651 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
3509a04c 12652
048addec 126532002-01-22 Richard M. Stallman <rms@gnu.org>
3509a04c 12654
048addec
JD
12655 * unexelf.c (unexec): Define n so as to cause compilation error
12656 for the code where people have often written n instead of nn.
1e9a6186 12657
048addec 12658 * .gdbinit (hookpost-run): Defined.
1e9a6186 12659
048addec 126602002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e4e34e31 12661
048addec 12662 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
e4e34e31 12663
048addec 126642002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4521d1fc 12665
048addec
JD
12666 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
12667 if fullscreen is being set.
7c75be36 12668
048addec 126692002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4521d1fc 12670
048addec
JD
12671 * minibuf.c (Fminibuffer_contents)
12672 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
12673 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
4521d1fc 12674
048addec 126752002-01-21 Richard M. Stallman <rms@gnu.org>
4521d1fc 12676
048addec 12677 * window.c (check_frame_size): Fix minimum height calculation.
93dec019 12678
048addec 126792002-01-20 Ken Raeburn <raeburn@gnu.org>
93dec019 12680
048addec
JD
12681 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
12682 height before comparison.
12683 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
905cc05a 12684
048addec 126852002-01-20 Jason Rumney <jasonr@gnu.org>
2ed06289 12686
048addec
JD
12687 * w32term.c (w32_system_caret_width): Remove.
12688 (w32_use_visible_system_caret): New user flag.
12689 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
12690 Windows reports a screen reader running.
12691 (x_update_window_begin): Hide the system caret.
12692 (x_update_window_end): Show the system caret.
12693 (x_display_and_set_cursor): Don't draw a cursor when
12694 w32_use_visible_system_caret is set. Do not adjust width.
0e79d667 12695
048addec
JD
12696 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
12697 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
12698 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
12699 the user requests it. Use system default width when creating.
12700 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
0e79d667 12701
048addec
JD
12702 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
12703 New window messages.
905cc05a 12704
048addec 127052002-01-20 Richard M. Stallman <rms@gnu.org>
82a7ab23 12706
048addec 12707 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
d75bec6a 12708
048addec 127092002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
52dcb476 12710
048addec 12711 * doprnt.c (doprnt1): Fix typos in error call.
82a7ab23 12712
048addec 127132002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
82a7ab23 12714
048addec 12715 * unexelf.c (unexec) [__sgi]: Support the .got sections.
82a7ab23 12716
048addec 127172002-01-20 Jason Rumney <jasonr@gnu.org>
4d0fa4f3 12718
048addec
JD
12719 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
12720 that Windows returns. If a double check fails, try to guess how
12721 ExtTextOut is going to act.
4d0fa4f3 12722
048addec
JD
12723 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
12724 in place of stricmp.
12725 (w32_list_synthesized_fonts): Removed.
12726 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
12727 (struct enumfont_t): New element; list.
12728 (enum_font_cb2): List all style and charset variations of a font.
12729 (Fw32_select_font): New optional argument; include_proportional.
12730 Exclude vertical fonts. Exclude proportional fonts unless
12731 include_proportional is non-nil.
12732 (w32_enable_synthesized_fonts): Change to a boolean.
12733 (Fw32_send_sys_command): Doc fix.
493faf20 12734
048addec 127352002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
493faf20 12736
048addec
JD
12737 * dispnew.c (update_frame): Move the variable `tem' to the block
12738 where it is used.
4971e491 12739
048addec 127402002-01-19 Jason Rumney <jasonr@gnu.org>
4971e491 12741
048addec
JD
12742 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
12743 call to face-set-after-frame-default.
4971e491 12744
048addec 127452002-01-18 Richard M. Stallman <rms@gnu.org>
d911a0fa 12746
048addec
JD
12747 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
12748 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
d911a0fa 12749
048addec 127502002-01-17 Richard M. Stallman <rms@gnu.org>
d911a0fa 12751
048addec
JD
12752 * window.c (enlarge_window): When exceeding size of parent,
12753 directly delete all the siblings instead of trying to resize it.
201c831a 12754
048addec 127552002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
201c831a 12756
048addec 12757 * term.c (set_tty_color_mode): Remove unused variable `tem'.
201c831a 12758
048addec 127592002-01-16 Henrik Enberg <henrik@enberg.org>
34e39c95 12760
048addec 12761 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
34e39c95 12762
048addec 127632002-01-16 Kim F. Storm <storm@cua.dk>
d77fbc16 12764
048addec
JD
12765 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
12766 is invisible. This can happen if cursor is on top line of a
12767 window, and we switch to a buffer with a header line.
d77fbc16 12768
048addec 12769 * w32term.c (x_erase_phys_cursor): Ditto.
61e3b944 12770
048addec 127712002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
61e3b944 12772
048addec
JD
12773 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
12774 `dont_resize' only when used.
61e3b944 12775
048addec 12776 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
70da46c3 12777
048addec 127782002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
70da46c3 12779
048addec
JD
12780 * xdisp.c (display_mode_element): When computing charpos, depend
12781 on multibyteness of elt, not the text in field.
8af01033 12782
048addec 127832002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8af01033 12784
048addec
JD
12785 * buffer.c (Fkill_all_local_variables):
12786 Increment `update_mode_lines' only once.
7363986a 12787
048addec 127882002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7363986a 12789
048addec
JD
12790 * lisp.h (adjust_after_replace_noundo)
12791 (Fupdate_coding_systems_internal): Add prototypes.
d9e6c4b1 12792
048addec 12793 * sound.c (Fplay_sound): Initialize header_size also for :data case.
d20fc48a 12794
048addec 127952002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
d9e6c4b1 12796
048addec
JD
12797 Support for the --color command-line argument and tty-color-mode
12798 frame parameter:
f1a85b89 12799
048addec
JD
12800 * term.c (tty_default_color_capabilities, tty_setup_colors)
12801 (set_tty_color_mode): New functions.
12802 (term_init): Call tty_default_color_capabilities.
12803 (Qtty_color_mode_alist): New variable.
12804 (syms_of_term): Intern and staticpro it.
f1a85b89 12805
048addec
JD
12806 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
12807 frames.
12808 (do_switch_frame): For termcap frames, switch the tty
12809 color mode as specified by the frame's parameters.
12810 (Qtty_color_mode): New variable.
12811 (syms_of_frame): Intern and staticpro it.
3a62677f 12812
048addec
JD
12813 * emacs.c (USAGE2): Add the --color option.
12814 (standard_args): Ditto.
72244db2 12815
048addec
JD
128162002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12817
12818 * xterm.h (struct x_output): New members want_fullscreen,
12819 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
12820 y_pixels_outer_diff.
12821 New enum for FULLSCREEN_* constants.
12822 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
12823 is NULL.
12824 (x_fullscreen_adjust): Add prototype.
3a62677f 12825
048addec
JD
12826 * emacs.c (USAGE2): Add the new full-screen arguments.
12827 (standard_args): Ditto.
3a62677f 12828
048addec
JD
12829 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
12830 New variables.
12831 (syms_of_xfns): Intern and staticpro them.
12832 (x_frame_parms) <"fullscreen">: New parameter.
12833 (x_fullscreen_move, x_set_fullscreen): New functions.
12834 (x_set_frame_parameters): Support for Qfullscreen.
12835 (x_real_positions): More accurate computation of the frame position.
12836 (x_figure_window_size): Support full-screen frames.
12837 (Fx_create_frame): Default the fullscreen parameter.
3a62677f 12838
048addec
JD
12839 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
12840 (XTread_socket) <Expose>: Call x_check_fullscreen.
12841 <ConfigureNotify>: Don't resize to fullscreen.
12842 Call x_check_fullscreen_move, and set the want_fullscreen member of
12843 output_data.x.
3a62677f 12844
048addec 128452002-01-13 Jason Rumney <jasonr@gnu.org>
9d113d9d 12846
048addec
JD
12847 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
12848 for mice with more than 3 buttons.
b8523839 12849
048addec
JD
12850 * w32term.c (parse_button): New parameter xbutton. Callers changed.
12851 (w32_read_socket): Handle new "XBUTTON" messages.
9464dea4 12852
048addec
JD
12853 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
12854 (syms_of_w32fns): DEFVAR_BOOL it.
12855 (w32_wnd_proc): Handle new "XBUTTON" messages.
9d113d9d 12856
048addec 128572002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
70ec1377 12858
048addec 12859 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
70ec1377 12860
048addec 128612002-01-13 Andreas Schwab <schwab@suse.de>
92f7dd37 12862
048addec 12863 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
92f7dd37 12864
048addec 128652002-01-12 Andreas Schwab <schwab@suse.de>
c93674bb 12866
048addec
JD
12867 * .gdbinit (xbuffer): Remove address operator since data is now a
12868 pointer.
c93674bb 12869
048addec 128702002-01-11 Richard M. Stallman <rms@gnu.org>
59b59892 12871
048addec 12872 * insdel.c (adjust_after_replace_noundo): New function.
59b59892 12873
048addec 12874 * coding.c (code_convert_region): Don't copy old text if undo disabled.
c6ea2775 12875
048addec 128762002-01-09 Jason Rumney <jasonr@gnu.org>
c6ea2775 12877
048addec
JD
12878 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
12879 when checking for multiple frames.
91175673 12880
048addec 128812002-01-08 Richard M. Stallman <rms@gnu.org>
91175673 12882
048addec
JD
12883 * window.c (delete_window): Rewrite the code for changing the
12884 selected window to handle the case where WINDOW is not a leaf.
91175673 12885
048addec 128862002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
e0fead5d 12887
048addec
JD
12888 * process.c (send_process): Set src_multibyte to 1 after the call
12889 top setup_coding_system, not before the call.
e0fead5d 12890
048addec 128912002-01-07 Jason Rumney <jasonr@gnu.org>
e0fead5d 12892
048addec
JD
12893 * xmenu.c (set_frame_menubar, xmenu_show):
12894 (xdialog_show): Initialize wv->help to Qnil.
c186cdb3 12895
048addec
JD
12896 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
12897 (w32_dialog_show): Initialize wv->help to Qnil.
c186cdb3 12898
048addec 128992002-01-06 Jason Rumney <jasonr@gnu.org>
c186cdb3 12900
048addec 12901 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
c186cdb3 12902
048addec 12903 * w32menu.c (w32_menu_display_help): Revert last change.
58cfce98 12904
048addec 12905 * xmenu.c (menu_highlight_callback): Revert last change.
58cfce98 12906
048addec 129072002-01-06 Andreas Schwab <schwab@suse.de>
62854fe2 12908
048addec
JD
12909 * insdel.c (make_gap_larger): Make sure buffer size does not
12910 overflow range of int.
62854fe2 12911
048addec 129122002-01-05 Jason Rumney <jasonr@gnu.org>
656f46bb 12913
048addec
JD
12914 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
12915 OVERLAPS_P.
656f46bb 12916
048addec 12917 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
656f46bb 12918
048addec
JD
12919 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
12920 to the left or to the right of the pointer, put it against
12921 the left screen edge.
12922 (x_frame_parms): Add missing braces around initializer.
036e218d 12923
048addec
JD
12924 * w32term.c (x_setup_relief_colors): Don't compute an image's
12925 background color if it doesn't have a Pixmap.
12926 (notice_overwritten_cursor): Don't depend on
12927 output_cursor and updated_area. Compare pixel coordinates with
12928 window's cursor pixel coordinates.
12929 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
12930 Call notice_overwritten_cursor with new arg list.
12931 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
12932 unconditionally.
12933 (x_draw_image_relief): Use predefined macro instead of
12934 constant when the value of `tool_bar_button_relief' is negative.
036e218d 12935
048addec 12936 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
7ddb2c16 12937
048addec 129382002-01-04 Richard M. Stallman <rms@gnu.org>
7ddb2c16 12939
048addec 12940 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
ace9b298 12941
048addec 129422002-01-03 Richard M. Stallman <rms@gnu.org>
90647b07 12943
048addec
JD
12944 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
12945 (Fkey_binding): Try the `keymap' property map first.
12946 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
12947 minor mode bindings.
90647b07 12948
048addec 129492002-01-03 Kim F. Storm <storm@cua.dk>
ace9b298 12950
048addec 12951 * keyboard.c (read_key_sequence): Fixed cast of submaps arg to bcopy.
ace9b298 12952
048addec 129532002-01-02 Richard M. Stallman <rms@gnu.org>
ace9b298 12954
048addec
JD
12955 * keyboard.c (read_key_sequence): Handle the keymap property
12956 before minor mode maps.
9fbc32aa 12957
048addec
JD
12958 * editfns.c (Fformat): Update thissize from field_width
12959 based on the actual width, in the string case.
036e218d 12960
048addec 129612002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fbc32aa 12962
048addec
JD
12963 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
12964 when used as truth value to prevent gcc warnings.
9fbc32aa 12965
048addec
JD
12966 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
12967 * w32proc.c: Include <config.h>.
9fbc32aa 12968
048addec 129692002-01-01 Andreas Schwab <schwab@suse.de>
9fbc32aa 12970
048addec
JD
12971 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
12972 not EMACS_INT, to make them compatible with DEFVAR_INT.
12973 * lisp.h (max_specpdl_size): Adjust declaration.
9fbc32aa 12974
048addec 129752002-01-01 Richard M. Stallman <rms@gnu.org>
9fbc32aa 12976
048addec
JD
12977 * print.c (print_object): Test print_escape_nonascii only for
12978 unibyte strings.
12979 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
12980 when outputting to a multibyte buffer.
9fbc32aa 12981
048addec 129822001-12-29 Richard M. Stallman <rms@gnu.org>
9fbc32aa 12983
048addec
JD
12984 * print.c (print_object): In multibyte string, use hex escapes.
12985 Use octal only for unibyte strings.
12986 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
0142178a 12987
048addec
JD
12988 * lread.c (read_escape): New arg BYTEREP for reporting whether
12989 escape forces unibyte or multibyte.
12990 (read1): When reading a string, take note of that info.
0142178a 12991
048addec 129922001-12-29 Ken Raeburn <raeburn@gnu.org>
d4824a5d 12993
048addec
JD
12994 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
12995 comparison to test lisp value returned by Fget.
d4824a5d 12996
048addec 129972001-12-29 Richard M. Stallman <rms@gnu.org>
b1356234 12998
048addec 12999 * lisp.h (max_specpdl_size): Add declaration.
b1356234 13000
048addec 13001 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
3ce081f5 13002
048addec
JD
13003 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
13004 Handle modifier bits. Correct typo in error message.
99e380ee 13005
048addec 130062001-12-28 Richard M. Stallman <rms@gnu.org>
3ce081f5 13007
048addec
JD
13008 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
13009 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
13010 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
13011 Update calls to Fdefine_abbrev.
13012 (write_abbrev): Update for changed data format.
13013 Don't list "system" abbrevs.
13014 (Fexpand_abbrev): Update use count with new data format.
13015 (describe_abbrev): Update for changed data format.
13016 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
66458f32 13017
048addec 13018 * config.in (HAVE_MBSINIT): Add #undef.
66458f32 13019
048addec 13020 * strftime.c (mbsinit): Define as no-op if not available.
66458f32 13021
048addec
JD
13022 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
13023 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
59a86c99 13024
048addec
JD
13025 * keymap.c (Flookup_key): Error message if key has wrong data type.
13026 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
13027 (exclude_key): New variable.
59a86c99 13028
048addec 130292001-12-28 Gerd Moellmann <gerd@gnu.org>
eb77a5f4 13030
048addec
JD
13031 * xterm.c (x_setup_relief_colors): Don't compute an image's
13032 background color if it doesn't have a Pixmap.
eb77a5f4 13033
048addec
JD
13034 * xterm.c (notice_overwritten_cursor): Don't depend on
13035 output_cursor and updated_area. Compare pixel coordinates with
13036 window's cursor pixel coordinates.
13037 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
13038 Call notice_overwritten_cursor with new arg list.
13039 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
13040 unconditionally.
eb77a5f4 13041
048addec
JD
13042 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
13043 height of the cursor line to the amount to scroll.
eb77a5f4 13044
048addec 130452001-12-27 Richard M. Stallman <rms@gnu.org>
bb313871 13046
048addec
JD
13047 * intervals.c (set_point_both): The position after an invisible,
13048 intangible character is not an acceptable stopping point.
bb313871 13049
048addec 130502001-12-27 Ken Raeburn <raeburn@gnu.org>
55b43a63 13051
048addec
JD
13052 * window.c (enlarge_window): In new preserve_before code, convert
13053 CURBEG from lisp object to integer before doing arithmetic.
6052529b 13054
048addec 130552001-12-27 Richard M. Stallman <rms@gnu.org>
3ce081f5 13056
048addec 13057 * bytecode.c (Fbyte_code): Undo previous change.
3ce081f5 13058
048addec 130592001-12-26 Kim F. Storm <storm@cua.dk>
3ce081f5 13060
048addec
JD
13061 * keyboard.c (record_char): Ignore duplicate help-echo events only
13062 separated by mouse-movement. When tracking mouse, only record
13063 first and last mouse-movement event in same window.
13064 Don't record mouse-movement events in keyboard macros.
3ce081f5 13065
048addec 130662001-12-25 Richard M. Stallman <rms@gnu.org>
55b43a63 13067
048addec
JD
13068 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
13069 (Fenlarge_window): New arg PRESERVE_BEFORE.
111ed14e 13070
048addec
JD
13071 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
13072 instead of Fstring_as_unibyte.
9fabb2f5 13073
048addec 130742001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fabb2f5 13075
048addec 13076 The following changes remove mocklisp support:
9fabb2f5 13077
048addec 13078 * mocklisp.h, mocklisp.c: Files removed.
111ed14e 13079
048addec
JD
13080 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
13081 `Qmocklisp' and `Qmocklisp_arguments'.
13082 Remove prototype of syms_of_mocklisp.
2fa0eedf 13083
048addec 13084 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
d1420435 13085
048addec
JD
13086 * callint.c: Do not include mocklisp.h.
13087 (Fcall_interactively): Do not test for mocklisp case.
2fa0eedf 13088
048addec
JD
13089 * eval.c: Remove variables `Qmocklisp_arguments',
13090 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
13091 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
13092 Do not test for mocklisp case.
13093 (Fwhile): Remove unused variable `tem'.
13094 (syms_of_eval): Remove variable `moclisp-arguments'.
ebcbef4e 13095
048addec 13096 * data.c (wrong_type_argument): Remove mocklisp case.
5c131048 13097
048addec 13098 * doc.c (Fdocumentation): Remove mocklisp case.
5c131048 13099
048addec 13100 * emacs.c (main): Do not call syms_of_mocklisp.
5c131048 13101
048addec 131022001-12-21 Richard M. Stallman <rms@gnu.org>
96d276c3 13103
048addec
JD
13104 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
13105 to the left or to the right of the pointer, put it against
13106 the left screen edge.
6108b49c 13107
048addec 131082001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
96d276c3 13109
048addec
JD
13110 * Makefile.in (distclean): Remove .gdbinit if we are building
13111 outside the source tree.
5eea19a4 13112
048addec 131132001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
5eea19a4 13114
048addec 13115 * w32.c (emacs_root_dir): New function.
5eea19a4 13116
048addec 13117 * msdos.c (emacs_root_dir): New function.
5eea19a4 13118
048addec
JD
13119 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
13120 of the current drive as the fallback for default_directory.
438e57dd 13121
048addec
JD
13122 * dired.c (file_name_completion): Run the elements of
13123 completion-ignored-extensions through ENCODE_FILE.
438e57dd 13124
048addec
JD
13125 * lisp.h (scmp): Remove prototype, since it's now a static
13126 function private to dired.c.
c88e5347 13127
048addec 131282001-12-18 Richard M. Stallman <rms@gnu.org>
c88e5347 13129
048addec
JD
13130 * dired.c (scmp): Function moved from minibuf.c.
13131 Delete multibyte handling--used only on encoded strings.
59ce1461 13132
048addec 13133 * minibuf.c (scmp): Function moved to dired.c.
59ce1461 13134
048addec 13135 * fns.c (merge): Add QUIT call.
59ce1461 13136
048addec 131372001-12-18 Dave Love <fx@gnu.org>
8727d588 13138
048addec
JD
13139 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
13140 language/georgian.el.
8727d588 13141
048addec 131422001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
cc63037e 13143
048addec
JD
13144 * Makefile.in (lisp, shortlisp): Synchronize with changes to
13145 lisp/Makefile.in:DONTCOMPILE.
cc63037e 13146
048addec 131472001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
cc63037e 13148
048addec
JD
13149 * xdisp.c (window_box_height): Do not return negative values.
13150 From Gerd Moellmann <gerd@gnu.org>.
cc63037e 13151
048addec 13152 * keyboard.c (head_table): Add missing braces around initializer.
cc63037e 13153
048addec 13154 * term.c (keys): Likewise.
deece6f5 13155
048addec 13156 * xfns.c (x_frame_parms, visual_classes): Likewise.
deece6f5 13157
048addec 131582001-12-17 Sam Steingold <sds@gnu.org>
1b944d9c 13159
048addec
JD
13160 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
13161 patch (COMPOSING_P, not COMPOSING).
28ff4293 13162
048addec 131632001-12-17 Richard M. Stallman <rms@gnu.org>
a395ef6a 13164
048addec 13165 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
a395ef6a 13166
048addec
JD
13167 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
13168 before calling decode_coding.
9b46de40 13169
048addec 13170 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
9b46de40 13171
048addec
JD
13172 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
13173 instead of only for COMPOSITION_DISABLED.
9b46de40 13174
048addec 131752001-12-16 Richard M. Stallman <rms@gnu.org>
aff37336 13176
048addec 13177 * alloc.c (pure_alloc): After overflow, allocate just a small block.
aff37336 13178
048addec 13179 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
b9937f07 13180
048addec
JD
13181 * buffer.h (struct buffer): New field `display_error_modiff'.
13182 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
b9937f07 13183
048addec 13184 * window.c (Frecenter): Clear display_error_modiff field.
2cd23960 13185
048addec
JD
13186 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
13187 Call redisplay_window, but not if display_error_modiff field says no.
13188 (redisplay_window_error): New function.
13189 (displayed_buffer): New variable.
13190 (redisplay_internal, redisplay_windows): Call the new functions
13191 instead of redisplay_window directly.
2cd23960 13192
048addec 131932001-12-15 Richard M. Stallman <rms@gnu.org>
2cd23960 13194
048addec 13195 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
2cd23960 13196
048addec 131972001-12-14 Andrew Innes <andrewi@gnu.org>
a4184c1c 13198
048addec 13199 * makefile.w32-in (EMACSLOADPATH): Define.
f9711de4 13200 ($(EMACS)): Run `list-load-path-shadows' after dumping Emacs.
048addec 13201 (bootstrap-temacs): Remove dependency on bootstrap-clean.
a4184c1c 13202
048addec 132032001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
f6fa0866 13204
048addec
JD
13205 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
13206 parameter have a numeric value all the time.
f6fa0866 13207
048addec 13208 * w32fns.c (x_report_frame_params): Likewise.
f4ca4b00 13209
048addec 132102001-12-12 Richard M. Stallman <rms@gnu.org>
f4ca4b00 13211
048addec 13212 * fileio.c (Fwrite_region): Doc fix.
f4e25f94 13213
048addec
JD
13214 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
13215 (redisplay_internal): Call clear_image_cache only for window terminals.
f4e25f94 13216
048addec 132172001-12-12 Gerd Moellmann <gerd@gnu.org>
91c153e2 13218
048addec
JD
13219 * xdisp.c (move_it_vertically_backward): Change heuristic
13220 for the case that we didn't move far enough initially.
91c153e2 13221
048addec
JD
13222 * window.c (Frecenter): Simplify computation in the case of window
13223 system frames and ARG < 0; use window_box_height.
65b7d3e7 13224
048addec 132252001-12-11 Richard M. Stallman <rms@gnu.org>
65b7d3e7 13226
048addec
JD
13227 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
13228 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
6b5f6311 13229
048addec 132302001-12-11 Andrew Innes <andrewi@gnu.org>
6b5f6311 13231
048addec
JD
13232 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
13233 arg is negative.
be676094 13234
048addec 132352001-12-11 Richard M. Stallman <rms@gnu.org>
be676094 13236
048addec
JD
13237 * m/hp800.h: Split the __hpux conditional into the parts
13238 that are right for GNU/Linux too and the parts that are not.
13239 Use the former if GNU_LINUX.
13240 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
032a857d 13241
048addec 13242 * s/gnu-linux.h (GNU_LINUX): Defined.
032a857d 13243
048addec 132442001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
032a857d 13245
048addec
JD
13246 * macros.c, msdos.c, w16select.c: Change doc-string comments to
13247 `new style' [w/`doc:' keyword].
032a857d 13248
048addec 132492001-12-10 Jason Rumney <jasonr@gnu.org>
b6270150 13250
048addec
JD
13251 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
13252 before using.
b6270150 13253
048addec 132542001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
792e5cbd 13255
048addec
JD
13256 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
13257 keyword].
98cbb9fa 13258
048addec 132592001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
98cbb9fa 13260
048addec 13261 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
98cbb9fa 13262
048addec 13263 * s/hpux10.h (srand48): Don't undefine.
98cbb9fa 13264
048addec 132652001-12-09 Jason Rumney <jasonr@gnu.org>
792e5cbd 13266
048addec
JD
13267 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
13268 Add comment to explain where the struct came from.
13269 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
13270 (add_menu_item): Process pop-up menus first to avoid memory leak.
13271 (add_menu_item, w32_menu_display_help): Use `help' field as
13272 Lisp_Object.
13273 (w32_free_submenu_strings): Only free owner-drawn strings.
fa336b91 13274
048addec 132752001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
fa336b91 13276
048addec 13277 * COPYING: Moved back.
fa336b91 13278
048addec
JD
13279 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
13280 Add parentheses around && within ||.
077907d4 13281
048addec 13282 * indent.c (compute_motion): Likewise.
aa2af83a 13283
048addec 13284 * intervals.c (merge_properties_sticky): Likewise.
60a653f1 13285
048addec
JD
13286 * coding.c (setup_coding_system, shrink_encoding_region)
13287 (Fdecode_sjis_char): Likewise.
60a653f1 13288
048addec 132892001-12-07 Andreas Schwab <schwab@suse.de>
60a653f1 13290
048addec
JD
13291 * xdisp.c (display_mode_element): Don't read past end of string if
13292 it ends with '%'.
60a653f1 13293
048addec
JD
13294 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
13295 can hold.
60a653f1 13296
048addec
JD
13297 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
13298 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
13299 type changed to Lisp_Object.
13300 (syms_of_data): DEFVAR_LISP them.
60a653f1 13301
048addec 133022001-12-07 Richard M. Stallman <rms@gnu.org>
60a653f1 13303
048addec
JD
13304 * callproc.c (init_callproc): Set Vdata_directory based on the source
13305 location whenever Emacs was run uninstalled.
60a653f1 13306
048addec 133072001-12-06 Paul Eggert <eggert@twinsun.com>
60a653f1 13308
048addec
JD
13309 * config.in (HAVE_WORKING_VFORK): New #undefs.
13310 * process.c (create_process):
13311 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
13312 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
13313 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
13314 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
13315 * m/intel386.h (HAVE_VFORK): Likewise.
13316 * m/mips-siemens.h (HAVE_VFORK): Likewise.
13317 * m/mips.h (HAVE_VFORK): Likewise.
13318 * s/freebsd.h (vfork): Remove #define.
13319 * s/lynxos.h (HAVE_VFORK): Remove #undef.
13320 * s/usg5-4-2.h: Fix comment about vfork.
60a653f1 13321
048addec 133222001-12-06 Richard M. Stallman <rms@gnu.org>
60a653f1 13323
048addec
JD
13324 * s/hpux10.h (random): Add undef.
13325 (HAVE_RANDOM): Define it just once.
60a653f1 13326
048addec 133272001-12-06 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13328
048addec 13329 * eval.c: Undo last change: the standard syntax is not wanted.
60a653f1 13330
048addec 133312001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 13332
048addec
JD
13333 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
13334 scroll bars of the frame before deleting the frame itself. If the
13335 frame has a widget, delete the frame with XtDestroyWidget, and do
13336 not call XDestroyWindow before that.
60a653f1 13337
048addec 133382001-12-06 Kim F. Storm <storm@cua.dk>
60a653f1 13339
048addec 13340 * xfns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 13341
048addec 13342 * w32fns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 13343
048addec 133442001-12-05 Andrew Innes <andrewi@gnu.org>
60a653f1 13345
048addec
JD
13346 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
13347 excessively large.
60a653f1 13348
048addec
JD
13349 * insdel.c (make_gap_larger): New function.
13350 (make_gap_smaller): New function.
13351 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
13352 Call make_gap_smaller if arg is negative.
60a653f1 13353
048addec 133542001-12-04 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13355
048addec
JD
13356 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
13357 Pass a dummy argument when calling interrupt_signal.
13358 (parse_menu_item): Mark disabled items before checking for empty def.
13359 (read_char_minibuf_menu_prompt): Make safety more visible.
13360 (read_key_sequence): Add a `first_unbound' variable.
13361 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
13362 unbound prefix as soon as we can detect it.
60a653f1 13363
048addec
JD
13364 * doc.c (Fsnarf_documentation): Add prototype.
13365 (get_doc_string): Handle negative arguments.
13366 (Fdocumentation): Use AREF and ASIZE.
13367 Move the calls to get_doc_string to a single place.
13368 Don't confuse an interactive-spec for a docstring reference.
13369 (Fdocumentation_property): Take advantage of the fact that
13370 get_doc_string now ignores the sign of the docstring position.
60a653f1 13371
048addec 13372 * eval.c: Use standard syntax for usage in docstrings.
60a653f1 13373
048addec 133742001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 13375
a64387ee 13376 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
60a653f1 13377
048addec 133782001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 13379
048addec
JD
13380 * xterm.c (x_draw_image_relief): Use predefined macro instead of
13381 constant when the value of `tool_bar_button_relief' is negative.
60a653f1 13382
048addec 133832001-12-02 Richard M. Stallman <rms@gnu.org>
60a653f1 13384
048addec
JD
13385 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
13386 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
60a653f1 13387
048addec 13388 * fileio.c (read_non_regular): Delete Fsignal call.
60a653f1 13389
048addec 133902001-12-01 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13391
048addec 13392 * lisp.h (run_hook_list_with_args): Undo last change.
60a653f1 13393
048addec 133942001-12-01 Gerd Moellmann <gerd@gnu.org>
60a653f1 13395
048addec 13396 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
60a653f1 13397
048addec 133982001-12-01 Jason Rumney <jasonr@gnu.org>
60a653f1 13399
f63fd14e 13400 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
60a653f1 13401
048addec
JD
13402 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
13403 [!WM_MOUSELEAVE]: Define.
60a653f1 13404
048addec
JD
13405 * w32menu.c (current_popup_menu, get_menu_item_info):
13406 (set_menu_item_info): New vars.
13407 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
13408 (w32_menu_show): Set current_popup_menu.
13409 (add_menu_item): Allocate new strings for owner-drawn menu items
13410 and help strings.
13411 Use owner-draw for disabled menu items again.
13412 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
13413 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
60a653f1 13414
048addec
JD
13415 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
13416 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
13417 <WM_EXITMENULOOP>: Free menu strings.
13418 <WM_MOUSELEAVE>: Stop tracking mouse.
13419 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
60a653f1 13420
048addec
JD
13421 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
13422 and mouse face.
60a653f1 13423
048addec 134242001-12-01 Kim F. Storm <storm@cua.dk>
60a653f1 13425
048addec
JD
13426 The following changes add left-fringe and right-fringe
13427 frame parameters to adjust fringe widths, or remove one or
13428 both fringes.
60a653f1 13429
048addec
JD
13430 * frame.h (struct frame): Remove trunc_area_pixel_width and
13431 trunc_area_cols fields.
13432 (Qleft_fringe, Qright_fringe): Declare.
13433 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
60a653f1 13434
048addec
JD
13435 * frame.c (Qleft_fringe, Qright_fringe): New vars.
13436 (syms_of_frame): Initialize them.
60a653f1 13437
048addec
JD
13438 * window.c (coordinates_in_window): Handle separate left and right
13439 fringe widths.
60a653f1 13440
048addec
JD
13441 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
13442 and fringe_cols fields.
13443 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
13444 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
13445 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
13446 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
13447 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
13448 (x_compute_fringe_widths): Add prototype.
60a653f1 13449
048addec
JD
13450 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
13451 fill fringe evenly with small dashes.
f63fd14e 13452 (x_draw_fringe_bitmap): Clear background if necessary. Align and
048addec
JD
13453 clip the new ZV bitmap to avoid jitter between rows.
13454 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
13455 background. Don't draw fringe bitmaps if fringe width is zero.
13456 (x_compute_fringe_widths): New function.
13457 (x_new_font, x_set_window_size_1): Use it.
60a653f1 13458
048addec
JD
13459 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
13460 (x_set_frame_parameters): Process `font' parameter before other
13461 parameters as fringe widths depend on it.
13462 (x_set_fringe_width): New function.
13463 (x_figure_window_size): Use x_compute_fringe_widths.
13464 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
13465 parameters.
60a653f1 13466
048addec
JD
13467 * widget.c (set_frame_size): Use x_compute_fringe_widths.
13468 (EmacsFrameSetCharSize): Ditto.
60a653f1 13469
048addec
JD
13470 * w32term.h: Merged changes from xterm.h.
13471 * w32term.c: Merged changes from xterm.c.
13472 * w32fns.c: Merged changes from xfns.c.
60a653f1 13473
048addec 134742001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 13475
048addec 13476 * COPYING: Removed.
60a653f1 13477
048addec 134782001-11-29 Dave Love <fx@gnu.org>
60a653f1 13479
048addec
JD
13480 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
13481 extra extra slot.
13482 (detect_coding_mask): Fix call of detect_coding_iso2022.
60a653f1 13483
048addec 134842001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 13485
048addec
JD
13486 * fileio.c (file-name-coding-system)
13487 (default-file-name-coding-system): Doc fix (links to referenced
13488 variables added).
60a653f1 13489
048addec 134902001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13491
048addec
JD
13492 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
13493 Add dummy uses of gcproN variables.
60a653f1 13494
048addec
JD
13495 * category.c (describe_category, describe_category_1)
13496 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
13497 (syms_of_category): Don't defsubr Sdescribe_categories.
60a653f1 13498
048addec 134992001-11-28 Richard M. Stallman <rms@gnu.org>
60a653f1 13500
048addec 13501 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
60a653f1 13502
048addec
JD
13503 * Makefile.in (lispdir): New variable, referring to build dir.
13504 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
60a653f1 13505
048addec 135062001-11-28 Andrew Innes <andrewi@gnu.org>
60a653f1 13507
048addec
JD
13508 * w32menu.c (w32_menu_display_help): Actually add the new argument
13509 OWNER.
60a653f1 13510
048addec 135112001-11-28 Jason Rumney <jasonr@gnu.org>
60a653f1 13512
048addec
JD
13513 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
13514 menu items. From David Ponce <dponce@wanadoo.fr>.
13515 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
13516 conditionally.
f63fd14e 13517 (w32_menu_display_help): New argument OWNER. Rewritten to store a
048addec 13518 help event in the owner frame's keyboard buffer.
60a653f1 13519
048addec
JD
13520 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
13521 (Fx_show_tip): Don't subtract last width from row width.
13522
13523 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
13524 (w32_read_socket): Use EQ to compare frames.
60a653f1 13525
048addec 135262001-11-28 Gerd Moellmann <gerd@gnu.org>
60a653f1 13527
048addec
JD
13528 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
13529 OVERLAPS_P.
60a653f1 13530
048addec 135312001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 13532
048addec
JD
13533 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
13534 `gcpro3' and `gcpro4'.
60a653f1 13535
048addec 13536 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
60a653f1 13537
048addec 135382001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13539
048addec 13540 * ccl.c: Use AREF and ASIZE.
60a653f1 13541
048addec 135422001-11-27 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13543
048addec
JD
13544 * lisp.h (run_hook_list_with_args): Remove.
13545 (LIST_END_P): Fix call to wrong_type_argument.
13546 (make_fixnum_or_float): Use EMACS_INT rather than int.
60a653f1 13547
048addec 135482001-11-26 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13549
048addec
JD
13550 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
13551 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
60a653f1 13552
048addec
JD
13553 * eval.c: Use AREF and ASIZE.
13554 (Ffetch_bytecode): Add the file name to the error message.
60a653f1 13555
048addec
JD
13556 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
13557 which match the end of the file-name.
13558 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
13559 is not a valid env var, but leave it as is instead.
60a653f1 13560
048addec
JD
13561 * keymap.c (access_keymap): Handle t bindings like nil bindings.
13562 Make nil bindings in char-tables transparent.
13563 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
60a653f1 13564
048addec 135652001-11-26 Richard M. Stallman <rms@gnu.org>
60a653f1 13566
048addec
JD
13567 * textprop.c (set_text_properties_1): Allow START, END in either order.
13568 Do nothing if range is empty.
60a653f1 13569
048addec 13570 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
60a653f1 13571
048addec
JD
13572 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
13573 (clean): Not here.
60a653f1 13574
048addec 135752001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13576
048addec
JD
13577 * textprop.c (set_text_properties_1): Clearly mark that the
13578 interval should not be empty.
60a653f1 13579
048addec
JD
13580 * intervals.c (graft_intervals_into_buffer):
13581 Don't call set_text_properties_1 on an empty interval.
60a653f1 13582
048addec 135832001-11-25 Richard M. Stallman <rms@gnu.org>
60a653f1 13584
048addec 13585 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
60a653f1 13586
048addec
JD
13587 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
13588 don't lose the data in it.
60a653f1 13589
048addec 135902001-11-25 Juanma Barranquero <lektu@terra.es>
60a653f1 13591
048addec 13592 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
60a653f1 13593
c62aec78 13594 * buffer.c (Fkill_buffer): Likewise.
60a653f1 13595
c62aec78 13596 * print.c (temp_output_buffer_setup): Likewise.
60a653f1 13597
048addec 135982001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13599
048addec 13600 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
60a653f1 13601
048addec 136022001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 13603
048addec
JD
13604 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
13605 Niemitalo <kon@iki.fi>.
60a653f1 13606
048addec 136072001-11-25 Jason Rumney <jasonr@gnu.org>
60a653f1 13608
048addec 13609 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
60a653f1 13610
048addec
JD
13611 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
13612 (Fx_show_tip): Block input during frame creation.
13613 (Fx_show_tip, Fx_hide_tip): Enable.
60a653f1 13614
048addec 136152001-11-24 Richard M. Stallman <rms@gnu.org>
60a653f1 13616
048addec
JD
13617 * lread.c (Fload): Detect recursive load error for more than 3
13618 nestings of the same file.
13619 (Vrecursive_load_depth_limit): Variable deleted.
13620 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
60a653f1 13621
048addec 136222001-11-24 Jason Rumney <jasonr@gnu.org>
60a653f1 13623
048addec
JD
13624 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
13625 mouse position if either left or top is not specified.
60a653f1 13626
048addec
JD
13627 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
13628 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
13629 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
13630 (my_create_tip_window): Assign tip_window.
13631 (x_create_tip_frame): Use same defaults as X.
13632 (compute_tip_xy): Remove unused variable. Use full screen width.
f63fd14e 13633 (Fx_show_tip): Do not double height. Call ShowWindow directly.
60a653f1 13634
048addec
JD
13635 * w32term.c (x_after_update_window_line): Doc fix.
13636 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
13637 frames.
13638 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
60a653f1 13639
048addec
JD
13640 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
13641 for all Windowed systems.
60a653f1 13642
048addec 136432001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 13644
048addec
JD
13645 * msdos.c (IT_clear_screen): If the frame's faces are not yet
13646 realized, use the initial screen colors to clear the screen.
60a653f1 13647
048addec 136482001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 13649
048addec
JD
13650 * textprop.c (Fset_text_properties): Remove unused variables
13651 `unchanged', `prev_changed', `s' and `len'.
60a653f1 13652
048addec
JD
13653 * search.c (Freplace_match): Remove unused variable `inslen'.
13654
13655 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
13656
136572001-11-22 Jason Rumney <jasonr@gnu.org>
13658
13659 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
13660 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
13661 (my_create_tip_window): New function.
13662 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
13663 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
13664
136652001-11-20 Jason Rumney <jasonr@gnu.org>
13666
13667 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
13668 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
13669
13670 * w32fns.c (Vw32_system_coding_system): Remove.
13671 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
13672
136732001-11-19 Stefan Monnier <monnier@cs.yale.edu>
13674
13675 * fileio.c (Fwrite_region): Move choose_write_coding_system to
13676 after build_annotations.
13677
13678 * syntax.c (describe_syntax): Add dummy arg.
13679 (describe_syntax_1): Update call to describe_vector.
13680
13681 * category.c (describe_category): Add dummy arg.
13682 (describe_category_1): Update call to describe_vector.
13683
13684 * keymap.c (Fdescribe_vector): Add `describer' parameter.
13685 (describe_command, describe_translation): Add dummy second param.
13686 (describe_map): Call elt_describer with two arguments.
13687 (describe_vector_princ): Add `fun' parameter.
13688 Call it instead of the hardcoded `princ'.
13689 (describe_vector): Add arg `args'.
13690 Pass it as a new second argument to elt_describer.
60a653f1 13691
048addec 13692 * keymap.h (describe_vector): Update prototype.
60a653f1 13693
048addec
JD
13694 * frame.c: Don't include keymap.h any more.
13695 (keys_of_frame): Remove.
60a653f1 13696
048addec 13697 * lisp.h (keys_of_frame): Remove declaration.
60a653f1 13698
048addec 13699 * emacs.c (main): Don't call `keys_of_frame' any more.
60a653f1 13700
048addec 137012001-11-14 Andreas Schwab <schwab@suse.de>
60a653f1 13702
048addec
JD
13703 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
13704 if defined, 0 otherwise.
13705 (MAP_FAILED): Define if not defined and use it to test mmap failure.
13706 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
60a653f1 13707
048addec 137082001-11-19 Richard M. Stallman <rms@gnu.org>
60a653f1 13709
048addec 13710 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
60a653f1 13711
048addec 137122001-11-18 Jason Rumney <jasonr@gnu.org>
60a653f1 13713
048addec
JD
13714 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
13715 (x_draw_bar_cursor): If the background color of the glyph under
13716 the cursor equals the frame's cursor color, use the glyph's
13717 foreground color for drawing the bar cursor.
13718 (x_after_update_window_line): Clear internal border in different
13719 circumstances.
13720 (w32_set_vertical_scroll_bar): Check for width and height > 0.
13721 (w32_draw_relief_rect): Correct relief by 1 pixel.
13722 (x_set_glyph_string_background_width):
13723 Set extends_to_end_of_line_p if the row's fill_line_p is set and
13724 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
13725 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
13726 if cursor_in_non_selected_windows is false.
13727 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
13728 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
13729 Notice if cursor gets overwritten.
13730 (notice_overwritten_cursor): Renamed from
13731 note_overwritten_text_cursor. Rewritten to take glyph widths
13732 into account, and to take X positions as parameters.
13733 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
13734 around call to x_draw_glyphs.
13735 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
13736 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
13737 color to use for image glyph reliefs.
13738 (x_draw_image_relief): Accept zero tool_bar_button_relief.
13739 (glyph_rect): Remove unused variable `area'.
60a653f1 13740
048addec
JD
13741 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
13742 some items.
13743 (x_set_internal_border_width): Set frame garbaged when window
13744 doesn't exist yet.
13745 (Fx_create_frame): Accept zero tool_bar_button_relief.
13746 (x_clear_image_1, four_corners_best, image_background)
13747 (image_background_transparent): New functions.
13748 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
13749 (gs_format): Add `:background' entry.
13750 (lookup_image): Set IMG's background color if specified.
13751 (pbm_load, xbm_load_image, png_load): Set IMG's background field
13752 when appropriate.
13753 (x_clear_image_1): Reset `background_valid' and
13754 `background_transparent_valid' fields.
13755 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
13756 calculating it here. Set IMG's background_transparent field.
13757 (enum xpm_keyword_index): Add XPM_BACKGROUND.
13758 (enum png_keyword_index): Add PNG_BACKGROUND.
13759 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
13760 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
13761 (enum gif_keyword_index): Add GIF_BACKGROUND.
13762 (enum gs_keyword_index): Add GS_BACKGROUND.
13763 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
13764 Pre-calculate image background color where necessary.
13765 (x_create_x_image_and_pixmap, xbm_load, gs_load):
13766 Use display info's n_cbits entry for screen depth.
13767 (Fx_show_tip): Remove unused variables `buffer', `top',
13768 `left', `max_width' and `max_height'.
60a653f1 13769
048addec 13770 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
60a653f1 13771
048addec 137722001-11-18 Gerd Moellmann <gerd@gnu.org>
60a653f1 13773
048addec 13774 * puresize.h (BASE_PURESIZE): Increase to 750000.
60a653f1 13775
048addec 137762001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 13777
048addec 13778 * frame.c (Fframe_live_p): Doc fix.
60a653f1 13779
048addec 137802001-11-18 Richard M. Stallman <rms@gnu.org>
60a653f1 13781
048addec
JD
13782 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
13783 (message_dolog_marker3): New static variables hold three markers.
13784 (syms_of_xdisp): Initialize and staticpro them.
13785 (message_dolog): Use message_dolog_marker1..3 instead of
13786 allocating markers each time. Unchain them when done.
60a653f1 13787
048addec 137882001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 13789
048addec 13790 * doc.c (Fsnarf_documentation): Doc fix.
60a653f1 13791
048addec 137922001-11-17 Andreas Schwab <schwab@suse.de>
60a653f1 13793
048addec 13794 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
60a653f1 13795
048addec 137962001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 13797
048addec 13798 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
60a653f1 13799
048addec 138002001-11-17 Jason Rumney <jasonr@gnu.org>
60a653f1 13801
048addec 13802 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
60a653f1 13803
048addec 138042001-11-17 Gerd Moellmann <gerd@gnu.org>
60a653f1 13805
048addec
JD
13806 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
13807 with invalid position.
60a653f1 13808
048addec 138092001-11-16 Richard M. Stallman <rms@gnu.org>
60a653f1 13810
048addec 13811 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
60a653f1 13812
048addec
JD
13813 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
13814 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
13815 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
60a653f1 13816
048addec 13817 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
60a653f1 13818
048addec 138192001-11-16 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13820
048addec
JD
13821 * fileio.c (build_annotations): Split off the tail.
13822 (build_annotations_2): New fun. Extracted from build_annotations.
13823 (Fwrite_region): Split the call to build_annotations into two
13824 calls to build_annotations and build_annotations_2.
077907d4 13825
048addec 138262001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
1756e2fb 13827
048addec
JD
13828 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
13829 clear_waiting_for_input with argument.
1756e2fb 13830
048addec 13831 * xterm.h (x_update_cursor): Remove duplicated prototype.
06e8f738 13832
048addec 13833 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
06e8f738 13834
048addec 13835 * xterm.c (waiting_for_input): Remove unnecessary declaration.
fa336b91 13836
048addec 13837 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
fa336b91 13838
048addec 138392001-11-16 Stefan Monnier <monnier@cs.yale.edu>
fa336b91 13840
048addec
JD
13841 * fileio.c (choose_write_coding_system): New fun, extracted
13842 from Fwrite_region.
13843 (Fwrite_region): Use it.
fa336b91 13844
048addec
JD
13845 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
13846 (funcall_lambda, run_hook_with_args): Make static and add prototype.
13847 (ml_apply, find_handler_clause): Add prototype.
fa336b91 13848
048addec 138492001-11-16 Eli Zaretskii <eliz@gnu.org>
fa336b91 13850
048addec 13851 * config.in: Add #undef HAVE_COFF_H.
fa336b91 13852
048addec
JD
13853 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
13854 Required for ISC 4.1.
fa336b91 13855
048addec 138562001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
fa336b91 13857
048addec
JD
13858 * syswait.h: (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
13859 Andrew Wiseman <a.wiseman@btclick.com>.
fa336b91 13860
048addec 138612001-11-16 Kim F. Storm <storm@cua.dk>
fa336b91 13862
048addec
JD
13863 The following changes are made to clean up the various internal
13864 references to the fringes to actually use the term `fringe' for
13865 them. Previously, they were called `flags areas', `bitmap areas',
13866 `left/right side of windows', or implicitly as `flags' or
13867 `bitmaps':
fa336b91 13868
048addec 13869 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
f63fd14e 13870 Comments fixed. Use renamed symbols.
06e8f738 13871
f63fd14e 13872 * dispnew.c: Comment fix. Use renamed symbols.
06e8f738 13873
048addec
JD
13874 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
13875 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
13876 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
9ce647f4 13877
048addec 13878 * msdos.c: Comment fix.
9ce647f4 13879
048addec 13880 * w32fns.c: Use renamed symbols.
9b784ab8 13881
f63fd14e 13882 * w32term.c: Comment fixes. Use renamed symbols.
048addec
JD
13883 (fringe_bitmap_type): Renamed from bitmap_type.
13884 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
13885 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
13886 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
9f7e52b4 13887
f63fd14e 13888 * w32term.h: Comment fixes. Use renamed symbols.
048addec
JD
13889 (fringes_extra): Renamed from flags_areas_extra.
13890 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
13891 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
13892 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
13893 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
13894 (FRAME_X_LEFT_FRINGE_WIDTH):
13895 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
13896 (FRAME_X_RIGHT_FRINGE_WIDTH):
13897 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
9f7e52b4 13898
048addec 13899 * widget.c: Use renamed symbols.
9f7e52b4 13900
f63fd14e 13901 * window.c: Comment fixes. Use renamed symbols.
048addec 13902 (coordinates-in-window-p): Doc fix.
fa336b91 13903
f63fd14e 13904 * xdisp.c: Comment fixes. Use renamed symbols.
34e5d0af 13905
048addec 13906 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
9b784ab8 13907
048addec 13908 * xfns.c: Use renamed symbols.
89512fcd 13909
f63fd14e 13910 * xterm.c: Comment fixes. Use renamed symbols.
048addec
JD
13911 (fringe_bitmap_type): Renamed from bitmap_type.
13912 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
13913 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
13914 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
89512fcd 13915
f63fd14e 13916 * xterm.h: Comment fixes. Use renamed symbols.
048addec
JD
13917 (fringes_extra): Renamed from flags_areas_extra.
13918 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
13919 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
13920 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
13921 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
13922 (FRAME_X_LEFT_FRINGE_WIDTH):
13923 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
13924 (FRAME_X_RIGHT_FRINGE_WIDTH):
13925 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
13926
139272001-11-15 Jason Rumney <jasonr@gnu.org>
13928
13929 * w32menu.c (add-menu-item): Make help_echo and radio buttons
13930 work for most menu items. From David Ponce
13931 <david.ponce@wanadoo.fr>.
13932
139332001-11-15 Gerd Moellmann <gerd@gnu.org>
13934
13935 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
13936 Some x_set_* function expect to be called even if old and new
13937 value are equal.
13938
13939 * xdisp.c (build_desired_tool_bar_string): Accept zero
13940 tool_bar_button_relief.
13941
13942 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
13943
13944 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
13945
13946 * xterm.c (x_draw_bar_cursor): If the background color of the
13947 glyph under the cursor equals the frame's cursor color, use
13948 the glyph's foreground color for drawing the bar cursor.
13949
13950 * dispnew.c (direct_output_forward_char): Fix character/byte
13951 position comparison.
7d18891d 13952
048addec 139532001-11-15 Miles Bader <miles@gnu.org>
d2936d21 13954
048addec
JD
13955 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
13956 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
13957 Update arguments to find_field.
13958 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
13959 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
13960 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
13961 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
7d18891d 13962
048addec 139632001-11-14 Richard M. Stallman <rms@gnu.org>
7d18891d 13964
048addec 13965 * editfns.c (Fpropertize): Allow call with 1 arg.
7d18891d 13966
048addec
JD
13967 * dispextern.h (image_background, image_background_transparent):
13968 Conditionalize on HAVE_X_WINDOWS.
7d18891d 13969
048addec 139702001-11-13 Richard M. Stallman <rms@gnu.org>
7d18891d 13971
048addec 13972 * print.c (Fprin1_to_string): Doc fix.
7d18891d 13973
048addec 13974 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
7d18891d 13975
048addec 13976 * floatfns.c (Fceiling, Ffloor): Doc fixes.
7d18891d 13977
048addec 13978 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
7d18891d 13979
048addec 13980 * fileio.c (Ffile_accessible_directory_p): Doc fix.
7d18891d 13981
048addec 13982 * eval.c (syms_of_eval): Doc fix.
7d18891d 13983
048addec 13984 * coding.c (syms_of_coding): Doc fix.
7d18891d 13985
048addec 13986 * doc.c (Fsnarf_documentation): Doc fix.
7d18891d 13987
048addec 13988 * dispnew.c (syms_of_display): Doc fix.
9474c847 13989
048addec 13990 * category.c (Fget_unused_category): Doc fix.
9474c847 13991
048addec 13992 * buffer.c (syms_of_buffer): Doc fixes.
e3059a5d 13993
048addec 139942001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
e3059a5d 13995
048addec 13996 * print.c (prin1, print): Doc fix.
e3059a5d 13997
048addec 139982001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
b3700ae7 13999
048addec
JD
14000 * fontset.h: Remove declarations of variables
14001 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
b3700ae7 14002
048addec
JD
14003 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
14004 `Vclip_large_size_font'.
eae936e2 14005
048addec 140062001-11-13 Jason Rumney <jasonr@gnu.org>
4bb962be 14007
048addec 14008 * w32fns.c: Doc fix.
ddb67bdc 14009
048addec 140102001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3467c402 14011
048addec 14012 * xfaces.c (Fface_attributes_as_vector): Doc fix.
3467c402 14013
048addec 14014 * fns.c: Doc fix.
6e1b91d7 14015
048addec 14016 * emacs.c: Doc fix.
1c1d3d69 14017
048addec 14018 * coding.c: Doc fix.
1c1d3d69 14019
048addec
JD
14020 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
14021 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
14022 `new style' [w/`doc:' keyword].
b6f4c7ba 14023
048addec 140242001-11-12 Richard M. Stallman <rms@gnu.org>
b6f4c7ba 14025
048addec
JD
14026 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
14027 LeaveNotify events. Only FocusIn and FocusOut do that now.
14028 (x_display_and_set_cursor): Do display hollow cursors in active
14029 minibuffer windows when they are not selected.
b6f4c7ba 14030
048addec 140312001-11-12 Jason Rumney <jasonr@gnu.org>
a89f435d 14032
048addec 14033 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
f63fd14e
JB
14034 * w32term.c: Change doc-string comments to `new style'
14035 [w/`doc:' keyword]. Doc fixes.
a89f435d 14036
048addec
JD
14037 * w32fns.c: Don't define max.
14038 (Fx_open_connection): Only execute once.
a4cd0cd7 14039
048addec 140402001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
eafb659a 14041
048addec
JD
14042 * ccl.c: Change macros to use do-while block instead of if-else.
14043 Use braces to follow GNU Coding Standards.
eafb659a 14044
048addec 140452001-11-11 Richard M. Stallman <rms@gnu.org>
a4cd0cd7 14046
048addec 14047 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
a4cd0cd7 14048
048addec 14049 * lread.c (read_escape): Use end_of_file_error for reporting eof.
a4cd0cd7 14050
048addec
JD
14051 * insdel.c (replace_range): Use adjust_markers_for_replace
14052 instead of adjust_markers_for_delete and adjust_markers_for_insert.
a4cd0cd7 14053
048addec 14054 * intervals.h: Declare set_text_properties and set_text_properties_1.
a4cd0cd7 14055
048addec
JD
14056 * textprop.c (set_text_properties_1): New subroutine
14057 broken out of set_text_properties.
14058 (set_text_properties): Use set_text_properties_1.
91823618 14059
048addec
JD
14060 * intervals.c (graft_intervals_into_buffer):
14061 Use set_text_properties_1 to clear out properties.
91823618 14062
048addec
JD
14063 * search.c (Freplace_match): Use replace_range to insert
14064 and delete. Don't request property inheritance from
14065 surrounding text.
86928dfb 14066
048addec 140672001-11-10 Jason Rumney <jasonr@gnu.org>
86928dfb 14068
048addec 14069 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
f63fd14e 14070 vertical fonts. Allow them if face name is explicitly specified.
048addec 14071 Do not give up if we find a font that cannot be converted to an xlfd.
40ef1eda 14072
048addec 140732001-11-10 Gerd Moellmann <gerd@gnu.org>
ab8469eb 14074
048addec
JD
14075 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
14076 instead of malloc/free.
a78e0303 14077
048addec 140782001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
40ef1eda 14079
048addec
JD
14080 * xfaces.c (merge_face_vectors): Use braces to follow GNU
14081 Coding Standards.
14082 (Finternal_set_lisp_face_attribute): Likewise.
fabf4a91 14083
048addec 14084 * buffer.c (Fbury_buffer): Likewise.
0c99b139 14085
048addec 14086 * indent.c (current_column_1): Remove unused variable `prev_col'.
0c99b139 14087
048addec
JD
14088 * coding.c (encode_coding): Use precomputed value of `src'.
14089 (encode_coding): Remove unused variable `src_end'.
14090 (code_convert_region): Remove unused variables `count'.
830ddd77 14091
048addec 140922001-11-07 Jason Rumney <jasonr@gnu.org>
830ddd77 14093
048addec
JD
14094 * w32term.c (x_display_and_set_cursor): Do not move system caret
14095 if cursor_glyph is NULL.
55c6d645 14096
048addec 140972001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
55c6d645 14098
048addec 14099 * keymap.c (access_keymap): Fix compilation error.
5de38842 14100
048addec 141012001-11-07 Miles Bader <miles@gnu.org>
7a4564a4 14102
048addec 14103 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
5de38842 14104
048addec 141052001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4fa23df5 14106
048addec
JD
14107 * intervals.c (graft_intervals_into_buffer):
14108 Remove #ifdef'd-out code.
14109 (graft_intervals_into_buffer): Remove unused variable `middle'.
4fa23df5 14110
048addec
JD
14111 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
14112 code (eval-current-buffer).
14113 Change doc-string comments to `new style' [w/`doc:' keyword].
7a6a97d7 14114
048addec 141152001-11-06 Richard M. Stallman <rms@gnu.org>
c191d13c 14116
048addec 14117 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
7a6a97d7 14118
048addec 141192001-11-06 Stefan Monnier <monnier@cs.yale.edu>
44dc78e0 14120
048addec 14121 * lread.c (read1): Fix behavior with nested backquoting.
44dc78e0 14122
048addec
JD
14123 * keyboard.c (make_lispy_event): Check integerness and fix
14124 Lisp_Object/int mixup.
17893c65 14125
048addec 141262001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4d994a79 14127
048addec 14128 * fns.c (copy_hash_table): Remove unused variable `v'.
d5360cc7 14129
048addec
JD
14130 * fontset.c (fontset_font_pattern): Remove unused variable
14131 `family_registry'.
d5360cc7 14132
048addec 14133 * indent.c (current_column_1): Remove unused variable `prev_col'.
d5360cc7 14134
048addec 141352001-11-05 Richard M. Stallman <rms@gnu.org>
96238a5a 14136
048addec 14137 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
96238a5a 14138
048addec
JD
14139 * buffer.c (Fkill_buffer): Don't delete auto save file
14140 if buffer is modified.
d9d54213 14141
048addec 141422001-11-05 Andrew Innes <andrewi@gnu.org>
d9d54213 14143
048addec
JD
14144 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
14145 CHECK_NUMBER_CDR.
b116830b 14146
048addec 141472001-11-05 Richard M. Stallman <rms@gnu.org>
b116830b 14148
048addec 14149 * unexelf.c (unexec): Minor changes; clean up comments.
3297e2a1 14150
048addec 141512001-11-05 Sam Steingold <sds@gnu.org>
3297e2a1 14152
048addec 14153 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
6fb8339c 14154
048addec 141552001-11-05 Andreas Schwab <schwab@suse.de>
6fb8339c 14156
048addec 14157 * sound.c (sound_perror): Save errno from being clobbered.
7dd73b78 14158
048addec 141592001-11-05 Dale Hagglund <rdh@yottayotta.com>
7dd73b78 14160
048addec
JD
14161 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
14162 the program image directly.
982f6c7e 14163
048addec 141642001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d31053f9 14165
048addec 14166 * buffer.h (Fbuffer_local_value): Add prototype.
d31053f9 14167
048addec 141682001-11-04 Richard M. Stallman <rms@gnu.org>
d31053f9 14169
048addec
JD
14170 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
14171 and CHECK_BUFFER.
d31053f9 14172
048addec
JD
14173 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
14174 (record_char): Likewise.
d31053f9 14175
048addec
JD
14176 * keyboard.c (make_lispy_event): Don't insist a drag event must
14177 move to a different buffer position. Instead, check for moving at
14178 least double_click_fuzz.
982f6c7e 14179
048addec 14180 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
830047fd 14181
048addec 14182 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
b116830b 14183
048addec
JD
14184 * indent.c (current_column_1, Fmove_to_column): Separate the code
14185 for display-table glyphs from the code for buffer text, to fix
14186 bugs in the former.
830047fd 14187
048addec 141882001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
b116830b 14189
048addec
JD
14190 * buffer.c (Fbuffer_local_value): New function.
14191 (syms_of_buffer): Defsubr it.
2df5238c 14192
048addec
JD
14193 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
14194 value of `cursor-in-non-selected-windows'.
4e397688 14195
048addec
JD
14196 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
14197 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
14198 (syms_of_xdisp): Initialize it.
48b0f3ae 14199
048addec 142002001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2df5238c 14201
048addec 14202 * xfns.c (Fx_create_frame): Doc fix.
3ecaf7e5 14203
048addec
JD
14204 * coding.c: Change doc-string comments to `new style' [w/`doc:'
14205 keyword].
3ecaf7e5 14206
048addec
JD
14207 * eval.c (top_level_value, top_level_set): Remove commented and
14208 #ifdef'd-out code.
14209 (Fdefvar): Fix usage in doc-string.
3ecaf7e5 14210
048addec 142112001-11-03 Richard M. Stallman <rms@gnu.org>
3ecaf7e5 14212
048addec 14213 * xfns.c: Include unistd.h, if it exists.
8db2e33b 14214
048addec 14215 * editfns.c: Move the include of ctype.h after unistd.h.
8db2e33b 14216
048addec 14217 * gmalloc.c: Test BROKEN_PROTOTYPES.
aed29b97 14218
048addec 142192001-11-03 Ken Raeburn <raeburn@gnu.org>
aed29b97 14220
048addec
JD
14221 * lisp.h (CHECK_STRING_CAR): New macro.
14222 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
14223 treating XCAR and XCDR as lvalues.
14224 (openp): Use CHECK_STRING_CAR.
14225 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
aed29b97 14226
048addec 142272001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
6cb16f95 14228
048addec
JD
14229 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
14230 (SIGMASKTYPE): Define.
1b1acc13 14231
048addec 14232 * syssignal.h (sigunblock): Don't define if already defined.
020f9b38 14233
048addec 142342001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
020f9b38 14235
048addec
JD
14236 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
14237 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
14238 Fix typos in comments.
6cb16f95 14239
048addec
JD
14240 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
14241 and #ifdef'd-out code.
14242 Fix and reindent comments.
6cb16f95 14243
048addec 14244 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
6cb16f95 14245
048addec
JD
14246 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
14247 argument `i' in macros.
6cb16f95 14248
048addec
JD
14249 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
14250 `i' in macros.
7e9d3c2f 14251
048addec
JD
14252 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
14253 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
14254 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
14255 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
14256 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
14257 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
14258 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
14259 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
14260 in macros.
7e9d3c2f 14261
048addec
JD
14262 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
14263 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
14264 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
14265 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
14266 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
14267 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
14268 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
14269 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
14270 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
14271 (remove unused second argument).
7e9d3c2f 14272
048addec 142732001-11-02 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 14274
048addec
JD
14275 * syntax.c (describe_syntax): New wrapper.
14276 (Finternal_describe_syntax_value): Rename from describe_syntax.
14277 Don't insert space at front and \n at the end.
14278 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
e6bff182 14279
048addec
JD
14280 * regex.c (re_wctype): Try to fix some warnings.
14281 (regcomp, regexec): Don't forget the __restrict.
9ba48103 14282
048addec 142832001-11-02 Richard M. Stallman <rms@gnu.org>
9ba48103 14284
048addec 14285 * textprop.c (Fget_char_property): Doc fix.
9ba48103 14286
048addec 142872001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9ba48103 14288
048addec 14289 * process.c (Fstart_process): Add usage to doc-string.
c22e59e1 14290
048addec 14291 * data.c (Fsetq_default): Ditto.
c22e59e1 14292
048addec 14293 * callint.c (Finteractive): Ditto.
9271ed2c 14294
048addec 142952001-11-01 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 14296
048addec
JD
14297 * macros.c: Don't include keymap.h any more.
14298
142992001-11-01 Richard M. Stallman <rms@gnu.org>
14300
14301 * data.c (Fmake_local_variable): Doc fix.
14302
14303 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
14304 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
e6bff182 14305
048addec 14306 * keymap.c (Fdescribe_buffer_bindings): Print character property
9271ed2c
RS
14307 bindings along with or instead of the buffer local map.
14308 Make the overriding maps override what they should.
14309
f00691a3 143102001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8b8bd9c6
PJ
14311
14312 * window.c (grow_mini_window): Fix typo in comment.
14313
27188d11
GM
143142001-11-01 Gerd Moellmann <gerd@gnu.org>
14315
7b49b9d2
GM
14316 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
14317 (XTset_vertical_scroll_bar): Likewise.
14318
43f7c3ea
GM
14319 * xfns.c (x_build_heuristic_mask): Use four_corners_best
14320 instead of IMAGE_BACKGROUND.
c22e59e1 14321
b350c2e5
GM
14322 * xfns.c (four_corners_best): Reindent.
14323
c22e59e1 14324 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
27188d11
GM
14325 Handle :box so that it is possible to specify sexprs.
14326
bf00d461
EZ
143272001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
14328
14329 * s/hpux11.h: New file.
14330
f00691a3 143312001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e10df59 14332
2b209b97
PJ
14333 * emacs.c (USAGE1): Show command line option --no-window-system
14334 instead of --no-windows in usage.
14335 (standard_args): Rename --no-windows to --no-window-system.
14336 (bug_reporting_address): Follow Emacs coding conventions.
14337
9dbc9081
PJ
14338 * eval.c (Fcommandp): Doc fix.
14339 Change doc-string comments to `new style' [w/`doc:' keyword].
14340
4e10df59
PJ
14341 * frame.c (Fframe_live_p): Doc fix.
14342
14343 * buffer.c (selective-display-ellipses): Doc fix.
14344
dd387b25
GM
143452001-10-31 Gerd Moellmann <gerd@gnu.org>
14346
fe957e65
GM
14347 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
14348
dd387b25
GM
14349 * xfaces.c (realize_x_face): If C is not a single-byte character,
14350 set the face's colors_copied_bitwise_p instead of the defaulted_p
14351 members which have a different meaning.
14352 (free_face_colors): Do nothing for a face whose colors have been
14353 copied bitwise.
14354
c22e59e1 14355 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
dd387b25 14356
f00691a3 143572001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2e1280f8 14358
687784e8
PJ
14359 * marker.c, mocklisp.c: Change doc-string comments to `new style'
14360 [w/`doc:' keyword].
2e1280f8 14361
b9d9a9b9
GM
143622001-10-31 Gerd Moellmann <gerd@gnu.org>
14363
14364 * fns.c (require_unwind): Return Lisp_Object.
14365
f00691a3 143662001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
48400103 14367
fa1361cb
PJ
14368 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
14369 (last-input-char): Revert doc-string to be the same as the
14370 doc-string of `last-input-event'.
14371
6c465a15 14372 * xdisp.c: Fix typos in comments.
48400103 14373
eafa3196
GM
143742001-10-31 Gerd Moellmann <gerd@gnu.org>
14375
14376 * window.c (grow_mini_window): Handle case that the root
14377 window is already smaller than the nominal mininum height.
14378
747d3f2a
SM
143792001-10-30 Stefan Monnier <monnier@cs.yale.edu>
14380
bf9bb76f
SM
14381 * emacs.c (main): Don't call keys_of_macros any more.
14382
14383 * lisp.h (keys_of_macros): Remove.
14384
14385 * macros.c (keys_of_macros): Remove.
14386
747d3f2a
SM
14387 * xfaces.c (Fface_attribute_relative_p): Declare args.
14388
5e905a57
JR
143892001-10-30 Jason Rumney <jasonr@gnu.org>
14390
14391 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
14392 (enum_font_cb2): Ignore fonts with vertical orientation.
14393
3a426197
RS
143942001-10-30 Richard M. Stallman <rms@gnu.org>
14395
14396 * keyboard.c (Finput_pending_p): Doc fix.
14397
a742d646
GM
143982001-10-30 Gerd Moellmann <gerd@gnu.org>
14399
259cf6bc
GM
14400 * xterm.c (x_after_update_window_line): Don't run the code
14401 clearing in borders for rows whose visible height is 0.
14402
3f99f948
GM
14403 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
14404 resized_p flag is set. If not set, use the much less flickering
14405 method previously used.
14406
14407 * dispnew.c (change_frame_size_1): Set frame's resized_p.
14408
14409 * frame.h (struct frame) <resized_p>: New member.
14410
b4a3be43
GM
14411 * lread.c (to_multibyte): Ensure read_buffer is at least twice
14412 as large as the number of bytes to convert.
747d3f2a 14413
a742d646
GM
14414 * lread.c (to_multibyte): New function.
14415 (read1): Use it.
14416
cacbb9e9
EZ
144172001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
14418
14419 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
14420
99cb6b2f
GM
144212001-10-30 Gerd Moellmann <gerd@gnu.org>
14422
327f42ee 14423 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
747d3f2a
SM
14424 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
14425 if the row's fill_line_p is set and drawing the last glyph with
14426 DRAW_IMAGE_{RAISED,SUNKEN}.
327f42ee 14427
99cb6b2f
GM
14428 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
14429
8e8223e2
SM
144302001-10-29 Stefan Monnier <monnier@cs.yale.edu>
14431
14432 * xmenu.c: Include coding.h and charset.h.
14433 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
14434 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
14435 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
14436 Explicitly set wv->help. Use `TRUE' rather than `True'.
14437 (menu_help_callback): Use empty_string.
14438
14439 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
14440 (Fx_popup_dialog): Explicitly init f.
14441 (w32_menu_display_help): Use empty_string.
14442
4d083a8f
RS
144432001-10-29 Richard M. Stallman <rms@gnu.org>
14444
b2304472
RS
14445 * fns.c (Frequire): Detect recursive try to require the same
14446 feature 3 or more levels deep, and get error.
14447 (require_unwind): New subroutine.
14448 (require_nesting_list): New variable.
14449 (syms_of_fns): Init and staticpro it.
14450
4d083a8f
RS
14451 * print.c (print_object): Clarify indication of insertion type.
14452
2fe41216
EZ
144532001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
14454
90480000
EZ
14455 * coding.c (syms_of_coding): Document that locale-coding-system is
14456 used for decoding input on X.
14457
2fe41216
EZ
14458 * window.c (Fscroll_left, Fscroll_right): Doc fix.
14459
f00691a3 144602001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
74e79967
PJ
14461
14462 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
14463 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
14464
60ebcfe8
GM
144652001-10-29 Gerd Moellmann <gerd@gnu.org>
14466
9a7bdceb
GM
14467 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
14468 use NO_CURSOR if cursor_in_non_selected_windows is false.
14469
3f08fcd2
GM
14470 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
14471 the slant attribute if FRAME is t.
14472
0ccfdad2
GM
14473 * xfns.c (x_set_internal_border_width): Set frame garbaged
14474 when X window doesn't exist yet.
14475
ef253080
GM
14476 * xterm.c (x_after_update_window_line): Clear internal border
14477 in different circumstances.
b116830b 14478
60ebcfe8
GM
14479 * xterm.c (XTread_socket) <KeyPress>: Don't use
14480 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
14481 <handa@etl.go.jp>.
14482
73d25f9c
EZ
144832001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
14484
14485 * m/ibms390.h: New file. From Adam Thornton
14486 <athornton@sinenomine.net>.
14487
cac1daf0
GM
144882001-10-28 Gerd Moellmann <gerd@gnu.org>
14489
053b3256 14490 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
b116830b 14491
cac1daf0
GM
14492 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
14493 a loop counter.
14494
f00691a3 144952001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13b1a09c 14496
f9711de4 14497 * emacs.c: Use argv[0] instead of "emacs" when -t was specified.
186486eb 14498
4707d2d0
PJ
14499 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
14500 keyword].
14501 Fix typos in comments.
b116830b 14502
d883731c
PJ
14503 * emacs.c (bug_reporting_address): New function.
14504 Use it when displaying usage message.
14505
04012254
PJ
14506 * minibuf.c (read_minibuf): Remove unused external declaration of
14507 variable `Qread_only'.
14508
13b1a09c
PJ
14509 * keymap.c (access_keymap): Remove unused variable `charset'.
14510
5bbf4378
MB
145112001-10-28 Miles Bader <miles@gnu.org>
14512
14513 * xfaces.c (merge_face_heights): Handle TO being relative as well.
14514 Remove #ifdef'd-out code.
14515 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
14516 (syms_of_xfaces): Initialize them.
14517
1ce1e4ee
JR
145182001-10-27 Jason Rumney <jasonr@gnu.org>
14519
14520 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
14521 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
14522 position using the system caret.
14523
14524 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
14525 (w32_system_caret_height, w32_system_caret_x)
14526 (w32_system_caret_y): New variables for tracking system caret.
14527 (w32_initialize): Initialize them.
c2d53558 14528 (x_display_and_set_cursor): Make system caret follow the active cursor.
1ce1e4ee 14529
c2d53558
SM
14530 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
14531 New messages types.
1ce1e4ee
JR
14532
14533 * w32term.c (note_mouse_highlight): Clear old help_echo.
14534
f00691a3 145352001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e30ce42 14536
bb4600a4
PJ
14537 * xterm.c: Fix typo in a comment.
14538
7db35a48
PJ
14539 * emacs.c: Fix typos in comments.
14540 Remove unnecessary spaces.
14541 Change doc-string comments to `new style' [w/`doc:' keyword].
14542 (USAGE2): Fix typos in usage string.
14543
a7248e4f
PJ
14544 * xterm.c: Fix typo in a comment.
14545
4e30ce42
PJ
14546 * lisp.h: (gdb_lisp_params): Remove code in #if 0 which is now in
14547 emacs.c.
14548
62725a92
GM
145492001-10-27 Gerd Moellmann <gerd@gnu.org>
14550
798dbe1f 14551 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
c2d53558 14552 instead of 1/2 line_height in the heuristic for skipping
798dbe1f
GM
14553 farther backward when target_y was not reached.
14554
62725a92
GM
14555 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
14556 Display errno only if non-zero.
14557 (sound_warning): New function.
14558 (vox_configure): Don't treat failing to set sample rate as error.
14559 (various places): Improve error messages.
14560
d4e34d24
EZ
145612001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
14562
944e6f60
EZ
14563 * fileio.c (Faccess_file): Run the argument filename through
14564 Fexpand_file_name, before using it.
14565
d4e34d24
EZ
14566 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
14567 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
14568
38d2af0c
GM
145692001-10-26 Gerd Moellmann <gerd@gnu.org>
14570
da80a8d5
GM
14571 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
14572
38d2af0c
GM
14573 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
14574 Fix clearing in the case of scroll bars on the right.
c2d53558 14575
45de4a6f 145762001-10-26 Juanma Barranquero <lektu@terra.es>
56f508dd
EZ
14577
14578 * w32gui.h (XImage): Add a dummy typedef.
14579
fbd5ceb2
GM
145802001-10-26 Gerd Moellmann <gerd@gnu.org>
14581
c2d53558 14582 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
fbd5ceb2 14583
b23236fb
EZ
145842001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
14585
14586 * frame.c (Fframe_parameter): Fix last change.
14587
5d991fc4
EZ
14588 * fileio.c: Revert last change (which removed old commented-out
14589 version of expand-file-name). Add a comment that explains why
14590 this old version should not be removed.
14591
879eadc3
GM
145922001-10-25 Gerd Moellmann <gerd@gnu.org>
14593
75700ff2
GM
14594 * frame.c (Fframe_parameter): Fix a bug whereby some
14595 ``artificial'' frame parameters, like `minibuffer' were not
14596 obtained by calling Fframe_parameters.
14597
dfe92a6a
GM
14598 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
14599 cursor differently.
14600
879eadc3
GM
14601 * xdisp.c (move_it_vertically_backward): Compute line height
14602 differently. Add heuristic to try to be more compatible to 20.x.
14603
e1010ebe
SM
146042001-10-25 Stefan Monnier <monnier@cs.yale.edu>
14605
d73a471b
SM
14606 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
14607
d6da5a06
GM
14608 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
14609 boolean.
e1010ebe 14610
f66bd220
MB
146112001-10-25 Miles Bader <miles@gnu.org>
14612
14613 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
14614 BG is a pointer to a structure, not a structure.
14615 (gif_format, png_format): Add missing commas.
14616
d436d538
RS
146172001-10-24 Richard M. Stallman <rms@gnu.org>
14618
14619 * xfaces.c (Fface_attributes_as_vector): New function.
c2d53558 14620 (syms_of_xfaces): Defsubr it.
d436d538 14621
f00691a3 146222001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
075c507b
PJ
14623
14624 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
14625 variable `area'.
14626
f00691a3 146272001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d492b584 14628
c2d53558 14629 * search.c (scan_newline): Remove unused variable `selective_display'.
d492b584 14630
e2a57b34
MB
146312001-10-25 Miles Bader <miles@gnu.org>
14632
14633 * dispextern.h (struct image): Add `background',
14634 `background_valid', and `background_transparent' fields.
14635 (image_background, image_background_transparent): New declarations.
14636 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
14637 * xfns.c (image_background, image_background_transparent)
14638 (four_corners_best): New functions.
c2d53558 14639 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
e2a57b34
MB
14640 (gs_format): Add `:background' entry.
14641 (lookup_image): Set IMG's background color if specified.
14642 (pbm_load, xbm_load_image, png_load): Set IMG's background field
14643 when appropriate.
14644 (x_clear_image_1): Reset `background_valid' and
14645 `background_transparent_valid' fields.
14646 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
14647 calculating it here. Set IMG's background_transparent field.
14648 (enum xpm_keyword_index): Add XPM_BACKGROUND.
14649 (enum png_keyword_index): Add PNG_BACKGROUND.
14650 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
14651 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
14652 (enum gif_keyword_index): Add GIF_BACKGROUND.
14653 (enum gs_keyword_index): Add GS_BACKGROUND.
c2d53558 14654 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
e2a57b34
MB
14655 Pre-calculate image background color where necessary.
14656 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
14657 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
14658 color to use for image glyph reliefs.
14659
b547b6e8
GM
146602001-10-24 Gerd Moellmann <gerd@gnu.org>
14661
d9e3b8c6
GM
14662 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
14663 in full-width rows.
c2d53558 14664
b547b6e8
GM
14665 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
14666 Fix clearing of area not covered by scroll bar.
14667
f00691a3 146682001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2beb36f9
PJ
14669
14670 * xterm.c: (x_insert_glyphs): Remove unused variables `real_end'
14671 and `real_start'.
c2d53558 14672 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
2beb36f9
PJ
14673 (glyph_rect): Remove unused variable `area'.
14674
76cb5e06
GM
146752001-10-24 Gerd Moellmann <gerd@gnu.org>
14676
bdbdebff 14677 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
c2d53558
SM
14678
14679 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
14680 (row_containing_pos): Take additional argument DY.
14681 Treat rows ending in middle of char differently.
62e33982
GM
14682 (display_line): Handle tabs on window systems differently.
14683
14684 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
14685 with additional argument.
14686
14687 * dispextern.h (row_containing_pos): Adjust prototype.
14688
76cb5e06
GM
14689 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
14690 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
14691 (try_window_id, try_window_reusing_current_matrix)
14692 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
6c465a15 14693 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
76cb5e06 14694
f00691a3 146952001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
996fee11 14696
c9e60620
PJ
14697 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
14698 gnuemacs).
14699 (HAVE_BOXES): Fix typo in comment.
14700 (push_menu_pane): Fix typo in comment.
14701
3b552d56
PJ
14702 * xdisp.c: (display_prop_string_p): Remove unused local declaration
14703 of `Qwhen'.
14704 (single_display_prop_string_p): Remove unused local declarations
14705 of `Qwhen' and `Qmargin'.
14706 (string_buffer_position): Remove unused variable `around'.
14707 (store_frame_title): Remove unused variable `width'.
14708
15c565ac
PJ
14709 * window.c: Don't define max.
14710 (coordinates_in_window): Remove unused variable `uy'.
14711
a8818eb9
PJ
14712 * widget.c: Don't define max.
14713
996fee11
PJ
14714 * process.c: Don't define max.
14715 (create_process): Remove unused variable `buffer'.
14716
496e1a5b
GM
147172001-10-23 Gerd Moellmann <gerd@gnu.org>
14718
c2d53558 14719 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
496e1a5b 14720
5905ae8b
EZ
147212001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
14722
14723 * xfaces.c (Finternal_set_lisp_face_attribute)
14724 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
14725 frame is on a windowed display.
14726
24db49fb
GM
147272001-10-23 Gerd Moellmann <gerd@gnu.org>
14728
c2d53558
SM
14729 * dispnew.c (sync_window_with_frame_matrix_rows):
14730 Fix handling of windows which aren't full-width, fix handling
c51488cd
GM
14731 of marginal areas.
14732
c2d53558 14733 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
24db49fb 14734
f0487f05
EZ
147352001-10-23 Andreas Schwab <schwab@suse.de>
14736
14737 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
14738 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
14739
f0a48a01
GM
147402001-10-23 Gerd Moellmann <gerd@gnu.org>
14741
c2d53558 14742 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
f0a48a01
GM
14743 REAL_END. Notice if cursor gets overwritten.
14744 (notice_overwritten_cursor): Take X positions as parameters.
14745 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
14746 around call to x_draw_glyphs.
14747
f00691a3 147482001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
a50a10a0 14749
fc11dff0
PJ
14750 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
14751 instead of C) and usage.
a50a10a0 14752
fc11dff0
PJ
14753 * editfns.c (char-to-string): Fix argument names (use CHAR instead
14754 of C) and usage.
a50a10a0
PJ
14755
14756 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
14757 `left', `max_width' and `max_height'.
14758
8738febd
GM
147592001-10-23 Gerd Moellmann <gerd@gnu.org>
14760
14761 * xdisp.c (display_line): For a tab continued to the next line,
14762 set row's ends_in_middle_of_char_p.
14763
653c329b
GM
147642001-10-22 Gerd Moellmann <gerd@gnu.org>
14765
14766 * xdisp.c (display_line): Fix computation of continuation lines
14767 width for TABs.
14768
f00691a3 147692001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
f958c5ac 14770
7ba51063
PJ
14771 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
14772 `Qlaplace'.
14773
f958c5ac
PJ
14774 * fileio.c: Remove unused code.
14775
eb360291
MB
147762001-10-22 Miles Bader <miles@gnu.org>
14777
14778 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
14779 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
14780 Remove `DOC_STRINGS_IN_COMMENTS' cases.
14781
98515cf0
JR
147822001-10-21 Jason Rumney <jasonr@gnu.org>
14783
14784 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
14785
93026d88
EZ
147862001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
14787
14788 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
14789 (Finsert_string): Avoid the multi-line string literals warning.
14790
c9a95b79
MB
147912001-10-22 Miles Bader <miles@gnu.org>
14792
14793 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
14794 (Fdocumentation): Don't use it.
14795 (syms_of_doc): Don't initialize it.
14796
14797 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
14798 * print.c (Fwith_output_to_temp_buffer): Likewise.
14799 * window.c (Fsave_window_excursion): Likewise.
c2d53558 14800 * editfns.c (Fsave_excursion, Fsave_current_buffer)
c9a95b79 14801 (Fsave_restriction): Likewise.
c2d53558
SM
14802 * eval.c (Frun_hooks, Frun_hook_with_args)
14803 (Frun_hook_with_args_until_failure)
14804 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
14805 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
14806 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
c9a95b79
MB
14807 (Funwind_protect, Fcondition_case): Likewise.
14808 * coding.c (Ffind_operation_coding_system): Likewise.
14809 * keyboard.c (Ftrack_mouse): Likewise.
14810
a3b10252
MB
148112001-10-21 Miles Bader <miles@gnu.org>
14812
c2d53558 14813 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
a3b10252
MB
14814 (Fmake_hash_table): Add usage: string to doc string.
14815 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
c2d53558 14816 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
a3b10252
MB
14817 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
14818 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
14819 (Fml_prefix_argument_loop): Likewise.
14820
f00691a3 148212001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c6f73eec 14822
c2d53558 14823 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
888ebd13 14824
c6f73eec
PJ
14825 * sysdep.c (init_sys_modes): Change doc-string comments to `new
14826 style' [w/`doc:' keyword].
14827
14828 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
14829 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
14830 comments to `new style' [w/`doc:' keyword].
14831
3cf3436e
JR
148322001-10-21 Jason Rumney <jasonr@gnu.org>
14833
14834 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
14835
c169b8f1
JR
14836 * w32term.c (remember_mouse_glyph): New function.
14837 (w32_mouse_position): Use it.
14838 (note_mouse_movement): If the mouse moved off the glyph, remember
14839 its new position.
c2d53558 14840
4fdd691b
JR
14841 * w32term.h (struct w32_output): Correct spelling of x_compatible.
14842 (w32_display_info): Add mouse_face_overlay.
14843
c169b8f1
JR
14844 * w32term.c (notice_overwritten_cursor): Renamed from
14845 note_overwritten_text_cursor. Rewritten to take glyph widths into
14846 account.
14847 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
14848 (fast_find_string_pos): New function.
14849 (fast_find_position): Return the correct vpos. Add parameter
14850 STOP. In the final row, stop before glyphs having STOP as object.
14851 Don't consider glyphs that are not from a buffer.
14852 (fast_find_position) [0]: Add a presumably more correct version
14853 for after 21.1.
14854 (expose_window_tree, expose_frame): Don't compute intersections here.
14855 (expose_window): Do it here instead.
14856 (expose_window_tree, expose_window, expose_line): Return 1 when
14857 overwriting mouse-face.
14858 (expose_window): If W is the window currently being updated, mark
14859 the frame garbaged.
14860 (expose_frame): If mouse-face was overwritten, redo it.
14861 (x_use_underline_position_properties): New variable.
14862 (syms_of_xterm): DEFVAR_BOOL it.
14863 (x_draw_glyph_string): Add comment to use it in future.
14864 (x_draw_glyph_string): Restore clipping after drawing box.
14865 Fix a computation of the underline position.
14866 (w32_get_glyph_string_clip_rect): Minor cleanup.
14867 (x_fill_stretch_glyph_string): Remove an assertion.
14868 (x_produce_glyphs): Don't convert multibyte characters
14869 to unibyte characters in unibyte buffers.
14870 (cursor_in_mouse_face_p): New function.
14871 (x_draw_stretch_glyph_string): Use it to choose a different GC
14872 when drawing a cursor within highlighted text. Don't draw
14873 background again if it has already been drawn.
14874 (x_draw_glyph_string_box): Don't draw a full-width
14875 box just because the glyph row's full_width_p flag is set.
14876 (x_draw_glyphs): Fix computation of rightmost x for
14877 full-width rows.
14878 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
14879 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
f63fd14e 14880 change bottom shadow accordingly. Some cleanup.
c169b8f1
JR
14881 (x_update_window_end): Handle overwritten mouse face
14882 also for tool bar windows.
14883 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
14884 DRAW is DRAW_IMAGE_RAISED.
14885 (clear_mouse_face): Return 1 if text with mouse face was
2c568af5
SM
14886 actually redrawn. Make the function static.
14887 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
c169b8f1
JR
14888 optimize away highlighting if we pass over that same overlay again.
14889 (note_mouse_highlight): Call mouse_face_overlay_overlaps
14890 to detect a case where we have to highlight a different region
14891 despite not having left the currently highlighted region.
14892 Set mouse_face_overlay in the x_display_info. Avoid changing the
14893 mouse pointer shape when show_mouse_face has already done it, or
14894 there is no need. Handle mouse-face and help-echo in strings.
14895 (glyph_rect): New function.
14896 (w32_mouse_position): Use it to raise the threshold for mouse
14897 movement event generation.
14898 (w32_initialize_display_info): Initialize the x_display_info's
14899 mouse_face_overlay.
14900 (w32_set_vertical_scroll_bar): Don't clear a zero height
14901 or width area.
14902 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
14903 a widget to zero height.
14904
3cf3436e 14905 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
4fdd691b 14906 Protect unibyte strings created by replacing their multibyte
3cf3436e
JR
14907 equivalents in menu_items.
14908 (w32_menu_show): Don't overwrite an item's name with its key
14909 description in case the description is a multibyte string.
14910 (single_submenu): Some cleanup.
14911
14912 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
14913 (postprocess_image): New function.
14914 (lookup_image): Call it for all image types except PostScript.
14915 (x_kill_gs_process): Call postprocess_image.
14916 (tiff_error_handler, tiff_warning_handler): New functions.
14917 (tiff_load): Install them as handlers.
14918 (x_kill_gs_process): Recognize if someone has cleared the image
14919 cache under us.
14920 (valid_image_p): Protect better against invalid image
14921 specifications. Previous code could signal an error.
14922 (Fx_hide_tip, Fshow_tip): Doc fix.
14923 (Fv_max_tooltip_size): New variable.
14924 (syns_of_xfns): DEFVAR_LISP it.
14925 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
f63fd14e 14926 window buffer to *tip* right after creating the frame. Set frame's
3cf3436e
JR
14927 window_width. Use a maximum tooltip size specified by
14928 Vx_max_tooltip_size, if that has valid contents.
14929 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
14930 Make sure the tooltip is completely visible.
14931 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
14932 (Fx_create_frame): Adjust the frame's height for presence
14933 of the tool bar before calling x_figure_window_size.
14934 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
14935 when the window gets smaller.
14936 (x_set_foreground_color): Set frame's cursor_pixel.
14937 (x_set_foreground_color, x_set_background_color): Cleaned up.
14938 (x_set_font): Handle case of x_new_fontset returning the same name
14939 as before, although there was a change in fontsets.
14940
386ca361
MB
149412001-10-21 Miles Bader <miles@gnu.org>
14942
c2d53558 14943 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
386ca361
MB
14944 (Flogxor): Add usage: string to doc string.
14945 * charset.c (Fstring): Likewise.
14946 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
14947 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
14948
f00691a3 149492001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14ff1ee0 14950
03be2694
PJ
14951 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
14952
14953 * alloc.c: Reindent DEFUNs with doc: keywords.
14954
14955 * abbrev.c (Finsert_abbrev_table_description): Reindent.
14956
14ff1ee0
PJ
14957 * frame.c: Change doc-string comments to `new style' [w/`doc:'
14958 keyword].
14959
2f147815 14960See ChangeLog.9 for earlier changes.
6922b018
KH
14961
14962;; Local Variables:
49b3bd82 14963;; coding: iso-2022-7bit
6922b018 14964;; End:
2a34a036 14965
2f147815 14966 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
2a34a036
GM
14967 Copying and distribution of this file, with or without modification,
14968 are permitted provided the copyright notice and this notice are preserved.
ab5796a9
MB
14969
14970;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4