New file.
[bpt/emacs.git] / src / ChangeLog
CommitLineData
4307d534
KH
12003-11-07 Kenichi Handa <handa@m17n.org>
2
3 * coding.c (coding_allocate_composition_data): Reset
4 coding->composing to COMPOSITION_NO.
5 (coding_restore_composition): Detect invalid composition data.
6 Give Fstring and Fvector a Lispy integer, not C int.
7
d04103a1
JD
82003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9
10 * xterm.c (x_term_init): Fix formatting.
11
da18b5ac
JD
122003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13
14 * gtkutil.h: Declare xg_have_tear_offs, remove xg_keep_popup
15 and xg_did_tearoff.
16
17 * gtkutil.c: Remove variable xg_did_tearoff.
18 (xg_have_tear_offs): New function.
19 (tearoff_remove): Just decrease xg_detached_menus.
20 (tearoff_activate): Increase xg_detached_menus and call
21 tearoff_remove when tearoff is removed.
22 (xg_keep_popup): Removed function.
23 (create_menus): Give add_tearoff_p as argument to recursive
24 call to create_menus.
25 (xg_create_widget): Use variables instead of multiple
26 strcmp. Tell create_menus to create tear off only for
27 menu bar menus.
28 (xg_update_menubar): Change title for a detached menu also.
29 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
30 of deep_p.
31 (xg_initialize): Initialize xg_detached_menus, remove
32 initialization of xg_did_tearoff.
33
34 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
35 xg_have_tear_offs returns non-zero.
36 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
37 call to xg_keep_popup.
38
64d4923e
AC
392003-11-01 Andrew Choi <akochoi@shaw.ca>
40
41 * macterm.c (XTread_socket): Handle menubar selection and grow
42 window only for mouseDown events.
43
6cc8bc07
JD
442003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
45
46 * xterm.c (x_term_init): For GTK part, increase x_initialized
47 to check for more than one display. Use error instead of return 0.
48
043131c4
AC
492003-10-31 Andrew Choi <akochoi@shaw.ca>
50
51 * unexmacosx.c (unrelocate): New function (contributed by Nozomu
52 Ando).
53 (copy_dysymtab): Call it.
54
bdda99a1
LT
552003-10-31 Luc Teirlinck <teirllm@auburn.edu>
56
57 * eval.c (Fdefvaralias): Doc fix.
58
800f42ff 592003-10-26 Luc Teirlinck <teirllm@auburn.edu>
0d11571e
LT
60
61 * data.c (Fsetplist): Doc fix.
62
ef35b389
LK
632003-10-14 Lute Kamstra <lute@gnu.org>
64
65 * window.c (Fset_window_fringes): Clarify docstring.
07107abc 66
ef35b389 672003-10-14 Kim F. Storm <storm@cua.dk>
07107abc
KS
68 * window.c (Fset_window_margins): Simplify arg checking.
69
f7005886
RS
702003-10-13 Richard M. Stallman <rms@gnu.org>
71
72 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
73 (print_partial_compiled_pattern): Replace assert with a printout.
74 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
75
76 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
77
78 * window.c (Fset_window_margins): Allow only integers as args.
79 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
80 Doc fixes.
81
9c0c2af5
LK
822003-10-13 Lute Kamstra <lute@gnu.org>
83
84 * window.c (Fset_window_fringes): Elaborate docstring.
85
3f080e4e
AC
862003-10-12 Andrew Choi <akochoi@shaw.ca>
87
a4887377
AC
88 * macterm.c (XTread_socket): Call DragWindow only for mouseDown
89 events.
90
3f080e4e
AC
91 * s/darwin.h (GC_MARK_STACK): Define.
92
0aa513ed
JD
932003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
94
95 * window.c (shrink_windows): New function.
96 (size_window): Call shrink_windows to calculate window sizes when
97 shrinking frame with more than one window.
98
6aa8858a
KS
992003-10-12 Kim F. Storm <storm@cua.dk>
100
101 * xdisp.c (compute_fringe_widths): Doc fix.
102
c2164d91
KH
1032003-10-08 Kenichi Handa <handa@m17n.org>
104
105 * coding.c (Fcoding_system_p): Return t for auto-loading coding
106 system.
107
f82ac129
KH
1082003-10-07 Kenichi Handa <handa@m17n.org>
109
110 * coding.c (Qcoding_system_define_form): New variable.
111 (syms_of_coding): Intern and staticpro it.
112 (Fcheck_coding_system): Try to autoload the definition of
113 CODING-SYSTEM.
114
9296c947
LT
1152003-10-05 Luc Teirlinck <teirllm@auburn.edu>
116
117 * fns.c (Frequire): Doc fix.
118
c1f0671a
JD
1192003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
120
3d8c3826
JD
121 * xfns.c (Fx_send_client_event): New function as a base for
122 manipulating extended window manager hints.
6dc15d98 123 (Fx_send_client_event): Remove unused variable s.
3d8c3826 124
068ae0fd
JD
125 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
126 that function is removed.
127
128 * xterm.c (x_set_offset): Use move_offset_left/top instead of
129 x/y_pixels_outer_diff.
130 (x_check_expected_move): Calculate move_offset_left/top.
131
132 * xterm.h (struct x_output): New members: move_offset_top/left.
133
134 * frame.c (x_set_frame_parameters): x_fullscreen_move removed,
135 call x_set_offset directly.
136
137 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
138
96f09305
JD
139 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
140
141 * xterm.c (x_delete_display): Free font names and font_encoder
142 in dpyinfo->font_table.
143
144 * xfns.c (Fx_close_connection): Only call XFreeFont here. xfree
145 of font names moved to x_delete_display.
146
c1f0671a
JD
147 * xterm.h (struct x_display_info): New member, wm_type.
148 (struct x_output): New members, expected_top/left and
149 check_expected_move.
150
151 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
152 is received.
153 (handle_one_xevent): x_check_expected_move renamed from
154 x_check_fullscreen_move
155 (x_set_offset): Only add WM decoration sizes to modified_top/left
156 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
157 (x_check_expected_move): Renamed from x_check_fullscreen_move.
158 Removed fullscreen specific code. Use check_expected_move,
159 expected_left/top instead. Also, set wm_type.
160 (x_term_init): Initialize wm_type to unknown.
161
162 * frame.c (x_fullscreen_move): Remove addition of WM decoration
163 sizes to move_x/y.
164
be2fdba9
KH
1652003-10-03 Kenichi Handa <handa@m17n.org>
166
167 * macterm.c (x_load_font): Clear all members of FONTP before start
168 filling them.
169
1702003-10-02 Kenichi Handa <handa@m17n.org>
171
172 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
173 before calling find_ccl_program_func. Call find_ccl_program_func
174 only when fontp->font_encoder is not NULL.
175
176 * xterm.c (x_load_font): Clear all members of FONTP before start
177 filling them.
178
26a6e439
JPW
1792003-10-03 John Paul Wallington <jpw@gnu.org>
180
181 * keymap.c (map_keymap): Don't abort when binding is a vector.
182
0d4c2dc2
JR
1832003-10-02 Jason Rumney <jasonr@gnu.org>
184
a63cf46f
JR
185 * makefile.w32-in (emacs.o, coding.o, bytecode.o): Sync
186 dependancies with Makefile.in.
187 (alloca.o): Remove.
188
0d4c2dc2
JR
189 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
190 filling them.
191
192 * w32bdf.c (w32_load_bdf_font): Likewise.
193
ab8f7d5c
RS
1942003-09-30 Richard M. Stallman <rms@gnu.org>
195
196 * term.c (set_tty_color_mode): Calculate current_mode_spec
197 regardless of value of VAL.
198
199 * intervals.c (graft_intervals_into_buffer):
200 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
201 Handle over_used when splitting UNDER.
202
2032003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
204
205 * regex.c (regex_compile): Free the stack when returning from function.
206
3413f972
KH
2072003-09-28 Kenichi Handa <handa@m17n.org>
208
209 * fontset.c (Finternal_char_font): Change return value to
210 cons (FONT-NAME . GLYPH-CODE).
211
40409f05
EZ
2122003-09-28 Eli Zaretskii <eliz@elta.co.il>
213
214 * term.c (tty_setup_colors): Treat any negative argument as -1.
215
f98ddc99
KH
2162003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
217
218 * process.c (send_process): Delete unused temp_buf.
219
66c8f1a8
DL
2202003-09-26 Dave Love <fx@gnu.org>
221
222 * xterm.c (x_bitmap_mask): Declare.
223
ca716c26
DL
2242003-09-25 Dave Love <fx@gnu.org>
225
226 * Makefile.in (fns.o): Depend on md5.h.
227
fbe57420
KS
2282003-09-25 Kim F. Storm <storm@cua.dk>
229
230 * window.c (set_window_buffer): Fix redisplay problems when
231 switching between buffers with different display margin widths.
232
ef6ae4ff
KS
2332003-09-23 Kim F. Storm <storm@cua.dk>
234
235 * process.c (set_socket_option): Fix :bindtodevice option.
236 (Fset_network_process_option): Update process contact list when
237 setting option succeeds.
238 (Fmake_network_process): Doc fix.
239
68e03c1c
DL
2402003-09-23 Dave Love <fx@gnu.org>
241
7146d1c1 242 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
68e03c1c 243
2f809aae
EZ
2442003-09-22 Eli Zaretskii <eliz@elta.co.il>
245
246 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
247 color mode is an integer number (it could be -1).
248
8fe7d8c8
RS
2492003-09-22 Richard M. Stallman <rms@gnu.org>
250
251 * intervals.c (graft_intervals_into_buffer): Correct the main loop
252 in the case where OVER is longer than UNDER.
253
2f71b5ea
MY
2542003-09-22 Masatake YAMATO <jet@gyve.org>
255
7146d1c1 256 * window.c (Fset_window_scroll_bars): Validate the value of
2f71b5ea 257 `vertical_type'.
7146d1c1 258
0c4da023
KS
2592003-09-21 Kim F. Storm <storm@cua.dk>
260
261 * frame.c (Vdefault_frame_scroll_bars): New variable.
262 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
263 (syms_of_frame): DEFVAR_LISP it, and initialize according to
264 window-system default scroll bar position.
265
b648413b
KS
266 * window.c (Fwindow_scroll_bars): Doc fix.
267
8f5b9e34
JD
2682003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
269
270 * xterm.c (x_set_offset): Take window manager decorations
271 into account.
272
b0f23edf
RS
2732003-09-19 Richard M. Stallman <rms@gnu.org>
274
275 * atimer.h: Don't include lisp.h.
276 (P_): Define it here (as well as elsewhere).
277
278 * print.c (Fprin1_to_string): Move the PRINTPREPARE
279 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
280
281 * data.c (Fvariable_binding_locus): New function.
282 (syms_of_data): defsubr it.
283 (Flocal_variable_p): Delete duplicate call to indirect_variable.
284
e1283999
DL
2852003-09-18 Dave Love <fx@gnu.org>
286
ad5f3636
DL
287 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
288
e1283999
DL
289 * process.c (Fnetwork_interface_info): Fix type error.
290 (Fnetwork_interface_list): Doc fix.
291 (read_process_output, read_process_output): Delete unused var.
292
b8c7fd71
KS
2932003-09-17 Kim F. Storm <storm@cua.dk>
294
295 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
296 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
297 (Fnetwork_interface_info): Check that ifreq struct has required
298 fields before accessing them; this requires that those fields are
299 defined as macros, which may be too restrictive on some platforms,
300 but it is better than failing on other platforms.
301 (syms_of_process): Only defsubr above fns when included.
302
11e0a411
DL
3032003-09-17 Dave Love <fx@gnu.org>
304
305 * unexalpha.c: Don't include varargs.h.
306
e9c50801
KS
3072003-09-17 Kim F. Storm <storm@cua.dk>
308
309 * process.c (Fset_process_sentinel): Add sentinel to childp plist
310 for network process.
311 (socket_options): Add `:' prefix to option names. Add optbit field.
312 (set_socket_option): Remove no_error arg and special handling of s < 0.
313 Return 1<<optbit for known option, 0 for unknown.
314 Do not interpret 0 as false for boolean option (only nil).
315 Pass failed option and value to report_file_error.
7146d1c1 316 (Fset_network_process_options): Replace by Fset_network_process_option.
e9c50801
KS
317 (Fset_network_process_option): New function to set just one option.
318 (Fmake_network_process): Allow :coding arg to be a cons.
319 Allow :server arg to be an integer specifying backlog size.
320 Remove :options arg, and allow options to be specified directly
321 as :KEY, VALUE pairs. Parse these options before binding socket.
322 As before, :reuseaddr t is default for a server process, but this
323 can now be disabled by specifying :reuseaddr nil.
324 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
325 (init_process): Availability of network options is now checked with
326 simpler syntax (featurep 'make-network-process :OPTION); use loop to
327 setup features.
328 (syms_of_process): Fix defsubr's for the replaced functions.
329
a0fc3644
DL
3302003-09-16 Dave Love <fx@gnu.org>
331
332 * Makefile.in: Depend on coding.h.
333
6df2a645
KS
3342003-09-14 Kim F. Storm <storm@cua.dk>
335
336 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
337 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
338 (syms_of_process): Defsubr them.
339
340 * config.in: Regenerate.
7146d1c1
SM
341
3422003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
343
344 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
345 * m/news-r6.h (XUNMARK): Remove.
346 * m/mips.h (XUNMARK): Remove.
347 * m/mips-siemens.h (XUNMARK): Remove.
348 * m/iris4d.h (XUNMARK): Remove.
349 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
350
0930c1a1
SM
3512003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
352
31003b9e
SM
353 * lisp.h (VALBITS): Don't remove 1 for the markbit.
354 (union Lisp_Object): Use unsigned int for types. Remove markbit.
355 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
356 (XTYPE): Use unsigned right-shift.
357 (XMARKBIT, XMARK, XUNMARK): Remove.
358
0930c1a1
SM
359 * alloc.c (init_intervals, init_symbol, init_marker):
360 Don't preallocate anything.
361 (Fgarbage_collect, mark_object): Ignore the markbit.
362
363 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
364
19bb0fcd 3652003-09-08 Lute Kamstra <lute@gnu.org>
5df034de
LK
366
367 * xdisp.c (pint2hrstr): New function.
368 (decode_mode_spec): Add `%i' and `%I' specs.
369 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
370 for `mode-line-format'.
371
03bb6a06
AS
3722003-09-07 Andreas Schwab <schwab@suse.de>
373
374 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
375 avoid warning.
376
2063d89c
EZ
3772003-09-07 Eli Zaretskii <eliz@elta.co.il>
378
0930c1a1 379 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
2063d89c 380
ed159bbf
KS
3812003-09-03 Kim F. Storm <storm@cua.dk>
382
383 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
384 change (superseded by 2002-08-30 change); the default blink-off
385 cursor is now again "no cursor".
386
fe64a394
JR
3872003-09-01 Jason Rumney <jasonr@gnu.org>
388
389 * makefile.w32-in (alloca.o): Remove.
390 (coding.o): Depend on intervals.h
391 (emacs.o, bytecode.o): Depend on window.h
392
c0175e24
DL
3932003-09-01 Dave Love <fx@gnu.org>
394
395 * Makefile.in (alloca.o): Remove commands.
396 (coding.o): Depend on intervals.h composite.h window.h.
397 (emacs.o): Depend on window.h keyboard.h keymap.h.
398 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
399 (bytecode.o): Depend on window.h.
400
a24d4cb2
JR
4012003-08-31 Jason Rumney <jasonr@gnu.org>
402
4bc2315e
JR
403 * w32term.c (w32_per_char_metric): Allow cached metrics to be
404 returned even when font_type is unknown.
405
a24d4cb2
JR
406 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
407
9d35adc7
JD
4082003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
409
410 * xterm.c (x_term_init): Initialize new fields in x_display_info.
411
412 * xterm.h (struct x_display_info): Add red/green/blue_bits and
413 *_offset.
414
415 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
416 calculate pixel value.
417
6f68b035
GM
4182003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
419
0930c1a1
SM
420 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
421 Don't tell redisplay display is accurate when it's actually been
422 paused for pending input.
6f68b035 423
4828b4d7
RS
4242003-08-29 Richard M. Stallman <rms@gnu.org>
425
426 * dispnew.c (adjust_glyph_matrix): Call window_box
427 whenever W is nonzero.
428
429 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
430 (Fkill_local_variable, Fmake_variable_frame_local)
0930c1a1 431 (Flocal_variable_p, Flocal_variable_if_set_p):
4828b4d7
RS
432 Use indirect_variable to trace thru variable aliases.
433
434 * config.in: Updated.
435
436 * callint.c (Fcall_interactively): Save and restore
437 Vthis_command, Vthis_original_command, real_this_command,
438 and current_kboard->Vlast_command.
439
440 * abbrev.c (Fexpand_abbrev): Insert before deleting.
441
e019878d
GM
4422003-08-29 Gerd Moellmann <gerd@gnu.org>
443
444 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
445
85478bc6
KH
4462003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
447
0930c1a1 448 * coding.c (decode_coding_iso2022): Initialize local variable c2.
85478bc6
KH
449 (decode_coding_sjis_big5): Likewise.
450
07ce82d3
JR
4512003-08-27 Jason Rumney <jasonr@gnu.org>
452
d3703de3
JR
453 * w32.c (sys_pipe): Protect against file descriptor overflow.
454
ee4a01d1
JR
455 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
456
07ce82d3
JR
457 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
458
72d19c66
LK
4592003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
460
461 * xfns.c (Vgtk_version_string): New variable.
462 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
463
5459e42a
EZ
4642003-08-24 Eli Zaretskii <eliz@elta.co.il>
465
0930c1a1 466 * term.c (term_init): Remove `const' from buffer_size's declaration.
3d8714e7 467
5459e42a
EZ
468 * Makefile.in (msdos.o): Depend on intervals.h.
469
0930c1a1 470 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
5459e42a 471
231d6cfb
JD
4722003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
473
474 * xterm.h (struct x_display_info): New fields: client_leader_window
475 and Xatom_wm_client_leader.
476
477 * xterm.c (x_initialize): Move call to x_session_initialize to ...
478 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
479
480 * xsmfns.c (create_client_leader_window): New function.
481 (x_session_initialize): Call create_client_leader_window, take
482 dpyinfo as argument.
483
484 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
485
486 * Makefile.in (xsmfns.o): Add more depenedencies.
487
afa88464
DL
4882003-08-21 Dave Love <fx@gnu.org>
489
490 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
491
f730033e
KH
4922003-08-21 Kenichi Handa <handa@m17n.org>
493
494 * term.c (term_init): Fix previous change; don't rely on the
495 length of `buffer' if TERMINFO is defined.
496
6dca786c
DL
4972003-08-20 Dave Love <fx@gnu.org>
498
499 * atimer.h: Include lisp.h.
500
501 * lisp.h (EMACS_LISP_H): New.
502 (popup_activated_flag): Don't declare.
503
504 * alloca.c: Some merging with gnulib. Change logic and doc
505 concerning (x)malloc/(x)free -- no longer Emacs-specific.
506 [DO_BLOCK_INPUT]: Don't include lisp.h.
507 (xmalloc, xfree): Declare.
508 (malloc): Don't declare.
509
0930c1a1 510 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
6dca786c
DL
511 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
512 atimer.h, blockinput.h.
513
514 * alloc.c (lisp_align_malloc): Change type of `aligned'.
515
516 * alloca.s: Removed.
517
3a06a6d9
RS
5182003-08-19 Gerd Moellmann <gerd@gnu.org>
519
520 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
521 use -lncurses.
522
523 * term.c (term_init): Use a buffer of size 4096 for tgetent since
524 FreeBSD returns something longer than 2044. Abort if the end of
525 the buffer is overwritten.
526
27eeee55
MB
5272003-08-19 Miles Bader <miles@gnu.org>
528
529 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
530
2f297815
GM
5312003-08-19 Gerd Moellmann <gerd@gnu.org>
532
f4446bbf
GM
533 * alloc.c (lisp_align_malloc): Check for memory full when
534 allocating ablocks, which also avoids freeing a pointer into an
535 ablocks structure.
536
537 * puresize.h (BASE_PURESIZE): Increase to 1100000.
538
0930c1a1 539 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
2f297815 540
0e7d7aae
RS
5412003-08-16 Richard M. Stallman <rms@gnu.org>
542
543 * editfns.c (Fencode_time): Doc fix.
544
5452003-08-16 David Ponce <david@dponce.com>
546
547 * fileio.c (Fwrite_region): Fix conditional expression to issue
548 the right message.
549
5502003-08-16 Juri Linkov <juri@jurta.org> (tiny change)
551
552 * syntax.c (Fforward_word): Argument changed to optional.
0930c1a1 553 Set default value to 1.
0e7d7aae 554
5d551295
KH
5552003-08-15 Kenichi Handa <handa@m17n.org>
556
557 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
558 what autoscaled.
559 (best_matching_font): Once we find a better scalable font, set
560 non_scalable_has_exact_height_p to 1.
561 (try_font_list): Call try_alternative_families to try any family
562 with the given registry.
563
1661e56b
AS
5642003-08-09 Andreas Schwab <schwab@suse.de>
565
f29181dc
AS
566 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
567
1661e56b
AS
568 * print.c (print_string): Fix printing of multibyte string with
569 nontrivial printcharfun.
570
465aa50a
JD
5712003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
572
573 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
574
575 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
576
e430e5ba
KH
5772003-07-31 Kenichi Handa <handa@m17n.org>
578
579 * process.c (read_process_output): Return the actually read bytes
580 instead of the result of decoding.
581
97e7188e
KH
5822003-07-31 Kenichi Handa <handa@m17n.org>
583
584 * xterm.h (struct x_bitmap_record): New member have_mask.
585
586 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
587 to 0.
588 (x_create_bitmap_from_file): Likewise.
589 (x_destroy_bitmap): Check have_mask member before freeing a mask.
590 (x_destroy_all_bitmaps): Likewise.
591 (x_create_bitmap_mask): Set have_mask member to 1.
592
b53094d6
RS
5932003-07-30 Richard M. Stallman <rms@gnu.org>
594
595 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
596
631f2082
JD
5972003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
598
599 * gtkutil.c (xg_mark_data): Update calls to mark_object.
600
c855f2ca
RS
6012003-07-29 Richard M. Stallman <rms@gnu.org>
602
603 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
604 Conditionalize XIM code on HAVE_XIM.
605
606 * fns.c (Fclear_string): New function.
607 (syms_of_fns): defsubr it.
608
17e6d491
KH
6092003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> (tiny change)
610
0930c1a1 611 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
17e6d491 612
29ea8ae9
SM
6132003-07-22 Stefan Monnier <monnier@cs.yale.edu>
614
615 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
616
617 * buffer.c (delete_all_overlays): New function.
618 * buffer.h (delete_all_overlays): Declare.
619 * coding.c (run_pre_post_conversion_on_str):
620 * print.c (temp_output_buffer_setup):
621 * fileio.c (Finsert_file_contents):
622 * minibuf.c (get_minibuffer): Use it.
623
1dd7ccf2
AC
6242003-07-22 Andrew Choi <akochoi@shaw.ca>
625
626 * unexmacosx.c (unexec_regions_sort_compare):
627 (unexec_regions_merge): New functions. Sort and merge unexec
628 regions before dumping them.
629
f57bd967
DL
6302003-07-22 Dave Love <fx@gnu.org>
631
632 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
633
7cdee936
SM
6342003-07-21 Stefan Monnier <monnier@cs.yale.edu>
635
636 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
637 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
638 MARKBIT as the gcmarkbit for strings.
639
e50886d3
RS
6402003-07-21 Richard M. Stallman <rms@gnu.org>
641
642 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
643
29ea8ae9 644 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
e50886d3
RS
645 (syms_of_fns): Corresponding change.
646
647 * alloc.c (syms_of_alloc): Doc fixes.
648
6492003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
650
651 * s/netbsd.h: Use -Wl syntax.
652
fdc39b59
RS
6532003-07-17 Richard M. Stallman <rms@gnu.org>
654
655 * xterm.c (xim_initialize): Redo 6/24 change.
656
9c53385f
SM
6572003-07-15 Stefan Monnier <monnier@cs.yale.edu>
658
659 * buffer.c (copy_overlays): Use EMACS_INT for positions.
660 (Fswitch_to_buffer): Don't signal an error when switching to the same
661 buffer in a dedicated window.
662
663 * alloc.c: Use bitmaps for cons, as was done for floats.
664 (init_float, init_cons): Let the normal code allocate the first block.
665 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
666 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
667 New macros.
668 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
669 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
670 (live_cons_p): Check the pointer is not past the `conses' array.
671 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
672 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
673 (survives_gc_p): Use CONS_MARKED_P and simplify.
674 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
675
dde13196
PE
6762003-07-13 Paul Eggert <eggert@twinsun.com>
677
678 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
679 puts it into BSS instead, at least on Solaris 8 and 9.
680 This is a valid optimization, and it may occur on other platforms,
681 so Emacs should not assume that initializing a static variable to
682 zero puts it into data.
683 * alloc.c (pure, staticvec):
684 Initialize these arrays to nonzero, so that they're not
685 put into BSS by that optimization.
686
a801bc34
SM
6872003-07-13 Stefan Monnier <monnier@cs.yale.edu>
688
689 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
690 (lisp_align_malloc): Use posix_memalign is available.
691 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
692 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
693 for consistency. Update users.
694
0c8b2afa
RS
6952003-07-13 Richard M. Stallman <rms@gnu.org>
696
697 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
698
668c2ab0
JB
6992003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
700
701 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
702 and use the Gtk+ function gtk_window_icon_from_file if available.
703
704 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
705 handle mask of bitmaps.
706 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
707 mask property.
708 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
709
710 * xterm.h (xg_set_icon): New function.
711
800bebe3
RS
7122003-07-12 Paul Eggert <eggert@twinsun.com>
713
714 * unexelf.c (unexec): Consider a section to precede the .bss
715 section if its addresses overlap that of .bss.
716
69e38995
RS
7172003-07-12 Richard M. Stallman <rms@gnu.org>
718
719 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
720
721 * config.in (HAVE_CRTIN): Add #undef.
722 (INLINE): Really inline only if OPTIMIZE is defined.
723
724 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
725 END_FILES_1.
726 (START_FILES_1, END_FILES_1): New macros (conditional).
a801bc34 727 (LD_SWITCH_SYSTEM_TEMACS): Define.
69e38995
RS
728
729 * s/openbsd.h: Don't include bsd4-3.h.
a801bc34
SM
730 (TERMINFO): Define.
731 (LIBS_TERMCAP): Define.
732 (LD_SWITCH_SYSTEM): Define (two definitions).
69e38995
RS
733
734 * xfns.c: Include libpng/png.h instead of png.h.
735
f1d0c238
AS
7362003-07-11 Andreas Schwab <schwab@suse.de>
737
738 * buffer.c (modify_overlay): Update prototype.
739 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
740 Likewise.
741
5f6bf5fe
SM
7422003-07-09 Stefan Monnier <monnier@cs.yale.edu>
743
744 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
745 (struct interval): Move to intervals.h.
746 (struct Lisp_Marker): Use EMACS_INT for position info.
747 (forward_point): Remove prototype of defunct function.
748 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
749 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
750 (syms_of_textprop, set_text_properties): Remove prototypes that are
751 already in intervals.h.
752
753 * intervals.h (struct interval): Move from lisp.h.
754 Use EMACS_INT for position and size info.
755
756 * coding.c: Include intervals.h for Fset_text_properties.
757
758 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
759 position and length information.
760
2765b457
SM
7612003-07-09 Stefan Monnier <monnier@cs.yale.edu>
762
763 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
764 position and length information.
765
2410d73a
SM
7662003-07-09 Stefan Monnier <monnier@cs.yale.edu>
767
768 Change overlays_after and overlays_before so the overlays themselves
769 are linked into lists, rather than using cons cells. After all each
770 Lisp_Misc already occupies 5 words, so we can add a `next' field to
771 Lisp_Overlay for free and save up one cons cell per overlay (not
772 to mention one indirection when traversing the list of overlay).
773
774 * lisp.h (struct Lisp_Overlay): New field `next'.
775
776 * buffer.h (struct buffer): Change overlays_before and overlays_after
777 from Lisp lists of overlays to pointers to overlays.
778
779 * buffer.c (overlay_strings, recenter_overlay_lists):
780 Fix typo in eassert in last commit.
781 (unchain_overlay): New function.
782 (add_overlay_mod_hooklist): Use AREF.
783 (copy_overlays, reset_buffer, overlays_at, overlays_in)
784 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
785 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
786 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
787 (report_overlay_modification, evaporate_overlays, init_buffer_once):
788 Adjust to new type of overlays_(before|after).
789
790 * alloc.c (mark_object): Mark the new `next' field of overlays.
791 (mark_buffer): Manually mark the overlays_(after|before) fields.
792
793 * coding.c (run_pre_post_conversion_on_str):
794 * editfns.c (overlays_around):
795 * xdisp.c (load_overlay_strings):
796 * fileio.c (Finsert_file_contents):
797 * indent.c (current_column):
798 * insdel.c (signal_before_change, signal_after_change):
799 * intervals.c (set_point_both):
800 * print.c (temp_output_buffer_setup): Use new type for
801 overlays_(before|after).
802
04812929
SM
8032003-07-08 Stefan Monnier <monnier@cs.yale.edu>
804
805 * buffer.c (report_overlay_modification): Don't run hooks while
806 traversing the list of overlays.
807
808 * buffer.h (struct buffer): Use an int for overlay_center.
809 (overlays_at, evaporate_overlays, recenter_overlay_lists)
810 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
811
812 * buffer.c (reset_buffer, recenter_overlay_lists)
813 (adjust_overlays_for_insert, adjust_overlays_for_delete)
814 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
815 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
816 (overlays_at, evaporate_overlays, recenter_overlay_lists)
817 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
818
819 * xdisp.c (fast_find_position): Remove unused var.
820
821 * cmds.c (Qexpand_abbrev): New sym.
822 (syms_of_cmds): Initialize it.
823 (internal_self_insert): Use it to call expand-abbrev.
824
2e7ecf15
KS
8252003-07-09 Kim F. Storm <storm@cua.dk>
826
827 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if emacs
828 was configured with --without-xim.
42f81f64 829 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
2e7ecf15 830
c6de56a0
RS
8312003-07-07 Richard M. Stallman <rms@gnu.org>
832
833 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
834
835 * alloc.c (Fgarbage_collect): Doc fix.
836
b93fb365
KH
8372003-07-07 Nozomu Ando <nand@mac.com> (tiny change)
838
839 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
840
bfe1a3f7
SM
8412003-07-06 Stefan Monnier <monnier@cs.yale.edu>
842
04812929
SM
843 * minibuf.c (read_minibuf): UNGCPRO before returning.
844 (Ftry_completion, Fall_completions): Doc fix.
845
bfe1a3f7
SM
846 * alloc.c (live_float_p): Check that p is not past the `floats' array,
847 now that `floats' is not the last element of the struct any more.
848
ee79d1aa
JR
8492003-07-06 Jason Rumney <jasonr@gnu.org>
850
851 * w32term.h (ClipboardSequence_Proc): New type.
852
853 * w32fns.c (clipboard_sequence_fn): New variable.
854 (globals_of_w32fns): Initialize it.
855
856 * w32select.c (last_clipboard_sequence_number): New variable.
857 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
858 number if possible.
859
49723c04
SM
8602003-07-06 Stefan Monnier <monnier@cs.yale.edu>
861
4698665f
SM
862 * m/amdx86-64.h (MARKBIT):
863 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
864 MARKBIT and ARRAY_MARK_FLAG any more.
865
866 * m/hp800.h (XSETMARKBIT):
867 * m/sr2k.h (XSETMARKBIT):
868 * lisp.h (XSETMARKBIT): Remove unused macro.
869
49723c04
SM
870 * lisp.h (mark_object): Change prototype.
871
872 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
873 (last_marked): Change accordingly.
874 (mark_interval, mark_maybe_object, mark_maybe_pointer)
875 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
876 (mark_buffer): Update calls to mark_object.
877
878 * bytecode.c (mark_byte_stack):
879 * fns.c (sweep_weak_table):
880 * keyboard.c (mark_kboards): Update calls to mark_object.
881
1d660eca
JR
8822003-07-06 Jason Rumney <jasonr@gnu.org>
883
884 * alloc.c (struct ablock): Only include padding when there is some.
885
618b5ae4
SM
8862003-07-04 Stefan Monnier <monnier@cs.yale.edu>
887
888 * alloc.c (ALIGN): Add casts to simplify usage.
889 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
890 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
891 (struct ablock, struct ablocks): New types.
892 (free_ablock): New global var.
893 (lisp_align_malloc, lisp_align_free): New functions.
894 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
895 (struct float_block): Reorder and add gcmarkbits.
896 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
897 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
898 (init_float, make_float): Use lisp_align_malloc.
899 (free_float, live_float_p): Don't use `type' any more.
900 (make_float): Use FLOAT_UNMARK to access to mark bit.
901 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
902 Use FLOAT_MARKED_P to access the mark bit.
903 (pure_alloc): Simplify use of ALIGN.
904 (mark_object): Use FLOAT_MARK to access the mark bit.
905 (gc_sweep): Use new macros to access the float's mark bit.
906 (init_alloc_once): Init free_ablock.
907
908 * lisp.h (struct Lisp_Float): Remove unused field `type'.
909
3ef06d12
SM
9102003-06-27 Stefan Monnier <monnier@cs.yale.edu>
911
912 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
913 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
914 (allocate_buffer): Move.
915 (string_bytes): Don't mask markbit of `size_byte'.
916 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
917 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
918 Use the `size' field of buffers (rather than the `name' field) for
919 the mark bit, as is done for all other vectorlike objects.
920 Use the new macros to access the mark bit of vectorlike objects.
921
e81043aa
RS
9222003-06-26 Richard M. Stallman <rms@gnu.org>
923
924 * puresize.h (BASE_PURESIZE): Increment base size.
925
926 * xdisp.c (fast_find_position): Enable Gerd's new definition.
927
928 * xterm.c (xim_initialize): Undo previous change.
929
2d0834cc
SM
9302003-06-26 Stefan Monnier <monnier@cs.yale.edu>
931
932 * alloc.c (survives_gc_p): Simplify.
933
934 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
935
936 * window.c (Fset_window_dedicated_p): Simplify.
937 (display_buffer_1): Don't raise the win from which minibuf was entered.
938 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
939 (Fminibuffer_selected_window): Simplify.
940
941 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
942
943 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
944 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
945
946 * insdel.c (check_markers, adjust_markers_for_delete)
947 (adjust_markers_for_insert, adjust_markers_for_replace)
948 (prepare_to_modify_buffer, RESTORE_VALUE):
949 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
950 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
951 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
952 * alloc.c (Fmake_marker, free_marker, gc_sweep):
953 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
954 * editfns.c (save_excursion_restore, transpose_markers):
955 * window.c (delete_window):
956 * xdisp.c (message_dolog): Update for new types.
957
d54ae3d8
JD
9582003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
959
a5f696ac
JD
960 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
961 (realize_default_face): Use default_face_done_p for the force_p
2d0834cc 962 argument to set_lface_from_font_name. Set default_face_done_p to one.
a5f696ac
JD
963
964 * frame.c (make_frame): Initialize default_face_done_p.
965
966 * frame.h (struct frame): Add default_face_done_p.
967
d54ae3d8
JD
968 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
969 will be defined.
970
2336fe58
SM
9712003-06-25 Stefan Monnier <monnier@cs.yale.edu>
972
973 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
974 Initialize the new field `gcmarkbit'.
975 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
976 (mark_interval_tree): Don't mark the tree separately from the nodes.
977 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
978 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
979 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
980
981 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
982 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
983 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
984 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
985 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
986
bcea31c2
DL
9872003-06-24 Dave Love <fx@gnu.org>
988
989 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
990
991 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
992 from gnulib.
993
2601f59e
RS
9942003-06-21 Richard M. Stallman <rms@gnu.org>
995
996 * fileio.c (Fwrite_region): Alternate messages
997 for append and partial write.
998
999 * keyboard.c (read_key_sequence): When converting upcase fn key to
1000 downcase, update fkey and keytran so `backspace' gets translated.
1001
1002 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
1003
1004 * process.c (wait_reading_process_input): Don't signal SIGIO
1005 in batch mode.
1006
b5d2c621
KH
10072003-06-17 Kenichi Handa <handa@m17n.org>
1008
1009 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
1010 composite.h.
1011
1012 * xselect.c: Don't include charset.h, coding.h, composite.h.
1013 (Qforeign_selection): New variable.
1014 (syms_of_xselect): Intern and static it.
1015 (selection_data_to_lisp_data): Return a unibyte string made from
1016 data with `foreign-selection' text property.
1017
6793bc63
SM
10182003-06-15 Stefan Monnier <monnier@cs.yale.edu>
1019
1020 * termhooks.h (EVENT_INIT): New macro.
1021
1022 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
1023
1024 * alloc.c (mark_kboards): Move to keyboard.c.
1025
1026 * keyboard.c (record_asynch_buffer_change, read_avail_input):
1027 * xterm.c (x_dispatch_event):
1028 * xmenu.c (find_and_call_menu_selection):
1029 * xdisp.c (handle_tool_bar_click):
1030 * w32menu.c (menubar_selection_callback):
1031 * sysdep.c (kbd_input_ast, read_input_waiting):
1032 * msdos.c (dos_rawgetc):
1033 * macterm.c (mac_check_for_quit_char):
1034 * macmenu.c (menubar_selection_callback):
1035 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
1036 data to kbd_buffer_store_event.
1037
b3ea810c
KS
10382003-06-15 Kim F. Storm <storm@cua.dk>
1039
1040 * xdisp.c (x_fix_overlapping_area): Always use area relative X
6793bc63 1041 to fix redisplay problem with tall characters (such as \e,AC\e(B).
b3ea810c 1042
b8f75eda
KG
10432003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
1044
1045 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
1046
ba92ce48
KH
10472003-06-12 Kenichi Handa <handa@m17n.org>
1048
1049 * fileio.c (Fwrite_region): Save and restore restriction.
1050
b80263be
DL
10512003-06-12 Dave Love <fx@gnu.org>
1052
1053 * alloca.c (alloca): Declare arg as size_t.
1054
6793bc63
SM
1055 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
1056 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
b80263be 1057
b23c0a83
DL
10582003-06-11 Dave Love <fx@gnu.org>
1059
1060 * search.c (shrink_regexp_cache): Use xrealloc.
1061 (syms_of_search): Use xmalloc.
1062
700e47c2
KS
10632003-06-10 Kim F. Storm <storm@cua.dk>
1064
1065 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
1066 Adjust phys_cursor.x to be relative to window box, rather than
1067 text area before checking -- to ensure cursor is redrawn when
1068 exposing window.
1069 Note: This also fixes a similar (older) bug if display margins
1070 are present.
1071
f11aa0b2
KH
10722003-06-06 Kenichi Handa <handa@m17n.org>
1073
1074 * coding.c (encoding_buffer_size): If coding->type is
1075 coding_type_ccl, double magnification on CRLF encoding.
1076
3d143690
JR
10772003-06-06 Jason Rumney <jasonr@gnu.org>
1078
1079 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
1080 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
1081
1082 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
1083 Mac too.
1084
f16205ca
DL
10852003-06-05 Dave Love <fx@gnu.org>
1086
b23c0a83
DL
1087 * strftime.c: Merge changes from gnulib.
1088
f16205ca
DL
1089 * mktime.c (__mktime_internal): Merge changes from gnulib
1090 involving year 69 and dst2.
1091
1092 Changes to merge with gnulib version and be consistent with the
1093 autoconf test:
1094
6793bc63
SM
1095 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
1096 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
f16205ca
DL
1097 [HAVE_LOCALE_H]: Include locale.h.
1098 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
1099
9b87a0bc
KS
11002003-06-05 Kim F. Storm <storm@cua.dk>
1101
1102 * window.c (coordinates_in_window): Convert X and Y to window
1103 relative coordinates inside mode-line and header-line parts.
1104 Convert X and Y to margin area relative coordinates inside left
1105 and right display margin parts.
1106
5a8a15ec
JR
11072003-06-05 Jason Rumney <jasonr@gnu.org>
1108
1109 * w32fns.c (add_system_logical_colors_to_map): New function.
1110 (Fx_open_connection): Use it.
1111
01ed8ff1
SM
11122003-06-04 Stefan Monnier <monnier@cs.yale.edu>
1113
1114 * process.c (allocate_pty): Revert part of the previous patch.
1115 (Faccept_process_output): Simplify.
1116
b427b65d
JR
11172003-06-04 Jason Rumney <jasonr@gnu.org>
1118
1119 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
1120
1121 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
1122 (lispy_mouse_wheel_names): Remove.
1123 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
1124 Always define drag_and_drop_syms.
1125
1126 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
1127 WHEEL_EVENT events.
1128
914a8c47
SM
11292003-06-03 Stefan Monnier <monnier@cs.yale.edu>
1130
01ed8ff1
SM
1131 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
1132
914a8c47
SM
1133 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
1134
adcb132c
JD
11352003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1136
1137 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
1138 menu item label.
1139
be781fa7
RS
11402003-06-03 Richard M. Stallman <rms@gnu.org>
1141
1142 * window.c (Fwindow_edges): Doc fix.
1143 (Fwindow_pixel_edges, Fwindow_inside_edges)
1144 (Fwindow_inside_pixel_edges): New functions.
1145 (syms_of_window): defsubr them.
1146
1147 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
1148 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
1149
914a8c47
SM
11502003-06-02 Stefan Monnier <monnier@cs.yale.edu>
1151
1152 * dispnew.c (Fsit_for): Don't lie about the number of args.
1153
5b07197a
DL
11542003-06-02 Dave Love <fx@gnu.org>
1155
1156 * callproc.c: Use HAVE_FCNTL_H, not USG5.
1157 (syms_of_callproc) <process-environment>: Doc fix.
1158
1159 * doc.c: Use HAVE_FCNTL_H, not USG5.
1160
1161 * xfaces.c (font_rescale_ratio): Fix for K&R.
1162
1163 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
1164
1165 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
1166
1167 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
1168
1169 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
1170 (xg_create_frame_widgets): Use ENCODE_UTF_8.
1171
1172 * xterm.c (Qutf_8): Moved to coding.c
1173
1174 * xmenu.c (ENCODE_MENU_STRING): New.
1175 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
1176 Use it.
1177
1178 * coding.h (ENCODE_UTF_8): New.
1179 (Qutf_8): Declare.
1180
1181 * coding.c (Qutf_8): New.
1182 (syms_of_coding): Intern it.
1183
1184 * fns.c: Doc fixes.
1185
7335b336
KH
11862003-06-02 Kenichi Handa <handa@m17n.org>
1187
1188 * buffer.c (Fset_buffer_multibyte): Fix previous change.
1189
914a8c47
SM
11902003-06-01 Stefan Monnier <monnier@cs.yale.edu>
1191
1192 * lread.c (openp): Make sure STR is a string.
1193
9862c135
JR
11942003-06-01 David Ponce <david@dponce.com>
1195
1196 * termhooks.h (enum event_kind): Added new WHEEL_EVENT event.
1197 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
1198
1199 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
1200 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
1201 (discard_mouse_events): Discard WHEEL_EVENT events too.
1202 (lispy_wheel_names, wheel_syms): New.
1203 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
1204 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX
1205 defined.
914a8c47 1206 (make_lispy_event): Add WHEEL_EVENT handler.
9862c135
JR
1207
1208 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
1209 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
1210 WHEEL_EVENT events.
1211
f984e73e
JPW
12122003-05-31 John Paul Wallington <jpw@gnu.org>
1213
1214 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
1215 timer are in lisp/emacs-lisp.
1216
1efcd78f
KH
12172003-05-31 Kenichi Handa <handa@m17n.org>
1218
458c8af4
KH
1219 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
1220 region when a buffer is changed to unibyte.
1221
1efcd78f
KH
1222 * charset.h (VALID_LEADING_CODE_P): New macro.
1223 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
1224
778e2804
KH
1225 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
1226 is nonzero, accept multibyte form of eight-bit-control chars.
1227 (decode_composition_emacs_mule): Likewise.
1228 (decode_coding_emacs_mule): Likewise.
1229 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
1230 multibyte form of eight-bit-control chars.
1231
1232 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
1233 (Finsert_file_contents): If coding-system-for-read is bound to
1234 Qauto_save_coding, use the coding system emacs-mule with special
1235 setting for recovering a file.
1236 (choose_write_coding_system): On auto saving, use the coding
1237 system emacs-mule with special setting for auto saving.
1238 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
1239
034060e4
KH
12402003-05-30 Kenichi Handa <handa@m17n.org>
1241
1242 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
1243 properly before calling ccl_driver.
1244
778e2804 1245 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
034060e4
KH
1246
1247 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is
1248 nonzero.
1249 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
1250 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
1251
595f5aa5
GM
12522003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
1253
1254 * xfaces.c (realize_default_face): Do not abort if lface is
1255 non-existent - reverts change from 2003-05-19.
1256
103e0180
KH
12572003-05-29 Kenichi Handa <handa@m17n.org>
1258
1259 * coding.c (decode_coding_iso2022): Pay attention to the byte
1260 sequence of CTEXT extended segment, and retain those bytes as is.
1261
12622003-05-28 Kenichi Handa <handa@m17n.org>
1263
1264 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjusted for the name change
1265 of CODING_REPLACEMENT_CHARACTER.
1266 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
1267 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
1268 check this flag on encoding.
1269 (encode_coding_sjis_big5): Check
1270 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
1271 (Fset_terminal_coding_system_internal): Set
1272 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
1273 instead of setting CODING_FLAG_ISO_SAFE flag in
1274 terminal_coding.flags.
1275
1276 * coding.h (CODING_REPLACEMENT_CHARACTER): Renamed from
1277 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
1278 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
1279
ff6a3bfb 12802003-05-28 Richard M. Stallman <rms@gnu.org>
45f266dc 1281
ff6a3bfb
RS
1282 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
1283
1284 * eval.c (unbind_to): Move init of this_binding to separate statement.
45f266dc 1285
1963c428
KS
12862003-05-28 Kim F. Storm <storm@cua.dk>
1287
1288 * xdisp.c (expose_window): Fix error in calculation of
1289 window relative coordinates of area to redisplay.
1290
2b5d4601
JR
12912003-05-27 Jason Rumney <jasonr@gnu.org>
1292
1293 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
1294
1c64a4a2
JB
12952003-05-27 David Ponce <david@dponce.com>
1296
1297 Handle W32 mouse wheel events as mouse click events, like in X.
1298
1299 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
1300 MOUSE_WHEEL_EVENT anymore.
1301
1302 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
1303 Scrolling down/up the mouse wheel is respectively mapped to mouse
1304 button 4 and 5.
1305 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
1306 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
1307 WM_MOUSEWHEEL events.
1308
2d031b89
AS
13092003-05-27 Andreas Schwab <schwab@suse.de>
1310
20464fdf
AS
1311 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
1312
2d031b89
AS
1313 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
1314 partially visible line.
1315
1316 * alloc.c (Fgarbage_collect): Fix last change.
1317
97bc76d4
JPW
13182003-05-26 John Paul Wallington <jpw@gnu.org>
1319
1320 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
1321
56613f06
SM
13222003-05-25 Stefan Monnier <monnier@cs.yale.edu>
1323
1324 * window.c (Fset_window_buffer): Add type of `keep_margins'.
1325 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
1326
1327 * window.h (window_box_text_cols): Declare.
1328
1329 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
1330 (x_draw_vertical_border): Remove unused var `f'.
1331
1332 * xfaces.c (build_scalable_font_name): Remove `unused var
1333 pixel_size' warning.
1334
1335 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
1336
1337 * unexelf.c (unexec): Remove `unused var n' warning.
1338
1339 * strftime.c (my_strftime_localtime_r): Remove `defined but
1340 unused' warning.
1341
1342 * process.c (allocate_pty): Remove `unused var stb' and
1343 `cp might be used uninitialized' warnings.
1344
1345 * dispnew.c (mode_line_string): Remove unused var `f'.
1346
1347 * coding.c (find_safe_codings): Remove unused var `i'.
1348
1349 * bytecode.c (Fbyte_code): Remove `unused val' warning.
1350
1351 * buffer.c (Fkill_buffer): Remove unused var `list'.
1352
1353 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
1354
93421a1f
JD
13552003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1356
1357 * frame.c (make_frame): Condition want_fullscreen with
1358 HAVE_WINDOW_SYSTEM.
1359
c4b8aebc
JB
13602003-05-25 Juanma Barranquero <lektu@terra.es>
1361
1362 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
1363 (Fwindow_scroll_bars): Fix typo in docstring.
1364
0416870b
KS
13652003-05-24 Kim F. Storm <storm@cua.dk>
1366
1367 The following changes serve several purposes:
1368
1369 1) Swap the position of fringes and display margins in windows, i.e.
1370 the fringes are now displayed between the margins and the text area
1371 (by default).
1372
1373 2) Allow fringe and scroll bar parameters to be set per-buffer and
1374 per-window (like display margins). Such settings are now stored
1375 in window configurations, preserved when frames are resized, and
9018a88e 1376 copied when windows are split vertically or horizontally.
0416870b
KS
1377 Several bugs related to display margins have been fixed.
1378
1379 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
9018a88e 1380
0416870b
KS
1381 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
1382 rather than FRAME_WIDTH (FRAME_FONT (f)).
1383
1384 5) Introduce a consistent naming of variables, members and macros
1385 depending on whether their value is measured in pixels or in
1386 canonical columns/lines. Pixel dimensions are named *_width and
1387 *_height, while canonical columns/lines are named *_cols and
1388 *_lines. Pixel positions are named *_x and *_y, while column/line
1389 positions are named *_col and *_line.
1390
1391 6) Consolidate more of the X, W32, and MAC gui code by moving
1392 common data into struct frame, and generalize it for the non-gui
1393 case by using suitable defaults.
1394
1395 7) Cleanup and consolidate the macros controlling frame and window
1396 layout into frame.h and window.h, and generalize the use of the
1397 various window_box_* functions (enhanced to handle the new fringe
1398 position and the per-window fringe and scroll bar settings).
1399
1400 * frame.h (struct frame): Rename members height to text_lines,
1401 width to text_cols, window_height to total_lines, window_width to
1402 total_cols, new_height to new_text_lines, new_width to
1403 new_text_cols. All uses changed.
1404 (struct frame): New members which consolidate common members of
1405 x_output, w32_output, and mac_output structures: left_pos,
1406 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
1407 win_gravity, size_hint_flags, border_width, internal_border_width,
1408 line_height, fringe_cols, left_fringe_width, right_fringe_width,
1409 want_fullscreen. All uses changed.
1410 (struct frame): New member column_width contaning the canonical
1411 column width, analogue to line_height. All uses changed.
1412 (struct frame): Rename members scroll_bar_pixel_width to
1413 config_scroll_bar_width, and scroll_bar_cols to
1414 config_scroll_bar_cols. All uses changed.
1415 (struct frame): New member scroll_bar_actual_width which
1416 consolidates and renames the vertical_scroll_bar_extra member of
1417 x_output, w32_output, and mac_output structures. All uses changed.
1418 (FRAME_PIXEL_HEIGHT): Renamed from PIXEL_HEIGHT and moved
1419 from x/w32/macterm.h files. All uses changed. Also change code
1420 which referred to f->output_data...->pixel_height.
1421 (FRAME_PIXEL_WIDTH): Renamed from PIXEL_WIDTH and moved
1422 from x/w32/macterm.h files. All uses changed. Also change code
1423 which referred to f->output_data...->pixel_width.
1424 (FRAME_LINES): Renamed from FRAME_HEIGHT. All uses changed.
1425 Also change code which referred to f->height.
1426 (FRAME_COLS): Renamed from FRAME_WIDTH. All uses changed.
1427 Also change code which referred to f->width.
1428 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
1429 to update new_text_lines and new_text_cols members directly.
1430 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Renamed from
1431 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
1432 (FRAME_CONFIG_SCROLL_BAR_COLS): Renamed from
1433 FRAME_SCROLL_BAR_COLS. All uses changed.
1434 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
1435 Renamed from FRAME_LEFT_SCROLL_BAR_WIDTH and
1436 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
1437 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
1438 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
1439 (FRAME_TOTAL_COLS): Renamed from FRAME_WINDOW_WIDTH.
1440 (SET_FRAME_COLS): Renamed from SET_FRAME_WIDTH.
1441 (FRAME_TOTAL_COLS_ARG): Renamed from FRAME_WINDOW_WIDTH_ARG.
1442 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
1443 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
1444 (FRAME_LINE_HEIGHT): Renamed from CANON_Y_UNIT. Unconditionally
1445 return line_height member (it now has proper value also for
1446 non-window frames).
1447 (FRAME_COLUMN_WIDTH): Renamed from CANON_X_UNIT. Unconditionally
1448 return new column_width member (rather than the default font width).
1449 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
1450 (FRAME_RIGHT_FRINGE_WIDTH): Renamed from FRAME_X_... and moved
1451 from x/w32/macterm.h files. Unconditionally return corresponding
1452 member of frame structure (they now have proper values also for
1453 non-window frames).
1454 (FRAME_TOTAL_FRINGE_WIDTH): Renamed from FRAME_FRINGE_WIDTH.
1455 Calculate return value from left and right widths.
1456 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
1457 internal_border_width member (has proper value for non-window frame).
1458 (FRAME_PIXEL_X_FROM_CANON_X): Renamed from PIXEL_X_FROM_CANON_X.
1459 (FRAME_PIXEL_Y_FROM_CANON_Y): Renamed from PIXEL_Y_FROM_CANON_Y.
1460 (FRAME_CANON_X_FROM_PIXEL_X): Renamed from CANON_X_FROM_PIXEL_X.
1461 (FRAME_CANON_Y_FROM_PIXEL_Y): Renamed from CANON_Y_FROM_PIXEL_Y.
1462 (FRAME_LINE_TO_PIXEL_Y): Renamed from CHAR_TO_PIXEL_ROW,
1463 consolidated from xterm.h, macterm.h, and w32term.h.
1464 (FRAME_COL_TO_PIXEL_X): Renamed from CHAR_TO_PIXEL_COL,
1465 consolidated from xterm.h, macterm.h, and w32term.h.
1466 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Renamed from
1467 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
1468 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Renamed from
1469 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
1470 (FRAME_PIXEL_Y_TO_LINE): Renamed from PIXEL_TO_CHAR_ROW
1471 consolidated from x/mac/w32term.h.
1472 (FRAME_PIXEL_X_TO_COL): Renamed from PIXEL_TO_CHAR_COL
1473 consolidated from x/mac/w32term.h.
1474 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Renamed from
1475 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
1476 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Renamed from
1477 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
1478
1479 * window.h (struct window): Rename members left to left_col,
1480 top to top_line, height to total_lines, width to total_cols,
1481 left_margin_width to left_margin_cols, right_margin_width to
1482 right_margin_cols, orig_height to orig_total_lines, orig_top to
1483 orig_top_line. All uses changed.
1484 (struct window): New members left_fringe_width, right_fringe_width,
1485 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
1486 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
1487 New macros primarily used to simplify other macros.
1488 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
1489 referred to XINT (w->width).
1490 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
1491 referred to XINT (w->height).
1492 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
1493 referred to XINT (w->width) * canon_x_unit.
1494 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
1495 referred to XINT (w->height) * canon_y_unit.
1496 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
1497 referred to XINT (w->left).
1498 (WINDOW_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_EDGE. Change
1499 all uses and code that referred to XINT (w->left) + XINT (w->width).
1500 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
1501 referred to XINT (w->top).
1502 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
1503 referred to XINT (w->top) + XINT (w->height).
1504 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
1505 referred to XINT (w->left) * canon_x_unit.
1506 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
1507 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
1508 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
1509 referred to XINT (w->top) * canon_y_unit.
1510 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
1511 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
1512 (WINDOW_LEFTMOST_P): New macro.
1513 (WINDOW_BOX_LEFT_EDGE_COL): Renamed from WINDOW_LEFT_MARGIN.
1514 All uses changed.
1515 (WINDOW_BOX_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_MARGIN.
1516 All uses changed.
1517 (WINDOW_BOX_LEFT_EDGE_X): Renamed from
1518 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
1519 Do not exclude left fringe width.
1520 (WINDOW_BOX_RIGHT_EDGE_X): Renamed from
1521 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
1522 Do not exclude fringe widths.
1523 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
1524 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
1525 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
1526 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
1527 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
1528 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
1529 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
1530 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
1531 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
1532 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
1533 New macros. Change code which referenced corresponding
1534 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
1535 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
1536 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
1537 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
1538 allow per-window scroll-bar settings.
1539 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
1540 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
1541 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
1542 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
1543 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
1544 FRAME_SCROLL_BAR_WIDTH.
1545 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
9018a88e 1546 (WINDOW_SCROLL_BAR_AREA_X): New macros.
0416870b
KS
1547 (WINDOW_HEADER_LINE_HEIGHT): Renamed from
1548 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
1549 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Renamed from
1550 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
1551 (WINDOW_BOX_TEXT_HEIGHT): Renamed from
1552 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
1553 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
1554 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
1555 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Moved here from dispextern.h.
1556 (WINDOW_LEFT_MARGIN_WIDTH): Renamed from
1557 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
1558 (WINDOW_RIGHT_MARGIN_WIDTH): Renamed from
1559 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
1560 (window_from_coordinates): Update prototype.
1561 (Fset_window_buffer): Update EXFUN.
1562 (set_window_buffer): Update prototype.
9018a88e 1563
0416870b 1564 * dispextern.h (struct glyph_matrix): Rename members window_left_x
9018a88e 1565 to window_left_col, window_top_y to window_top_line. All uses
0416870b
KS
1566 changed.
1567 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
1568 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
1569 internal_border_width is now set to 0 for non-window frames.
1570 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
1571 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
1572 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
1573 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
1574 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
1575 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
1576 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
1577 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
1578 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
9018a88e 1579 Move to window.h and renamed [see window.h changes].
0416870b
KS
1580 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
1581 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
9018a88e
SM
1582 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
1583 Use WINDOW_TOTAL_LINES.
0416870b
KS
1584 (frame_update_line_height): Remove prototype.
1585
1586 * buffer.h (struct buffer): Rename members measured in columns:
1587 left_margin_width to left_margin_cols, right_margin_width to
1588 right_margin_cols. All uses changed.
1589 New members left_fringe_width, right_fringe_width,
1590 fringes_outside_margins for per-buffer fringe settings.
1591 New members scroll_bar_width and vertical_scroll_bar_type for
1592 per-buffer scroll bar settings.
1593
1594 * buffer.c (init_buffer_once): Set buffer_defaults and
1595 buffer_local_flags for new buffer-local variables
1596 left_fringe_width, right_fringe_width, fringes_outside_margins,
1597 scroll_bar_width, and vertical_scroll_bar_type.
1598 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
1599 default-* variables for them.
1600
1601 * dispnew.c: Make (many) trivial substitutions for renamed and
1602 new macros in dispextern.h, frame.h and window.h.
1603 (mode_line_string): No need to adjust width for mode lines, as it
1604 is already adjusted by the caller.
1605 (marginal_area_string): Handle fringes inside/outside margins.
9018a88e 1606
0416870b
KS
1607 * frame.c: Make (many) trivial substitutions for renamed and
1608 new macros in dispextern.h, frame.h and window.h.
1609 (make_frame): Initialize left_fringe_width, right_fringe_width,
1610 fringe_cols, scroll_bar_actual_width, border_width,
1611 internal_border_width, column_width, line_height, x_pixels_diff,
1612 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
1613 members with values suitable for a non-window frames.
1614
1615 * gtkutil.c: Make (many) trivial substitutions for renamed and
1616 new macros in dispextern.h, frame.h and window.h.
9018a88e 1617
0416870b
KS
1618 * indent.c: Make (few) trivial substitutions for renamed and
1619 new macros in dispextern.h, frame.h and window.h.
1620
1621 * keyboard.c: Make (many) trivial substitutions for renamed and
1622 new macros in dispextern.h, frame.h and window.h.
1623 (make_lispy_event): Use window positions returned from
1624 window_from_coordinates when constructing the lisp event for
1625 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
1626 (incorrect) values locally.
1627 (make_lispy_movement): Use window positions returned from
1628 window_from_coordinates when constructing the lisp event, rather
1629 than calculating (incorrect) values locally.
1630
1631 * scroll.c: Make (some) trivial substitutions for renamed and
1632 new macros in dispextern.h, frame.h and window.h.
1633
1634 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
1635 scroll-bars.
1636
1637 * sysdep.c: Make (few) trivial substitutions for renamed and
1638 new macros in dispextern.h, frame.h and window.h.
1639
1640 * term.c: Make (some) trivial substitutions for renamed and
1641 new macros in dispextern.h, frame.h and window.h.
1642
1643 * widget.c: Make (few) trivial substitutions for renamed and
1644 new macros in dispextern.h, frame.h and window.h.
1645
1646 * window.c: Make (many) trivial substitutions for renamed and
1647 new macros in dispextern.h, frame.h and window.h.
1648 (make_window): Initialize new members
1649 left_margin_cols, right_margin_cols, left_fringe_width,
1650 right_fringe_width, fringes_outside_margins, scroll_bar_width,
1651 and vertical_scroll_bar_type.
1652 (coordinates_in_window): Adapted to new fringe/margin positions
9018a88e 1653 and per-window fringes and scroll-bars.
0416870b 1654 Fix bug related to incorrectly adjusting coordinates by
9018a88e 1655 frame's internal_border_width (the effect normally negible since
0416870b
KS
1656 the internal_border_width is typically 0 or 1 pixel, but very
1657 noticeable for an internal_border_width of e.g. 25 pixels).
1658 Upon successful return (other than ON_NOTHING), the coordinates
1659 are now always properly converted to window relative for the
1660 given display element.
1661 (window_from_coordinates): Add new parameters wx and wy to
1662 return the window relative x and y position in the returned
1663 window and part. A null arg means, don't return the position.
1664 All callers changed.
1665 (adjust_window_margins): New function which may reduce the width
1666 of the display margins if a window's text area is too small after
1667 resizing or splitting windows.
1668 (size_window): Fix bug that did not account for display margin
1669 widths when checking the minimum width of a window; use
1670 adjust_window_margins.
1671 (set_window_buffer): Call Fset_window_fringes and
1672 Fset_window_scroll_bars to setup per-window elements.
1673 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
1674 existing display margin, fringe widths, and scroll bar settings
9018a88e
SM
1675 (e.g. after splitting a window or resizing the frame).
1676 All callers changed.
0416870b
KS
1677 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
1678 (Fsplit_window): Duplicate original window's display margin,
1679 fringe, and scroll-bar settings; then call Fset_window_buffer with
1680 KEEP_MARGINS non-nil. This fixes a bug which caused a split
1681 window to only preserve the display margins in one of the windows.
c4b8aebc 1682 When splitting horizontally, call adjust_window_margins on both
0416870b
KS
1683 windows to ensure that the text area of the new windows is non too
1684 narrow. This fixes a bug which could cause emacs to trap if the
1685 width of the split window was less than the width of the display
1686 margins.
9018a88e
SM
1687 (window_box_text_cols): Renamed from window_internal_width.
1688 All uses changed. Adapt to per-window fringes and scroll bars.
0416870b
KS
1689 Fix bug that caused vertical separator to be subtracted also on
1690 window frames. Fix another bug that did not reduce the returned
1691 value by the columns used for display margins.
1692 (window_scroll_line_based): Fix bug related to scrolling too much
1693 when display margins are present (implicitly fixed by the fix to
1694 window_box_text_cols).
1695 (scroll_left, scroll_right): Fix bug related to scrolling too far
1696 by default when display margins are present (implicitly fixed by
1697 the fix to window_box_text_cols).
1698 (struct saved_window): Rename members left to left_col, top to
1699 top_line, width to total_cols, height to total_lines, orig_top to
1700 orig_top_line, orig_height to orig_total_lines. All uses changed.
1701 New members left_margin_cols, right_margin_cols,
1702 left_fringe_width, right_fringe_width, fringes_outside_margins,
1703 scroll_bar_width, and vertical_scroll_bar_type for saving
1704 per-window display elements.
1705 (Fset_window_configuration): Restore display margins, fringes,
1706 and scroll bar settings. This fixes a bug which caused display
1707 margins to be discarded when saving and restoring a window
1708 configuration.
1709 (save_window_save): Save display margins, fringes, and scroll bar
1710 settings. This fixes a bug which caused display margins to be
1711 discarded when saving and restoring a window configuration.
1712 (Fset_window_margins): Do nothing if display margins are not
1713 really changed. Otherwise, call adjust_window_margins to ensure
1714 the text area doesn't get too narrow. This fixes a bug which
1715 could cause emacs to trap if setting display margins wider than
1716 the width of the window.
1717 (Fset_window_fringes): New defun to allow user to specifically set
1718 this window's fringe widths and position vs. display margins.
1719 (Fwindow_fringes): New defun to return window's actual fringe
1720 settings.
1721 (Fset_window_scroll_bars): New defun to allow user to specifically
1722 set this window's scroll bar width and position.
1723 (Fwindow_scroll_bars): New defun to return window's actual scroll
1724 bar settings.
1725 (compare_window_configurations): Also compare display margins,
1726 fringes, and scroll bar settings.
1727 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
1728
1729 * xdisp.c: Make (many) trivial substitutions for renamed and
1730 new macros in dispextern.h, frame.h and window.h.
1731 (window_box_width): Adapt to per-window fringes and scroll bars,
1732 and new fringe vs. display margin position. Note that returned
1733 value is no longer guaranteed to be a whole multiple of the frame
1734 column width, since per-window fringes may now be any width.
1735 (window_box_left_offset): New function like window_box_left, but
1736 value is relative to left border of window (rather than frame).
1737 (window_box_right_offset): New function like window_box_right,
1738 but value is relative to left border of window.
1739 (window_box_left): Adapt to per-window fringes and scroll bars,
1740 and new fringe vs. display margin position. Simplify by using
1741 WINDOW_LEFT_EDGE_X and window_box_left_offset.
1742 (window_box): Allow null args for unnecessary return values;
1743 change/simplify relevant callers.
1744 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
9018a88e
SM
1745 and new fringe vs. display margin position.
1746 Use window_box_left_offset and window_box_right_offset
0416870b 1747 (get_glyph_string_clip_rect): Adapt to per-window fringes and
9018a88e
SM
1748 scroll bars, and new fringe vs. display margin position.
1749 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
0416870b
KS
1750 (draw_fringe_bitmap): Rework to handle per-window fringes and new
1751 fringe vs. display margin position.
1752 (hscroll_window_tree): Use window_box_width instead of window_box.
1753 (redisplay_window): Adapt to per-window scroll bars.
1754 (draw_glyphs): Rework to handle per-window fringes and scroll
9018a88e
SM
1755 bars, and new fringe vs. display margin position.
1756 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
0416870b
KS
1757 (x_clear_end_of_line): Adapt to per-window fringes and scroll
1758 bars, and new fringe vs. display margin position. Fix bug which
1759 increased total width of full_width rows by width of scroll bars
1760 although window's total width already includes that.
1761 (x_fix_overlapping_area): Simplify using window_box_left_offset.
1762 (expose_area): Simplify using window_box_left_offset.
1763 (x_draw_vertical_border): Handle per-window scroll bar settings,
1764 mixing windows with left, right and no scroll bars.
1765
1766 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
1767 where it's used in x_list_fonts (for clarity).
1768 (frame_update_line_height): Remove unused function; functionality
1769 is now done directly when setting the default font in x_set_font.
1770
1771 * xfns.c: Make (many) trivial substitutions for renamed and
1772 new macros in dispextern.h, frame.h and window.h.
1773
1774 * xmenu.c: Make (some) trivial substitutions for renamed and
1775 new macros in dispextern.h, frame.h and window.h.
1776
1777 * xterm.h (struct x_output): Move members left_pos, top_pos,
1778 border_width, pixel_height, pixel_width, line_height,
1779 internal_border_width, vertical_scroll_bar_extra,
1780 left_fringe_width, right_fringe_width, fringe_cols,
1781 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
1782 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
1783 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
1784 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
1785 (PIXEL_WIDTH, PIXEL_HEIGHT)
1786 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
1787 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
1788 frame.h and renamed [see frame.h changes].
1789 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
1790 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
1791 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
1792 and renamed [see frame.h changes].
9018a88e 1793
0416870b
KS
1794 * xterm.c: Make (several) trivial substitutions for renamed and
1795 new macros in dispextern.h, frame.h and window.h.
1796 (x_draw_glyph_string_box): Adapt to per-window fringes and
1797 scroll-bars.
1798 (scroll_run): Adapt to new fringe position.
1799 (glyph_rect): Use window coordinates returned from
1800 window_from_coordinates rather than frame_to_window_pixel_xy.
1801 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
1802 scroll-bars.
1803 (handle_one_xevent): Simplify a USE_GTK conditional.
1804 (x_clip_to_row): Remove superfluous whole_line_p arg and code
1805 (fringes are now inside margins, i.e. always in the clipping area).
1806 All callers changed.
1807 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
1808 directly, then call compute_fringe_widths. Don't call
1809 frame_update_line_height.
1810
1811 * w32term.h (struct w32_output): Move members left_pos, top_pos,
1812 border_width, pixel_height, pixel_width, line_height,
1813 internal_border_width, vertical_scroll_bar_extra,
1814 left_fringe_width, right_fringe_width, fringe_cols,
1815 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
1816 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
1817 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
1818 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
1819 (PIXEL_WIDTH, PIXEL_HEIGHT)
1820 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
1821 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
1822 frame.h and renamed [see frame.h changes].
1823 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
1824 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
1825 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
1826 and renamed [see frame.h changes].
9018a88e 1827
0416870b
KS
1828 * w32term.c: Make (several) trivial substitutions for renamed and
1829 new macros in dispextern.h, frame.h and window.h.
1830 (x_draw_glyph_string_box): Adapt to per-window fringes and
1831 scroll-bars.
1832 (glyph_rect): Use window coordinates returned from
1833 window_from_coordinates rather than frame_to_window_pixel_xy.
1834 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
1835 scroll-bars.
1836 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
1837 (fringes are now inside margins, i.e. always in the clipping area).
1838 All callers changed.
1839 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
1840 directly, then call compute_fringe_widths. Don't call
1841 frame_update_line_height.
1842
1843 * w32console.c: Make (few) trivial substitutions for renamed and
1844 new macros in dispextern.h, frame.h and window.h.
1845
1846 * w32fns.c: Make (many) trivial substitutions for renamed and
1847 new macros in dispextern.h, frame.h and window.h.
1848
1849 * w32menu.c: Make (few) trivial substitutions for renamed and
1850 new macros in dispextern.h, frame.h and window.h.
1851
1852 * macterm.h (struct mac_output): Move members left_pos, top_pos,
1853 border_width, pixel_height, pixel_width, line_height,
1854 internal_border_width, vertical_scroll_bar_extra,
1855 left_fringe_width, right_fringe_width, fringe_cols,
1856 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
1857 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
1858 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
1859 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
1860 (PIXEL_WIDTH, PIXEL_HEIGHT)
1861 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
1862 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
1863 frame.h and renamed [see frame.h changes].
1864 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
1865 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
1866 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
1867 and renamed [see frame.h changes].
9018a88e 1868
0416870b
KS
1869 * macterm.c: Make (several) trivial substitutions for renamed and
1870 new macros in dispextern.h, frame.h and window.h.
1871 (x_draw_glyph_string_box): Adapt to per-window fringes and
1872 scroll-bars.
1873 (glyph_rect): Use window coordinates returned from
1874 window_from_coordinates rather than frame_to_window_pixel_xy.
1875 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
1876 scroll-bars.
1877 (x_clip_to_row): Remove superfluous whole_line_p arg and code
1878 (fringes are now inside margins, i.e. always in the clipping area).
1879 All callers changed.
1880 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
1881 directly, then call compute_fringe_widths. Don't call
1882 frame_update_line_height.
1883
1884 * macfns.c: Make (several) trivial substitutions for renamed and
1885 new macros in dispextern.h, frame.h and window.h.
9018a88e 1886 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
0416870b
KS
1887
1888 * macmenu.c: Make (few) trivial substitutions for renamed and
1889 new macros in dispextern.h, frame.h and window.h.
1890
1891 * msdos.h (struct x_output): Remove members left_pos, top_pos,
1892 and line_height, and use corresponding new members in struct
1893 frame. All uses changed.
1894 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
1895 superseeded by corresponding macros in frame.h.
1896
1897 * msdos.c: Make (several) trivial substitutions for renamed and
1898 new macros in dispextern.h, frame.h and window.h.
1899 (IT_note_mouse_highlight): Use updated window coordinates returned
9018a88e 1900 by window_from_coordinates, rather than adjusting them locally.
0416870b
KS
1901 (internal_terminal_init): No need to initialize line_height here;
1902 it now defaults to 1.
1903
9018a88e
SM
19042003-05-24 Stefan Monnier <monnier@cs.yale.edu>
1905
1906 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
1907 dropping `down' events.
1908
016bd3c0
AS
19092003-05-24 Andreas Schwab <schwab@suse.de>
1910
1911 * coding.c (find_safe_codings): Fix last change.
1912
4dacadcc
TTN
19132003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
1914
1915 * xfns.c (x_window): Fix typo from 2003-05-21 change.
1916
319830ce
SM
19172003-05-23 Stefan Monnier <monnier@cs.yale.edu>
1918
9018a88e
SM
1919 * xdisp.c (display_mode_element): Increase max depth.
1920 Simplify the error handling code. Use a different error string
1921 for the case where we hit the depth limit.
1922
319830ce
SM
1923 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
1924
1925 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
1926
19272003-05-21 Stefan Monnier <monnier@cs.yale.edu>
1928
1929 * intervals.c (get_local_map): Don't get char-property of previous
1930 point any more: get_pos_property already does it and better.
1931
c67de8ba
DL
19322003-05-21 Dave Love <fx@gnu.org>
1933
1934 [Merged from unicode branch.]
1935
1936 * xfns.c (x_window, x_window): Use use_xim.
1937
1938 * xterm.c (use_xim): Initialize.
1939 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
1940 (x_term_init): Maybe set use_xim.
1941
1942 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
1943
edd3ff1d
JR
19442003-05-21 Jason Rumney <jasonr@gnu.org>
1945
1946 * unexw32.c (_start): Remove _fmode initialization.
1947
1948 * emacs.c (main) [WINDOWSNT]: Move it here.
1949
463f55ee
DL
19502003-05-20 Dave Love <fx@gnu.org>
1951
1952 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
1953
af253914
RS
19542003-05-19 Richard M. Stallman <rms@gnu.org>
1955
1956 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
1957 as value for QCfont attribute.
1958 (realize_default_face): lface should already exist; crash if not.
1959 Specify 0 for FORCE_P when calling set_lface_from_font_name.
1960
1961 * frame.c (Fignore_event): Doc fix.
1962
1d211019
KH
19632003-05-19 Kenichi Handa <handa@m17n.org>
1964
1965 * coding.c (decode_coding_string): Handle post-read-conversion
1966 even if the coding doesn't require decoding.
1967
4dd68254
RS
19682003-05-18 Richard M. Stallman <rms@gnu.org>
1969
1970 * callproc.c (Fcall_process_region): Doc fix.
1971
14d87dc9
SM
19722003-05-17 Stefan Monnier <monnier@cs.yale.edu>
1973
deca5d96
SM
1974 * lread.c (Fload): Print a message if package is obsolete.
1975
14d87dc9
SM
1976 * window.c (Fselect_window): Add optional `norecord' arg.
1977 (select_window_1): Fold into Fselect_window.
1978 (select_window_norecord): New function.
1979 (temp_output_buffer_show): Use it. Preserve current buffer.
1980
1981 * window.h (Fselect_window): Update declaration.
1982
1983 * window.c (delete_window, Fother_window, Fset_window_configuration):
1984 * minibuf.c (read_minibuf):
1985 * macterm.c (x_new_focus_frame):
1986 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
1987 * callint.c (Fcall_interactively):
1988 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
1989
1990 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
1991
78f52183
DK
19922003-05-17 David Kastrup <dak@gnu.org>
1993
1994 * process.c (read_process_output): Back out change from 2003-03-09.
1995
14d87dc9
SM
19962003-05-17 Stefan Monnier <monnier@cs.yale.edu>
1997
1998 * editfns.c (get_pos_property): Don't assume that `object' = nil.
1999
2000 * textprop.c (text_property_stickiness): New arg `buffer'.
2001
2002 * intervals.h (text_property_stickiness): New arg `buffer'.
2003 (get_pos_property): Declare.
2004
2005 * intervals.c (get_local_map): Use get_pos_property, to obey
2006 stickiness and empty overlays.
2007 (create_root_interval, graft_intervals_into_buffer): Use BEG.
2008 (merge_properties, intervals_equal, merge_properties_sticky):
2009 Use XCAR, XCDR.
2010 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
2011
1fd1cc2f
RS
20122003-05-17 Richard M. Stallman <rms@gnu.org>
2013
4f9f637a
RS
2014 * minibuf.c (read_minibuf): If buffer is empty, record the default
2015 in the history.
2016 (Fminibuffer_complete_word): When deleting the overlap, take account
2017 of its real position.
2018
2019 * fns.c (map_char_table): Fix previous change.
2020
1fd1cc2f
RS
2021 * syntax.c (find_defun_start):
2022 When open_paren_in_column_0_is_defun_start,
2023 return beginning of buffer.
2024
2025 * lisp.h (map_char_table): Declare added arg.
2026
2027 * fns.c (map_char_table): New arg TABLE gets the master table.
2028 All calls changed.
2029 Process default and inheritance, resorting to Faref if necessary.
2030
2031 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
2032 (Faccessible_keymaps): Pass new arg to map_char_table.
2033
2034 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
2035
2036 * casetab.c (set_case_table): Pass new arg to map_char_table.
2037
2038 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
2039
2040 * lisp.h (specbinding_func): New typedef.
2041 (struct specbinding): Use specbinding_func, to put the `volatile'
2042 in the right place.
2043
2044 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
2045 to avoid GCC warning.
14d87dc9 2046
b4bd27c5
RS
20472003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org> (tiny change)
2048
14d87dc9 2049 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
b4bd27c5 2050
35fb885d
SM
20512003-05-15 Stefan Monnier <monnier@cs.yale.edu>
2052
2053 * keyboard.c (apply_modifiers): Don't fill the other cache.
2054
9a274fbd
SM
20552003-05-14 Stefan Monnier <monnier@cs.yale.edu>
2056
c55b5fad
SM
2057 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
2058
9a274fbd
SM
2059 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
2060 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
2061 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
2062 (Fset_window_configuration, Fcurrent_window_configuration)
2063 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
2064 (Fpos_visible_in_window_p, mark_window_cursors_off)
2065 (window_internal_height, window_internal_width, Frecenter)
2066 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
2067 (replace_buffer_in_all_windows, init_window_once, init_window)
2068 (syms_of_window, keys_of_window): Move from lisp.h.
2069 * lisp.h: Move window.c declarations to window.h.
2070
2071 * bytecode.c: Include window.h.
2072 * emacs.c: Include window.h.
2073
14d87dc9 2074 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
9a274fbd
SM
2075 (keyremap): Add `parent' field.
2076 (keyremap_step): Use it. Remove `parent' argument.
2077 (read_key_sequence): Setup and use the new `parent' field.
2078
fd93e331
SM
20792003-05-11 Stefan Monnier <monnier@cs.yale.edu>
2080
2081 * keyboard.c (adjust_point_for_property): Ensure termination.
2082
1c4001a1
SM
20832003-05-10 Stefan Monnier <monnier@cs.yale.edu>
2084
2085 * keyboard.c (follow_key): Remove dead variable `did_meta'.
2086 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
2087 duplicated handling of function-key-map and key-translation-map
2088 in read_key_sequence.
2089 (read_key_sequence): Use them.
2090
2091 * keyboard.c (adjust_point_for_property): Try harder to move point
2092 to the non-sticky end of an invisible property.
2093
2094 * xdisp.c (single_display_prop_intangible_p): Make `space' display
2095 property intangible as well.
2096
780379b1
AS
20972003-05-10 Andreas Schwab <schwab@suse.de>
2098
2099 * xmenu.c (single_menu_item): Change last parameter to void* to
2100 avoid warning.
2101
ca2de342
RS
21022003-05-09 Richard M. Stallman <rms@gnu.org>
2103
2104 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
2105 Bind Qinhibit_modification_hooks to t so there will be no GC.
2106 Rename local `tem' to `save_deactivate_mark'.
2107
2108 * eval.c (specpdl_ptr): Declare volatile.
2109 (unbind_to): Copy the whole binding and decrement specpdl_ptr
2110 before doing the work of unbinding it.
2111
2112 * lisp.h (struct specbinding): Declare elements volatile.
2113 (specpdl_ptr): Declare volatile.
2114
2115 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
2116
2117 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
2118 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
2119
347003be
DL
21202003-05-08 Dave Love <fx@gnu.org>
2121
2122 * coding.c (Vlast_coding_system_used): Doc fix.
2123
5adcec23
JR
21242003-05-07 Jason Rumney <jasonr@gnu.org>
2125
2126 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
2127 when system does not support them.
2128
5fe3b8a4
SM
21292003-05-05 Stefan Monnier <monnier@cs.yale.edu>
2130
2131 * fileio.c (Qwrite_region_annotate_functions): New var.
2132 (build_annotations): Use it to process the global part of the hook.
2133 (syms_of_fileio): Init and staticpro it.
2134
2135 * keyboard.c (safe_run_hooks_error): Display a message instead of
2136 silently ignoring the error.
2137
21382003-05-03 Stefan Monnier <monnier@cs.yale.edu>
2139
2140 * keyboard.c (input_available_signal): Mark static.
2141 (menu_bar_items): Use map_keymap.
2142 (menu_bar_one_keymap): Remove.
2143 (menu_bar_item): Adjust arglist (for use in map_keymap).
2144 Properly hide a second binding when not both are keymaps.
2145
2146 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
2147 (single_keymap_panes): Use it and map_keymap.
2148 (single_menu_item): Use skp as well.
2149
2150 * keymap.h (map_keymap_function_t): New type.
2151 (map_keymap): Declare.
2152
2153 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
2154 (map_keymap_call, Fmap_keymap): New functions.
2155 (syms_of_keymap): Defsubr map-keymap.
2156
4b1b4443
JD
21572003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2158
2159 * gtkutil.c (create_dialog, make_widget_for_menu_item)
2160 (make_menu_item, create_menus, xg_update_menu_item): Don't call
2161 ..._with_mnemonic functions for menu items.
2162
1f816871
KH
21632003-05-01 Kenichi Handa <handa@m17n.org>
2164
2165 * coding.c (coding_system_accept_latin_extra_p): Delete this
2166 function.
2167 (find_safe_codings): Pay attention to
2168 the property tranlsation-table-for-encode of each codings.
2169 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
2170
5ed6ba5b
SM
21712003-05-01 Stefan Monnier <monnier@cs.yale.edu>
2172
2173 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
2174
32c06229
SM
21752003-04-30 Stefan Monnier <monnier@cs.yale.edu>
2176
2177 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
2178
2179 * lisp.h (CHECK): Wrap args in parenthesis.
2180 (specbind): Fix doc: symbol = Qnil is not supported any more.
2181
2182 * bytecode.c (Fbyte_code) <unwind-protect>:
2183 Use Fprogn rather than 0 and Qnil.
2184
2185 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
2186 `double', and `triple' modifiers as well.
2187
ed3c3314
RS
21882003-04-30 Richard M. Stallman <rms@gnu.org>
2189
2190 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
2191
2192 * alloc.c (abort_on_gc): New variable.
2193 (Fgarbage_collect): Abort if abort_on_gc is set.
2194
2195 * lisp.h (abort_on_gc): Add decl.
2196
2197 * eval.c (Fsignal): Clear abort_on_gc.
2198
2199 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
32c06229 2200 Reinit FORMAT_START and END before second scan.
ed3c3314
RS
2201
2202 * xdisp.c (move_it_vertically_backward): Do the final big else
2203 even if nlines is 0.
2204
2205 * xdisp.c (redisplay_internal): Finish the per-frame loop
2206 even if redisplay is suspended by input.
2207
0b325c12
AC
22082003-04-24 Andrew Choi <akochoi@shaw.ca>
2209
2210 * macterm.c (x_list_fonts): Return all fonts that match if
2211 maxnames = -1.
2212
4e837cd0
KH
22132003-04-25 Kenichi Handa <handa@m17n.org>
2214
2215 * syntax.c (skip_chars): Fix previous change.
2216
9af7511a
KH
22172003-04-24 Kenichi Handa <handa@m17n.org>
2218
2219 * syntax.c (skip_chars): Make the code faster by using the common
2220 technique of *p, *stop, and *endp.
2221
e3b2c21f
JD
22222003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2223
2224 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
32c06229 2225 tool_bar_items so GTK tool bar expose callback does not access items
e3b2c21f
JD
2226 being updated.
2227
32c06229
SM
22282003-04-19 Stefan Monnier <monnier@cs.yale.edu>
2229
2230 * eval.c (Fapply): Undo last change and add a comment about why.
2231
c6464167
MB
22322003-04-18 Miles Bader <miles@gnu.org>
2233
2234 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
2235 pickier PARSE_MULTIBYTE_SEQ.
2236
e509f168
SM
22372003-04-17 Stefan Monnier <monnier@cs.yale.edu>
2238
2239 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
2240 Use XCDR, XCAR, CONSP.
2241 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
2242 (Fapply): Remove unnecessary GCPRO.
2243
2244 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
2245
2246 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
2247
2248 * buffer.h: Don't hardcode BEG==1.
2249
2250 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
2251
5ceea398
RS
22522003-04-16 Richard M. Stallman <rms@gnu.org>
2253
2254 * xdisp.c (try_window, try_window_reusing_current_matrix):
2255 When at end of window, set window_end_pos to Z-ZV.
2256
2257 * buffer.c (Foverlay_recenter): Doc fix.
2258
e509f168
SM
22592003-04-14 Stefan Monnier <monnier@cs.yale.edu>
2260
2261 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
2262
d243e605
AC
22632003-04-14 Andrew Choi <akochoi@shaw.ca>
2264
2265 * macterm.c (mac_check_for_quit_char): Don't check more often than
2266 once a second.
2267
6901b111
SM
22682003-04-11 Stefan Monnier <monnier@cs.yale.edu>
2269
2270 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
2271 specially, so that they can't hide an implicit switch-frame event.
2272 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
2273 (head_table): Use switch-frame as event_kind for select-window.
2274 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
2275
2276 * editfns.c (Fformat): Lisp_Object/int mixup.
2277 (format2): Remove unused var numargs.
2278
e301806f 22792003-04-11 Kenichi Handa <handa@m17n.org>
aa95b710 2280
6901b111 2281 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
aa95b710
KH
2282 (Qafter_insert_file_set_coding): New variable.
2283 (syms_of_fileio): Initialize and staticpro it. Delete declaration
2284 for after-insert-file-adjust-coding-function.
2285 (Finsert_file_contents): Call Qafter_insert_file_set_coding
2286 instead of Vafter_insert_file_adjust_coding_function.
2287
38914424
KH
22882003-04-11 Kenichi Handa <handa@m17n.org>
2289
2290 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
2291
2292 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
2293 string. Callers changed.
2294
22952003-04-10 Kenichi Handa <handa@m17n.org>
a288d979 2296
6901b111 2297 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
a288d979 2298 (syms_of_fileio): Declare it as a lisp variable.
6901b111
SM
2299 (Finsert_file_contents):
2300 Call Vafter_insert_file_adjust_coding_function before calling
a288d979
KH
2301 decode-format.
2302
f979dc05
JD
23032003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2304
2305 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
2306 get GtkAdjustment as widget now is a GtkRange.
2307
2308 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
2309 GtkRange to avoid memory leak.
2310
f8c6b4c2 23112003-04-09 Kenichi Handa <handa@m17n.org>
cb98871c 2312
50ebc53d
KH
2313 * xfaces.c (Vface_font_rescale_alist): New variable.
2314 (struct font_name): New member rescale_ratio.
2315 (font_rescale_ratio): New function.
6901b111 2316 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
50ebc53d
KH
2317 (better_font_p): On comparing point sized, pay attention to
2318 recale_ratio member of fonts.
2319 (build_scalable_font_name): Reflect font->rescale_ratio in the
2320 font name.
6901b111 2321 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
50ebc53d 2322
cb98871c
KH
2323 * lread.c (read1): Before calling index, check if the 2nd
2324 arguemnt is in ASCII range.
2325
4773b8ca
RS
23262003-04-08 Richard M. Stallman <rms@gnu.org>
2327
b0ada147
RS
2328 * fileio.c (Ffile_symlink_p): Doc fix.
2329
2330 * editfns.c (Fformat): Translate positions of text properties
2331 in the format string to apply them to the result.
2332
4773b8ca
RS
2333 * fileio.c (Finsert_file_contents): Doc fix.
2334 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
2335
23362003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
6901b111 2337
4773b8ca
RS
2338 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
2339
e8f25745 23402003-04-08 Steven Tamm <steventamm@mac.com>
b0ada147 2341
e8f25745
ST
2342 * mac.c (init_mac_osx_environment): Switch libexec and bin so
2343 that self-contained application finds libexec files.
2344
f8c6b4c2 23452003-04-08 Kenichi Handa <handa@m17n.org>
2310d84c 2346
6901b111
SM
2347 * coding.c (code_convert_region_unwind):
2348 Set Vlast_coding_system_used to the argument.
2310d84c
KH
2349 (code_convert_region): If post-read-conversion function changed
2350 the value of last-coding-sytem, keep the new value in
2351 coding->symbol so that it won't be overridden.
2352 (run_pre_post_conversion_on_str): Likewise.
7c086845
KH
2353 (coding_system_accept_latin_extra_p): New function.
2354 (find_safe_codings): Pay attention to characters registered in
2355 latin-extra-code-table.
2310d84c 2356
39c9a034
TTN
23572003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
2358
2359 * Makefile.in (md5.o): Add missing dependency info.
2360
eb67c5d6
RS
23612003-04-06 Richard M. Stallman <rms@gnu.org>
2362
2363 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
2364
2365 * marker.c (verify_bytepos): New function.
2366
2367 * intervals.c (set_intervals_multibyte_1): When becoming
2368 multibyte, adjust right and left child sizes to a whole set of
2369 characters. If an interval gets zero total-length, delete it.
2370 If an interval consists of just its children, delete one of them.
2371
2372 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
2373 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
39c9a034 2374
eb67c5d6
RS
2375 * alloc.c: (VALIDATE_LISP_STORAGE): Macro deleted.
2376 All calls deleted.
2377 (lisp_malloc): Do the work here directly.
2378
b1f81fc5
JB
23792003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
2380
2381 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
2382 char tables.
2383
23842003-04-04 Kenichi Handa <handa@m17n.org>
aa8b70ae
KH
2385
2386 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
2387 destructively change "%S" to "%s".
2388
774666fb
MB
23892003-04-03 Miles Bader <miles@gnu.org>
2390
2391 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
2392 always set.
2393
19c37f01
DL
23942003-04-01 Dave Love <fx@gnu.org>
2395
2396 * xfns.c (xpm_lookup_color): Grok "opaque".
2397
2f4b24c3
AC
23982003-03-31 Andrew Choi <akochoi@shaw.ca>
2399
2400 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
2401 parent window ID.
2402
2403 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
2404
2405 * macterm.h (struct mac_output): Define x_pixels_diff and
2406 y_pixels_diff.
b1f81fc5 2407
9443fcf6
JB
24082003-03-31 Juanma Barranquero <lektu@terra.es>
2409
2410 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
2411 blockinput.h and files included from it.
2412
e072891b
KS
24132003-03-31 Kim F. Storm <storm@cua.dk>
2414
2415 The following changes consolidates the common code related to
2416 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
2417 files into frame.c.
9443fcf6 2418
e072891b
KS
2419 * frame.c: Include blockinput.h.
2420 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
2421 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
2422 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
2423 related vars here.
2424 (struct frame_parm_table, frame_parms): New table for describing
2425 frame parameters and their associated Q-variable.
2426 The order of the parameters corresponds to the sequence of the
2427 frame_parm_handlers table in redisplay_interface.
2428 (x_fullscreen_move, x_set_frame_parameters)
2429 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
2430 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
2431 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
2432 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
2433 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
2434 Generic functions for processing of frame parameters.
2435 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
2436 (display_x_get_resource, x_get_resource_string): Functions for
2437 generic access to X resources.
2438 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
2439 (x_default_parameter, Fx_parse_geometry): Functions for generic
2440 access to frame parameters.
6901b111
SM
2441 (x_figure_window_size): Generic calculation of frame size.
2442 Fixed to add space needed for tool bar. Also setup size_hint_flags.
e072891b
KS
2443 (syms_of_frame): Intern and staticpro frame parameter variables.
2444 Defvar_lisp Vx_resource_class and Vx_resource_name here.
2445 Defsubr Sx_get_resource and Sx_parse_geometry.
9443fcf6 2446
e072891b
KS
2447 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
2448 parameter related vars defined in frame.c.
2449 (EMACS_CLASS): Define here.
2450 (enum FULLSCREEN_*): Define here.
2451 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
2452 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
2453 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
2454 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
2455 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
2456 (x_set_visibility, x_set_autoraise, x_set_autolower)
2457 (x_set_unsplittable, x_set_vertical_scroll_bars)
2458 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
2459 (x_figure_window_size): Add prototypes.
2460
2461 * dispextern.h (frame_parm_handler): New typedef.
2462 (struct redisplay_interface): New member frame_parm_handlers.
2463 (enum resource_types): Move declaration here.
2464 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
2465 (x_default_parameter): Add prototypes.
2466
2467 * window.c: Remove extern decl for frame parameter vars.
2468 (change_window_heights): New generic function;
2469 replaces x_change_window_heights. All users changed.
2470
2471 * window.h (change_window_heights): Add prototype.
2472
2473 * xfaces.c: Remove extern decl for frame parameter vars.
2474
2475 * xterm.h (EMACS_CLASS): Remove. Use generic define.
2476 (struct w32_display_info): Fix type of xrdb member.
2477 (enum FULLSCREEN_*): Remove.
2478 Remove prototypes for generic functions (in frame.h).
2479
2480 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
2481 parameters now defined in frame.h and frame.c.
2482 (Vx_resource_name): Remove. Use generic var.
2483 (enum x_frame_parms): Remove (bogus, unused enum).
2484 (check_x_display_info): Make non-static (for frame.c).
2485 (struct x_frame_parm_table, x_frame_parms): Remove.
2486 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
2487 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
2488 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
2489 (x_change_window_heights, x_set_autoraise, x_set_autolower)
2490 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
2491 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
2492 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
2493 Remove. Use generic functions instead.
2494 (enum resource_types): Remove.
2495 (x_set_scroll_bar_default_width): New global function (for frame.c).
2496 (Fx_create_frame): Depend on x_figure_window_size to add space for
2497 toolbar and setup size_hint_flags.
2498 (x_frame_parm_handlers): New table for redisplay_interface.
2499 (syms_of_xfns): Don't intern/staticpro removed vars.
9443fcf6 2500
e072891b
KS
2501 * xterm.c: Remove unnecessary extern declarations.
2502 (x_fullscreen_adjust): Remove. Use generic instead.
2503 (x_redisplay_interface): Add x_frame_parm_handlers member.
2504
2505 * w32gui.h (XrmDatabase): New (dummy) typedef.
2506
2507 * w32term.h (EMACS_CLASS): Remove. Use generic define.
2508 (struct w32_display_info): Fix type of xrdb member.
2509 (enum FULLSCREEN_*): Remove.
2510 (x_fullscreen_adjust): Remove prototype.
2511
2512 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
2513 parameters now defined in frame.h and frame.c.
2514 (Vx_resource_name): Remove. Use generic var.
2515 (enum x_frame_parms): Remove (bogus, unused enum).
2516 (check_x_display_info): Make non-static (for frame.c).
2517 (struct x_frame_parm_table, x_frame_parms): Remove.
2518 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
2519 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
2520 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
2521 (x_change_window_heights, x_set_autoraise, x_set_autolower)
2522 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
2523 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
2524 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
2525 Remove. Use generic functions instead.
2526 (enum resource_types): Remove.
2527 (x_set_scroll_bar_default_width): New global function (for frame.c).
2528 (Fx_create_frame): Depend on x_figure_window_size to add space for
2529 toolbar and setup size_hint_flags.
2530 (w32_frame_parm_handlers): New table for redisplay_interface.
2531 (syms_of_w32fns): Don't intern/staticpro removed vars.
9443fcf6 2532
e072891b
KS
2533 * w32term.c: Remove unnecessary extern declarations.
2534 (x_fullscreen_adjust): Remove. Use generic instead.
2535 (x_redisplay_interface): Add w32_frame_parm_handlers member.
2536
2537 * w32reg.c (x_get_string_resource): Use XrmDatabase.
2538
2539 * macgui.h (XrmDatabase): New (dummy) typedef.
2540
2541 * macterm.h (EMACS_CLASS): Remove.
2542 (struct mac_display_info): Add xrdb member.
2543 (struct mac_output): Add want_fullscreen member.
2544
2545 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
2546 parameters now defined in frame.h and frame.c.
2547 (Vx_resource_name): Remove. Use generic var.
2548 (check_x_display_info): Make non-static (for frame.c).
2549 (struct x_frame_parm_table, x_frame_parms): Remove.
2550 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
2551 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
2552 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
2553 (x_change_window_heights, x_set_autoraise, x_set_autolower)
2554 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
2555 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
2556 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
2557 Remove. Use generic functions instead.
2558 (enum resource_types): Remove.
2559 (x_set_scroll_bar_default_width): New global function (for frame.c).
2560 (mac_frame_parm_handlers): New table for redisplay_interface.
2561 (syms_of_macfns): Don't intern/staticpro removed vars.
9443fcf6 2562
e072891b
KS
2563 * macterm.c: Remove unnecessary extern declarations.
2564 (x_redisplay_interface): Add mac_frame_parm_handlers member.
2565
3e6a560b
KS
2566 * Makefile.in (frame.o): Add dependency on blockinput.h and files
2567 included from it (atimer.h and systime.h).
2568
7b7b454e
AS
25692003-03-30 Andreas Schwab <schwab@suse.de>
2570
2571 * xdisp.c (x_insert_glyphs): Fix swapped width and height
2572 parameters for shift_glyphs_for_insert.
2573
2574 * macterm.c (x_redisplay_interface): Add missing entry for
2575 draw_vertical_window_border.
2576
beb402de
KG
25772003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
2578
2579 * fileio.c (Fexpand_file_name): In the no-handler case, after
2580 expanding, look again for a handler and invoke it. This is needed
2581 for filenames like "/foo/../user@host:/bar/../baz" -- the first
2582 expansion produces "/user@host:/bar/../baz" which needs to be
2583 expanded again for the finame result "/user@host:/baz".
2584
b676f356
JD
25852003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2586
2587 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
2588 of area to be redrawn for better performance.
2589
3c671a56
SM
25902003-03-28 Stefan Monnier <monnier@cs.yale.edu>
2591
2592 * xterm.c (take_vertical_position_into_account): Remove.
2593 (xt_action_hook): Call set_vertical_scroll_bar if needed.
2594 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
2595 (xm_scroll_callback, x_create_toolkit_scroll_bar)
2596 (x_set_toolkit_scroll_bar_thumb): Simplify.
2597 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
2598 (XTread_socket): Remove unused var.
2599 (x_make_frame_invisible): Replace goto with else.
2600
2601 * xdisp.c (set_vertical_scroll_bar): New fun.
2602 (redisplay_window): Use it.
2603
84f2e615
RS
26042003-03-26 Richard M. Stallman <rms@gnu.org>
2605
2606 * xdisp.c (update_tool_bar): Recompute tool bar if
2607 update_mode_lines is set. Set w->update_mode_line
2608 only if the tool bar contents actually change.
2609 (update_menu_bar): Undo previous change.
2610
70b6104c
JD
26112003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2612
5fd6f727
JD
2613 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
2614 (xg_frame_set_char_size): Calculate scroll bar width before frame
2615 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
2616 (xg_separator_p): Check for all documented separator types.
2617 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
2618 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
2619
70b6104c
JD
2620 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
2621 so tool bar gets updated.
2622
d9b36d19
SM
26232003-03-26 Stefan Monnier <monnier@cs.yale.edu>
2624
2625 * data.c (store_symval_forwarding): Re-instate part of the code
2626 that was deleted with too much enthusiasm.
2627
26282003-03-25 Stefan Monnier <monnier@cs.yale.edu>
2629
2630 * data.c (store_symval_forwarding): Delete special read-only
2631 hack for type == -1, since we now use ->constant instead.
2632 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
2633
2634 * buffer.c (overlays_in): Declare static.
2635 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
2636 `constant' field rather than the variable's `type' field.
2637
365fa1b3
AC
26382003-03-24 Andrew Choi <akochoi@shaw.ca>
2639
2640 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
2641
2642 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
2643
2644 * fns.c [MAC_OSX]: Do not redefine vector.
2645
2646 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
2647
2648 * macgui.h: Remove definition of No_Cursor.
2649
d9b36d19 2650 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
365fa1b3
AC
2651
2652 * xdisp.c: Define No_Cursor.
2653 (x_write_glyphs, notice_overwritten_cursor)
2654 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
2655 (note_mouse_highlight): Remove Mac-specific code.
2656 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
d9b36d19 2657
c0bcce6f
JPW
26582003-03-24 John Paul Wallington <jpw@gnu.org>
2659
2660 * xdisp.c (redisplay_window): If mini window's buffer is not
2661 empty, then redisplay it like other windows.
2662
a526b96c
KS
26632003-03-23 Kim F. Storm <storm@cua.dk>
2664
2665 * w32term.c (w32_draw_window_cursor): Fix last change.
2666
37ab321e
KH
26672003-03-23 Kenichi Handa <handa@m17n.org>
2668
a526b96c
KS
2669 * alloc.c (make_string_from_bytes, make_specified_string):
2670 Add `const' for the arg CONTENTS.
37ab321e
KH
2671
2672 * lisp.h (make_string_from_bytes, make_specified_string):
2673 Prototypes adjusted.
2674
7863d625
JD
26752003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2676
a526b96c 2677 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
fd4c9408 2678
7863d625
JD
2679 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
2680 (XG_SB_RANGE): New define.
2681
2682 * gtkutil.c (xg_fixed_handle_expose): New function.
2683 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
2684 expose events.
2685 (xg_update_scrollbar_pos): Take two more arguments, left and width
2686 of scroll bar including borders.
2687 Clear left and right part outside scroll bar separately as some
2688 themes have bars that are not an even number of pixels.
d9b36d19 2689 Don't set reallocate_redraws, don't call
7863d625
JD
2690 gdk_window_process_all_updates.
2691 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
2692 so no need to change it. Calculate size and value with XG_SB_RANGE.
2693
d9b36d19
SM
2694 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
2695 Pass left and width of scroll bar including borders to
7863d625
JD
2696 xg_update_scrollbar_pos.
2697
af0ad939
TTN
26982003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
2699
2700 * Makefile.in: Make sure space precedes end-of-line backslashes.
2701
b22139fd
KS
27022003-03-22 Kim F. Storm <storm@cua.dk>
2703
2704 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
2705 Add generic versions here. Remove system specific versions
2706 defined elsewhere.
2707
2708 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
2709 Add prototypes.
2710
6e6410cf
KS
2711 * xterm.h (STORE_NATIVE_RECT): New macro.
2712
5c9cc435
KS
27132003-03-21 Kim F. Storm <storm@cua.dk>
2714
00c64fab
SM
2715 * xdisp.c (get_glyph_string_clip_rect):
2716 Use FRAME_INTERNAL_BORDER_WIDTH.
5c9cc435
KS
2717
2718 * dispextern.h (struct redisplay_interface): Add active_p
2719 argument to draw_window_cursor member. All uses changed.
2720
acd37560
KS
27212003-03-21 Kim F. Storm <storm@cua.dk>
2722
2723 The following changes consolidate code related to writing and
2724 inserting glyphs, exposing frame, the tool bar, the mouse face,
2725 the output cursor, and help echo from xterm.c, w32term.c and
2726 macterm.c into xdisp.c. It also generalizes the use of the
2727 window_part enum instead of using numeric values throughout.
af0ad939 2728
acd37560
KS
2729 * xdisp.c: Consolidate gui-independent code here.
2730 Include keymap.h.
2731 (Qhelp_echo): Import.
2732 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
2733 (help_echo_string, help_echo_window, help_echo_object)
2734 (previous_help_echo_string, help_echo_pos): Declare here.
2735 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
2736 (estimate_mode_line_height): Define here. Handle windowing
2737 systems directly (without using estimate_mode_line_height_hook).
2738 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
2739 (update_window_cursor, update_cursor_in_window_tree)
2740 (fast_find_position, fast_find_string_pos)
2741 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
2742 (expose_area, expose_line, expose_overlaps, expose_window)
2743 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
2744 declared static as they are only used locally in xdisp.c.
2745 (draw_glyphs): Rename from x_draw_glyphs and make static.
2746 (tool_bar_item_info, notice_overwritten_cursor): Make static.
2747 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
2748 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
af0ad939 2749 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
acd37560
KS
2750 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
2751 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
2752 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
2753 (note_mouse_highlight, x_clear_window_mouse_face)
2754 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
2755 (x_intersect_rectangles): New generic functions for use by xdisp.c
2756 and GUI front-ends.
2757 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
2758 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
2759
2760 * dispextern.h (Display_Info): Generic typedef for *_display_info.
2761 (NativeRectangle): Generic typedef for rectangle type.
2762 (enum window_part): Move here from window.c.
2763 (struct redisplay_interface): New members flush_display_optional,
2764 define_frame_cursor, clear_frame_area, draw_window_cursor,
2765 draw_vertical_window_border, shift_glyphs_for_insert.
2766 Rename member clear_mouse_face to clear_window_mouse_face.
2767 (estimate_mode_line_height_hook): Remove hook.
2768 (auto_raise_tool_bar_buttons_p): Don't declare extern.
2769 (tool_bar_item_info): Remove prototype.
2770 (help_echo_string, help_echo_window, help_echo_object)
2771 (previous_help_echo_string, help_echo_pos)
2772 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
2773 (x_stretch_cursor_p, output_cursor): Declare extern.
2774 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
2775 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
2776 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
2777 (display_and_set_cursor, set_output_cursor, x_cursor_to)
2778 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
2779 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
2780 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
2781 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
2782 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
2783 Add prototypes.
2784 (mode_line_string, marginal_area_string): Fix prototypes.
2785
2786 * window.c (enum window_part): Move to dispextern.h.
2787 (coordinates_in_window): Use enum window_part member names
2788 instead of numbers to describe return value.
2789 (struct check_window_data): Change part member to window_part.
2790 (check_window_containing): Return window_part unaltered.
2791 (window_from_coordinates): Change part arg from int to enum
2792 window_part. Allow part arg to be null. All users changed.
2793
2794 * window.h (window_from_coordinates): Fix prototype.
2795
2796 * term.c (estimate_mode_line_height): Move to xdisp.c.
2797
2798 * keyboard.c (make_lispy_event): Use enum window_part.
2799
2800 * dispnew.c (mode_line_string, marginal_area_string): Use enum
2801 window_part instead of int in arg list. Users changed.
2802
2803 * xterm.h (No_Cursor): Declare as None for X.
2804 (struct mac_output): Replace member cross_cursor by hand_cursor.
af0ad939 2805
acd37560
KS
2806 * xterm.c: Remove consolidated defines and code.
2807 (BETWEEN): Remove unused macro.
2808 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
2809 (x_define_frame_cursor, x_clear_frame_area)
2810 (x_draw_window_cursor): New X-specific functions for RIF.
2811 (x_redisplay_interface): Add new members.
2812
2813 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
2814
2815 * w32term.h (struct w32_output): Remove cross_cursor member.
2816
2817 * w32term.c: Remove consolidated defines and code.
2818 (BETWEEN): Remove unused macro.
2819 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
2820 (w32_define_frame_cursor, w32_clear_frame_area)
2821 (w32_draw_window_cursor): New W32-specific functions for RIF.
2822 (w32_redisplay_interface): Add new members.
2823
2824 * w32gui.h (No_Cursor): Define as 0 for W32.
2825 (XRectangle): Add X compatible rectangle type.
2826 (NativeRectangle): Declare as RECT for W32.
2827 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
2828
2829 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
2830
2831 * w32console.c: Remove consolidated defines and code.
af0ad939 2832
acd37560
KS
2833 * msdos.h (Display_Info): Add generic typedef.
2834
2835 * msdos.c: Remove consolidated defines and code.
2836 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
2837
2838 * macterm.h (struct mac_output): Replace member cross_cursor by
2839 hand_cursor.
2840 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
2841
2842 * macterm.c: Remove consolidated defines and code.
2843 (BETWEEN): Remove unused macro.
2844 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
2845 (mac_define_frame_cursor, mac_clear_frame_area)
2846 (mac_draw_window_cursor): New Mac-specific functions for RIF.
2847 (x_redisplay_interface): Add new members.
2848
2849 * macgui.h (No_Cursor): Define as 0 for Mac.
2850 (XRectangle): Add X compatible rectangle type.
2851 (NativeRectangle): Declare as Rect for Mac.
2852 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
2853
204ccab1
KS
2854 * macfns.c (x_set_mouse_color): Setup hand_cursor.
2855 (x_set_cursor_color): Use x_display_and_set_cursor.
acd37560 2856
9443fcf6 2857 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
acd37560
KS
2858 included from it. Add dependency on keymap.h.
2859
2860 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
2861
8ba01a70 28622003-03-21 Kenichi Handa <handa@m17n.org>
3f817c73
KH
2863
2864 * fileio.c (Fexpand_file_name): Fix previous change.
2865
8ba01a70 28662003-03-19 Kenichi Handa <handa@m17n.org>
4f497b0a
KH
2867
2868 * fileio.c (Ffile_name_directory): Reconstruct file name by
2869 make_specified_string.
2870 (Ffile_name_nondirectory, Ffile_name_as_directory)
2871 (Fdirectory_file_name, Fexpand_file_name)
2872 (Fsubstitute_in_file_name): Likewise.
2873 (Fread_file_name): Compare decoded homedir with DIR and
2874 DEFAULT_FILENAME.
2875
2876 * alloc.c (make_specified_string): If NCHARS is negative, count
2877 the number of characters.
2878
19536747
JD
28792003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2880
de38ae5a
JD
2881 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
2882 all widgets.
2883
19536747
JD
2884 * gtkutil.h: Removed xg_ignore_next_thumb.
2885
37ab321e 28862003-03-18 Kenichi Handa <handa@m17n.org>
cb0d4562
KH
2887
2888 * coding.c (Vchar_coding_system_table): Remove this variable.
2889 (Vcoding_system_safe_chars): New variable.
2890 (intersection): Remove this function.
2891 (find_safe_codings): Don't use Vchar_coding_system_table, but try
2892 all codings in SAFE_CODINGS.
00c64fab 2893 (Ffind_coding_systems_region_internal): Adjust for the change of
cb0d4562
KH
2894 find_safe_codings. Get generic coding systems from
2895 Vcoding_system_safe_chars.
2896 (Fdefine_coding_system_internal): New function.
2897 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
2898 Initialize and staticpro Vcoding_system_safe_chars.
2899
17097258
JD
29002003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2901
2a2071c3
JD
2902 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
2903 equal old values before updating.
2904
17097258
JD
2905 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
2906
2907 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
2908
29092003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2910
2911 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
2912 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
2913 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
2914 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
2915 (xg_create_scroll_bar): Pass bar to button event callback.
2916 (xg_find_top_left_in_fixed): New function.
2917 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
2918 whole scroll bar area. Get old position with
2919 xg_find_top_left_in_fixed, calculate and only clear needed areas.
2920 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
2921 dragging is in progress. Calculate whole as for Motif.
2922 Remove code that saved last values. Call gtk_range functions to
2923 set scroll bar sizes.
2924
2925 * gtkutil.h: Removed xg_ignore_next_thumb.
2926
8cb9dfbf
JB
29272003-03-17 Juanma Barranquero <lektu@terra.es>
2928
2929 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
2930 and files included from it.
2931
00c64fab
SM
29322003-03-18 Stefan Monnier <monnier@cs.yale.edu>
2933
2934 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
2935 multiple occurrences of the same keymap under different prefixes.
2936 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
2937
c45bb3b2
JR
29382003-03-16 Jason Rumney <jasonr@gnu.org>
2939
2940 * w32gui.h: Use HDC for Display.
2941
2942 * w32term.c (w32_encode_char): Prevent double-byte chars from
2943 crashing Emacs.
2944
2945 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
2946 as binary.
2947
2a6d0874
JB
29482003-03-16 Juanma Barranquero <lektu@terra.es>
2949
2950 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
2951
03eb5fab
KS
29522003-03-16 Kim F. Storm <storm@cua.dk>
2953
2954 The following changes consolidate some of the gui-independent
2955 parts of the processing and drawing of "glyph strings" from
2956 xterm.c, w32term.c, and macterm.c into xdisp.c.
2a6d0874 2957
03eb5fab
KS
2958 * dispextern.h (struct glyph): Reduce face_id member from 22 to
2959 21 bits (this reduces number of faces from 4M to 2M).
2960 Replace W32 specific w32_font_type member (2 bits) by generic
2961 font_type member (3 bits) for portability.
2962 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
2963 (enum draw_glyphs_face): Define here.
2964 (struct glyph_string): Define here. Merge W32 and X versions.
2965 (struct redisplay_interface): New members per_char_metric,
2966 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
2967 (VCENTER_BASELINE_OFFSET): Define here.
2968 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
2969 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
2970
2971 * xdisp.c: Consolidate gui-independent "glyph string" code here.
2972 (dump_glyph_string): Moved here.
2973 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
2974 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
2975 (fill_composite_glyph_string, fill_glyph_string)
2976 (fill_image_glyph_string, fill_stretch_glyph_string)
2977 (left_overwritten, left_overwriting, right_overwritten)
2978 (right_overwriting, get_char_face_and_encoding)
2979 (set_glyph_string_background_width, compute_overhangs_and_x)
2980 (append_glyph, append_composite_glyph, produce_image_glyph)
2981 (take_vertical_position_into_account, append_stretch_glyph)
2982 (produce_stretch_glyph): New generic functions (based on X version).
2983 Call platform specific functions through rif.
2984 (INIT_GLYPH_STRING): New macro, hides W32 details.
2985 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
2986 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
2987 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
2988 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
2989 (notice_overwritten_cursor):
2990 Generic functions exported to platform modules. Users changed.
2991
2992 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
2993 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
2994 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
fad49844 2995 New macros for consolidated code.
2a6d0874 2996
03eb5fab
KS
2997 * xterm.c: Remove consolidated defines and code.
2998 (x_per_char_metric, x_encode_char)
2999 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
3000 (x_redisplay_interface): Add new members.
3001
3002 * w32gui.h (Display): Add dummy typedef for consolidation.
3003 (XChar2b): Define alias for wchar_t for consolidation.
3004 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
3005
3006 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
2a6d0874 3007 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
03eb5fab
KS
3008 New macros for consolidation.
3009
fad49844 3010 * w32term.c: Remove consolidated defines and code.
03eb5fab
KS
3011 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
3012 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
3013 (w32_per_char_metric): Change font_type arg to int for RIF.
3014 (w32_encode_char): Return int according to RIF requirements.
3015 (w32_compute_glyph_string_overhangs): Adapt to RIF.
3016 (w32_get_glyph_overhangs): New function for RIF. Uses generic
3017 x_get_glyph_overhangs.
3018 (w32_redisplay_interface): Add new members.
3019
3020 * macgui.h (XChar2b): Move typedef here for consolidation.
3021 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
3022
3023 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
3024 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
3025 consolidation.
3026
3027 * macterm.c: Remove consolidated defines and code.
3028 (mac_per_char_metric): New function for RIF.
00c64fab 3029 (mac_encode_char): Adapt to new RIF requirements.
03eb5fab
KS
3030 (mac_compute_glyph_string_overhangs): Adapt for RIF.
3031 (x_redisplay_interface): Add new members.
3032
00c64fab
SM
30332003-03-15 Stefan Monnier <monnier@cs.yale.edu>
3034
3035 * keymap.c (Vmenu_events): New var.
3036 (syms_of_keymap): Initialize it.
3037 (where_is_internal): Check more carefully what is a menu event.
3038
225c7a07
RS
30392003-03-14 Richard M. Stallman <rms@gnu.org>
3040
3041 * lread.c (read1): After #!, exit loop on eof.
3042
cea9be54
JD
30432003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3044
9ea0e54d
JD
3045 * gtkutil.h: Add declaration for xg_frame_cleared.
3046
0cb35f4e
JD
3047 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
3048
cea9be54
JD
3049 * gtkutil.c (struct xg_last_sb_pos): New structure.
3050 (handle_fixed_child): New function.
3051 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
3052 and force a redraw on them.
3053 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
3054 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
3055 so we can avoid unneeded redraws.
3056 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
3057 and force a redraw on the scroll bar.
3058 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
3059 if xg_last_sb_pos shows the positions are up to date.
0cb35f4e 3060 (xg_frame_cleared): New function.
cea9be54 3061
20b853f3
KH
30622003-03-13 Kenichi Handa <handa@m17n.org>
3063
3064 * coding.c (Fdetect_coding_region): Fix docstring.
3065 (Fdetect_coding_string): Fix docstring.
3066
7a555aff
AS
30672003-03-13 Andreas Schwab <schwab@suse.de>
3068
25cc0080
AS
3069 * gtkutil.c: Add prototype for create_menus.
3070
30225431
AS
3071 * data.c (long_to_cons): Fix type of top.
3072
3073 * xselect.c (selection_data_to_lisp_data): Use int instead of
3074 long for an integer of size 4.
3075
7a555aff 3076 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
30225431 3077 (xg_tool_bar_help_callback): Likewise.
7a555aff 3078
a3e4741f
AS
30792003-03-12 Andreas Schwab <schwab@suse.de>
3080
3081 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
3082
9668be7c
KS
30832003-03-12 Kim F. Storm <storm@cua.dk>
3084
03eb5fab 3085 The following changes consolidate the fringe handling from
9668be7c 3086 xterm.c, w32term.c, and macterm.c into xdisp.c.
00a88f32 3087
9668be7c
KS
3088 * xdisp.c: Consolidate fringe handling code here.
3089 (left_bits, right_bits, continued_bits, continuation_bits)
3090 (ov_bits, zv_bits): Define fringe bitmaps.
3091 (fringe_bitmaps): New array holding fringe bitmaps.
3092 (draw_fringe_bitmap): Draw a specific bitmap; call display
3093 specific drawing routine via rif->draw_fringe_bitmap.
3094 (draw_row_fringe_bitmaps): Generic replacement for
3095 x_draw_row_fringe_bitmaps; all callers changed.
3096 (compute_fringe_widths): Generic replacement for
3097 x_compute_fringe_widths; all callers changed.
3098
3099 * dispextern.h (enum fringe_bitmap_type): Define here.
3100 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
3101 (fringe_bitmaps): Declare extern.
3102 (struct redisplay_interface): New member draw_fringe_bitmap.
3103 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
3104
3105 * xterm.c: Remove generic fringe code.
3106 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
3107 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
3108
3109 * w32term.c: Remove generic fringe code.
3110 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
3111 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
00a88f32 3112
9668be7c
KS
3113 * macterm.c: Remove generic fringe code.
3114 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
3115 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
3116
00a88f32
SM
31172003-03-11 Stefan Monnier <monnier@cs.yale.edu>
3118
3119 * print.c (Fprin1_to_string): Return unibyte string if possible.
3120
1d1de695
DK
31212003-03-09 David Kastrup <dak@gnu.org>
3122
3123 * process.c (read_process_output): We have allocated enough space
3124 for readmax and carryover, so actually use the alloted space.
3125
257f40f2
JD
31262003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3127
3128 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
3129 toolkit scrollbar click.
3130
3131 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
3132 for USE_GTK.
3133 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
3134 also.
3135 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
3136 scrollbar and control is pressed, call x_scroll_bar_handle_click.
00a88f32 3137
257f40f2
JD
3138 * gtkutil.h: Declare xg_get_scroll_id_for_window.
3139
3140 * gtkutil.c (xg_get_scroll_id_for_window): New function.
3141 (xg_tool_bar_item_expose_callback): New function.
3142 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
3143 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
3144 on the tool bar widget.
3145 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
3146 to expose on the tool bar item widgets.
3147
15213141
JD
31482003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3149
26b74a0b 3150 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
00a88f32 3151 struct image* when deciding to update (struct image* may have been
26b74a0b
JD
3152 deleted from the image cache).
3153
15213141
JD
3154 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
3155 the event isn't for a frame (i.e. for dialogs).
3156
20b853f3 31572003-03-07 Kenichi Handa <handa@m17n.org>
cb681b34
KH
3158
3159 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
3160 composition components reaches the limit, terminate composing.
3161 (COMPOSITION_OK): New macro.
00a88f32 3162 (detect_coding_iso2022): Use it if an escape sequence for
cb681b34
KH
3163 composition is found.
3164 (coding_restore_composition): Adjust the number of composition
3165 components if it is not sane.
3166
c9029fe5
JB
31672003-03-06 Juanma Barranquero <lektu@terra.es>
3168
3169 * w32term.h (struct w32_display_info): Add xrdb member to support
3170 passing resources via -xrm on Windows.
3171
3172 * w32term.c (w32_make_rdb): New function.
3173 (w32_term_init): Use it to initialize xrdb member of w32_display_info
3174 struct. Delete leftover code.
3175
3176 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
3177 for resources passed on the command line.
3178
3179 * w32reg.c (w32_get_rdb_resource): New function.
3180 (x_get_string_resource): Use it, so resources passed with -xrm
3181 supercede the ones in the registry.
3182
9d00001f
JD
31832003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3184
3185 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
3186 instead of x_top_window_to_frame.
3187
ca2417b9
JD
31882003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3189
3190 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
3191 when restarting Emacs.
3192
5b20caf0
RS
31932003-03-03 Richard M. Stallman <rms@gnu.org>
3194
3195 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
3196 to run kill-buffer-query-functions.
3197 (Qkill_buffer_query_functions): New var.
3198 (syms_of_buffer): Init and staticpro it.
3199
58e91b77
JD
32002003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3201
3202 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
3203
932357b4
KS
32042003-02-25 Kim F. Storm <storm@cua.dk>
3205
3206 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
3207 If centering point failed to make whole line visible and vscroll
3208 is non-zero, disable vscroll and try centering point again.
3209
3210 * lread.c (read1): Accept `single space' syntax like (? x).
3211
bb8db7e1
JD
32122003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3213
3214 * keyboard.c (cancel_hourglass_unwind): Surround with
3215 #ifdef HAVE_X_WINDOWS
3216
47d77aab
KH
32172003-02-25 Kenichi Handa <handa@m17n.org>
3218
3219 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
3220 process only when "subprocesses" is defined.
3221
6a097c0c
SM
32222003-02-24 Stefan Monnier <monnier@cs.yale.edu>
3223
3224 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
3225
0b063c27
JB
32262003-02-24 Juanma Barranquero <lektu@terra.es>
3227
d1135afc
JB
3228 * callint.c (fix_command): Declare as static void and move before
3229 Fcall_interactively.
3230
0b063c27
JB
3231 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
3232 (syms_of_xdisp): Don't initialize Qwhen.
3233
0af912f0
JD
32342003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3235
3236 * keyboard.c (cancel_hourglass_unwind): New function.
3237 (command_loop_1): Cancel hourglass with unwind-protect.
3238
120d0a23
RS
32392003-02-23 Richard M. Stallman <rms@gnu.org>
3240
3241 * callint.c (fix_command): New subroutine, from Fcall_interactively.
3242 Detect (when ... (region-beginning)) etc.
3243 (Fcall_interactively): Call fix_command.
3244 (Qif, Qwhen): New variables.
3245 (syms_of_callint): Init and staticpro them.
0b063c27 3246
120d0a23
RS
3247 * regex.c (print_partial_compiled_pattern): Output to stderr.
3248
4ece81a6
KG
32492003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
3250
3251 * dired.c (directory_files_internal): Don't expand directory.
3252 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
3253 instead. From Lars Hansen <larsh@math.ku.dk>.
3254
e52bd6b7
SM
32552003-02-22 Stefan Monnier <monnier@cs.yale.edu>
3256
3257 * fns.c (string_to_multibyte): Remove unused var i.
3258 (Flanginfo): Fix int/Lisp_Object mixup.
3259 (void_call2): New fun.
3260 (Fmap_char_table): Use it in place of call2.
3261
3262 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
3263
3264 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
3265
3266 * keymap.c (copy_keymap_1): Make it static.
3267
3268 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
3269
c33ef7c4
JB
32702003-02-22 David Ponce <david@dponce.com>
3271
3272 * lread.c (Fload): Don't check STRING_MULTIBYTE.
3273
16782258
JD
32742003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3275
3276 * process.h: Removed subtty field from struct Lisp_Process.
3277
3278 * process.c (create_process): Remove setting of subtty.
3279 (emacs_get_tty_pgrp): New function.
e52bd6b7
SM
3280 (Fprocess_running_child_p, process_send_signal):
3281 Call emacs_get_tty_pgrp instead of ioctl.
16782258
JD
3282 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
3283
3abeca61
KG
32842003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
3285
3286 * keymap.c (Fdefine_key): Doc fix.
3287
92a8ce63
JB
32882003-02-21 Juanma Barranquero <lektu@terra.es>
3289
3290 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
3291
3292 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
3293 POLLING_PROBLEM_IN_SELECT.
3294
3295 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
3296 Delete #undef of POLLING_PROBLEM_IN_SELECT.
3297
3298 * s/hpux10-20.h: New file.
3299
e52bd6b7
SM
3300 * process.c (wait_reading_process_input):
3301 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
92a8ce63 3302
20f1ef2e
KH
33032003-02-20 Kenichi Handa <handa@m17n.org>
3304
32d0a9dc
KH
3305 * fontset.c (check_fontset_name): If NAME is nil, return the
3306 default fontset.
3307 (override_font_info): New function.
e52bd6b7 3308 (Fset_fontset_font): Document that NAME nil means the default fontset.
32d0a9dc
KH
3309 (Ffontset_info): If FONTSET is not the default fontset, merge
3310 FONTSET onto the copy of the default fontset, and work on that
3311 copy. Document that NAME nil means the default fontset.
3312 (Ffontset_font): Document that NAME nil means the default fontset.
3313
20f1ef2e
KH
3314 * process.c (setup_process_coding_systems): If the process's
3315 in/out descriptor is -1, do nothing.
3316
77d1daf2
AS
33172003-02-19 Andreas Schwab <schwab@suse.de>
3318
e52bd6b7
SM
3319 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
3320 Add prototypes.
77d1daf2 3321
f9a45bb3
KH
33222003-02-19 Kenichi Handa <handa@m17n.org>
3323
3324 * xfaces.c (try_alternative_families): Try all scalable fonts if
3325 Vscalable_fonts_allowed is not Qt.
3326
72ecb43c
JD
33272003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3328
3329 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
3330
ee5be7c3
JD
33312003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3332
3333 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
3334 names.
3335
3336 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
e52bd6b7 3337 (sorted_font_list): Move allocation of struct font_name to
ee5be7c3
JD
3338 x_face_list_fonts.
3339 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
3340 (Fx_list_fonts): Set maxnames to -1 to get all font names.
3341
4cd519a7
KS
33422003-02-18 Kim F. Storm <storm@cua.dk>
3343
068f9882
KS
3344 * lread.c (read1): Fix last change.
3345 "`" is not always special. Allow "?" after a character constant.
4cd519a7 3346
7290a344
AC
33472003-02-18 Andrew Choi <akochoi@shaw.ca>
3348
3349 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
3350
1f7fa69b
AS
33512003-02-18 Andreas Schwab <schwab@suse.de>
3352
3353 * window.c (window_scroll_pixel_based): Move outside a
3354 multi-glyph character before setting new window start.
3355
3356 * xdisp.c (in_display_vector_p): New function.
3357 * dispextern.h (in_display_vector_p): Declare.
3358
23e21195
KS
33592003-02-18 Kim F. Storm <storm@cua.dk>
3360
3361 * lread.c (read1): Fix and relax read syntax.
3362 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
3363 Only recognize "," after dotted-pair dot if inside backquote.
3364 Never include "`" or "," (inside backquote) in a symbol.
3365 Allow dotted-pair dot after a character constant.
3366 Allow "`" and "," (inside backquote) after a character constant.
92a8ce63 3367
f098b121
JD
33682003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3369
3370 * gtkutil.c (xg_tool_bar_expose_callback): New function.
3371 (xg_create_tool_bar): Force style of tool bar to be horizontal with
3372 icons. Set name of tool bar to emacs-toolbar.
3373 (update_frame_tool_bar): Connect expose event to
3374 xg_tool_bar_expose_callback.
3375
63020c46
RS
33762003-02-17 Richard M. Stallman <rms@gnu.org>
3377
3378 * keyboard.c (this_command_key_count_reset): New variable.
3379 Initiatize to 0 where this_command_key_count is set.
3380 (read_char): Save and restore this_command_key_count_reset
3381 around input method code.
3382 (read_char): If this_command_key_count_reset, echo reread commands.
3383 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
3384
fb4452cc
KH
33852003-02-17 Kenichi Handa <handa@m17n.org>
3386
3387 * fns.c (string_to_multibyte): Always return a multibyte string.
3388
bd11cc09
JR
33892003-02-16 Jason Rumney <jasonr@gnu.org>
3390
e52bd6b7
SM
3391 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
3392 Negative max_fonts parameter means list all.
bd11cc09 3393
4cdf4bde
DL
33942003-02-14 Dave Love <fx@gnu.org>
3395
3396 * fns.c (Flanginfo): Doc fix.
3397
023b93f6
KS
33982003-02-13 Kim F. Storm <storm@cua.dk>
3399
37cd4238
KS
3400 * lread.c (read_escape): Interpret \s as a SPACE character, except
3401 for \s-X in a character constant which still is the super modifier.
3402 (read1): Signal an `invalid read syntax' error if a character
3403 constant is immediately followed by a digit or symbol character.
3404
140a6b7e
KS
3405 * search.c (Fmatch_data): Doc fix. Explicitly state that
3406 match-data is undefined if last search failed.
3407
023b93f6
KS
3408 * keymap.c (Fcommand_remapping): Renamed from Fremap_command.
3409 All uses changed.
3410
7d5c86e5
JB
34112003-02-12 Juanma Barranquero <lektu@terra.es>
3412
3413 * eval.c (Fdefmacro): Fix typo.
3414
295fff2c
KS
34152003-02-12 Kim F. Storm <storm@cua.dk>
3416
3417 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
3418 macro is a string, convert meta modifiers in string when copying
3419 the string into a vector.
3420
60f3202d
KS
34212003-02-11 Kim F. Storm <storm@cua.dk>
3422
3423 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
3424
61cb0b53
KH
34252003-02-11 Kenichi Handa <handa@m17n.org>
3426
3427 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
3428
7392e23c
KS
34292003-02-10 Kim F. Storm <storm@cua.dk>
3430
3431 * process.c: Doc fixes.
3432 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
3433
ce4254bd
KH
34342003-02-10 Kenichi Handa <handa@m17n.org>
3435
9c7a329a
KH
3436 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
3437
ce4254bd
KH
3438 * process.c (QCfilter_multibyte): New variable.
3439 (setup_process_coding_systems): New function.
e52bd6b7
SM
3440 (Fset_process_buffer, Fset_process_filter):
3441 Call setup_process_coding_systems.
ce4254bd
KH
3442 (Fstart_process): Initialize the member `filter_multibyte' of
3443 struct Lisp_Process.
3444 (create_process): Call setup_process_coding_systems.
3445 (Fmake_network_process): New keyward `:filter-multibyte'.
3446 Initialize the member `filter_multibyte' of struct Lisp_Process.
3447 Call setup_process_coding_systems.
3448 (server_accept_connection): Call setup_process_coding_systems.
3449 (read_process_output): If the process has a filter, decide the
3450 multibyteness of a string to given to the filter by
3451 `filter_multibyte' member of the process. If the process doesn't
3452 have a filter and the result of conversion is unibyte, use
3453 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
3454 multibyte form.
3455 (Fset_process_coding_system): Call setup_process_coding_systems.
3456 (Fset_process_filter_multibyte): New function.
3457 (Fprocess_filter_multibyte_p): New function.
3458 (syms_of_process): Intern and staticpro QCfilter_multibyte.
3459 Defsubr Sset_process_filter_multibyte and
3460 Sprocess_filter_multibyte_p.
3461
3462 * process.h (struct Lisp_Process): New member filter_multibyte.
3463
3464 * lisp.h (setup_process_coding_systems): Add prototype.
3465
3466 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
3467 process, update coding systems for the process.
3468
b08d5f59
KH
34692003-02-09 Kenichi Handa <handa@m17n.org>
3470
3471 * fns.c (string_to_multibyte): New function.
3472 (Fstring_to_multibyte): New function.
3473 (syms_of_fns): Defsubr it.
3474
0dfd93c0
AS
34752003-02-08 Andreas Schwab <schwab@suse.de>
3476
3477 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
3478 instead of the substitution.
3479
7b76ca1c
JD
34802003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3481
3482 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
3483
3484 * xmenu.c (menu_position_func): Adjust menu popup position so that
3485 the menu is fully visible.
7b76ca1c 3486
2436a4e4
JD
34872003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3488
3489 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
e52bd6b7
SM
3490 (x_make_frame_invisible, x_wm_set_icon_position):
3491 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
2436a4e4
JD
3492
3493 * xfns.c (x_set_name, x_set_title): Ditto.
3494
37d1e680
RS
34952003-02-04 Richard M. Stallman <rms@gnu.org>
3496
3497 * keyboard.c (echo_now): Update before_command_echo_length.
3498 (Freset_this_command_lengths): Reset this_command_key_count etc.
3499 immediately rather than arranging to do it later.
3500 (before_command_key_count_1, before_command_echo_length_1)
3501 (before_command_restore_flag): Vars deleted.
3502 (add_command_key): Don't handle before_command_restore_flag.
3503 (read_char, record_menu_key): Don't update before_command_key_count or
3504 before_command_echo_length.
3505 (read_char): Don't handle before_command_restore_flag.
3506
3507 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
3508 in direct-output clauses if it wouldn't be called in the ordinary case.
3509
578846a3
KS
35102003-02-04 Kim F. Storm <storm@cua.dk>
3511
3512 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
3513
49853a4d
JD
35142003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3515
3516 * gtkutil.c (remove_from_container): Copying list is not needed.
3517 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
3518 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
3519 on list returned from gtk_container_get_children to avoid memory leak.
3520
8b53dc06
JR
35212003-02-01 Jason Rumney <jasonr@gnu.org>
3522
5d54d177
JR
3523 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
3524 local malloc.
3525 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
3526 definitions in xpm.h.
3527 (init_xpm_functions): New function.
3528 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
3529 (init_external_image_libraries): Try to load libXpm.dll.
3530
8b53dc06
JR
3531 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
3532 timestamp.
3533
b222e415
DL
35342003-01-31 Dave Love <fx@gnu.org>
3535
3536 * syntax.c (Fskip_chars_forward)
3537 (open-paren-in-column-0-is-defun-start): Doc fix.
3538
c60ee5e7
JB
35392003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
3540
3541 * fileio.c: Support // at start of name for Cygwin (just added proper
3542 preprocessor tests).
3543
3544 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
3545
3546 * Makefile.in: Use @EXEEXT@ for Cygwin.
3547
3548 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
3549
3550 * s/cygwin.h: Added for Cygwin port.
3551
53b37591
JB
35522003-01-31 Juanma Barranquero <lektu@terra.es>
3553
3554 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
3555 when including gif_lib.h.
fe929957
JB
3556 (init_gif_functions, init_tiff_functions): New functions.
3557 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
3558 Windows. Disable color table lookups. Call library functions
53b37591 3559 through pointers determined at runtime.
fe929957
JB
3560 (init_external_image_libraries): Try to load libungif.dll and
3561 libtiff.dll.
53b37591 3562
45415a8f
KH
35632003-01-31 Kenichi Handa <handa@m17n.org>
3564
3565 * xdisp.c (SKIP_GLYPHS): New macro.
e52bd6b7 3566 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
45415a8f 3567
a97e4138
JD
35682003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3569
e52bd6b7 3570 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
a97e4138 3571
6eed9bed
DL
35722003-01-30 Dave Love <fx@gnu.org>
3573
3574 * alloc.c (Vgc_elapsed, gcs_done): New variables.
3575 (Fgarbage_collect): Use them.
3576 (init_alloc, syms_of_alloc): Set them up.
3577
100dcd40
JB
35782003-01-30 Juanma Barranquero <lektu@terra.es>
3579
3580 * w32fns.c (init_external_image_libraries): Add missing operator.
3581
fbd852af
JR
35822003-01-29 Jason Rumney <jasonr@gnu.org>
3583
3584 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
3585 an alternative name for jpeg.dll.
3586
8a2d8020
KH
35872003-01-29 Kenichi Handa <handa@m17n.org>
3588
3589 * xdisp.c (set_cursor_from_row): Pay attention to string display
3590 properties.
3591
058c18c7
AC
35922003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
3593
3594 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
3595 <escape>.
3596 (keycode_to_xkeysym_table): Reformat and add more comments.
3597 (XTread_socket): Drop special case for backspace.
3598
385f11cf
AC
35992003-01-28 Andrew Choi <akochoi@shaw.ca>
3600
3601 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
3602 values in old-style RGB specs.
3603
c922a224
JB
36042003-01-27 Juanma Barranquero <lektu@terra.es>
3605
3606 * w32fns.c (init_external_image_libraries): Try alternate names for the
3607 jpeg dll.
3608
0a1d6de0
JD
36092003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3610
3611 * gtkutil.c (create_dialog, xg_separator_p)
3612 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
3613 before calling strcmp or strlen.
3614
a97e4138 36152003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1d1885fc
JD
3616
3617 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
3618 and handle image load failure.
3619
28908312
JR
36202003-01-26 Jason Rumney <jasonr@gnu.org>
3621
3622 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
3623 New functions.
3624 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
3625 Disable color table lookups. Call jpeg library functions
3626 through pointers determined at runtime.
3627 (init_external_image_libraries): Try to load jpeg.dll.
3628
84e47416
RS
36292003-01-25 Richard M. Stallman <rms@gnu.org>
3630
3631 * lisp.h: Declare format2 instead of format1.
3632
3633 * fileio.c (barf_or_query_if_file_exists):
3634 Call format2 instead of format1.
3635
3636 * editfns.c (format2): New function, replaces format1
3637 but takes exactly two Lisp Objects as format args.
3638
3639 * buffer.c (Fkill_buffer): Call format2 instead of format1.
3640
a97e4138 36412003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1fcfb866
JD
3642
3643 * xterm.h: Change to return value of x_dispatch_event to int.
3644
3645 * xterm.c (x_filter_event): New function.
3646 (event_handler_gdk, XTread_socket): Call x_filter_event.
3647 (x_dispatch_event): Change to return value of finish.
3648 (event_handler_gdk): Use return value from x_dispatch_event.
3649
3650 * xfns.c (x_window): Call create_frame_xic for GTK version to
3651 initialize input methods.
3652
3653 * gtkutil.h: Add (void) prototypes.
3654
3655 * gtkutil.c (create_menus): Remove code that puts the help menu to
3656 the right.
3657
54eefef1
JR
36582003-01-25 Jason Rumney <jasonr@gnu.org>
3659
3660 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
3661 [HAVE_PNG]: Sync with xfns.c version.
3662 (png_load): Adjust colors for Windows. Use Windows
3663 bitmaps. Disable color table lookups.
c262430d
JR
3664 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
3665 (init_png_functions): New function.
3666 (png_read_from_memory, png_load): Call png library functions
3667 through pointers determined at runtime.
3668 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
3669 (init_external_image_libraries): New function.
3670 (init_xfns): Call it.
54eefef1 3671
1a9e275b
AS
36722003-01-24 Andreas Schwab <schwab@suse.de>
3673
3674 * minibuf.c (Fminibuffer_message): Verify type of parameter.
3675
a97e4138 36762003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
81e302ef
JD
3677
3678 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
3679 of static initializer.
3680
422eec7e
DL
36812003-01-24 Dave Love <fx@gnu.org>
3682
3683 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
3684 architectures.
3685
3686 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
3687 Use __alignof__.
3688
2a026b04
KH
36892003-01-24 Kenichi Handa <handa@m17n.org>
3690
3691 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
e52bd6b7 3692 It it is nonzero, don't pretend that an invisible area doesn't exist.
2a026b04
KH
3693 (command_loop_1): Call adjust_point_for_property with proper
3694 second arg.
3695
a18bb28d
JR
36962003-01-22 Jason Rumney <jasonr@gnu.org>
3697
3698 Sync changes with xterm.c and xfns.c.
3699
3700 * w32term.c (x_draw_glyph_string_foreground)
3701 (x_draw_composite_glyph_string_foreground): Implement overstriking.
3702
3703 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
3704 phys_cursor's hpos is overwritten. This is still not completely
3705 correct, as it doesn't really make sense to use hpos at all to
3706 get the cursor glyph (as that is relative to the width of the
3707 characters on the line, which may have changed during the update).
3708
3709 * w32term.c (notice_overwritten_cursor): Handle the special case
3710 of the cursor being in the first blank non-text line at the
3711 end of a window.
3712
3713 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
3714 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
3715 Compute from the x position returned by x_draw_glyphs.
3716
3717 (x_display_and_set_cursor): Don't set phys_cursor_width here,
3718 except for NO_CURSOR and system caret, to make phys_cursor_width
3719 contain what its name suggests.
3720 (notice_overwritten_cursor): Consider the cursor image erased if
3721 the output area intersects the cursor image in y-direction.
3722
6a097c0c
SM
3723 * w32term.c (note_mode_line_or_margin_highlight): Rename from
3724 note_mode_line_highlight and extend.
a18bb28d
JR
3725
3726 * w32term.c (last_window): New variable.
3727 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
3728 (note_mouse_movement): Remove reimplemented code in #if 0.
3729
3730 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
3731 not update_mode_lines, and always set it to 1.
3732
ac6e47ef
JR
37332003-01-21 Jason Rumney <jasonr@gnu.org>
3734
3735 * w32fns.c (IDC_HAND): Define it if system headers don't.
3736
37372003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
3738
3739 * w32term.h (struct w32_output): New member hand_cursor.
3740 (WM_EMACS_SETCURSOR): New message definition.
3741
3742 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
3743 function w32_define_cursor.
3744 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
3745 position, change member name output_data.x to output_data.w32 and
3746 add function w32_define_cursor.
3747 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
3748 and change member name output_data.x to output_data.w32.
e52bd6b7
SM
3749 (w32_initialize_display_info):
3750 Setup dpyinfo->vertical_scroll_bar_cursor.
ac6e47ef
JR
3751
3752 * w32fns.c (Vx_hand_shape): New variable.
3753 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
3754 WM_EMACS_SETCURSOR.
3755 (x-create-frame): Setup Cursor types.
3756
ceb39a17
JB
37572003-01-21 David Ponce <david@dponce.com>
3758
ac6e47ef
JR
3759 * w32term.c (w32_encode_char): For DIM=1 charset, set
3760 ccl->reg[2] to -1 before calling ccl_driver. (Sync. with xterm.c
3761 x_encode_char change by Kenichi Handa <handa@m17n.org> on
ceb39a17 3762 2002-09-30.)
ac6e47ef
JR
3763 (w32_draw_relief_rect): Declare all args.
3764 (w32_define_cursor): New.
3765
3766 * w32fns.c (w32_load_cursor): New function.
3767 (w32_init_class): Use it.
3768 (x_put_x_image): Declare all args.
3769
46cf0bed
JB
37702003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
3771
3772 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
3773
a97e4138 37742003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e8794476
JD
3775
3776 * gtkutil.c: Must include stdio.h before termhooks.h
3777
83fc9c63
DL
37782003-01-21 Dave Love <fx@gnu.org>
3779
3780 * alloc.c (Fgc_status): Print zombie list.
3781 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
3782 Fix assignment of zombies.
3783 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
3784 Don't take car of non-cons.
3785
3786 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
3787
3788 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
3789
fe04b8c8
JR
37902003-01-20 David Ponce <david@dponce.com>
3791
3792 * w32menu.c (digest_single_submenu): Declare all args.
3793
3794 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
3795 changes in xmenu.c:
3796
3797 (parse_single_submenu): Use individual keymap's prompt
3798 string as pane name, if there is one.
3799 (set_frame_menubar): Save menu_items_n_panes from each call to
3800 parse_single_submenu and use it when calling digest_single_submenu.
3801
539e69a9
ST
38022003-01-20 Steven Tamm <steventamm@mac.com>
3803
3804 * macterm.c (XTread_socket): Checks for valid, visible window
3805 before sending a scroll-wheel event.
3806
675d000f
RS
38072003-01-20 Richard M. Stallman <rms@gnu.org>
3808
3809 * xdisp.c (redisplay_window): If mini window's buffer is not
3810 a minibuffer, then redisplay it like other windows.
3811
a97e4138 38122003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
22174d10
JD
3813
3814 * gtkutil.c (xg_create_frame_widgets): Check if there is an
3815 external tool bar before setting tool bar height.
3816
048addec
JD
38172003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3818
3819 * xterm.c (handle_one_xevent): Surround popup_activated
3820 with #ifdef:s for non-toolkit version.
3821
3822 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
3823 (gtkutil.o): New file.
3824 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
3825 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
3826
3827 * gtkutil.c: New file for GTK version.
3828
3829 * gtkutil.h: New file for GTK version.
3830
3831 * xterm.h: Add xt_or_gtk_widget.
3832 Include gtk files for USE_GTK.
3833 (struct x_output): Add toolbar_height.
3834 (struct x_output): Add GTK widgets and Gdk size_hints.
3835 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
3836 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
3837 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
3838
3839 * xterm.c: Include gtkutil.h for USE_GTK.
3840 Declare extern void free_frame_menubar for USE_GTK.
3841 (note_mouse_highlight): Check popup_activated for USE_GTK.
3842 (xt_action_hook): Don't compile if USE_GTK.
3843 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
3844 (xg_scroll_callback): New function.
3845 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
3846 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
3847 for USE_GTK.
3848 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
3849 xg_show_scroll_bar for USE_GTK.
3850 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
3851 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
3852 (event_handler_gdk): New function for USE_GTK.
3853 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
3854 (handle_one_xevent): Make sure widget is mapped before
3855 calling x_real_positions for USE_GTK.
3856 (XTread_socket): Add GTK event loop for USE_GTK.
3857 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
3858 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
3859 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
3860 (x_iconify_frame): Add code for USE_GTK.
3861 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
3862 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
3863 is in gtkutil.c.
3864 (x_term_init): Add initialization for GTK.
3865 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
3866
3867 * xmenu.c: Include gtkutil.h for USE_GTK.
3868 (Fx_popup_menu): Use current position if x and y is NIL.
6bdb309a
SM
3869 (single_menu_item, single_menu_item, Fx_popup_dialog):
3870 Check for USE_GTK.
048addec
JD
3871 (popup_widget_loop): New function for USE_GTK.
3872 (x_activate_menubar): Add code for USE_GTK.
3873 (popup_activate_callback, popup_deactivate_callback)
6bdb309a
SM
3874 (menu_highlight_callback, menubar_selection_callback):
3875 Add USE_GTK versions.
048addec
JD
3876 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
3877 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
3878 (free_frame_menubar): Only compile if not USE_GTK. GTK version
3879 is in gtkutil.c.
3880 (popup_selection_callback): New version for USE_GTK.
3881 (create_and_show_popup_menu): New fuction, one USE_GTK version and
6bdb309a 3882 one USE_X_TOOLKIT version.
048addec
JD
3883 (xmenu_show): Call create_and_show_popup_menu.
3884 (dialog_selection_callback): New version for USE_GTK.
3885 (create_and_show_dialog): New fuction, one USE_GTK version and
6bdb309a 3886 one USE_X_TOOLKIT version.
048addec
JD
3887 (xdialog_show): Call create_and_show_dialog.
3888
3889 * xfns.c: Include gtkutil for USE_GTK.
3890 (x_window_to_frame, x_any_window_to_frame)
3891 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
3892 (x_top_window_to_frame): Add code for USE_GTK.
3893 (x_set_background_color): Call xg_set_background_color for GTK.
3894 (x_set_menu_bar_lines): Check for USE_GTK.
3895 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
3896 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
3897 (x_window): Call xg_create_frame_widgets for USE_GTK.
3898 (Fx_create_frame): Check for USE_GTK
3899 (Fx_file_dialog): New implementation for USE_GTK.
3900
3901 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
3902 (update_menu_bar): Add check for USE_GTK.
3903 (update_tool_bar): Add check for USE_GTK and external tool bar.
3904 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
3905 (redisplay_internal): Add check for USE_GTK and popup_activated.
3906 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
3907 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
3908 (display_menu_bar): Add check for USE_GTK
3909
3910 * lisp.h: Declare Vx_resource_name extern.
3911
3912 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
3913 for USE_GTK.
3914 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
3915
3916 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
3917 (FRAME_EXTERNAL_TOOL_BAR): New macro.
3918 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
3919
3920 * fileio.c (Fread_file_name): Add check for USE_GTK.
3921
6bdb309a
SM
3922 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
3923 Add check for USE_GTK.
048addec
JD
3924
3925 * config.in: Added HAVE_GTK
3926
3927 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
3928
39292003-01-18 Stefan Monnier <monnier@cs.yale.edu>
3930
3931 * charset.h (Funibyte_char_to_multibyte): Export.
3932
39332003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3934
3935 * xmenu.c (mouse_position_for_popup): New function.
3936 (Fx_popup_menu): Call mouse_position_for_popup for X and
3937 mouse_position_hook for others.
3938
39392003-01-17 Kim F. Storm <storm@cua.dk>
3940
3941 * editfns.c (Finsert): Mention `string-make-multibyte' and
3942 `string-as-multibyte' in doc string.
3943
39442003-01-17 Kenichi Handa <handa@m17n.org>
3945
3946 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
3c02a6f5 3947
048addec
JD
3948 * editfns.c (Fformat): Convert an unibyte char argument that is
3949 formatted by "%c" to multibyte if the total result must be a
3950 multibyte string.
cd7df9c0 3951
048addec 39522003-01-16 Kim F. Storm <storm@cua.dk>
cd7df9c0 3953
048addec
JD
3954 * process.c (set-process-filter): Document unibyte/multibyte-ness
3955 of string argument.
56210ecd 3956
048addec 39572003-01-16 Kenichi Handa <handa@m17n.org>
56210ecd 3958
048addec 3959 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
56210ecd 3960
048addec
JD
3961 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
3962 (re_search_2): Likewise.
6df8b9fe 3963
048addec 39642003-01-15 Kenichi Handa <handa@m17n.org>
6df8b9fe 3965
048addec
JD
3966 * xdisp.c (message_dolog): Fix bug of the case that *Message*
3967 buffer is unibyte.
292ddc31 3968
048addec 39692003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
292ddc31 3970
048addec 3971 * fns.c (Fsubstring): Clarify doc string.
292ddc31 3972
048addec
JD
3973 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
3974 (Fprevious_char_property_change)
3975 (Fnext_single_char_property_change)
3976 (Fprevious_single_char_property_change, Fnext_property_change)
3977 (Fnext_single_property_change, Fprevious_property_change)
3978 (Fprevious_single_property_change, Fadd_text_properties)
3979 (Fput_text_property, Fset_text_properties)
3980 (Fremove_text_properties, Fremove_list_of_text_properties)
3981 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
63e4e4c6 3982
048addec 39832003-01-14 Kim F. Storm <storm@cua.dk>
63e4e4c6 3984
048addec
JD
3985 * process.h (struct Lisp_Process): New member plist replaces old
3986 member private_vars. All uses changed.
63e4e4c6 3987
048addec 3988 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
6bdb309a 3989 (QCplist): Rename from QCvars. Change all uses.
048addec 3990 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
6bdb309a 3991 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
048addec 3992 (syms_of_process): Intern, staticpro, defsubr these.
6bdb309a 3993 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
7ed16567 3994
048addec 39952003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
7ed16567 3996
6bdb309a 3997 * m/delta.h: Remove (obsolete).
e833850f 3998
048addec 39992003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
e833850f 4000
048addec
JD
4001 * fileio.c (Fdelete_directory, Fdelete_file): Document the
4002 behaviour in front of symlinks.
4003 (Fdelete_file): Raise an error on directories.
817cb127 4004
048addec 40052003-01-13 Dave Love <fx@gnu.org>
817cb127 4006
048addec 4007 * fns.c (Freverse): Use QUIT.
3e8cf2ea 4008
048addec 40092003-01-13 Richard M. Stallman <rms@gnu.org>
3e8cf2ea 4010
048addec
JD
4011 * minibuf.c (minibuffer_completion_contents):
4012 Error if point is inside prompt.
3e8cf2ea 4013
048addec
JD
4014 * keyboard.c (command_loop_1): Don't redisplay directly
4015 if there's a post-command-hook.
3e8cf2ea 4016
048addec
JD
4017 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
4018 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
2c10f029 4019
048addec 40202003-01-12 Kim F. Storm <storm@cua.dk>
94e8ffca 4021
048addec 4022 * process.h (struct Lisp_Process): New member private_vars.
94e8ffca 4023
048addec
JD
4024 * process.c (QCvars): New variable.
4025 (syms_of_process): Intern and staticpro it.
4026 (Fset_process_contact): Removed function.
4027 (Fprocess_variable, Fset_process_variable): New functions.
4028 (syms_of_process): Defsubr them.
4029 (Fstart_process): Initialize private_vars plist to nil.
4030 (Fmake_network_process): New arg :vars to setup the private
4031 variables for new network process.
4032 (server_accept_connection): Copy server's private variables to
4033 client process.
2c10f029 4034
048addec
JD
4035 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
4036 crashes). Code rewritten and simplified. Now directly aligns the
4037 pointer and recalculates pure_bytes_used, rather than aligning the
4038 size and adjusting the pointer.
b8a76c6c 4039
048addec 40402003-01-11 Kim F. Storm <storm@cua.dk>
b8a76c6c 4041
048addec
JD
4042 * process.c (Fset_process_contact): New function.
4043 (syms_of_process): defsubr it.
4044 (make-network-process): Update doc.
3a8d0899 4045
048addec 40462003-01-10 Andreas Schwab <schwab@suse.de>
3a8d0899 4047
048addec
JD
4048 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
4049 Reported by Berthold Gunreben <b.gunreben@web.de>.
4abc7470 4050
048addec 40512003-01-10 Dave Love <fx@gnu.org>
4abc7470 4052
048addec 4053 * composite.c (syms_of_composite): Make composition_hash_table weak.
b809d662 4054
048addec 40552003-01-09 Kim F. Storm <storm@cua.dk>
b809d662 4056
048addec
JD
4057 * process.c (Fmake_network_process): Convert new port number
4058 to host byte order for `:service t' case. From Mario Lang.
bf338245 4059
048addec 40602003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
bf338245 4061
048addec
JD
4062 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
4063 instead of XtAppProcessEvent.
bf338245 4064
048addec
JD
4065 * xterm.c (handle_one_xevent): New function.
4066 (x_dispatch_event): New function.
4067 (XTread_socket): Call handle_one_xevent.
bf338245 4068
048addec 4069 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
e833850f 4070
048addec
JD
4071 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
4072 call XQueryPointer to get coordinates.
4073 (popup_get_selection): Do not set popup_activated_flag to zero,
4074 let popup_deactivate_callback do that. Needed for Motif.
4075 Call x_dispatch_event instead of XtDispatchEvent.
4076 (xmenu_show): Calculate root coordinate from frame top/left position.
c4af2bce 4077
048addec 40782003-01-08 Kim F. Storm <storm@cua.dk>
c4af2bce 4079
6bdb309a 4080 * process.c (server_accept_connection): Fix recording of new
048addec
JD
4081 connection's local address in :local property of contact info.
4082 (Fmake_network_process): Record local network address for new
4083 client processes in :local property of contact info.
6bdb309a 4084 (format-network-address): Add arg OMIT-PORT. Change callers.
00e3ab56 4085
048addec 40862003-01-07 Dave Love <fx@gnu.org>
00e3ab56 4087
048addec 4088 * Makefile.in (fns.o): Depend on coding.h.
f387e1fd 4089
048addec 40902003-01-07 Markus Rost <rost@math.ohio-state.edu>
f387e1fd 4091
048addec 4092 * minibuf.c (Fread_variable): Doc fix.
f387e1fd 4093
048addec
JD
4094 * eval.c (Fuser_variable_p): Doc change. For custom variables,
4095 use the same test as for custom-variable-p.
8c6d74c6 4096
048addec 40972003-01-05 Richard M. Stallman <rms@gnu.org>
e833850f 4098
048addec
JD
4099 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
4100 Count LAST_LINE_MISFIT in scroll margin for end of window.
4101 Move label too_near_end before setting SCROLL_MARGIN_POS.
4102 Set LAST_LINE_MISFIT before jumping there.
8c6d74c6 4103
048addec
JD
4104 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
4105 scroll_conservatively case. If scrolling that much doesn't change
4106 STARTP, move it down one line.
e833850f 4107
048addec
JD
4108 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
4109 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
8c6d74c6 4110
048addec
JD
4111 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
4112 selected frame.
8c6d74c6 4113
048addec
JD
4114 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
4115 (syms_of_keymap): staticpro them.
4116 (Fapropos_internal): Initialize them and clear them out.
4117 Don't GCPRO them.
8c6d74c6 4118
048addec
JD
4119 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
4120 Doc fixes.
8c6d74c6 4121
048addec
JD
4122 * lisp.h: New misc type Lisp_Save_Value.
4123 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
4124 (XSAVE_VALUE): New macro.
4125 (struct Lisp_Save_Value): New data type.
4126 (union Lisp_Misc): Add u_save_value alternative.
4127 (make_save_value): Declared.
8c6d74c6 4128
048addec 4129 * alloc.c (make_save_value): New function.
8c6d74c6 4130
048addec
JD
4131 * xterm.c (x_catch_errors): Save dpy using make_save_value.
4132 (x_catch_errors_unwind): Call XSync.
8c6d74c6 4133
048addec 41342003-01-01 Richard M. Stallman <rms@gnu.org>
8c6d74c6 4135
048addec 4136 * window.c (window_scroll_pixel_based): Partially undo last change.
8c6d74c6 4137
048addec
JD
4138 * keyboard.c (command_loop_1): Call adjust_point_for_property
4139 in direct action cases for Qforward_char and Qbackward_char.
4140 Set already_adjusted so it won't be done twice.
8c6d74c6 4141
048addec 41422002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
8c6d74c6 4143
048addec
JD
4144 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
4145 type definition of size_t.
8c609cff 4146
048addec 41472003-01-02 Steven Tamm <steventamm@mac.com>
8c609cff 4148
048addec
JD
4149 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
4150 distinguish Carbon GUI builds from X11 builds on darwin.
b37113a1 4151
048addec 41522002-12-30 Steven Tamm <steventamm@mac.com>
b37113a1 4153
048addec
JD
4154 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
4155 to default to t.
fa634a5e 4156
048addec 41572002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
fa634a5e 4158
048addec 4159 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
ce0669d4 4160
048addec 41612002-12-28 Steven Tamm <steventamm@mac.com>
ce0669d4 4162
048addec
JD
4163 * Makefile.in (macosx-bundle): Fixes to Mac OS X/Carbon port to
4164 allow building in a different directory than source. Uses some
4165 GNU Make extensions, but there is no other make on Mac OS X.
2308af15 4166
048addec 41672002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
2308af15 4168
048addec
JD
4169 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
4170 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
4171 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
4172 (Fstring_to_number): Mention the returned value in the doc strings.
2155ecf3 4173
048addec 41742002-12-23 Richard M. Stallman <rms@gnu.org>
2155ecf3 4175
048addec
JD
4176 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
4177 <scroll-down-aggressively>: Doc fix.
2155ecf3 4178
048addec
JD
4179 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
4180 string as pane name, if there is one.
4181 (set_frame_menubar): Save menu_items_n_panes from each call to
4182 parse_single_submenu and use it when calling digest_single_submenu.
2155ecf3 4183
048addec
JD
4184 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
4185 Don't try to make last line fully visible if it is past end of window.
61f1d295 4186
048addec 41872002-12-22 Steven Tamm <steventamm@mac.com>
61f1d295 4188
048addec
JD
4189 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
4190 (mac_menu_show): Add support for hierarchical popup menus.
4191 (add_menu_item): Remove indentation support.
4192 (fill_submenu, fill_menu): Create hierarchical menus
4193 instead of using indentation.
0b17a217 4194
048addec 41952002-12-22 Richard M. Stallman <rms@gnu.org>
0b17a217 4196
048addec
JD
4197 * xdisp.c (try_cursor_movement): Don't call try_window here.
4198 (redisplay_window): Never redisplay minibuffer when inactive.
0b17a217 4199
048addec 4200 * window.c (select_window_1): Undo 9/21 change.
402e4f8b 4201
048addec 42022002-12-22 Steven Tamm <steventamm@mac.com>
402e4f8b 4203
048addec
JD
4204 * macterm.c (XTread_socket): Call KeyTranslate for control and
4205 meta to deal correctly shifted non-alpha characters, like C-S-5
4206 being treated like C-%. Does not look for shift key to deal
4207 with masking off control-key with mac-reverse-ctrl-meta.
f02cac82 4208
048addec 42092002-12-21 Richard M. Stallman <rms@gnu.org>
f02cac82 4210
048addec
JD
4211 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
4212 If it is non-nil, run timers. Use an unwind-protect to requeue
4213 the events that were read ahead.
4214 (popup_get_selection_unwind): New subroutine.
4215 (popup_get_selection_queue): File-scope variable now holds that queue.
4216 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
4217 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
4218 Use an unwind-protect to pop down the dialog box.
4219 (xdialog_show_unwind): New subroutine implements that.
f02cac82 4220
048addec
JD
4221 * xdisp.c (row_containing_pos): Change exit test using last_y.
4222 (try_window_id): Abort if row_containing_pos returns null.
f02cac82 4223
048addec
JD
4224 * lread.c (load_error_handler): New function.
4225 (Fload): Handle errors in Fsubstitute_in_file_name.
4226 Don't expect Fsignal to return.
f02cac82 4227
048addec
JD
4228 * eval.c: Errors and throws work right with interrupt blocking.
4229 (struct catchtag): New elt interrupt_input_blocked.
4230 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
4231 (internal_catch, Fcondition_case, internal_condition_case)
4232 (internal_condition_case_1, internal_condition_case_2): Save it.
4233 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
f02cac82 4234
048addec 4235 * editfns.c (Fformat): Add parens.
f02cac82 4236
048addec
JD
4237 * dired.c (file_name_completion): Fix that change.
4238 Delete special quit-handling code; just use QUIT.
f02cac82 4239
048addec 42402002-12-21 Tak Ota <Takaaki.Ota@am.sony.com> (tiny change)
f02cac82 4241
048addec
JD
4242 * dired.c (file_name_completion): Close directory on error
4243 just as in directory_files_internal.
1a590729 4244
048addec 42452002-12-19 David Kastrup <David.Kastrup@t-online.de>
1a590729 4246
048addec
JD
4247 * window.c (Fset_window_configuration): Set old_point to correct
4248 value when new_current_buffer == current_buffer.
f02cac82 4249
048addec 42502002-12-17 Ben Key <bkey1@tampabay.rr.com>
2308af15 4251
048addec
JD
4252 Revisited my earlier fix for the following entry in etc/PROBLEMS:
4253 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
4254 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
9785d95b 4255
048addec
JD
4256 These changes were in part based upon suggestions made by Peter
4257 'Luna' Runestig [peter@runestig.com].
9785d95b 4258
048addec
JD
4259 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token,
4260 g_b_init_get_token_information, g_b_init_lookup_account_sid,
6bdb309a 4261 g_b_init_get_sid_identifier_authority ): Add several static
048addec 4262 global variables.
9785d95b 4263
048addec
JD
4264 * w32.c (globals_of_w32): New function. Used to initialize those
4265 global variables that must always be initialized on startup even
4266 when the global variable initialized is non zero. Its primary
4267 purpose at this time is to set the global variables
4268 g_b_init_is_windows_9x, g_b_init_open_process_token,
4269 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
4270 g_b_init_get_sid_identifier_authority to 0 on startup.
4271 Called from main.
9785d95b 4272
048addec
JD
4273 * w32.c (is_windows_9x): Perform initialization only if
4274 g_b_init_is_windows_9x is equal to 0. On initialization set
4275 g_b_init_is_windows_9x equal to 1.
2308af15 4276
048addec
JD
4277 * w32.c (open_process_token): Perform initialization only if
4278 g_b_init_open_process_token is equal to 0. On initialization set
4279 g_b_init_open_process_token equal to 1.
2308af15 4280
048addec
JD
4281 * w32.c (get_token_information): Perform initialization only if
4282 g_b_init_get_token_information is equal to 0. On initialization
4283 set g_b_init_get_token_information equal to 1.
9785d95b 4284
048addec
JD
4285 * w32.c (lookup_account_sid): Perform initialization only if
4286 g_b_init_lookup_account_sid is equal to 0. On initialization
4287 set g_b_init_lookup_account_sid equal to 1.
9785d95b 4288
048addec
JD
4289 * w32.c (get_sid_identifier_authority): Perform initialization
4290 only if g_b_init_get_sid_identifier_authority is equal to 0.
4291 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
9785d95b 4292
048addec
JD
4293 * w32fns.c (globals_of_w32fns): New function. Used to initialize
4294 those global variables that must always be initialized on startup
4295 even when the global variable initialized is non zero.
4296 Its primary purpose at this time is to initialize the global variable
4297 track_mouse_event_fn.
9785d95b 4298
048addec
JD
4299 * w32fns.c (w32_wnd_proc): Remove initialization of
4300 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
9785d95b 4301
048addec 4302 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
9785d95b 4303
048addec
JD
4304 * w32menu.c (globals_of_w32menu): New function. Used to
4305 initialize those global variables that must always be initialized
4306 on startup even when the global variable initialized is non zero.
4307 Its primary purpose at this time is to initialize the global
4308 variables get_menu_item_info and set_menu_item_info.
9785d95b 4309
048addec
JD
4310 * w32menu.c (initialize_frame_menubar): Remove initialization of
4311 get_menu_item_info and set_menu_item_info.
9785d95b 4312
048addec 4313 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
9785d95b 4314
048addec
JD
4315 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
4316 Declare them.
9785d95b 4317
048addec
JD
4318 * emacs.c (main): Call globals_of_w32 prior to calling
4319 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
4320 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
4321 is defined.
9785d95b 4322
048addec
JD
4323 * w32term.c (x_update_window_begin): Fix Windows API error
4324 detected by BoundsChecker. Test to determine if
4325 w32_system_caret_hwnd is NULL prior to attempting to use
4326 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
2308af15 4327
048addec
JD
4328 * w32term.c (x_update_window_end): Fix Windows API error
4329 detected by BoundsChecker. Test to determine if
4330 w32_system_caret_hwnd is NULL prior to attempting to use
4331 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
b6da19ef 4332
048addec 43332002-12-17 Kenichi Handa <handa@m17n.org>
b6da19ef 4334
048addec
JD
4335 * coding.c (coding_system_require_warning): New variable.
4336 (syms_of_coding): DEFVAR it.
b6da19ef 4337
048addec 4338 * coding.h (coding_system_require_warning): Extern it.
b6da19ef 4339
048addec
JD
4340 * fileio.c (choose_write_coding_system): Even if
4341 Vcoding_system_for_write is non-nil, if
4342 coding_system_require_warning is nonzero, call
4343 Vselect_safe_coding_system_function.
bfcf6dbe 4344
048addec 43452002-12-17 Markus Rost <rost@math.ohio-state.edu>
bfcf6dbe 4346
048addec
JD
4347 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
4348 (lisp): Add font-core.
2c568af5 4349
048addec 43502002-12-13 Stefan Monnier <monnier@cs.yale.edu>
2c568af5 4351
048addec
JD
4352 * textprop.c (text_read_only): New arg `propval'.
4353 (get_char_property_and_overlay): Remove unused var `next_overlay'.
4354 (verify_interval_modification): Use text_read_only's new arg.
b8c6225c 4355
048addec 43562002-12-13 Kenichi Handa <handa@m17n.org>
b8c6225c 4357
048addec 4358 * coding.c (Funencodable_char_position): Set pend correctly.
706ddb8f 4359
048addec 43602002-12-12 Jason Rumney <jasonr@gnu.org>
706ddb8f 4361
048addec
JD
4362 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
4363 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
4364 Be more careful about when help_events are generated.
96720f09 4365
048addec 43662002-12-12 Steven Tamm <steventamm@mac.com>
96720f09 4367
048addec
JD
4368 * macterm.c (mac_check_for_quit_char): Correctly set the
4369 modifiers of the event to 0.
4370 * mac.c (sys_select): Duplicate rfds before calling select to
4371 ensure that rfds survive the while loop.
e5ae1c49 4372
048addec 43732002-12-11 Kim F. Storm <storm@cua.dk>
e5ae1c49 4374
048addec
JD
4375 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
4376 row_containing_pos returned NULL.
2eb46b2d 4377
048addec 43782002-12-10 Steven Tamm <steventamm@mac.com>
2eb46b2d 4379
6bdb309a 4380 * mac.c (sys_read): Fix sys_read to not call select if IO is
048addec 4381 non-blocking.
6bdb309a 4382 (sys_select): Fix sys_select to not use a timeout larger than
048addec 4383 the one given.
b11f1d8a 4384
048addec 43852002-12-10 Juanma Barranquero <lektu@terra.es>
b11f1d8a 4386
048addec 4387 * editfns.c (Fformat): Use alloca, not _alloca.
d8528226 4388
048addec 43892002-12-09 Richard M. Stallman <rms@gnu.org>
d8528226 4390
048addec
JD
4391 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
4392 as the last thing.
a4ac5b17 4393
048addec 43942002-12-09 Dave Love <fx@gnu.org>
a4ac5b17 4395
048addec 4396 * s/sol2-8.h: Removed. (Not necessary.)
ac42d7b9 4397
048addec 43982002-12-09 Matthew Swift <swift@alum.mit.edu>
ac42d7b9 4399
048addec
JD
4400 * editfns.c (Fformat): Handle precision in string conversion
4401 specifiers like libc functions do (ie, print at most that many
4402 characters).
85cce843 4403
048addec 44042002-12-08 Richard M. Stallman <rms@gnu.org>
85cce843 4405
048addec
JD
4406 * xdisp.c (row_containing_pos): Check more carefully
4407 whether charpos is really in the row before returning it.
0d4d26a7 4408
048addec 44092002-12-07 Steven Tamm <steventamm@mac.com>
0d4d26a7 4410
048addec 4411 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
b11f1d8a 4412
048addec
JD
4413 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
4414 each stack frame. This may change as it could be time consuming.
0d4d26a7 4415
048addec
JD
4416 * macterm.c (mac_check_for_quit_char, quit_char_comp)
4417 (init_quit_char_handler, mac_determine_quit_char_modifiers)
6bdb309a 4418 (mac_initialize): Add code to check for pressing of quit_char
048addec 4419 in the OS event queue.
b11f1d8a 4420
048addec
JD
4421 * mac.c (sys_select): Call mac_check_for_quit_char every second
4422 while blocking on select.
0d4d26a7 4423
048addec
JD
4424 * mac.c (sys_read): Use sys_select to test for input first
4425 before calling read, to allow C-g to break.
9252f7bc 4426
048addec 44272002-12-07 Richard M. Stallman <rms@gnu.org>
9252f7bc 4428
048addec 4429 * minibuf.c (Fcompleting_read): Doc fix.
9252f7bc 4430
048addec 4431 * lread.c (syms_of_lread) <load-history>: Doc fix.
9252f7bc 4432
048addec 4433 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
9252f7bc 4434
048addec
JD
4435 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
4436 autoload.
9252f7bc 4437
048addec 4438 * data.c (Fdefalias): Record in load-history redefining an autoload.
9252f7bc 4439
048addec 4440 * alloca.c: Undo ifdef change accidentally made on 12-04.
bfa261c0 4441
048addec 44422002-12-06 Francesco Potorti` <pot@gnu.org>
bfa261c0 4443
048addec 4444 * xfns.c (png_load): Avoid double gamma correction for PNG images.
c5992177 4445
048addec 44462002-12-04 Richard M. Stallman <rms@gnu.org>
c5992177 4447
048addec 4448 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 4449
048addec 4450 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 4451
048addec 4452 * alloca.c: Don't use #error.
02d588e2 4453
048addec 44542002-12-03 Dave Love <fx@gnu.org>
02d588e2 4455
048addec
JD
4456 * buffer.c (Qucs_set_table_for_input): New.
4457 (Fget_buffer_create): Use it.
4458 (Qset_buffer_major_mode_hook): Deleted.
4459 (Fset_buffer_major_mode): Revert previous change.
4460 (init_buffer_once): Intern ucs-set-table-for-input.
4461 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
4462 Add &Qucs_set_table_for_input.
451e2697 4463
048addec 44642002-12-03 Andreas Schwab <schwab@suse.de>
451e2697 4465
048addec
JD
4466 * callint.c (Fcall_interactively): Use next_event only if less
4467 than key_count.
72742a99 4468
048addec 44692002-12-02 Andrew Choi <akochoi@shaw.ca>
72742a99 4470
048addec
JD
4471 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
4472 names to 255 characters.
72742a99 4473
048addec
JD
4474 * macterm.c (XTread_socket): If all frames have been collapsed,
4475 expand the first one before handling drag-and-drop events.
72742a99 4476
048addec
JD
4477 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
4478 which is detected by autoconf.
40e6ff95 4479
048addec 44802002-12-01 Steven Tamm <steventamm@mac.com>
40e6ff95 4481
048addec
JD
4482 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
4483 offset in two hints table to allow prebinding to be redone and
4484 allow the executable to be stripped.
c02138c6 4485
048addec 44862002-11-29 Dave Love <fx@gnu.org>
c02138c6 4487
048addec
JD
4488 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
4489 already provided.
0e47bbf7 4490
048addec 44912002-11-29 Richard M. Stallman <rms@gnu.org>
0e47bbf7 4492
048addec
JD
4493 * xdisp.c (start_display): Check more intelligently for
4494 whether the line is continued.
4495 (move_it_vertically_backward): Clear it->continuation_lines_width.
44129dcb 4496
048addec 44972002-11-28 Dave Love <fx@gnu.org>
44129dcb 4498
048addec
JD
4499 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
4500 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
f707342d 4501
048addec 45022002-11-27 Steven Tamm <steventamm@mac.com>
f707342d 4503
048addec
JD
4504 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
4505 more descriptive error output from lread.c:Fload upon most require
4506 cycles during boostrapping.
1637fd2c 4507
048addec 45082002-11-27 Jason Rumney <jasonr@gnu.org>
1637fd2c 4509
048addec
JD
4510 * fileio.c (Finsert_file_contents): Give a more appropriate error
4511 for files bigger than 2Gb when off_t is 32 bit.
1637fd2c 4512
048addec
JD
4513 * dired.c (Ffile_attributes): Don't return negative file sizes for
4514 files bigger than 2Gb when off_t is 32 bit.
540c2788 4515
048addec 45162002-11-27 Dave Love <fx@gnu.org>
6b2fd6ea 4517
048addec 4518 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
6b2fd6ea 4519
048addec
JD
4520 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
4521 Test GETPGRP_VOID instead.
4522 [BSD_TERMIOS]: Remove definitions (never used).
6b2fd6ea 4523
048addec
JD
4524 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
4525 Don't define.
4526 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
540c2788 4527
048addec 4528 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
8cc03716 4529
048addec 45302002-11-25 Jason Rumney <jasonr@gnu.org>
8cc03716 4531
048addec
JD
4532 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
4533 supported.
4042a81a 4534
048addec 45352002-11-25 Dave Love <fx@gnu.org>
4042a81a 4536
048addec 4537 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
4042a81a 4538
048addec 4539 * Makefile.in (TEMACS_LDFLAGS): Update last change.
be4ee72f 4540
048addec 45412002-11-25 Andreas Schwab <schwab@suse.de>
be4ee72f 4542
048addec 4543 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
82122254 4544
048addec 45452002-11-24 Steven Tamm <steventamm@mac.com>
82122254 4546
048addec
JD
4547 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
4548 determine the size of pointers alloced in unexed space instead
4549 of using possibly invalid emacs_zone pointers. This fixes the
4550 binary incompatibility problems caused by updates to libSystem.B.
c1ee53bc 4551
048addec 45522002-11-24 Richard M. Stallman <rms@gnu.org>
c1ee53bc 4553
048addec 4554 * search.c (Fstring_match): Doc fix.
c1ee53bc 4555
048addec
JD
4556 * callint.c (Fcall_interactively): If a command fails because
4557 `*' detects a read-only buffer, but RECORD_FLAG is set,
4558 record it anyway if the args don't actually do tty input.
5598c32e 4559
048addec 45602002-11-22 Dave Love <fx@gnu.org>
5598c32e 4561
048addec 4562 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
5598c32e 4563
048addec
JD
4564 * keyboard.c (interrupt_signal): Provide forward declaration.
4565 (kbd_buffer_store_event): Don't declare interrupt_signal.
5598c32e 4566
048addec 4567 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
97b14e22 4568
048addec 45692002-11-21 Richard M. Stallman <rms@gnu.org>
97b14e22 4570
048addec
JD
4571 * eval.c (interactive_p): Skip any number of bytecode
4572 and special form frames, in any order.
516eea8e 4573
048addec 45742002-11-20 Jason Rumney <jasonr@gnu.org>
516eea8e 4575
048addec
JD
4576 * w32fns.c (convert_mono_to_color_image): New function.
4577 (xbm_load, xbm_load_image): Use it when foreground or background
4578 is explicitly set.
04dbfa08 4579
048addec 45802002-11-19 Dave Love <fx@gnu.org>
04dbfa08 4581
048addec 4582 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
b4aebae3 4583
048addec 45842002-11-18 Jason Rumney <jasonr@gnu.org>
b4aebae3 4585
048addec
JD
4586 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
4587 (XPutPixel): Swap blue and red.
4588 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
4589 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
4590 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
4591 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
1998560a 4592
048addec 45932002-11-18 Dave Love <fx@gnu.org>
d824beee 4594
048addec 4595 * m/orion105.h (HAVE_ALLOCA): Don't define.
d824beee 4596
048addec 4597 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
d824beee 4598
048addec 4599 * m/intel386.h: Don't include alloca.h or define alloca.
d824beee 4600
048addec
JD
4601 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
4602 malloc, realloc, calloc.
d824beee 4603
048addec
JD
4604 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
4605 (bcmp): Don't define.
d824beee 4606
048addec 4607 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
d824beee 4608
048addec 4609 * m/amdahl.h: Don't define LIB_STANDARD.
d824beee 4610
048addec 4611 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
d824beee 4612
048addec 4613 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
d824beee 4614
048addec
JD
4615 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
4616 Don't include alloca.h.
d824beee 4617
048addec 4618 * s/aix3-2.h (HAVE_FSYNC): Don't define.
1998560a 4619
048addec 4620 * regex.c (_GNU_SOURCE): Don't define.
1998560a 4621
048addec 4622 * process.c (_GNU_SOURCE): Don't define.
1998560a 4623
048addec 4624 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
8704a6ab 4625
048addec 46262002-11-18 Markus Rost <rost@math.ohio-state.edu>
8704a6ab 4627
048addec 4628 * s/sol2-8.h: Include sol2-6.h.
6ae2cd57 4629
048addec 46302002-11-18 Miles Bader <miles@gnu.org>
6ae2cd57 4631
048addec
JD
4632 * dispextern.h (struct face): Add `overstrike' field.
4633 * xterm.c (x_draw_glyph_string_foreground)
4634 (x_draw_composite_glyph_string_foreground): Implement overstriking.
4635 * xfaces.c (load_face_font): Set `face->overstrike' based on
4636 result from choose_face_font.
4637 (best_matching_font, choose_face_font): Add `needs_overstrike'
4638 argument, and use it to return whether overstriking is desirable
4639 for this face/font combo.
4640 (set_font_frame_param: Pass new argument to choose_face_font.
6ae2cd57 4641
048addec 46422002-11-17 Ben Key <BKey1@tampabay.rr.com>
3582b6a3 4643
048addec
JD
4644 This change is my fix for the following entry in etc/PROBLEMS:
4645 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
4646 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
f60ae425 4647
048addec
JD
4648 * w32.c: Added wrapper functions around the win32 API functions
4649 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
4650 GetSidIdentifierAuthority. These wrapper functions serve two
4651 purposes:
4652 1. They ensure that the wrapped function can never be called
4653 when Emacs is running on an operating system on which they are
4654 not supported (Microsoft Windows 95 / 98 / ME).
4655 2. They call the wrapped functions via function pointers rather
4656 than calling them directly. This avoids taking advantage of the
4657 undocumented fact that although these functions are not supported
4658 in the 9x branch of Microsoft Windows, the functions do exist in
4659 the version of advapi32.dll that is found in the 9x branch of
4660 Microsoft Windows.
f60ae425 4661
6bdb309a 4662 * w32.c (init_user_info): Replace the calls to the win32 API
048addec
JD
4663 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
4664 and GetSidIdentifierAuthority with calls to the newly added
4665 wrapper functions.
f60ae425 4666
048addec
JD
4667 * w32.h: Added extern declarations for the following functions:
4668 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
4669 syms_of_w32menu, and void syms_of_fontset.
f60ae425 4670
6bdb309a 4671 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
048addec
JD
4672 function pointer track_mouse_event_fn in the handler for the
4673 WM_SETFOCUS message.
3582b6a3 4674
6bdb309a 4675 * w32menu.c (initialize_frame_menubar): Add code to
048addec
JD
4676 reinitialize the function pointers set_menu_item_info and
4677 get_menu_item_info.
f60ae425 4678
048addec 46792002-11-17 Ben Key <BKey1@tampabay.rr.com>
f60ae425 4680
048addec
JD
4681 * sound.c: Added a partial implementation of play-sound-internal
4682 for Microsoft Windows. Added various #ifdef / #else / #endif
4683 code blocks to separate the code that will compile under
4684 Microsoft Windows from the code that is specific to Gnu/Linux.
4685 Moved several blocks of code around to make this separation of code
4686 into Windows compatible and Gnu/Linux compatible code blocks easier.
f60ae425 4687
048addec 4688 * makefile.w32-in: Include sound.c and link with WinMM.lib.
a0f0878d 4689
048addec
JD
4690 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
4691 added support for play-sound-internal under Windows would be
4692 included in the build of Emacs.
517f42a0 4693
048addec 46942002-11-16 Jason Rumney <jasonr@gnu.org>
517f42a0 4695
048addec 4696 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
517f42a0 4697
048addec 4698 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
a0f0878d 4699
048addec 47002002-11-15 Stefan Monnier <monnier@cs.yale.edu>
a0f0878d 4701
048addec
JD
4702 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
4703 (adjust_point_for_property): Move out of display and invisible even if
4704 we were already inside before (in case a property was added while
4705 we weren't looking). Be more careful when handling invisible props.
4706 Skip invisible text as if it really wasn't there at all.
aab83f91 4707
048addec 47082002-11-15 Jason Rumney <jasonr@gnu.org>
aab83f91 4709
048addec
JD
4710 * w32term.c (x_draw_image_foreground)
4711 (w32_draw_image_foreground_1): Use standard copy and invert
4712 operations to draw images.
aab83f91 4713
048addec
JD
4714 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
4715 depth of 1.
4716 (xbm_read_bitmap_data): Invert bits as xbm is read in.
4717 (XPutPixel): Don't invert bits here.
a4478a76 4718
048addec 47192002-11-15 Jason Rumney <jasonr@gnu.org>
a4478a76 4720
048addec
JD
4721 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
4722 (w32_draw_image_foreground_1): Handle image masks.
4723 (x_draw_image_glyph_string): Don't BitBlt transparently.
a4478a76 4724
048addec
JD
4725 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
4726 (x_from_xcolors): Adjust RGB values for W32.
4727 (image_background, image_background_transparent)
4728 (postprocess_image, x_to_xcolors, x_disable_image)
4729 (x_build_heuristic_mask): Adapt for W32 and enable.
4730 (x_create_x_image_and_pixmap): Mark images with palettes as such.
4731 (xbm_load): Remove unused variable.
03670a65 4732
048addec 47332002-11-14 Richard M. Stallman <rms@gnu.org>
03670a65 4734
048addec 4735 * buffer.c (syms_of_buffer): Doc fix.
59daa29a 4736
048addec 47372002-11-14 Dave Love <fx@gnu.org>
59daa29a 4738
048addec 4739 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
59daa29a 4740
048addec
JD
4741 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
4742 * xmenu.c (unuse_menu_items, digest_single_submenu):
4743 * xfns.c (x_put_x_image):
4744 * xdisp.c (message2_nolog, set_message):
4745 * undo.c (record_point):
4746 * terminfo.c (tparam):
4747 * syntax.c (scan_sexps_forward):
4748 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
4749 * composite.c (update_compositions):
4750 * cm.c (calccost, cmgoto):
4751 * charset.c (c_string_width): Declare all args (per C99).
59daa29a 4752
048addec 4753 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
59daa29a 4754
048addec
JD
4755 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
4756 Don't declare.
59daa29a 4757
048addec 4758 * emacs.c (main) [!VMS]: Avoid third arg.
59daa29a 4759
048addec
JD
4760 * fns.c (Fcopy_sequence): Doc fix.
4761 (Fmap_char_table): Cast `call2'.
3947677c 4762
048addec
JD
47632002-11-14 Francesco Potorti` <pot@gnu.org>
4764
4765 * s/sol2-8.h: New file.
4766
47672002-11-14 Kim F. Storm <storm@cua.dk>
4768
4769 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
4770 dependency on `risky-local-variable' and the :propertize form.
4771
47722002-11-12 Stefan Monnier <monnier@cs.yale.edu>
4773
4774 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
4775
4776 * syntax.c (scan_sexps_forward): Undo last patch.
4777 Use a more obvious fix: check eob before updating the syntax table.
4778
47792002-11-09 Stefan Monnier <monnier@cs.yale.edu>
4780
4781 * syntax.c (scan_sexps_forward): Update syntax table before reading
4782 a char rather than after so we don't update the table past eob.
4783
47842002-11-09 Dave Love <fx@gnu.org>
4785
4786 * buffer.c (Fset_buffer_major_mode): Fix last change.
4787
4788 * regex.c (regexec): Fix pmatch declaration.
4789
4790 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
4791
4792 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
4793 to self-inserting characters.
4794 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
4795
4796 * coding.c (Vtranslation_table_for_input): New.
4797 (syms_of_coding): DEFVAR it.
4798
47992002-11-08 Juanma Barranquero <lektu@terra.es>
4800
4801 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
4802 window.
4803
48042002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4805
6bdb309a 4806 * process.c (Fformat_network_address): Remove unused locals p,
048addec
JD
4807 cp, and i.
4808
48092002-11-06 Dave Love <fx@gnu.org>
4810
4811 * buffer.c (Qset_buffer_major_mode_hook): New.
4812 (Fset_buffer_major_mode): Use it.
4813
48142002-11-06 Richard M. Stallman <rms@gnu.org>
4815
4816 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
4817 and stop_polling.
4818
4819 * process.c (wait_reading_process_input):
4820 Test POLLING_PROBLEM_IN_SELECT, not hpux.
4821 Avoid initialization for auto Lisp_Object var.
4822
4823 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
4824
4825 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
4826
48272002-11-05 Richard M. Stallman <rms@gnu.org>
4828
4829 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
4830
4831 * callint.c (Fcall_interactively): New local filter_specs.
4832 (Fcall_interactively): Check for progn as well as let.
4833 Add a gcpro.
4834 (Qprogn): New variable.
4835 (syms_of_callint): Staticpro and init Qprogn.
4836
48372002-11-04 John Paul Wallington <jpw@shootybangbang.com>
4838
4839 * lread.c (Feval_buffer): Doc fix.
4840
48412002-11-04 Dave Love <fx@gnu.org>
4842
4843 * keyboard.c (read_char): Always translate iff
4844 Vkeyboard_translate_table is a char table and c is valid.
4845
4846 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
4847 and fix C types.
4848
48492002-11-03 Stefan Monnier <monnier@cs.yale.edu>
4850
4851 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
4852
4853 * editfns.c (get_pos_property): Don't hardcode Qfield.
4854
4855 * keyboard.c (adjust_point_for_property): Handle `display' prop on
4856 overlays. Also handle `invisible' prop.
4857
48582002-11-02 Stefan Monnier <monnier@cs.yale.edu>
4859
4860 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
4861 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
4862
48632002-11-01 Andreas Schwab <schwab@suse.de>
4864
4865 * editfns.c (Fmessage): Revert last change to properly handle %%.
4866
48672002-11-01 Stefan Monnier <monnier@cs.yale.edu>
4868
4869 * xmenu.c (unuse_menu_items): New fun.
4870 (menu_items_inuse): New var.
4871 (syms_of_xmenu): Initialize it.
4872 (init_menu_items): Use it to detect re-entrance.
4873 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
4874 (Fx_popup_menu): Remove spurious XSETFRAME.
4875
4876 * editfns.c (find_field): Make an exception for nil fields.
4877
48782002-11-01 Dave Love <fx@gnu.org>
4879
4880 * m/gec63.h: Deleted.
4881
48822002-10-31 Dave Love <fx@gnu.org>
4883
4884 * xterm.c (XTread_socket): Fix last change.
4885 (xaw_scroll_callback): Cast call_data to long to avoid warning.
4886
48872002-10-31 Stefan Monnier <monnier@cs.yale.edu>
4888
4889 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
4890
48912002-10-30 Stefan Monnier <monnier@cs.yale.edu>
4892
4893 * editfns.c (overlays_around, get_pos_property): New funs.
4894 (find_field): Use them.
4895 Also be careful not to modify POS before its last use.
4896 (Fmessage): Don't Fformat if there's nothing to format.
4897
48982002-10-30 Dave Love <fx@gnu.org>
4899
4900 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
4901 [HAVE_PTY_H]; Include pty.h.
4902
4903 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
4904
4905 * xterm.c (Qeql): Declare.
4906 (Vx_keysym_table): New.
4907 (syms_of_xterm): Initialize it.
4908 (XTread_socket): Use it. Deal with ASCII keysyms.
4909 (XSetIMValues) [HAVE_X11R6]: Prototype.
4910
4911 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
4912 (lispy_kana_keys): Comment out.
4913 (make_lispy_event) [XK_kana_A]: Comment out.
4914 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
4915 Fix sprintf call.
4916
4917 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
4918 regexp.h change).
4919 (TERMINFO, LIBS_TERMCAP): Define.
4920
4921 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
4922 (bcmp): Define conditional on HAVE_BCMP.
4923 (NO_SIOCTL_H): Don't define.
4924 (TIOCSIGSEND): Don't make conditional on IRIX6.
4925
4926 * s/sol2-5.h: Don't include strings.h.
4927 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
4928
4929 * s/irix6-0.h (IRIX6): Don't define.
4930 (bcopy, bcmp, bzero): Don't undef.
4931
4932 * s/irix6-5.h: Don't include strings.h.
4933 (IRIX6): Don't define.
4934 (bcopy, bcmp, bzero): Don't undef.
4935
4936 * syntax.c (Fforward_comment): Doc fix.
4937
49382002-10-29 Kim F. Storm <storm@cua.dk>
4939
4940 * process.c (Fsignal_process): Allow PROCESS to be specified by
4941 name in addition to pid (as integer or string).
4942
49432002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
4944
4945 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
4946 environments.
4947
49482002-10-27 Kim F. Storm <storm@cua.dk>
4949
4950 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
4951
4952 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
4953
4954 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
4955
4956 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
4957
49582002-10-26 Richard M. Stallman <rms@gnu.org>
4959
4960 * editfns.c (Fformat): Detect invalid format letters for floats.
4961
49622002-10-25 Kenichi Handa <handa@m17n.org>
4963
4964 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
4965 (x_set_title): Likewise.
4966
49672002-10-25 Juanma Barranquero <lektu@terra.es>
4968
4969 * macgui.h:
4970 * w32gui.h: Remove definition of XColor.
4971
4972 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
4973
49742002-10-24 Kim F. Storm <storm@cua.dk>
4975
4976 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
4977 Callers changed (supply dummy arg).
4978
4979 * lisp.h (get_window_cursor_type): Update prototype.
4980
4981 * w32term.c (x_display_and_set_cursor): Get active_cursor from
4982 get_window_cursor_type to track system caret.
4983
49842002-10-24 Kim F. Storm <storm@cua.dk>
4985
4986 * process.c (Fformat_network_address): New function.
4987 (syms_of_process): Defsubr it.
4988 (list_processes_1): Use it to format :local/:remote address if
4989 service/host is not set; before emacs would crash in that case.
4990 (Fmake_network_process): Don't use Ffind_operation_coding_system
4991 to setup coding system if host or service is not set.
4992
49932002-10-23 Juanma Barranquero <lektu@terra.es>
4994
4995 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
4996
4997 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
4998 COLORREF.
4999
5000 * macgui.h:
5001 * w32gui.h: Add definition of XColor.
5002
5003 * macfns.c:
5004 * w32fns.c:
5005 * xfaces.c: Remove definition of XColor.
5006
50072002-10-22 Stefan Monnier <monnier@cs.yale.edu>
5008
5009 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
5010
5011 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
5012 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
5013 window if it is dedicated.
5014 (Fshrink_window): Add preserve_before as was done for enlarge_window.
5015 (Vspecial_display_function): Update docstring.
5016
5017 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
5018 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
5019 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
5020
50212002-10-21 Stefan Monnier <monnier@cs.yale.edu>
5022
5023 * casefiddle.c (casify_region): Don't treat a prefix char as part
5024 of a word when at the beginning.
5025
50262002-10-17 Juanma Barranquero <lektu@terra.es>
5027
5028 * lread.c (syms_of_lread): Fix typos.
5029
50302002-10-17 Dave Love <fx@gnu.org>
5031
5032 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
5033
50342002-10-16 Richard M. Stallman <rms@gnu.org>
5035
5036 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
5037
50382002-10-14 Juanma Barranquero <lektu@terra.es>
5039
5040 * w16select.c (syms_of_win16select): Fix docstring for
5041 `selection-coding-system'.
5042
5043 * w32select.c (syms_of_w32select): Likewise.
5044
50452002-10-14 Stefan Monnier <monnier@cs.yale.edu>
5046
5047 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
5048 a backslash-quoted char.
5049 (scan_lists, scan_sexps_forward): Pacify the compiler.
5050
50512002-10-13 Richard M. Stallman <rms@gnu.org>
5052
5053 * window.c (window_scroll): Set immediate_quit.
5054
5055 * print.c (print): When backquote form is the car of a list,
5056 output in old style. Use old_backquote_output to output all
5057 comma forms inside it in old style too.
5058
5059 * buffer.h (struct buffer): Move `undo_list' down below `name'.
5060
50612002-10-11 Markus Rost <rost@math.ohio-state.edu>
5062
5063 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
5064 batch mode).
5065
5066 * lread.c (Fload): Doc fix (load-suffixes).
5067
50682002-10-10 Steven Tamm <steventamm@mac.com>
5069
5070 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
5071 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
5072 Also switch the default to Qnil from Qt.
5073
50742002-10-08 Kenichi Handa <handa@m17n.org>
5075
5076 * coding.c (code_convert_region): When we need more GAP for
5077 conversion, pay attention to the case that coding->produced is not
5078 greater than coding->consumed.
5079
50802002-10-07 Richard M. Stallman <rms@gnu.org>
5081
5082 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
5083
50842002-10-06 Andrew Choi <akochoi@shaw.ca>
5085
5086 * macmenu.c (mac_menu_show): Add j to count menu items; match
5087 menu_item_selection to it to find selected item.
5088
50892002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5090
5091 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
5092 cases. The correct fix is to pass ReparentNotify to Xt.
5093 The shell widget interprets ConfigureNotify differently depending
5094 on if it has been reparented or not.
5095
50962002-10-05 Markus Rost <rost@math.ohio-state.edu>
5097
5098 * editfns.c (Fformat_time_string): Doc fix.
5099
51002002-10-05 John Paul Wallington <jpw@shootybangbang.com>
5101
5102 * fns.c (Flength): Doc fix.
5103
51042002-10-04 Stefan Monnier <monnier@cs.yale.edu>
5105
5106 * keyboard.c (keyremap): New struct.
5107 (read_key_sequence): Use it: globally replace keytran_foo with
5108 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
5109 keytran_next and fkey_next to just `next'.
5110
51112002-10-04 Steven Tamm <steventamm@mac.com>
5112
5113 * macterm.c (keycode_to_xkeysym_table): Change return to be
5114 treated like an X keysym.
5115
51162002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5117
5118 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
5119 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
5120 This is to also handle x/y changes that occur because of a resize.
5121
51222002-10-02 John Paul Wallington <jpw@shootybangbang.com>
5123
5124 * frame.c (Vdelete_frame_functions): New variable.
5125 (syms_of_frame): Initialize and defvar it.
5126 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
5127 it when frame's `tooltip' parameter is non-nil.
5128
5129 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
5130
5131 * w32fns.c (x_create_tip_frame): Likewise.
5132
5133 * macfns.c (x_create_tip_frame): Likewise.
5134
51352002-09-30 Kenichi Handa <handa@m17n.org>
5136
5137 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
5138 -1 before calling ccl_driver.
5139
5140 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
5141 Only when it is non-nil, handle composition sequence.
5142 (setup_coding_system) <0>: Don't force composition handling.
5143
5144 * Makefile.in (lisp, shortlisp): Add utf-16.elc
5145
51462002-09-29 Richard M. Stallman <rms@gnu.org>
5147
5148 * search.c (Freplace_match): Adjust match data for the substitution
5149 just made in the buffer.
5150
5151 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
5152 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
5153
51542002-09-27 Richard M. Stallman <rms@gnu.org>
5155
5156 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
5157 (read_char): Use them. Do all exits thru the end of the function.
5158
51592002-09-27 Kenichi Handa <handa@etl.go.jp>
5160
5161 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
5162 is nil.
5163
51642002-09-26 Richard M. Stallman <rms@gnu.org>
5165
5166 * regex.h (__restrict_arr): Don't define if already defined.
5167
5168 * coding.c (run_pre_post_conversion_on_str):
5169 Save and restore Vdeactivate_mark.
5170
51712002-09-26 John Paul Wallington <jpw@shootybangbang.com>
5172
5173 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
5174
51752002-09-26 Kenichi Handa <handa@etl.go.jp>
5176
5177 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
5178 nonzero, try face's family at first. Otherwise try FAMILY at first.
5179 (choose_face_font): If C is a single byte char or latin-1, call
5180 try_font_list with PREFER_FACE_FAMILY 1.
5181
51822002-09-21 Richard M. Stallman <rms@gnu.org>
5183
5184 * window.c (select_window_1): Don't select frame.
5185 Set frame's selected window only when frame itself is selected.
5186 (Fselect_window): Doc fix.
5187
51882002-09-18 Kim F. Storm <storm@cua.dk>
5189
5190 * process.c (make-network-process): Doc fix (there is no
5191 network-server-log-function hook).
5192
51932002-09-18 Richard M. Stallman <rms@gnu.org>
5194
5195 * print.c (print): Clear out the unused parts of Vprint_number_table.
5196 (syms_of_print): Doc fix for `print-number-table'.
5197
5198 * unexelf.c (unexec): Undo previous change.
5199
52002002-09-17 Andreas Schwab <schwab@suse.de>
5201
5202 * m/alpha.h [LINUX]: Don't define DATA_START.
5203
52042002-09-16 Dave Love <fx@gnu.org>
5205
5206 * unexelf.c (unexec): Deal with .got, reinstating change from
5207 25-08-1999.
5208
52092002-09-13 Richard M. Stallman <rms@gnu.org>
5210
5211 * s/sol2-6.h (UNEXEC): Comment out definition.
5212
5213 * unexsol.c (unexec): Don't downcase first letter of error msg.
5214
5215 * xfaces.c (Fcolor_supported_p): Just one arg is required.
5216
52172002-09-12 Markus Rost <rost@math.ohio-state.edu>
5218
5219 * unexsol.c: Include buffer.h, charset.h, coding.h.
5220
52212002-09-11 Richard M. Stallman <rms@gnu.org>
5222
5223 * unexsol.c: Don't use report_file_error; do it by hand
5224 using dlerror.
5225
5226 * process.c (wait_reading_process_input, both versions):
5227 Before calling turn_on_atimers, call stop_polling.
5228
5229 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
5230
5231 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
5232 we go to too_near_end, call clear_glyph_matrix.
5233 (redisplay_window): After make_cursor_line_fully_visible,
5234 call clear_glyph_matrix and bypass `goto done'.
5235
5236 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
5237 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
5238
52392002-09-10 Richard M. Stallman <rms@gnu.org>
5240
5241 * fileio.c (Fdo_auto_save): Catch error making directory.
5242 Only call push_message if we need to.
5243 At the same time, make an unwind-protect to pop it.
5244 Rename local message_p to old_message_p.
5245 (do_auto_save_make_dir, do_auto_save_eh): New functions.
5246 (do_auto_save_unwind): Don't call pop_message.
5247
5248 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
5249
5250 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
5251
5252 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
5253
5254 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
5255
52562002-09-10 Stefan Monnier <monnier@cs.yale.edu>
5257
5258 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
5259 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
5260 (re_match_2_internal): Be more careful with infinite loops.
5261
52622002-09-10 Kim F. Storm <storm@cua.dk>
5263
5264 * macros.c (end_kbd_macro): New function.
5265 (Fend_kbd_macro): Use it.
5266
5267 * macros.h (end_kbd_macro): Declare extern.
5268
5269 * keyboard.c (Fdiscard_input): If defining keyboard macro,
5270 end and save it instead of discarding it.
5271
52722002-09-09 Markus Rost <rost@math.ohio-state.edu>
5273
5274 * s/sol2-6.h: Fix typo. Add comment.
5275
52762002-09-09 Richard M. Stallman <rms@gnu.org>
5277
5278 * regex.c (regnum_t): Use signed int, not unsigned int.
5279
5280 * s/sol2-6.h: New file.
5281
5282 * s/sol2-5.h (UNEXEC): Definition deleted.
5283
52842002-09-08 Kim F. Storm <storm@cua.dk>
5285
5286 * macros.c (executing_macro_index): Change type to EMACS_INT.
5287 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
5288
5289 * macros.h (executing_macro_index): Change type to EMACS_INT.
5290
52912002-09-06 Richard M. Stallman <rms@gnu.org>
5292
5293 * casetab.c (set_case_table): Make canon table point to eqv table.
5294
52952002-09-06 Juanma Barranquero <lektu@terra.es>
5296
5297 * coding.c (syms_of_coding): Fix spacing.
5298
5299 * composite.c (Fcompose_region_internal)
5300 (Fcompose_string_internal): Likewise.
5301
5302 * data.c (Flsh): Likewise.
5303
5304 * fontset.c (Fset_fontset_font): Likewise.
5305
5306 * macfns.c (Fx_server_max_request_size): Likewise.
5307
5308 * w16select.c (syms_of_win16select): Likewise.
5309
5310 * w32select.c (syms_of_w32select): Likewise.
5311
5312 * xselect.c (syms_of_xselect): Likewise.
5313
53142002-09-05 Richard M. Stallman <rms@gnu.org>
5315
5316 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
5317 call EXTEND_RANGE_TABLE and return a proper value.
5318 (set_image_of_range): Don't call set_image_of_range_1
5319 if no TRANSLATE or if range includes all of Latin-1.
5320 Only call it for the Latin-1 part of the range.
5321 For other cases, make two separate ranges,
5322 one for the original specified characters and one for
5323 their case-conversions.
5324
53252002-09-04 Richard M. Stallman <rms@gnu.org>
5326
5327 * s/sol2-5.h (UNEXEC): Use unexsol.o.
5328
5329 * window.c (displayed_window_lines): Correct for one-off bug
5330 in HEIGHT on non-window displays.
5331
5332 * regex.c (set_image_of_range_1): New function.
5333 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
5334 Return a value to indicate running out of memory.
5335 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
5336 (extend_range_table_work_area): New subroutine.
5337 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
5338 Different calling conventions, and used from set_image_of_range{,_1}.
5339 (IMMEDIATE_QUIT_CHECK): Definitions moved.
5340
53412002-09-04 Juanma Barranquero <lektu@terra.es>
5342
5343 * makefile.w32-in: All dependencies updated.
5344
53452002-09-01 Richard M. Stallman <rms@gnu.org>
5346
5347 * unexsol.c: New file.
5348
5349 * xfns.c (Qbox): Declare external, don't define.
5350
5351 * xdisp.c (redisplay_window) <force-start case>:
5352 If point is on semi-visible last line, reposition
5353 it at previous line.
5354
5355 * alloc.c (display_malloc_warning): Use display-warning.
5356 (malloc_warning_1): Function deleted.
5357
5358 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
5359
5360 * lread.c (read1): Handle #! by skipping the line.
5361
53622002-08-31 Richard M. Stallman <rms@gnu.org>
5363
5364 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
5365 Don't include LDFLAGS.
5366 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
5367
53682002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
5369
5370 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
5371 member of x_display_info unless we compile for some window system.
5372
53732002-08-31 Kim F. Storm <storm@cua.dk>
5374
5375 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
5376 (get_window_cursor_type): Don't use them.
5377 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
5378
53792002-08-30 Kenichi Handa <handa@etl.go.jp>
5380
5381 * xdisp.c (get_next_display_element): Fix previous change.
5382
53832002-08-30 Andrew Choi <akochoi@shaw.ca>
5384
5385 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
5386 (expose_window): Use it to fix the display of overlapping
5387 rows (merge code from xterm.c).
5388
5389 * macfns.c (Qbox): Add extern declaration.
5390
53912002-08-30 Juanma Barranquero <lektu@terra.es>
5392
5393 * w32fns.c (Qbox): Make extern.
5394 (syms_of_w32fns): Remove initialization of Qbox.
5395
53962002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
5397
5398 * xfns.c (Fx_open_connection): Fix error message.
5399
54002002-08-30 Kim F. Storm <storm@cua.dk>
5401
5402 The following changes consolidates the handling of the cursor
5403 type in xdisp.c, moving duplicate code and functionality from
5404 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
5405
5406 * frame.h (enum text_cursor_kinds): Consolidated here.
5407 Added DEFAULT_CURSOR value.
5408 (struct frame) <desired_cursor, cursor_width>
5409 <blink_off_cursor, blink_off_cursor_width>: New fields.
5410 Consolidated from output_x, output_w32 and output_mac structs.
5411 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
5412 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
5413
5414 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
5415 Variables consolidated here.
5416 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
5417 (Vcursor_in_non_selected_windows): Renamed from
5418 cursor_in_non_selected_windows and changed to Lisp_Object.
5419 (syms_of_xdisp): Define and staticpro new and moved variables.
5420 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
5421 consolidated here. Recognize Qhollow setting.
5422 (set_frame_cursor_types): New function to set frame cursor types
5423 based on the frame parameters.
5424 (get_window_cursor_type): New function to calculate new cursor
5425 type and width for the specified window. Based on duplicated
5426 code consolidated here.
5427 Enhancements: cursor-in-non-selected-windows may be a cursor type,
5428 check buffer-local alternate-cursor-type and blink-cursor-alist
5429 before using built-in blink off methods.
5430
5431 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
5432
5433 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
5434 (get_specified_cursor_type, get_window_cursor_type)
5435 (set_frame_cursor_types): Added prototypes.
5436
5437 * macfns.c (x_specified_cursor_type): Removed.
5438 (x_set_cursor_type): Use set_frame_cursor_types.
5439 (Qbar, Qbox): Removed.
5440 (syms_of_macfns): Don't intern or staticpro them.
5441
5442 * macterm.c (x_specified_cursor_type): Remove prototype.
5443 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
5444 (x_display_and_set_cursor): Use get_window_cursor_type.
5445 Remove unused local variables cursor_non_selected, active_cursor.
5446 Redraw cursor if hbar cursor width changes.
5447 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
5448
5449 * macterm.h (enum text_cursor_kinds): Removed.
5450 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
5451 <blink_off_cursor, blink_off_cursor_width>: Members removed.
5452 (FRAME_DESIRED_CURSOR): Macro removed.
5453
5454 * w32fns.c (Vblink_cursor_alist): Removed.
5455 (Qbar, Qhbar, Qbox, Qhollow): Removed.
5456 (syms_of_w32fns): Don't intern, staticpro, or define them.
5457 (x_specified_cursor_type): Removed.
5458 (x_set_cursor_type): Use set_frame_cursor_types.
5459
5460 * w32term.c (x_specified_cursor_type): Remove prototype.
5461 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
5462 (x_display_and_set_cursor): Use get_window_cursor_type.
5463 Remove unused local variables cursor_off_state.
5464 Redraw cursor if hbar cursor width changes.
5465 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
5466
5467 * w32term.h (enum text_cursor_kinds): Removed.
5468 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
5469 <blink_off_cursor, blink_off_cursor_width>: Members removed.
5470 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
5471 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
5472 (struct w32_display_info) <x_highlight_frame>: Renamed member from
5473 w32_highlight_frame.
5474
5475 * xfns.c (Vblink_cursor_alist): Removed.
5476 (Qbar, Qhbar, Qbox, Qhollow): Removed.
5477 (syms_of_xfns): Don't intern, staticpro, or define them.
5478 (x_specified_cursor_type): Removed.
5479 (x_set_cursor_type): Use set_frame_cursor_types.
5480
5481 * xterm.c (x_specified_cursor_type): Remove prototype.
5482 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
5483 (x_display_and_set_cursor): Use get_window_cursor_type.
5484 Remove unused local variables cursor_off_state.
5485 Redraw cursor if hbar cursor width changes.
5486
5487 * xterm.h (enum text_cursor_kinds): Removed.
5488 (struct output_x) <current_cursor, desired_cursor, cursor_width>
5489 <blink_off_cursor, blink_off_cursor_width>: Members removed.
5490 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
5491 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
5492 (x_specified_cursor_type): Remove prototype.
5493
54942002-08-28 Richard M. Stallman <rms@gnu.org>
5495
5496 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
5497 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
5498 (Vblink_cursor_alist): New variable.
5499 (syms_of_w32fns): Initialize and defvar it.
5500 (x_specified_cursor_type): Recognize Qbox for filled box.
5501 Exceptions are hollow boxes.
5502 (Qbox, Qhollow): New variables.
5503 (syms_of_w32fns): Initialize and staticpro them.
5504
5505 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
5506 New macros.
5507 (struct w32_output): New fields blink_off_cursor,
5508 blink_off_cursor_width.
5509 (FRAME_CURSOR_WIDTH): New macro.
5510
5511 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
5512 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
5513
5514 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
5515 for bar cursor.
5516
5517 * w32term.c (expose_overlaps): New function.
5518 (expose_window): Use it to fix the display of overlapping rows.
5519
55202002-08-28 Simon Josefsson <jas@extundo.com>
5521
5522 * xfns.c (Fx_open_connection): Improve help when X connection
5523 fails, xhost is insecure and xauth is better.
5524
55252002-08-28 Juanma Barranquero <lektu@terra.es>
5526
5527 * makefile.w32-in: Add missing dependencies on w32term.h and
5528 composite.h.
5529
5530 * emacs.c (USAGE1): Add missing newline.
5531
55322002-08-27 Andrew Choi <akochoi@shaw.ca>
5533
5534 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
5535
55362002-08-27 Richard M. Stallman <rms@gnu.org>
5537
5538 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
5539 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
5540 (Vblink_cursor_alist): New variable.
5541 (syms_of_xfns): Initialize and defvar it.
5542 (x_specified_cursor_type): Recognize Qbox for filled box.
5543 Exceptions are hollow boxes.
5544 (Qbox, Qhollow): New variables.
5545 (syms_of_xfns): Initialize and staticpro them.
5546
5547 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
5548 New macros.
5549 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
5550
5551 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
5552 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
5553
5554 * emacs.c (main): Handle --script.
5555 (USAGE1): Mention --script.
5556 (standard_args): Define sort order for --script.
5557
55582002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
5559
5560 * xdisp.c (redisplay_updating_p): Variable removed.
5561 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
5562 New variables.
5563 (init_iterator): Don't free realized faces if
5564 inhibit_free_realized_faces is set.
5565 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
5566 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
5567 initialize Qinhibit_free_realized_faces.
5568
5569 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
5570 when iterator is adding glyphs to a glyph matrix.
5571
55722002-08-27 Kenichi Handa <handa@etl.go.jp>
5573
5574 * xdisp.c (get_next_display_element): In unibyte case, don't use
5575 octal form for such eight-bit characters that can be converted to
5576 multibyte char.
5577
55782002-08-26 Kim F. Storm <storm@cua.dk>
5579
5580 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize foreground
5581 and background colors. From Joe Buehler (tiny change).
5582
55832002-08-26 Miles Bader <miles@gnu.org>
5584
5585 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
5586
55872002-08-25 Andrew Choi <akochoi@shaw.ca>
5588
5589 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
5590 defined instead of MAC_OSX.
5591
5592 * s/darwin.h (select): Define select to sys_select only if
5593 HAVE_CARBON is defined.
5594 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
5595 (DONT_REOPEN_PTY): #def it.
5596
5597 * macterm.c (XTread_socket): Remove code to call
5598 SendEventToEventTarget for keys with command modifiers when
5599 mac_command_key_is_meta is nil.
5600
56012002-08-24 Andreas Schwab <schwab@suse.de>
5602
5603 * eval.c (Fdefvar): Fix last change.
5604
56052002-08-23 Richard M. Stallman <rms@gnu.org>
5606
5607 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
5608 Record variables in load history as (defvar . VAR).
5609 (Fdefvar): Don't record in load history if no initial value.
5610 (Qdefvar): New variable.
5611 (syms_of_eval): Init and staticpro it.
5612
5613 * lread.c (syms_of_lread): Doc fix.
5614 (build_load_history): Use Fmember to see if a definition
5615 is already in the Vload_history element.
5616
5617 * process.c (Fstart_process): Remove /: from program name.
5618
5619 * emacs.c (decode_env_path): Don't add /: if file name handler
5620 has a `safe-magic' property.
5621
5622 * callproc.c (Fcall_process): Remove /: from program name.
5623
56242002-08-23 Stefan Monnier <monnier@cs.yale.edu>
5625
5626 * regex.c (PATFETCH): Remove the translating fetch.
5627 (PATFETCH_RAW): Rename to PATFETCH.
5628 (set_image_of_range): New fun.
5629 (SET_RANGE_TABLE_WORK_AREA): Use it.
5630 (regex_compile): Don't translate the pattern chars so eagerly.
5631 Only do it when inserting an `exactn' bytecode or when handling
5632 a char-range.
5633 (mutually_exclusive_p): Avoid empty statement.
5634
56352002-08-22 Kim F. Storm <storm@cua.dk>
5636
5637 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
5638 end up on a partially visible line; this reverts a specific part
5639 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
5640 display error which has been reported several times now.
5641 However it introduces the problem that changes was supposed to fix.
5642 See my comments in the source if you want to debug this further.
5643
56442002-08-20 Kenichi Handa <handa@etl.go.jp>
5645
5646 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
5647
56482002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
5649
5650 * msdos.c (croak): Add `void' to definition.
5651
5652 * sysdep.c [MSDOS] (request_sigio, unrequest_sigio):
5653 Don't define them, they are defined in msdos.c.
5654
5655 * mem-limits.h [MSDOS]: Declare etext.
5656
5657 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
5658 `const' since CORRECT_DIR_SEPS modifies its target.
5659
56602002-08-19 Kim F. Storm <storm@cua.dk>
5661
5662 * keyboard.c (Fclear_this_command_keys): Added optional arg
5663 KEEP-RECORD to avoid clearing lossage when we just want to clear
5664 the current key sequence (kmacro needs this).
5665
56662002-08-19 Kenichi Handa <handa@localhost>
5667
5668 * composite.c (run_composition_function): Call FUNC if it is fboundp.
5669
5670 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
5671 cons, return Qnil.
5672
56732002-08-17 Richard M. Stallman <rms@gnu.org>
5674
5675 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
5676
5677 * sysdep.c [!VMS]: Include sys/files.h.
5678
5679 * editfns.c (save_restriction_restore): Defend from unchained marker.
5680
5681 * buffer.c (overlays_at): Handle extending vec uniformly.
5682 (overlays_in): Handle extending vec from length 0 as in overlays_at.
5683
56842002-08-15 Andrew Choi <akochoi@shaw.ca>
5685
5686 * mac.c (init_mac_osx_environment): New function.
5687
5688 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
5689
56902002-08-14 Kim F. Storm <storm@cua.dk>
5691
5692 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
5693 executing macro before appending to it (when used from Lisp).
5694 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
5695 which is called prior to each iteration of macro (for kmacro.el).
5696 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
5697
5698 * lisp.h (Fexecute_kbd_macro): Update prototype.
5699
5700 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
5701
57022002-08-14 Kenichi Handa <handa@etl.go.jp>
5703
5704 * xselect.c (QUTF8_STRING): New variable.
5705 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
5706 (x_atom_to_symbol): Likewise.
5707 (x_get_local_selection): New argument local_request. If it is
5708 nonzero, call handler_fn with the second arg nil.
5709 (x_handle_selection_request): Call x_get_local_selection with
5710 local_request 0.
5711 (lisp_data_to_selection_data): Don't encode the string here.
5712 (Fx_get_selection_internal): Call x_get_local_selection with
5713 local_request 1.
5714 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
5715
5716 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
5717
5718 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
5719
57202002-08-13 Richard M. Stallman <rms@gnu.org>
5721
5722 * minibuf.c (Fminibufferp): New function.
5723 (syms_of_minibuf): Defsubr it.
5724 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
5725
57262002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
5727
5728 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
5729
57302002-08-12 Richard M. Stallman <rms@gnu.org>
5731
5732 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
5733 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
5734 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
5735 already.
5736
5737 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
5738
57392002-08-11 Andrew Choi <akochoi@shaw.ca>
5740
5741 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
5742 (Vmac_pass_command_to_system): New variable.
5743 (Vmac_pass_control_to_system): New variable.
5744 (do_mouse_moved): Check wp with is_emacs_window.
5745 (XTread_socket): Check window_ptr with is_emacs_window.
5746 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
5747 events back to Mac Toolbox for processing, depending on values of
5748 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
5749 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
5750 Vmac_pass_control_to_system.
5751
57522002-08-10 Kenichi Handa <handa@etl.go.jp>
5753
5754 * coding.c (unencodable_char_position): New function.
5755 (Funencodable_char_position): New function.
5756 (syms_of_coding): Defsubr Funencodable_char_position.
5757
57582002-08-10 Andrew Choi <akochoi@shaw.ca>
5759
5760 * mac.c (sys_select) [MAC_OSX]: New function.
5761
5762 * macterm.c (MakeMeTheFrontProcess): New function.
5763 (mac_initialize): Call MakeMeTheFrontProcess.
5764
5765 * s/darwin.h: Define select to sys_select.
5766
57672002-08-09 Richard M. Stallman <rms@gnu.org>
5768
5769 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
5770
57712002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
5772
5773 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
5774 end of the buffer.
5775
57762002-08-08 Ken Raeburn <raeburn@mit.edu>
5777
5778 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
5779
5780 * puresize.h (BASE_PURESIZE): Increase to 910000.
5781
57822002-08-08 Kenichi Handa <handa@etl.go.jp>
5783
5784 * coding.c (Ffind_operation_coding_system): For write-region, if
5785 VISIT is a filename, make it the target.
5786
57872002-08-07 Richard M. Stallman <rms@gnu.org>
5788
5789 * alloc.c (mark_object): Detect long lists for debugging.
5790 (mark_object_loop_halt): New variable.
5791
5792 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
5793
5794 * data.c (Fmake_variable_frame_local): Doc fix.
5795
57962002-08-01 David Ponce <david@dponce.com>
5797
5798 * w32menu.c (local_heap, local_alloc, local_free): New macros.
5799 (malloc_widget_value, free_widget_value)
5800 (w32_free_submenu_strings): Use them.
5801
5802 (push_submenu_start, push_submenu_end, push_left_right_boundary)
5803 (push_menu_pane, push_menu_item, single_keymap_panes)
5804 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
5805 (single_submenu, set_frame_menubar)
5806 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
5807
5808 (Fx_popup_menu): Don't show pop up menu until preceding one is
5809 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
5810
5811 * w32menu.c: Changes adapted from xmenu.c
5812 (set_frame_menubar): First parse all submenus,
5813 then make widget_value trees from them.
5814 Don't allocate any widget_value objects
5815 until we are done with the parsing.
5816 (parse_single_submenu): New function.
5817 (digest_single_submenu): New function.
5818 (single_submenu): Function deleted, replaced by those two.
5819
58202002-08-04 Andrew Choi <akochoi@shaw.ca>
5821
5822 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
5823 returns a valid window pointer before proceeding for keyDown and
5824 autoKey events.
5825
58262002-08-03 Andrew Choi <akochoi@shaw.ca>
5827
5828 * macterm.c (USE_CARBON_EVENTS): New macro.
5829 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
5830 (x_iconify_frame): Call CollapseWindow.
5831 (Vmac_reverse_ctrl_meta): New variable.
5832 (Vmac_wheel_button_is_mouse_2): New variable.
5833 (init_mac_drag_n_drop): New function.
5834 (mac_do_receive_drag): New function.
5835 (mac_handle_service_event): New function.
5836 (init_service_handler): New function.
5837 (mac_to_emacs_modifiers): New function.
5838 (mac_event_to_emacs_modifiers): New function.
5839 (mac_get_mouse_btn): New function.
5840 (mac_convert_event_ref): New function.
5841 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
5842 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
5843 mac_get_mouse_btn.
5844 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
5845
5846 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
5847 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
5848 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
5849 TOOL_BAR_EVENT for MAC_OS as well.
5850 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
5851 as for WINDOWS_NT.
5852 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
5853
5854 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
5855
58562002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
5857
5858 * xdisp.c (forward_to_next_line_start): Fix a condition that
5859 lead to a newline being skipped.
5860
58612002-08-02 Andrew Choi <akochoi@shaw.ca>
5862
5863 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
5864
58652002-08-01 Richard M. Stallman <rms@gnu.org>
5866
5867 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
5868
58692002-07-31 Andrew Choi <akochoi@shaw.ca>
5870
5871 * macfns.c: #undef init_process before #define-ing it.
5872
5873 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
5874 HAVE_CARBON is defined.
5875
58762002-07-31 Richard M. Stallman <rms@gnu.org>
5877
5878 * xmenu.c (set_frame_menubar): First parse all submenus,
5879 then make widget_value trees from them.
5880 Don't allocate any widget_value objects
5881 until we are done with the parsing.
5882 (parse_single_submenu): New function.
5883 (digest_single_submenu): New function.
5884 (single_submenu): Function deleted, replaced by those two.
5885
58862002-07-30 Juanma Barranquero <lektu@terra.es>
5887
5888 * w32proc.c (syms_of_ntproc): Fix docstring of
5889 `w32-get-true-file-attributes'.
5890
58912002-07-28 Richard M. Stallman <rms@gnu.org>
5892
5893 * s/hpux8.h (HPUX8): Define this before including hpux.h.
5894 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
5895
5896 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
5897
5898 * keyboard.c (make_lispy_event):
5899 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
5900 Explicitly clear up_modifier in event->modifiers.
5901
59022002-07-27 Richard M. Stallman <rms@gnu.org>
5903
5904 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
5905
5906 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
5907 for bar cursor.
5908
59092002-07-26 Kenichi Handa <handa@etl.go.jp>
5910
5911 * coding.c (detect_coding_iso2022): While checking a byte sequence
5912 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
5913 it in the normal loop.
5914
59152002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
5916
5917 * xterm.c (expose_overlaps): New function.
5918 (expose_window): Use it to fix the display of overlapping rows.
5919
5920 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
5921
59222002-07-23 Ken Raeburn <raeburn@gnu.org>
5923
5924 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
5925 since it only depends on XUINT.
5926
5927 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
5928 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
5929 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
5930 Macros deleted.
3947677c 5931
77d1daf2
AS
5932 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
5933 its value over other approaches.
5934 * sysdep.c (start_of_data): Don't define the function if a macro
5935 form has been defined.
8a8e19a3 5936
048addec
JD
59372002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
5938
5939 * xdisp.c (redisplay_updating_p): New variable.
5940 (init_iterator): Don't free realized faces when
5941 redisplay_updating_p is set.
5942 (redisplay_internal): Set redisplay_updating_p while updating
5943 the display.
5944
59452002-07-23 Richard M. Stallman <rms@gnu.org>
5946
5947 * editfns.c (Fmessage): Treat "" like nil.
5948
59492002-07-23 Kenichi Handa <handa@etl.go.jp>
5950
5951 * xdisp.c (face_before_or_after_it_pos):
5952 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
5953
59542002-07-22 Juanma Barranquero <lektu@terra.es>
5955
5956 * callproc.c (init_callproc) [DOS_NT]:
5957 Initialize Vshared_game_score_directory to nil.
5958 (syms_of_callproc) [DOS_NT]: Likewise.
5959
59602002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
5961
5962 * xdisp.c (display_line): Replace an abort with xassert.
5963
59642002-07-21 Richard M. Stallman <rms@gnu.org>
5965
5966 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
5967 and END_UNCHANGED when setting buffer_unchanged_p.
5968 Use current_matrix_up_to_date_p to decide whether to use
5969 try_cursor_movement.
5970
5971 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
5972
5973 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
5974
5975 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
5976 Set to nil if dir does not exist.
5977 (syms_of_callproc): Init unconditionally and simply.
5978
5979 * buffer.c (Fbuffer_list): Doc fix.
5980
59812002-07-21 Ken Raeburn <raeburn@gnu.org>
5982
5983 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
5984
5985 * buffer.c (mmap_realloc): When shrinking, make sure number of
5986 pages to unmap is rounded towards zero.
5987
5988 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
5989 (XSETINT): Deleted.
5990
5991 * m/att3b.h (XINT): Don't define.
5992 (VALBITS, VALMASK, XTYPE): Deleted.
5993 (DATA_SEG_BITS): Define.
5994 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
5995 ARRAY_MARK_FLAG): Deleted.
5996 (DATA_SEG_BITS): Define.
5997 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
5998 (DATA_SEG_BITS): Define.
5999
60002002-07-20 Richard M. Stallman <rms@gnu.org>
6001
6002 * print.c (print_error_message): New args CONTEXT and CALLER.
6003 Calls changed.
6004
6005 * lisp.h (print_error_message): Declare new args.
6006
6007 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
6008 and CONTEXT to print_error_message, don't print them here.
6009 For a Quit, don't use Vsignaling_function.
6010 Call message_log_maybe_newline.
6011
6012 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
6013
60142002-07-20 Kim F. Storm <storm@cua.dk>
6015
6016 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
6017
60182002-07-19 Ken Raeburn <raeburn@gnu.org>
6019
6020 * bytecode.c (struct byte_stack): Pointers into byte string now
6021 point to const.
6022 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
6023 const.
6024 * charset.h (BCOPY_SHORT): Source pointer now points to const.
6025 * coding.c (encode_eol, detect_coding, detect_eol):
6026 (decode_coding, encode_coding, detect_coding_system):
6027 Source strings now treated as const.
6028 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
6029 modify Lisp string contents.
6030 * coding.h (decode_coding, encode_coding, detect_coding,
6031 detect_eol): Declarations updated.
6032 * composite.c (compose_chars_in_text): Treat Lisp string contents
6033 as const.
6034 * dispnew.c (safe_bcopy): Source pointer now points to const.
6035 * lisp.h (STRING_COPYIN): New macro.
6036 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
6037 (internal_with_output_to_temp_buffer): Declarations updated.
6038 * print.c (temp_output_buffer_setup):
6039 (internal_with_output_to_temp_buffer): Buffer name argument is now
6040 pointer to const.
6041 * sound.c (struct sound_device): Function pointer field "write"
6042 buffer argument now points to const.
6043 (vox_write): Buffer argument points to const.
6044 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
6045 contents as const.
6046 * sysdep.c (emacs_write): Buffer pointer now const.
6047 * term.c (encode_terminal_code): Buffer pointer now const.
6048 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
6049 (x_face_list_fonts, x_update_menu_appearance):
6050 (hash_string_case_insensitive): Treat Lisp string contents as const.
6051
60522002-07-19 Juanma Barranquero <lektu@terra.es>
6053
6054 * fileio.c (Ffile_name_as_directory): Fix argument name in docstring.
6055 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
6056
6057 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
6058
6059 * fileio.c (syms_of_fileio): Likewise.
6060
60612002-07-18 Richard M. Stallman <rms@gnu.org>
6062
6063 * data.c (Fdefalias): Doc fix.
6064
60652002-07-17 Dave Love <fx@gnu.org>
6066
6067 * intervals.h (text_property_stickiness): Use P_.
6068
6069 * ccl.c: Remove `emacs' conditionals.
6070 (ccl_backtrace_table): Fix size spec.
6071 (ccl_driver): Fix type errors.
6072
60732002-07-16 Ken Raeburn <raeburn@gnu.org>
6074
6075 * alloc.c (xstrdup, make_string, make_unibyte_string)
6076 (make_multibyte_string, build_string): String pointer args now
6077 point to const.
6078 * charset.c (find_charset_in_text, c_string_width):
6079 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
6080 * fileio.c (report_file_error):
6081 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
6082 (count_combining_before, count_combining_after, insert_1_both):
6083 (insert, insert_and_inherit, insert_string):
6084 (insert_before_markers, insert_before_markers_and_inherit):
6085 * lread.c (intern, oblookup, hash_string):
6086 * minibuf.c (temp_echo_area_glyphs):
6087 * search.c (fast_c_string_match_ignore_case):
6088 * sysdep.c (emacs_open, set_file_times):
6089 * xfaces.c (xstricmp):
6090 * xdisp.c (store_frame_title, string_char_and_length):
6091 (message_dolog, message2, message2_nolog, set_message): Likewise.
6092 (set_message_1): Cast message string argument to const pointer.
6093 * editfns.c (general_insert_function): Insertion function now
6094 takes pointer to const for input data.
6095 * charset.h (find_charset_in_text, c_string_width):
6096 (parse_str_as_multibyte): Declarations updated.
6097 * dispextern.h (xstricmp): Declaration updated.
6098 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
6099 (count_size_as_multibyte, count_combining_before):
6100 (count_combining_after, insert_1, insert_1_both, message_dolog):
6101 (insert, insert_and_inherit, insert_before_markers)
6102 (insert_before_markers_and_inherit, set_message, message2):
6103 (message2_dolog, build_string, make_string, make_unibyte_string):
6104 (make_multibyte_string, intern, oblookup, report_file_error):
6105 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
6106 (emacs_open, xstrdup): Declarations updated.
6107 * systime.h (set_file_times): Declaration updated.
6108
6109 * charset.c (find_charset_in_text, lisp_string_width): Use const
6110 for pointer to lisp string data.
6111 * charset.h (FETCH_STRING_CHAR_ADVANCE):
6112 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
6113 * coding.c (Ffind_coding_systems_region_interval):
6114 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
6115 (Fmake_directory_internal, Fdelete_directory):
6116 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
6117 * fontset.c (font_family_registry, fs_query_fontset):
6118 (list_fontsets):
6119 * frame.c (Fframe_parameter):
6120 * keyboard.c (cmd_error_internal):
6121 * keymap.c (Fdescribe_buffer_bindings):
6122 * lread.c (complete_filename_p, openp):
6123 * minibuf.c (Fminibuffer_complete_word):
6124 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
6125 (face_before_or_after_it_pos, next_element_from_string):
6126 (get_overlay_arrow_glyph_row, display_mode_element):
6127 (decode_mode_spec_coding):
6128 * xterm.c (same_x_server): Likewise.
6129
6130 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
6131 settings of non-existent fields.
6132
6133 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
6134 copy a lisp value.
6135
6136 * lread.c (Fintern_soft): Use string macros instead of
6137 Lisp_String fields.
6138 * keyboard.c (echo_char, parse_modifiers_uncached):
6139 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
6140 * textprop.c (validate_interval_range, interval_of): Likewise.
6141
6142 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
6143
6144 * charset.h (FETCH_STRING_CHAR_ADVANCE)
6145 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
6146 XSTRING()->size_byte.
6147
6148 * lisp.h (SDATA, SREF): Produce rvalue.
6149 (SSET): New macro.
6150 * alloc.c (make_event_array): Use SSET for storing into a string.
6151 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
6152 a string.
6153 * casefiddle.c (casify_object): Use SSET.
6154 * charset.h (FETCH_STRING_CHAR_ADVANCE)
6155 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
6156 address of string contents.
6157 * data.c (Faref): Use SDATA.
6158 (Faset): Use SDATA, SSET.
6159 * dired.c (directory_files_internal): Use SSET.
6160 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
6161 (Fread_file_name): Use SREF, SSET.
6162 * fns.c (concat): Use SSET.
6163 (concat, Fdelete): Use SDATA.
6164 * insdel.c (insert_from_string_1): Use SDATA.
6165 * keyboard.c (Fevent_convert_list): Use SREF.
6166 * lread.c (Fload): Use SDATA, SSET.
6167 * macfns.c (validate_x_resource_name): Use SSET.
6168 * process.c (status_message): Use SSET.
6169 * search.c (wordify): Use SDATA.
6170 (Freplace_match): Use SREF.
6171 * w32fns.c (validate_x_resource_name): Use SSET.
6172 * xfns.c (validate_x_resource_name): Use SSET.
6173 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
6174
61752002-07-16 Richard M. Stallman <rms@gnu.org>
6176
6177 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
6178
6179 * xdisp.c (reconsider_clip_changes):
6180 Don't test prevent_redisplay_optimizations_p.
6181 (redisplay_internal): Test prevent_redisplay_optimizations_p
6182 along with clip_changed in some cases.
6183 (try_window_id): Likewise.
6184 (redisplay_window): New local var buffer_unchanged_p.
6185
6186 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
6187
6188 * process.c (create_process): Test USG_SUBTTY_WORKS.
6189 (process_send_signal): Clean up handling of GID.
6190 Detect errors in ioctls meant to set GID.
6191
6192 * window.c (temp_output_buffer_show):
6193 Don't set prevent_redisplay_optimizations_p.
6194
61952002-07-15 Juanma Barranquero <lektu@terra.es>
6196
6197 * eval.c (Fdefvaralias): Add docstring argument.
6198
61992002-07-15 Ken Raeburn <raeburn@gnu.org>
6200
6201 * lisp.h (STRING_INTERVALS): Produce rvalue.
6202 (STRING_SET_INTERVALS): New macro.
6203 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
6204 * fns.c (Fstring_as_multibyte): Likewise.
6205 * intervals.c (balance_possible_root_interval, delete_interval)
6206 (create_root_interval, copy_intervals_to_string): Likewise.
6207 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
6208 instead of 0.
6209
62102002-07-14 Ken Raeburn <raeburn@gnu.org>
6211
6212 * lisp.h (STRING_SET_CHARS): New macro.
6213 (SCHARS, SBYTES): Produce rvalues.
6214 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
6215 * fns.c (concat): Likewise.
6216 * lread.c (read_vector): Likewise.
6217
6218 * lisp.h (SMBP): Deleted. All uses changed to STRING_MULTIBYTE.
6219 (STRING_SET_UNIBYTE): New macro.
6220 (SET_STRING_BYTES): Deleted. Callers (all of which supplied a
6221 length of -1) changed to use STRING_SET_UNIBYTE.
6222 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
6223 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
6224 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
6225 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
6226 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
6227 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
6228 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
6229 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
6230 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
6231 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
6232 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
6233 STRING_BYTES or indirection changed to SCHARS, SBYTES,
6234 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
6235 unchanged for now.
6236
62372002-07-13 Kim F. Storm <storm@cua.dk>
6238
6239 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
6240
62412002-07-12 Richard M. Stallman <rms@gnu.org>
6242
6243 * fileio.c (Fwrite_region): Doc fix.
6244
6245 * print.c (print_error_message): Don't handle Vsignaling_function here.
6246
6247 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
6248 (command_loop_1): Avoid certain actions after memory-full error.
6249
6250 * eval.c (Fsignal): Don't call cancel_hourglass.
6251 For a memory-full error, don't call Vsignal_hook_function
6252 and don't set Vsignaling_function.
6253
6254 * process.c (process_send_signal): Add abort call.
6255
62562002-07-11 Markus Rost <rost@math.ohio-state.edu>
6257
6258 * keymap.c (Fkey_binding): Fix typo.
6259
62602002-07-11 Richard M. Stallman <rms@gnu.org>
6261
6262 * alloc.c (Vmemory_full): New variable.
6263 (Vmemory_signal_data): Renamed from memory_signal_data.
6264 Uses changed.
6265 (syms_of_alloc): Defvar them.
6266 (memory_full, buffer_memory_full): Set Vmemory_full.
6267
6268 * lisp.h (Vmemory_full): Add declaration.
6269 (current_column, indented_beyond_p): Change declaration.
6270
6271 * indent.c (last_known_column): Declare as double, not float.
6272 (current_column, current_column_1, string_display_width)
6273 (position_indentation): Return `double'.
6274 (indented_beyond_p): Arg `column' is `double'. Callers changed.
6275
6276 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
6277 (back_to_previous_visible_line_start)
6278 (reseat_at_next_visible_line_start, next_element_from_buffer):
6279 Use `double', not `float', when calling indented_beyond_p.
6280
6281 * s/hpux11.h (BROKEN_SA_RESTART): Defined.
6282
6283 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
6284
62852002-07-11 Juanma Barranquero <lektu@terra.es>
6286
6287 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
6288 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
6289 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
6290 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
6291 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
6292 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
6293
62942002-07-10 Juanma Barranquero <lektu@terra.es>
6295
6296 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE. All callers
6297 changed.
6298
62992002-07-09 Stefan Monnier <monnier@cs.yale.edu>
6300
6301 * data.c (Fdefalias): Add an optional `docstring' argument.
6302 (set_internal, Fsetq_default): Use XCAR/XCDR.
6303
6304 * composite.c (HASH_VALUE, HASH_KEY):
6305 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
6306
63072002-07-09 Kenichi Handa <handa@etl.go.jp>
6308
6309 * callproc.c (Fcall_process): Fix previous change.
6310
63112002-07-07 Stefan Monnier <monnier@cs.yale.edu>
6312
6313 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
6314 Add support for hash-tables.
6315 (Ftry_completion): Return t even if the string appears multiple times.
6316
6317 * fns.c (Fnconc): Use XCDR.
6318 (Fprovide): Use CONSP and XCDR.
6319 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
6320 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
6321 (Fmake_hash_table): Accept `:size nil'.
6322 (Fmakehash): Delete: moved to subr.el.
6323 (syms_of_fns): Don't defsubr makehash.
6324
6325 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
6326 (HASH_TABLE_SIZE): Move from fns.c.
6327
63282002-07-07 Richard M. Stallman <rms@gnu.org>
6329
6330 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
6331 Instead just return 0 when there is something to be done.
6332 (try_scrolling): If make_cursor_line_fully_visible returns 0,
6333 retry scrolling as if cursor were off the bottom.
6334 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
6335 return CURSOR_MOVEMENT_MUST_SCROLL.
6336 (redisplay_window): If make_cursor_line_fully_visible returns 0,
6337 go to try_to_scroll.
6338
6339 * buffer.c (Fbuffer_local_value): Store current value into its binding
6340 so we get the up-to-date value for the binding that is loaded.
6341
6342 * eval.c (Fdefmacro): Doc fix.
6343
63442002-07-05 Dave Love <fx@gnu.org>
6345
6346 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
6347 correctly.
6348
6349 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
6350 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
6351 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
6352 CCL_LookupCharConstTbl.
6353 (syms_of_ccl): Defvar translation-hash-table-vector.
6354
63552002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
6356
6357 * xdisp.c: Remove unused variable `face'.
6358
63592002-07-04 Juanma Barranquero <lektu@terra.es>
6360
6361 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
6362 obsolescence information.
6363
63642002-07-03 Andrew Choi <akochoi@shaw.ca>
6365
6366 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
6367 pattern. Search cache first.
6368 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
6369 for Japanese font.
6370 (XLoadQueryFont): Use it.
6371
63722002-07-02 Richard M. Stallman <rms@gnu.org>
6373
6374 * keymap.c (Fdefine_key): Doc fix.
6375
6376 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
6377
63782002-07-02 Juanma Barranquero <lektu@terra.es>
6379
6380 * keymap.c (syms_of_keymap): Fix typo.
6381
63822002-07-01 Andrew Choi <akochoi@shaw.ca>
6383
6384 * s/darwin.h: Define POSIX_SIGNALS.
6385
6386 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
6387 and FSRefMakePath to convert FSSpec returned with Apple Event to
6388 Posix pathname.
6389 (mac_initialize) [TARGET_API_MAC_CARBON]:
6390 Call init_required_apple_events and disable the `Quit' menu item
6391 provided automatically by the Carbon Toolbox.
6392
63932002-07-01 Dave Love <fx@gnu.org>
6394
6395 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
6396 for K&R.
6397
6398 * xterm.c: Fix prototype for K&R.
6399
6400 * term.c (costs_set): Declare static, non-initialized for pcc.
6401
64022002-07-01 Richard M. Stallman <rms@gnu.org>
6403
6404 * keyboard.c (timer_last_idleness_start_time): New variable.
6405 (timer_start_idle): Set that.
6406 (read_key_sequence): Use that to reset timer_idleness_start_time
6407 to previous value.
6408
6409 * window.c (Frecenter): With arg, set optional_new_start.
6410
6411 * xdisp.c (redisplay_internal): Make optional_new_start really work.
6412
6413 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
6414 buffer for completion.
6415
64162002-06-29 Ken Raeburn <raeburn@gnu.org>
6417
6418 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
6419
64202002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6421
6422 * keyboard.c (readable_filtered_events): New function that filters
6423 FOCUS_IN_EVENT depending on parameter.
6424 (readable_events): Calls readable_filtered_events, not filtering
6425 FOCUS_IN_EVENT.
6426 (get_filtered_input_pending): New function, filtering parameter passed
6427 to readable_filtered_events.
6428 (get_input_pending): Calls get_filtered_input_pending, not filtering
6429 FOCUS_IN_EVENT.
6430 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
6431 FOCUS_IN_EVENT.
6432
6433 * xterm.h (struct x_output): Add focus_state.
6434
6435 * xterm.c (x_focus_changed): New function.
6436 (x_detect_focus_change): New function.
6437 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
6438 EnterNotify and LeaveNotify to track X focus changes.
6439
64402002-06-28 Andreas Schwab <schwab@suse.de>
6441
6442 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
6443
64442002-06-27 Kim F. Storm <storm@cua.dk>
6445
6446 * xdisp.c: (mode_line_string_list, mode_line_string_face)
6447 (mode_line_string_face_prop): New variables.
6448 (store_mode_line_string): New function.
6449 (display_mode_element): Use store_mode_line_string to
6450 add mode-line string elements to mode_line_string_list
6451 when mode_line_string_list is non-nil.
6452 (Fformat_mode_line): Now returns propertized string by
6453 default. New arg NO-PROPS to ignore properties.
6454 (decode_mode_spec): Only add two dashes for %- in propertized
6455 mode-line string.
6456 (syms_of_xdisp): Init and staticpro mode_line_string_list.
6457
64582002-06-27 Stefan Monnier <monnier@cs.yale.edu>
6459
6460 * minibuf.c (minibuffer_completion_contents): Add return type.
6461
64622002-06-27 Juanma Barranquero <lektu@terra.es>
6463
6464 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
6465
64662002-06-26 Juanma Barranquero <lektu@terra.es>
6467
6468 * fileio.c (read_file_name_cleanup): Add missing return.
6469
64702002-06-26 Richard M. Stallman <rms@gnu.org>
6471
6472 * window.c (Frecenter): Don't set force_start flag.
6473
6474 * minibuf.c (do_completion, Fminibuffer_complete_word)
6475 (Fminibuffer_completion_help): Complete just the text before point.
6476 (minibuffer_completion_contents): New function.
6477
6478 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
6479
6480 * frame.c (frames_bury_buffer): Function deleted.
6481
64822002-06-25 Miles Bader <miles@gnu.org>
6483
6484 * callint.c (Fcall_interactively): When checking to see if doprnt hit
6485 the end of callint_message, allow for a terminating '\0'.
6486
64872002-06-24 Juanma Barranquero <lektu@terra.es>
6488
6489 * w32select.c: Include composite.h
6490
6491 * w16select.c: Likewise.
6492
64932002-06-24 Kenichi Handa <handa@etl.go.jp>
6494
6495 * callproc.c (Fcall_process): If code detection is necessary,
6496 call detect_coding directly here.
6497
6498 * coding.c (detect_eol): Preserve coding->cmp_data.
6499
6500 * w16select.c (Fw16_get_clipboard_data):
6501 * w32fns.c (w32_to_x_font):
6502 * w32select.c (Fw32_get_clipboard_data):
6503 * xselect.c (selection_data_to_lisp_data):
6504 * xterm.c (XTread_socket): Disable composition handling.
6505
65062002-06-24 Stefan Monnier <monnier@cs.yale.edu>
6507
6508 * print.c (temp_output_buffer_setup): Kill all local variables.
6509
65102002-06-22 Stefan Monnier <monnier@cs.yale.edu>
6511
6512 * lread.c (Fread): Remove redundant and imprecise declaration.
6513
6514 * xfns.c (check_x_display_info): Use check_x_frame.
6515
6516 * .gdbinit (xprintsym): Use the new `xname' field.
6517 (xsymbol): Use it.
6518
65192002-06-22 Jason Rumney <jasonr@gnu.org>
6520
6521 * w32fns.c (file_dialog_callback): New function.
6522 (Fx_file_dialog): Allow selecting directories as well as files.
6523
65242002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
6525
6526 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
6527 OpenBSD. Add support for mipseb-*-netbsd* machines.
6528
65292002-06-17 Andrew Choi <akochoi@shaw.ca>
6530
6531 * macterm.c (mac_scroll_area): Set foreground and backcolor to
6532 black and white before scrolling. Restore frame background and
6533 foreground color after scrolling.
6534 (do_window_update): Call XClearWindow before calling expose_frame.
6535 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
6536 FRAME_FOREGROUND_PIXEL of frame.
6537
6538 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
6539 test Mac command key as <ALT> key.
6540
65412002-06-17 Stefan Monnier <monnier@cs.yale.edu>
6542
6543 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
6544
6545 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
6546 Lookup keys in function-key-map immediately so that key-translation-map
6547 can be applied earlier.
6548 Remove function_key_possible and key_translation_possible, replaced
6549 by checking `keytran_start < t'.
6550
6551 * .gdbinit (xsymbol): Use the new `xname' field.
6552
65532002-06-17 Andrew Choi <akochoi@shaw.ca>
6554
6555 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
6556 test Mac command key as <ALT> key.
6557
6558 * mac.c (do_applescript): Call initialize_applescript if necessary
6559 when first called. Dispose of result_desc only when there is no error.
6560 (Fdo_applescript): Use %d format specifier instead of %ld.
6561
65622002-06-16 Andrew Choi <akochoi@shaw.ca>
6563
6564 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
6565 of FrontWindow for cases keyDown and autoKey.
6566
6567 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
6568 Vdefault_fontset to Monaco with mac-roman coding.
6569
6570 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
6571 init_process before and after inclusion of Carbon/Carbon.h, resp.
6572
6573 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
6574 cursor_gc.
6575 (add_font_name_table_entry): New function.
6576 (init_font_name_table): Use add_font_name_table_entry; add italic,
6577 bold, and bold-italic entries for truetype fonts.
6578
6579 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
6580 for Mac too.
6581 (try_font_list) [MAC_OS]: If no font matches given registry, try
6582 fonts with any registry matching face_family.
6583 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
6584
6585 * s/darwin.h: If autoconf detects the Ncurses library, define
6586 LIBS_TERMCAP to -lncurses to use it.
6587
65882002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
6589
6590 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
6591
65922002-06-15 Richard M. Stallman <rms@gnu.org>
6593
6594 * window.c (Fset_window_configuration): Explicitly preserve
6595 the point value that new_current_buffer had at the start.
6596
65972002-06-14 Juanma Barranquero <lektu@terra.es>
6598
6599 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
6600 Fix typos.
6601
66022002-06-14 Kim F. Storm <storm@cua.dk>
6603
6604 * insdel.c (insert_1_both, insert_from_string_1)
6605 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
6606 insert happened in the end_unchanged region. Otherwise, the
6607 redisplay may be confused and duplicate the last line in the
6608 buffer [seen after save-buffer when require-final-newline==t].
6609
66102002-06-13 Jason Rumney <jasonr@gnu.org>
6611
6612 * w32.c (init_environment): Remove EMACSLOCKDIR.
6613 (stat): Swap _S_IFDIR and _S_IFREG.
6614
66152002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
6616
6617 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
6618 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
6619 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
6620 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
6621 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
6622 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
6623 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
6624 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
6625 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
6626 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
6627 SELECTION_REQUEST_EVENT, selection_clear_event to
6628 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
6629 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
6630 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
6631 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
6632 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
6633 no_event to NO_EVENT.
6634
66352002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
6636
6637 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
6638
66392002-06-12 Stefan Monnier <monnier@cs.yale.edu>
6640
6641 * intervals.c (textget): Don't forget to `return'.
6642 (lookup_char_property): Use XCAR/XCDR.
6643
66442002-06-12 Juanma Barranquero <lektu@terra.es>
6645
6646 * xdisp.c (Fformat_mode_line): Fix typo.
6647
66482002-06-12 Kim F. Storm <storm@cua.dk>
6649
6650 * xdisp.c (Fformat_mode_line): New function.
6651 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
6652 (store_frame_title_char, store_frame_title): Use unconditionally.
6653 (init_xdisp): Defsubr Fformat_mode_line.
6654 Initialize frame_title_buf etc. unconditionally.
6655
66562002-06-11 Stefan Monnier <monnier@cs.yale.edu>
6657
6658 * keyboard.c (read_key_sequence):
6659 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
6660 things through those maps after downcasing events.
6661 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
6662 applies after function-key-map.
6663 Make sure that keytran can be done in the middle in the sequence.
6664 Be careful not to throw away events past the one we downcase.
6665
6666 * lread.c (read_integer): Remove unused var `tem'.
6667 (read1): Fix int/Lisp_Object mixup.
6668
6669 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
6670
66712002-06-11 Richard M. Stallman <rms@gnu.org>
6672
6673 * keyboard.c (readable_events): Ignore any number of
6674 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
6675
66762002-06-09 Miles Bader <miles@gnu.org>
6677
6678 * xfaces.c (Ftty_supports_face_attributes_p): New function.
6679 (parse_rgb_list, tty_lookup_color): New functions.
6680 (tty_defined_color): Use `tty_lookup_color' to do all the work.
6681 (color_distance, Fcolor_distance): New functions.
6682 (TTY_SAME_COLOR_THRESHOLD): New macro.
6683 (Qtty_color_standard_values): New variable.
6684 (syms_of_xfaces): Initialize new vars & functions.
6685
66862002-06-08 Colin Walters <walters@verbum.org>
6687
6688 * textprop.c (Vchar_property_alias_alist): New variable.
6689 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
6690
6691 * intervals.c (lookup_char_property): New function for looking up
6692 overlay and text properties, created from textget.
6693 (textget): Use it.
6694
6695 * intervals.h (lookup_char_property): Declare.
6696 (Vchar_property_alias_alist): Declare.
6697
6698 * buffer.c (Foverlay_get): Use lookup_char_property.
6699
67002002-06-07 Sam Steingold <sds@gnu.org>
6701
6702 * xselect.c (lisp_data_to_selection_data): Fix last change:
6703 *data_ret is not a Lisp string, while unibyte_string is.
6704
67052002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
6706
6707 * xselect.c (lisp_data_to_selection_data): Fix last change:
6708 set size_ret.
6709
67102002-06-07 Andreas Schwab <schwab@suse.de>
6711
6712 * m/amdx86-64.h: New file.
6713
67142002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
6715
6716 * fns.c (Fstring_make_unibyte): Doc fix.
6717
6718 * xselect.c (lisp_data_to_selection_data): If the requested type
6719 is STRING, call string_make_unibyte to encode the selected text
6720 as a string.
6721
6722 * window.c (Fset_window_hscroll): Doc fix.
6723
67242002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
6725
6726 * fileio.c (choose_write_coding_system):
6727 Call select-safe-coding-system properly.
6728
67292002-06-03 Richard M. Stallman <rms@gnu.org>
6730
6731 * xdisp.c (message_with_string): Error if STRING is not a string.
6732
6733 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
6734
6735 * fileio.c (choose_write_coding_system): Pass FILE arg to
6736 Vselect_safe_coding_system_function.
6737
67382002-06-03 Ken Raeburn <raeburn@gnu.org>
6739
6740 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
6741
67422002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
6743
6744 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
6745 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
6746 * keymap.c (describe_command): Likewise.
6747 * minibuf.c (read_minibuf): Likewise.
6748
6749 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
6750 Cast `current_column' return value to int.
6751 (back_to_previous_visible_line_start)
6752 (reseat_at_next_visible_line_start, next_element_from_buffer):
6753 Cast `indented_beyond_p' 3rd arg to float.
6754
6755 * indent.c (last_known_column): Now a float.
6756 (current_column_1, position_indentation, current_column)
6757 (string_display_width): Return float.
6758 (Fcurrent_column): Cast `current_column' return value to int.
6759 (Fcurrent_indentation): Cast `position_indentation' retval to int.
6760 (indented_beyond_p): Third arg now a float.
6761 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
6762
6763 * lisp.h (current_column): Now returns float.
6764 (indented_beyond_p): 3rd arg now a float.
6765
67662002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
6767
6768 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
6769 is Qcompound_text_with_extensions.
6770
6771 * xselect.c (lisp_data_to_selection_data): Always set selection
6772 type as string if x_encode_text returns streingp non-NULL.
6773
6774 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
6775
67762002-05-30 Richard M. Stallman <rms@gnu.org>
6777
6778 * window.c (Fset_window_configuration): Correct the handling
6779 of point in current buffer, to work with multiple windows.
6780
67812002-05-29 Colin Walters <walters@verbum.org>
6782
6783 * lread.c (Fread_from_string): Don't depend on order of evaluation
6784 for C function parameters.
6785
67862002-05-28 Richard M. Stallman <rms@gnu.org>
6787
6788 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
6789 way for blinked-off state and for a nonselected window.
6790
6791 * window.c (window_scroll_pixel_based): Don't call Fbolp;
6792 instead, see if the new start pos is at beginning of line.
6793
6794 * fileio.c (Fwrite_region): If START is a string, don't
6795 make any annotations.
6796
6797 * eval.c (syms_of_eval): Doc fix.
6798
67992002-05-28 Colin Walters <walters@debian.org>
6800
6801 * emacs.c (USAGE1): Add --no-splash.
6802 (standard_args): Ditto.
6803
68042002-05-28 Colin Walters <walters@gnu.org>
6805
6806 * lread.c (readchar_count): New variable.
6807 (readchar): Increment it.
6808 (unreadchar): Decrement it.
6809 (read_multibyte): Decrement it.
6810 (Vread_with_symbol_positions): New variable.
6811 (Vread_symbol_positions_list): New variable.
6812 (read_internal_start): New function, created from Fread and
6813 Fread_from_string. Handle Vread_symbol_positions_list and
6814 Vread_with_symbol_positions.
6815 (readevalloop, Fread, Fread_from_string): Use it.
6816 (read1): Use readchar_count to add symbol positions to
6817 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
6818 (syms_of_lread): DEFVAR_LISP and initialize them.
6819
6820 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
6821 (substitute_object_recurse, substitute_object_in_subtree)
6822 (substitute_in_interval): Prototype.
6823 (read_multibyte): Return c if it's less than zero.
6824
68252002-05-28 Kim F. Storm <storm@cua.dk>
6826
6827 * fileio.c (Fread_file_name_internal): Added brute-force
6828 speed up for using predicate file-directory-p.
6829
68302002-05-28 Kim F. Storm <storm@cua.dk>
6831
6832 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
6833 New variables.
6834 (syms_of_fileio): DEFVAR_LISP them.
6835 (read_file_name_cleanup): New unwind function.
6836 (Fread_file_name_internal): Only return completions satifying
6837 Vread_file_name_predicate. Temporarily unwind protect and rebind
6838 default-directory while checking completions against the predicate.
6839 (Fread_file_name): Added PREDICATE argument. Specbind it to
6840 Vread_file_name_predicate during completion.
6841 Call Vread_file_name_function to read the file name if non-nil.
6842
6843 * lisp.h (Fread_file_name): Now has 6 args.
6844
6845 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
6846 predicate for Fread_file_name when reading directory name.
6847 Supply Qnil for predicate in other calls to Fread_file_name.
6848
68492002-05-26 Miles Bader <miles@gnu.org>
6850
6851 * term.c (tty_capable_p): New function.
6852 * dispextern.h (tty_capable_p): New function declaration.
6853 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
6854 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
6855
68562002-05-23 Stefan Monnier <monnier@cs.yale.edu>
6857
6858 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
6859 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
6860 (Vwrite_region_annotate_functions): Docstring fix.
6861
68622002-05-23 Kim F. Storm <storm@cua.dk>
6863
6864 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
6865 phys_cursor's hpos is overwritten. This is still not completely
6866 correct, as it doesn't really make sense to use hpos at all to
6867 get the cursor glyph (as that is relative to the width of the
6868 characters on the line, which may have changed during the update).
6869
68702002-05-22 Jason Rumney <jasonr@gnu.org>
6871
6872 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
6873 Lisp_Object.
6874 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
6875 Use modified enumfont_t struct.
6876
6877 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
6878
6879 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
6880 Handle the `hbar' cursor type.
6881 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
6882
6883 * w32fns.c (Qhbar): New variable.
6884 (x_specified_cursor_type): Use it.
6885
68862002-05-21 Ken Raeburn <raeburn@gnu.org>
6887
6888 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
6889 now, when the address is needed.
6890
68912002-05-21 Colin Walters <walters@gnu.org>
6892
6893 * Makefile.in (shortlisp): Add font-core.el.
6894
68952002-05-20 Richard M. Stallman <rms@gnu.org>
6896
6897 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
6898
6899 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
6900 equivalent key bindings here.
6901
69022002-05-20 Ken Raeburn <raeburn@gnu.org>
6903
6904 Change symbol structure to contain a lisp object for the symbol
6905 name:
6906 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
6907 object field named "xname".
6908 (SYMBOL_NAME): New macro.
6909 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
6910 name field.
6911 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
6912 (mark_object, gc_sweep): Use symbol xname field and XSTRING
6913 instead of name field.
6914 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
6915 SYMBOL_NAME instead of XSYMBOL and name field.
6916 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
6917 instead of XSYMBOL and name field.
6918 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
6919 and SYMBOL_NAME instead of XSYMBOL and name field.
6920 * coding.c (Fread_coding_system, code_convert_region1)
6921 (code_convert_string1, code_convert_string_norecord)
6922 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
6923 XSYMBOL and name field.
6924 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
6925 (Fmake_variable_buffer_local, Fmake_local_variable)
6926 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
6927 of XSYMBOL and name field.
6928 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
6929 XSYMBOL and name field.
6930 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
6931 instead of XSYMBOL and name field.
6932 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
6933 XSYMBOL and name field.
6934 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
6935 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
6936 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
6937 instead of XSYMBOL and name field.
6938 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
6939 (parse_modifiers, apply_modifiers, Fevent_convert_list)
6940 (parse_solitary_modifier, Fexecute_extended_command):
6941 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
6942 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
6943 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
6944 of XSYMBOL and name field.
6945 (describe_command, describe_translation): Use SYMBOL_NAME and
6946 assignment instead of XSYMBOL and name field and XSETSTRING.
6947 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
6948 instead of XSYMBOL and name field.
6949 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
6950 name field and XSETSTRING.
6951 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
6952 of XSYMBOL and name field.
6953 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
6954 assignment instead of XSYMBOL and name field and XSETSTRING.
6955 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
6956 XSTRING instead of XSYMBOL and name field.
6957 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
6958 and XSTRING instead of XSYMBOL and name field.
6959 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
6960 and XSTRING instead of XSYMBOL and name field.
6961 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
6962 XSTRING instead of XSYMBOL and name field.
6963 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
6964 of XSYMBOL and name field.
6965 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
6966 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
6967
69682002-05-19 Ken Raeburn <raeburn@gnu.org>
6969
6970 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
6971 and XCDR real rvalues in most configurations.
6972
6973 * buffer.c (fix_overlays_in_range, fix_overlays_before):
6974 Don't take the address of the cdr part of a cons cell; instead, track
6975 the parent cell and call XSETCDR, or set the variable for the head
6976 of the list if we haven't started down the list yet.
6977
69782002-05-19 Richard M. Stallman <rms@gnu.org>
6979
6980 * doc.c (reread_doc_file): Don't ask for confirmation.
6981
69822002-05-18 Jason Rumney <jasonr@gnu.org>
6983
6984 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
6985 (xbm_load_image): Use it.
6986 (xbm_load): Ditto.
6987 (xbm_read_bitmap_data): Reverted to xfns.c version.
6988 From David Ponce <david@dponce.com>.
6989
69902002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
6991
6992 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
6993 2.02 and later.
6994
69952002-05-16 Juanma Barranquero <lektu@terra.es>
6996
6997 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
6998
69992002-05-15 Stefan Monnier <monnier@cs.yale.edu>
7000
7001 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
7002 meaningful test.
7003 (read_char_minibuf_menu_prompt): Fix typo.
7004
70052002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
7006
7007 * eval.c (Fcommandp): Doc fix.
7008
70092002-05-13 Stefan Monnier <monnier@cs.yale.edu>
7010
7011 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
7012 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
7013 (Fset_keymap_parent): Gcpro a bit more.
7014 (access_keymap): Gcpro around meta_map call and around the main loop.
7015 (get_keyelt): Gcpro when following indirect references.
7016 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
7017 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
7018 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
7019 Remove useless ad-hoc remap code.
7020
70212002-05-13 Richard M. Stallman <rms@gnu.org>
7022
7023 * search.c (search_buffer): Give up boyer moore search if inverse
7024 translation change charset_base.
7025
70262002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
7027
7028 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
7029 characters is carried over from the previous block of text, adjust
7030 coding->produced to account for the extra character.
7031
70322002-05-11 Andreas Schwab <schwab@suse.de>
7033
7034 * coding.c (intersection): Keep the elements of the returned list
7035 in the same order as in the first list.
7036
70372002-05-11 Kim F. Storm <storm@cua.dk>
7038
7039 * keymap.c (current_minor_maps): Fixed resizing of cmm_maps;
7040 only update cmm_size if realloc actually succeeds.
7041 Testing with initial size of 2 elements revealed that using
7042 realloc on GNU/Linux would cause a random trap in xmalloc
7043 later on, so I rewrote the code to use malloc/bcopy/free instead
7044 of realloc.
7045
70462002-05-10 Jason Rumney <jasonr@gnu.org>
7047
7048 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
7049
70502002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
7051
7052 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
7053 parens, to ensure correct evaluation order.
7054
70552002-05-10 Kim F. Storm <storm@cua.dk>
7056
7057 * keymap.c (Vemulation_mode_map_alists): New variable.
7058 (syms_of_keymap): DEFVAR_LISP it.
7059 (current_minor_maps): Process keymap alists in that list before
7060 minor-mode-overriding-map-alist and minor-mode-map-alist.
7061
70622002-05-09 Richard M. Stallman <rms@gnu.org>
7063
7064 * search.c (Freplace_match): Doc fix.
7065
70662002-05-09 Kim F. Storm <storm@cua.dk>
7067
7068 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
7069 Enlarge cursor rectangle drawn around image with non-zero relief.
7070
7071 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
7072 Enlarge cursor rectangle drawn around image with non-zero relief.
7073
7074 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
7075 Enlarge cursor rectangle drawn around image with non-zero relief.
7076
70772002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
7078
7079 * xselect.c (lisp_data_to_selection_data): Don't set selection
7080 type if comes from the Lisp object's car. If the selection
7081 contains a pure ASCII text, always return QSTRING as its type.
7082
70832002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7084
7085 * mac.c (mac-cut-function): Doc fix.
7086
70872002-05-05 Richard M. Stallman <rms@gnu.org>
7088
7089 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
7090
70912002-05-04 Jason Rumney <jasonr@gnu.org>
7092
7093 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
7094 for event-click-count.
7095
7096 * process.c (init_process): Only add server subfeature if we can
7097 use non-blocking I/O.
7098
70992002-05-04 Andrew Choi <akochoi@shaw.ca>
7100
7101 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
7102 repeatedly.
7103
71042002-05-03 Jason Rumney <jasonr@gnu.org>
7105
7106 * process.c (Fmake_network_process): Only support server sockets
7107 when we can make them non-blocking.
7108
7109 * s/ms-w32.h (HAVE_SELECT): Define.
7110
7111 * w32.h (FILE_NDELAY): New flag.
7112
7113 * w32.c (sys_getpeername, fcntl): New functions.
7114 (_sys_read_ahead): Temporarily block on non-blocking sockets.
7115
7116 * w32proc.c: include sys/file.h.
7117
71182002-05-03 Colin Walters <walters@verbum.org>
7119
7120 * callproc.c (Vgame_score_directory): Renamed to
7121 Vshared_game_score_directory.
7122
71232002-04-30 Richard M. Stallman <rms@gnu.org>
7124
7125 * s/gnu.h [emacs]: Include stdio.h.
7126 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
7127
7128 * eval.c (do_autoload): Error if called while preparing to dump.
7129
7130 * fns.c (Frequire): Error if need to load while preparing to dump.
7131
71322002-04-28 Colin Walters <walters@verbum.org>
7133
7134 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
7135 Default to "~/.emacs.d/games".
7136
71372002-04-29 Stefan Monnier <monnier@cs.yale.edu>
7138
7139 * lread.c (openp): Change arg exec_only to predicate.
7140 (build_load_history): Use XCAR/XCDR.
7141 (Flocate_file_internal): New fun.
7142 (syms_of_lread): Defsubr it.
7143 (Fload): Update call to openp.
7144
7145 * lisp.h (openp): Update prototype.
7146
7147 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
7148 * w32proc.c (sys_spawnve):
7149 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
7150 * w32.c (check_windows_init_file):
7151 * sound.c (Fplay_sound_internal):
7152 * process.c (Fstart_process):
7153 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
7154 * mac.c (run_mac_command):
7155 * emacs.c (init_cmdargs):
7156 * callproc.c (Fcall_process): Update call to openp.
7157
7158 * textprop.c (remove_properties): Don't use XCAR without CONSP.
7159
7160 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
7161
71622002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7163
7164 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
7165 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
7166
71672002-04-28 Richard M. Stallman <rms@gnu.org>
7168
7169 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
7170
7171 * eval.c (Fcommandp): New arg for_call_interactively.
7172 * lisp.h (Fcommandp): Declare new arg.
7173
71742002-04-28 Jason Rumney <jasonr@gnu.org>
7175
7176 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
7177
7178 * w32.c (stat, fstat): Use file index information to generate
7179 inodes for directories where available.
7180
71812002-04-26 Andrew Choi <akochoi@shaw.ca>
7182
7183 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
7184 [HAVE_CARBON]: Include Mac object files.
7185
7186 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
7187 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
7188 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
7189 MAC_OSX, and MAC_OS instead of macintosh.
7190
7191 * editfns.c [MAC_OS8]: Include stdio.h.
7192
7193 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
7194
7195 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
7196 Apple Monaco.
7197
7198 * process.c: Declare QCfamily and QCfilter as extern.
7199 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
7200 calling select.
7201
7202 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
7203
7204 * tparam.c [MAC_OSX]: Don't define BC and UP.
7205
7206 * config.in [HAVE_CARBON]: Add.
7207
7208 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
7209 Move here from mac/src and mac/inc.
7210
7211 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
7212
72132002-04-26 Gerd Moellmann <gerd@gnu.org>
7214
7215 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
7216 Compute phys_cursor_width from the x position returned
7217 by x_draw_glyhs, which is cheaper.
7218 (x_display_and_set_cursor): Compute the buffer-local value
7219 of `cursor-in-non-selected-windows' only when needed.
7220
72212002-04-25 Gerd Moellmann <gerd@gnu.org>
7222
7223 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
7224 cursor on a stretch glyph has a width that depends on
7225 x_stretch_cursor_p.
7226
72272002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7228
7229 * abbrev.c (abbrev-start-location): Doc fix.
7230
7231 * indent.c (Fvertical_motion): Fix last change.
7232
72332002-04-25 Gerd Moellmann <gerd@gnu.org>
7234
7235 * indent.c (Fvertical_motion): Move to the start of the line
7236 containing PT before moving up or down.
7237
72382002-04-24 Gerd Moellmann <gerd@gnu.org>
7239
7240 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
7241 case of writing a whole row, more or less analogous to the case of
7242 writing only parts of a row.
7243
7244 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
7245 0 for NO_CURSOR.
7246
7247 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
7248
72492002-04-23 Colin Walters <walters@verbum.org>
7250
7251 * buffer.c (syms_of_buffer): Doc fix.
7252
72532002-04-23 Gerd Moellmann <gerd@gnu.org>
7254
7255 * xterm.c (notice_overwritten_cursor): Handle the special case
7256 of the cursor being in the first blank non-text line at the
7257 end of a window.
7258
7259 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
7260 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
7261 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
7262 bar cursors only, to make phys_cursor_width contain what its name
7263 suggests.
7264 (notice_overwritten_cursor): Consider the cursor image erased if
7265 the output area intersects the cursor image in y-direction.
7266
72672002-04-23 Simon Marshall <simon@gnu.org>
7268
7269 * xfns.c (x_set_mouse_color): Change default for cross_cursor
7270 to XC_hand2.
7271
72722002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7273
7274 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
7275
72762002-04-22 Kim F. Storm <storm@cua.dk>
7277
7278 * textprop.c (remove_properties): Fixed trap for malformed plist.
7279
72802002-04-22 Richard M. Stallman <rms@gnu.org>
7281
7282 * cmds.c (Fend_of_line): Handle intangible text in mid line.
7283
7284 * window.c (make_window): Initialize height_fixed_p,
7285 last_cursor_off_p, and p->cursor_off_p slots.
7286
72872002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7288
7289 * fns.c (use-dialog-box): Doc fix.
7290
72912002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7292
7293 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
7294 variables `row', `i' and `area'.
7295 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
7296 toolkit library.
7297
72982002-04-19 Stefan Monnier <monnier@cs.yale.edu>
7299
7300 * xfaces.c (clear_font_table): Don't free the default font of
7301 a frame even if it's on another display.
7302 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
7303 that could be Qt.
7304
73052002-04-19 Juanma Barranquero <lektu@terra.es>
7306
7307 * indent.c (Fmove_to_column): Remove unused local variable
7308 `next_boundary_byte'.
7309 (current_column_1): Likewise.
7310
73112002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
7312
7313 * msdos.c (Qhbar): New variable.
7314 (syms_of_msdos): Intern and staticpro it.
7315 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
7316 cursor type.
7317
73182002-04-19 Dave Lambert <dlambert@acm.org>
7319
7320 Theses change implement an underscore-like (`hbar') cursor.
7321
7322 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
7323
7324 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
7325 Handle the `hbar' cursor type.
7326 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
7327
7328 * xfns.c (Qhbar): New variable.
7329 (syms_of_xfns): Intern and staticpro it.
7330 (x_specified_cursor_type): Handle `hbar' cursor.
7331
7332 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
7333 not defined.
7334
73352002-04-18 Richard M. Stallman <rms@gnu.org>
7336
7337 * textprop.c (remove_properties): New arg LIST allows scanning
7338 either a list or a plist.
7339 (interval_has_some_properties_list): New function, like
7340 interval_has_some_properties using list instead of plist.
7341 All callers changed.
7342 (Fremove_list_of_text_properties): New function.
7343 (syms_of_textprop): Defsubr it.
7344
73452002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
7346
7347 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
7348
73492002-04-17 Juanma Barranquero <lektu@terra.es>
7350
7351 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
7352
73532002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
7354
7355 * window.c (coordinates_in_window): Don't report on margin area
7356 if its width is zero.
7357
73582002-04-16 Jason Rumney <jasonr@gnu.org>
7359
7360 * w32fns.c (Fx_file_dialog): Decode file name before using.
7361
7362 * w32term.c (construct_drag_n_drop): Likewise.
7363
73642002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
7365
7366 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
7367 store load-history in pure space.
7368
7369 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
7370
73712002-04-16 Stefan Monnier <monnier@cs.yale.edu>
7372
7373 * xterm.c (Qlatin_1, Qutf_8): New vars.
7374 (syms_of_xterm): Initialize them.
7375 (XTread_socket): Eliminate incorrect optimization that tried to avoid
7376 decoding the output of X*LookupString.
7377 Always use latin-1 to decode the output of XLookupString.
7378 Try Xutf8LookupString if XmbLookupString failed.
7379
7380 * region-cache.c (new_region_cache): Use BEG.
7381
73822002-04-16 Gerd Moellmann <gerd@gnu.org>
7383
7384 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
7385 configuration files.
7386 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
7387 returns 0.
7388
73892002-04-15 Andreas Schwab <schwab@suse.de>
7390
7391 * config.in: Regenerated using autoheader.
7392
7393 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
7394 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
7395 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
7396 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
7397 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
7398 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
7399 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
7400 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
7401 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
7402 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
7403 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
7404 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
7405 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
7406 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
7407 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
7408 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
7409 STACK_DIRECTION, now set by autoconf.
7410
74112002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7412
7413 * dispnew.c (marginal_area_string): Sort arguments.
7414
7415 * dispextern.h (marginal_area_string): Add prototype.
7416
74172002-04-13 Richard M. Stallman <rms@gnu.org>
7418
7419 * fileio.c (Finsert_file_contents):
7420 Don't call temp_output_buffer_setup--do just part, by hand.
7421
7422 * coding.c (run_pre_post_conversion_on_str):
7423 Don't call temp_output_buffer_setup--do just part, by hand.
7424
7425 * keyboard.c (command_loop_1): Don't call start_hourglass
7426 or cancel_hourglass when executing a macro.
7427
7428 * marker.c (count_markers): New function.
7429
7430 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
7431 grow without limit. Move recently used elements to the front.
7432
74332002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
7434
7435 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
7436
74372002-04-12 Gerd Moellmann <gerd@gnu.org>
7438
7439 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
7440 rows marginal areas.
7441 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
7442 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
7443
7444 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
7445
74462002-04-12 Dave Love <fx@gnu.org>
7447
7448 * dispnew.c (marginal_area_string): New.
7449
7450 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
7451 (Qleft_margin, Qright_margin): Declare.
7452 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
7453
7454 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
7455 note_mode_line_highlight and extended.
7456
7457 * keyboard.c (Qleft_margin, Qright_margin): Declare.
7458 (make_lispy_event): Deal with mouse events in margins.
7459
74602002-04-12 Stefan Monnier <monnier@cs.yale.edu>
7461
7462 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
7463
7464 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
7465 than deactivating the mark if tmm is set to `lambda'.
7466 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
7467 Use a single event for HELP_EVENT.
7468 (Fexecute_extended_command): Save last_point_position.
7469
74702002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7471
7472 * lisp.h (Fpropertize): Add prototype.
7473
7474 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
7475
74762002-04-10 Colin Walters <walters@verbum.org>
7477
7478 * config.in: Add HAVE_SHARED_GAME_DIR.
7479
7480 * callproc.c: (Vgame_score_directory): New variable.
7481 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
7482
74832002-04-10 Richard M. Stallman <rms@gnu.org>
7484
7485 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
7486
74872002-04-09 Stefan Monnier <monnier@cs.yale.edu>
7488
7489 * minibuf.c (read_minibuf): Use empty_string.
7490 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
7491 Short-circuit the search as soon as it "failed".
7492 (Fall_completions): Allow lambda forms and lists of strings for alist.
7493 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
7494 when require_match is nil.
7495 (Ftest_completion): Rename from `test_completion' and export to elisp.
7496 Call the predicate also when alist is a list.
7497 Obey Vcompletion_regexp_list.
7498 (do_completion, Fminibuffer_complete_and_exit): Use it.
7499 (Fassoc_string): Rename from `assoc_for_completion'.
7500 Allow list of strings as well and export to elisp.
7501
75022002-04-08 Stefan Monnier <monnier@cs.yale.edu>
7503
7504 * puresize.h (BASE_PURESIZE): Increase to 900KB.
7505
75062002-04-08 Juanma Barranquero <lektu@terra.es>
7507
7508 * w32.c (sys_accept): Don't hide variable `s'.
7509
75102002-04-05 Gerd Moellmann <gerd@gnu.org>
7511
7512 * callint.c (Fcall_interactively): Use INTEGERP instead of
7513 NUMBERP for checking Vhistory_length.
7514
75152002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7516
7517 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
7518 Doc fix to reflect it.
7519
75202002-04-04 Richard M. Stallman <rms@gnu.org>
7521
7522 * xdisp.c (display_mode_element): New arg RISKY.
7523 Disregard text props found or specified within a variable
7524 that isn't marked risky-local-variable.
7525 (Qrisky_local_variable): New variable.
7526 (syms_of_xdisp): Init and staticpro it.
7527
75282002-04-04 Stefan Monnier <monnier@cs.yale.edu>
7529
7530 * undo.c (record_point): New fun.
7531 (record_delete, record_insert): Use it.
7532
75332002-04-03 Juanma Barranquero <lektu@terra.es>
7534
7535 * doc.c (Fdocumentation): Add missing parentheses.
7536 (Fdocumentation_property): Likewise.
7537
75382002-04-03 Stefan Monnier <monnier@cs.yale.edu>
7539
7540 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
7541 data is 0, just return nil.
7542
75432002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
7544
7545 * msdos.c (syms_of_msdos): Fix last change with
7546 mouse_autoselect_window.
7547
75482002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7549
7550 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
7551 mouse_autoselect_window.
7552
75532002-04-02 Stefan Monnier <monnier@cs.yale.edu>
7554
7555 * keyboard.c (make_lispy_event): Handle unknown keysyms together
7556 with system-specific keysyms. Use it also for unknown function keys.
7557
7558 * doc.c (reread_doc_file): Return whether reload was attempted.
7559 (Fdocumentation, Fdocumentation_property): Don't try to reload
7560 if the doc is 0 and only ask once.
7561
7562 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
7563
75642002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
7565
7566 * keyboard.c (read_char): If the event was Qselect_window,
7567 restore timer_idleness_start_time to its previous value.
7568
7569 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
7570
75712002-04-01 Stefan Monnier <monnier@cs.yale.edu>
7572
7573 * region-cache.c (new_region_cache): Use BEG.
7574
7575 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
7576 Use BEG and BEG_BYTE.
7577
7578 * doc.c (get_doc_string): Return nil if the location is wrong.
7579 (reread_doc_file): New fun.
7580 (Fdocumentation, Fdocumentation_property):
7581 Call it if get_doc_string fails.
7582 (Fsnarf_documentation): Make it work for a dumped Emacs.
7583
7584 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
7585 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
7586
7587 * charset.c (Fstring): Allow 0 arguments.
7588
7589 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
7590
7591 * process.c (DATAGRAM_CONN_P, list_processes_1)
7592 (Fprocess_datagram_address, Fset_process_datagram_address)
7593 (Fset_network_process_options, server_accept_connection):
7594 Fix some int/Lisp_Object confusions (thank you union types).
7595
75962002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7597
7598 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
7599
7600 * w32term.c: Likewise.
7601 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
7602
7603 * keyboard.c (Qselect_window): New symbol.
7604 (head_table): Use it.
7605 (keys_of_keyboard): Bound select-window event to handle-select-window.
7606 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
7607
7608 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
7609 (last_window): New variable.
7610 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
7611 (note_mouse_movement): Remove reimplemented code in #if 0.
7612 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
7613 Emacs windows.
7614
7615 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
7616
76172002-03-31 Gerd Moellmann <gerd@gnu.org>
7618
7619 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
7620 Callers changed.
7621
76222002-03-30 Richard M. Stallman <rms@gnu.org>
7623
7624 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
7625 loop whenever it stops making progress.
7626
7627 * widget.c (set_frame_size): Don't call change_frame_size.
7628
76292002-03-30 Gerd Moellmann <gerd@gnu.org>
7630
7631 * dispnew.c (direct_output_for_insert):
7632 Call mark_window_display_accurate.
7633
76342002-03-29 Jason Rumney <jasonr@gnu.org>
7635
7636 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
7637
76382002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
7639
7640 * Makefile.in (lread.o): Depend on coding.h.
7641
7642 * lread.c (openp, Fload): Encode the file name before passing it
7643 to `stat', `access', and `emacs_open'.
7644 (openp): GCPRO the encoded file name. Don't recompute Lisp
7645 strings unnecessarily.
7646
76472002-03-29 Kim F. Storm <storm@cua.dk>
7648
7649 * fns.c (Flax_plist_put): Doc fix.
7650
76512002-03-28 Miles Bader <miles@gnu.org>
7652
7653 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
7654
76552002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7656
7657 * process.c (set-network-process-options): Add usage.
7658 (make-network-process): Doc fix.
7659
76602002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
7661
7662 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
7663
76642002-03-26 Richard M. Stallman <rms@gnu.org>
7665
7666 * fns.c (Fsubstring_no_properties): New function.
7667 (Flax_plist_get, Flax_plist_put): New functions.
7668 (syms_of_fns): defsubr them.
7669
7670 * xdisp.c (update_menu_bar): Test only update_mode_lines;
7671 don't test or alter w->update_mode_line.
7672
7673 * window.c (Fdisplay_buffer): Doc fix.
7674
76752002-03-24 Richard M. Stallman <rms@gnu.org>
7676
7677 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
7678
76792002-03-24 Gerd Moellmann <gerd@gnu.org>
7680
7681 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
7682 (Fdefmacro): Handle `(declare ...)'.
7683 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
7684 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
7685
76862002-03-24 Jason Rumney <jasonr@gnu.org>
7687
7688 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
7689 (xbm_file_p): Add prototypes.
7690 (xbm_format, xbm_image_p): Sync with xfns.c.
7691 (reflect_byte): New function.
7692 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
7693 (xbm_load_image): Create bitmaps with a depth of 1.
7694 (init_xfns): Enable XBM images.
7695
76962002-03-23 Jason Rumney <jasonr@gnu.org>
7697
7698 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
7699 correctly. Do not pass up_modifier to keyboard buffer.
7700
7701 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
7702
77032002-03-22 Stefan Monnier <monnier@cs.yale.edu>
7704
7705 * Makefile.in (bootstrapclean): New target.
7706 (bootstrap-temacs, bootstrap-doc): Remove.
7707 (bootstrap-emacs): Use a bog-standard `temacs'.
7708 Don't bother to build a DOC file.
7709
7710 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
7711
7712 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
7713 in temacs even if !CANNOT_DUMP.
7714 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
7715
7716 * alloc.c (check_pure_size): Only output a warning.
7717
77182002-03-22 Jason Rumney <jasonr@gnu.org>
7719
7720 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
7721 supported.
7722
7723 * w32term.c (zv_bits): Declare as short, for word alignment.
7724 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
7725 (syms_of_w32term): Define x-use-underline-position-properties.
7726
7727 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
7728 (clear_image_cache): Block input, fix logic, clear matrices in
7729 all frames that share this cache.
7730
77312002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
7732
7733 * emacs.c (main): Update the Copyright year in the blurb printed
7734 by "emacs --version".
7735
7736 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
7737
7738 * xterm.c (XTread_socket): If XK_ISO_Lock and
7739 XK_ISO_Last_Group_Lock are defined, handle keysyms between
7740 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
7741
77422002-03-21 Kim F. Storm <storm@cua.dk>
7743
7744 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
7745 menu-bar bindings in keymap and local-map properties _are_ used.
7746 But try keymap property first in accordance with 2002-01-03 patch.
7747 Added comment describing why this is not always reliable.
7748 (tool_bar_items): Ditto for tool-bar.
7749
77502002-03-21 Jason Rumney <jasonr@gnu.org>
7751
7752 * w32fns.c (x_clear_image_1): Disable color table code.
7753
77542002-03-21 Kim F. Storm <storm@cua.dk>
7755
7756 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
7757 removed the wrong version of the DEFUN macro; fixed it.
7758
7759 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
7760 Fmember rather than Fmemq).
7761 (Fprovide): Check that subfeatures is a list.
7762
7763 * process.c (QCfeature, QCdatagram): Removed variables.
7764 (QCtype, Qdatagram): New variables.
7765 (network_process_featurep): Removed function.
7766 (Fmake_network_process): Removed :feature check.
7767 Use :type 'datagram instead of :datagram t to create a datagram
7768 socket. This allows us to add other connection types (e.g. raw
7769 sockets) later in a consistent manner.
7770 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
7771 supported subfeatures for feature make-network-process.
7772 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
7773 Intern and staticpro QCtype and Qdatagram.
7774 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
7775
7776 * xfns.c: (QCtype): Remove duplicate declaration and
7777 initialization (is now declared in process.c).
7778
7779 * w32fns.c: (QCtype): Remove duplicate declaration and
7780 initialization (is now declared in process.c).
7781
77822002-03-21 Richard M. Stallman <rms@gnu.org>
7783
7784 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
7785 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
7786 when jumping to `fail' to avoid undoing reg changes in the
7787 last iteration of the loop.
7788 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
7789
7790 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
7791 Depend on process.h.
7792
77932002-03-20 Jason Rumney <jasonr@gnu.org>
7794
7795 Most of the following changes are still conditional on HAVE_IMAGES
7796 which is not set by default on Windows.
7797
7798 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
7799
7800 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
7801 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
7802 (four_corners_best, x_clear_image_1, x_clear_image)
7803 (x_alloc_image_color, postprocess_image)
7804 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
7805 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
7806 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
7807
7808 * w32gui.h (struct XImage): Define.
7809
7810 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
7811 extract mouse co-ordinates.
7812
78132002-03-20 Jason Rumney <jasonr@gnu.org>
7814
7815 * w32.c (init_winsock): Dynamically load new server and UDP
7816 socket functions.
7817 (socket_to_fd): New function.
7818 (sys_socket): Use it.
7819 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
7820 (sys_recvfrom, sys_sendto): New wrapper functions.
7821
7822 * process.c (QCfamily, QCfilter): Remove duplicate declaration
7823 and initialization.
7824
7825 * makefile.w32-in (LIBS): Remove $(WSOCK32).
7826
78272002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
7828
7829 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
7830 Don't use "sun" as a variable, it's a predefined constant on Sun
7831 machines.
7832
78332002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7834
7835 * bytecode.c (Fbyte_code): Revert last change.
7836
78372002-03-19 Kim F. Storm <storm@cua.dk>
7838
7839 * makefile.w32-in (LIBS): Add $(WSOCK32).
7840 From David Ponce <dponce@voila.fr>.
7841
78422002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7843
7844 * process.c (wait_reading_process_input): Move variables `pname'
7845 and `pnamelen' down where they are used.
7846
7847 * bytecode.c (Fbyte_code): Discard unused computed value to
7848 prevent gcc warning.
7849
7850 * lisp.h (Fplist_member): Add prototype.
7851
78522002-03-18 Kim F. Storm <storm@cua.dk>
7853
7854 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
7855 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
7856
7857 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
7858 Remove explicit GNU_LINUX settings for datagram support.
7859
78602002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7861
7862 * process.c (Fmake_network_process): Remove unused variable `sa'.
7863 Doc fix. Add usage:.
7864 (set_socket_options): Remove unused variables `optnum' and `opttype'.
7865
78662002-03-17 Richard M. Stallman <rms@gnu.org>
7867
7868 * xdisp.c (cursor_type_changed): New variable.
7869 (redisplay_internal): Redisplay all windows if cursor_type_changed.
7870 Clear it when clearing windows_or_buffers_changed.
7871 (try_cursor_movement, redisplay_window, try_window_id)
7872 (try_window_reusing_current_matrix): Test cursor_type_changed
7873 along with windows_or_buffers_changed.
7874
7875 * window.h (cursor_type_changed): New variable.
7876
7877 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
7878 not update_mode_lines, and always set it to 1.
7879
7880 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
7881 if no frames needed redrawing.
7882
78832002-03-17 Kim F. Storm <storm@cua.dk>
7884
7885 The following changes add support for network server processes,
7886 datagram connections, and local (unix) sockets.
7887
7888 * process.h (struct Lisp_Process): New member log.
7889 Doc fix: Member command used to indicate stopped network process.
7890 Doc fix: Member childp contains plist for network process.
7891 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
7892
7893 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
7894 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
7895 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
7896 New variables.
7897 (NETCONN1_P): New macro.
7898 (DATAGRAM_SOCKETS): New conditional symbol.
7899 (datagram_address): New array.
7900 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
7901 (status_message): Use concat3.
7902 (Fprocess_status): Add `listen' status to doc string. Return `stop'
7903 for a stopped network process.
7904 (Fset_process_buffer): Update contact plist for network process.
7905 (Fset_process_filter): Ditto. Don't enable input for stopped
7906 network processes. Server must listen, even if filter is t.
7907 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
7908 New functions.
7909 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
7910 (Fprocess_contact): Added KEY argument. Handle datagrams.
7911 (list_processes_1): Optionally show only processes with the query
7912 on exit flag set. Dynamically adjust column widths. Omit tty
7913 column if not needed. Report stopped network processes.
7914 Identify server and datagram network processes.
7915 (Flist_processes): New optional arg `query-only'.
7916 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
7917 (conv_lisp_to_sockaddr, set_socket_options)
7918 (network_process_featurep, unwind_request_sigio): New helper functions.
7919 (Fprocess_datagram_address, Fset_process_datagram_address):
7920 (Fset_network_process_options): New lisp functions.
7921 (Fopen_network_stream): Removed. Now defined in simple.el.
7922 (Fmake_network_process): New lisp function. Code is based on previous
7923 Fopen_network_stream, but heavily reworked with new property list based
7924 argument list, support for datagrams, server processes, and local
7925 sockets in addition to old client-only functionality.
7926 (server_accept_connection): New function.
7927 (wait_reading_process_input): Use it to handle incoming connects.
7928 Do not enable input on a new connection if process is stopped.
7929 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
7930 (send_process): Handle datagram sockets.
7931 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
7932 network process is indicated by setting command field to t .
7933 (Fprocess_send_eof): No-op if datagram connection.
7934 (Fstatus_notify): Don't read input for a stream server socket or a
7935 stopped network process.
7936 (init_process): Initialize datagram_address array.
7937 (syms_of_process): Intern and staticpro new variables, defsubr new
7938 functions.
7939
79402002-03-16 Jason Rumney <jasonr@gnu.org>
7941
7942 * w32fns.c (w32_to_all_x_charsets): Return correct type in
7943 startup case.
7944
79452002-03-16 Richard M. Stallman <rms@gnu.org>
7946
7947 * xdisp.c (redisplay_internal, redisplay_windows):
7948 Use list_of_error to call internal_condition_case_1.
7949 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
7950 so as to catch all errors with no possibility of debugger redisplay.
7951 (list_of_error): New variable.
7952 (syms_of_xdisp): Init and staticpro it.
7953
7954 * print.c (print_object): Delete `\ ' from printed rep of frame.
7955
79562002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
7957
7958 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
7959 until its implementation is fixed.
7960
79612002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7962
7963 * xfns.c (png_load): Remove unused variable `gamma_str'.
7964
79652002-03-14 Richard M. Stallman <rms@gnu.org>
7966
7967 * xfns.c (x_real_positions): Handle failure in XQueryTree.
7968
79692002-03-14 Miles Bader <miles@gnu.org>
7970
7971 * intervals.c (adjust_for_invis_intang): New function.
7972 (set_point_both): Use `adjust_for_invis_intang' to do most of the
7973 work for dealing with invisible+intangible regions. Do so before
7974 and after both forward and backward movements, to handle both
7975 front-sticky and rear-sticky cases.
7976 * textprop.c (text_property_stickiness): Function moved here from
7977 `editfns.c'.
7978 * intervals.h (text_property_stickiness): New declaration.
7979 * editfns.c (char_property_eq): Function removed.
7980 (text_property_stickiness): Function moved to `textprop.c'.
7981
79822002-03-13 Jason Rumney <jasonr@gnu.org>
7983
7984 * config.in: Add STRFTIME_NO_POSIX2.
7985
7986 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
7987 and %OX when underlying strftime does not.
7988
79892002-03-13 Stefan Monnier <monnier@cs.yale.edu>
7990
7991 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
7992 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
7993 line) to avoid annoying flicker.
7994 (xm_scroll_callback): Get rid of the now unnecessary kludge.
7995 (XTread_socket): Mark it static.
7996
7997 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
7998
79992002-03-13 Kim F. Storm <storm@cua.dk>
8000
8001 * puresize.h (BASE_PURESIZE): Increase to 775000.
8002
80032002-03-12 Juanma Barranquero <lektu@terra.es>
8004
8005 * editfns.c (syms_of_editfns): Fix typo.
8006
80072002-03-12 Gerd Moellmann <gerd@gnu.org>
8008
8009 * xsmfns.c: Include stdio.h because termhooks.h needs it.
8010 Include termopt.h for interrupt_input.
8011
80122002-03-11 Andreas Schwab <schwab@suse.de>
8013
8014 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
8015
80162002-03-11 Gerd Moellmann <gerd@gnu.org>
8017
8018 * xterm.c (note_mouse_movement): Put code for
8019 x_autoselect_window_p in #if 0.
8020
8021 * lread.c (Fload): Don't assume that message_with_string uses the
8022 string it is given like a C string.
8023
80242002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8025
8026 * xterm.h (x_session_check_input, x_session_initialize): Declared.
8027
8028 * xterm.c: (XTread_socket): Add call to x_session_check_input and
8029 x_session_have_connection.
8030 (x_initialize): Add call to x_session_initialize.
8031
8032 * termhooks.h (enum event_kind): Add save_session_event.
8033
8034 * keyboard.c: Add Emacs event save_session_event.
8035
8036 * emacs.c (main): Add call to syms_of_xsmfns.
8037
8038 * lisp.h: Declare syms_of_xsmfns as extern.
8039
8040 * config.in: Add HAVE_X_SM.
8041
8042 * Makefile.in (LIBXT): Add -lSM -lICE
8043 if HAVE_X_SM and not USE_X_TOOLKIT.
8044 (XOBJ): New file xsmfns.c added.
8045
8046 * xsmfns.c: New file for X session management.
8047
80482002-03-09 Jason Rumney <jasonr@gnu.org>
8049
8050 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
8051 read-only when setting modified time.
8052
80532002-03-08 Gerd Moellmann <gerd@gnu.org>
8054
8055 * xdisp.c (move_it_vertically_backward): At the end of the function,
8056 when moving forward by lines, treat terminal frames specially.
8057
8058 * keyboard.c (echo_char): Make sure to add a separator between
8059 keys even if echo_dash hasn't been called.
8060
8061 * xdisp.c: Use new string macros.
8062 (update_echo_area): Pass number of bytes to message3 instead of
8063 number of chars.
8064 (set_message_1): Don't access a string's size_byte directly.
8065 (decode_mode_spec_coding): Use number of bytes of eoltype string
8066 instead number of chars.
8067
8068 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
8069
80702002-03-08 Juanma Barranquero <lektu@terra.es>
8071
8072 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
8073 24-bit.
8074
80752002-03-06 Jason Rumney <jasonr@gnu.org>
8076
8077 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
8078
80792002-03-06 Gerd Moellmann <gerd@gnu.org>
8080
8081 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
8082 (cancel_echoing, echo_length, echo_truncate): Changed to
8083 work with new kboard definition.
8084 (echo_now): Use message3_nolog instead of message2_nolog.
8085
8086 * alloc.c (mark_kboards): Mark echo_string.
8087
8088 * keyboard.h (ECHOBUFSIZE): Removed.
8089 (struct kboard): Member echoptr removed, member echobuf renamed
8090 to echo_string.
8091
8092 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
8093 message3 instead of message2 to display the message using STRING's
8094 text properties.
8095
80962002-03-05 Andreas Schwab <schwab@suse.de>
8097
8098 * xdisp.c (hscroll_margin): Change to EMACS_INT.
8099
81002002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
8101
8102 * frame.c (default-frame-alist): Explain that setting it doesn't
8103 affect existing frames.
8104
81052002-03-05 Stefan Monnier <monnier@cs.yale.edu>
8106
8107 * indent.c (skip_invisible): Fix my brain fart.
8108
8109 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
8110
81112002-03-04 Stefan Monnier <monnier@cs.yale.edu>
8112
8113 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
8114 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
8115 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
8116 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
8117 and variables to use EMACS_INT instead of just int.
8118
8119 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
8120
81212002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
8122
8123 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
8124 environment, pass it down with corrected value.
8125
81262002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8127
8128 * lread.c (read_filtered_event): Do not call start_hourglass
8129 before returning.
8130
81312002-03-04 Juanma Barranquero <lektu@terra.es>
8132
8133 * w32term.c (x_display_and_set_cursor): Fix typo.
8134
81352002-03-03 Richard M. Stallman <rms@gnu.org>
8136
8137 * fileio.c (Fmake_temp_name): Doc fix.
8138
81392002-03-03 Gary Wong <gtw@gnu.org>
8140
8141 * termcap.c [!emacs]: Replace ospeed for building standalone
8142 libtermcap, for binary compatibility.
8143
8144 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
8145
81462002-03-03 Richard M. Stallman <rms@gnu.org>
8147
8148 * xrdb.c (file_p): Rename arg `path' to `filename'.
8149
8150 * abbrev.c (Fexpand_abbrev): Increment plist as use count
8151 only if it is an integer.
8152
8153 * xfns.c (png_load): Set screen_gamma based on f->gamma.
8154 If png_get_sRGB gives an answer, call png_set_gamma
8155 using the default image gamma value.
8156
8157 * lread.c (read1): When reading from a file, default string to
8158 multibyte only if it has some multibyte characters.
8159
8160 * print.c (print_object): Output multibyte chars 128...255
8161 using \x even if ! print_escape_multibyte.
8162
8163 * xdisp.c (display_mode_element): Move the places where
8164 bytepos, charpos, this, and lisp_string are set.
8165 Use lisp_string to set bytepos.
8166
8167 * xdisp.c (redisplay_internal):
8168 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
8169
8170 * xdisp.c (display_mode_element): Merge properties specified with
8171 :propertize onto those that come with the string.
8172
81732002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
8174
8175 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
8176 automatic-hscrolling. Users changed.
8177 <hscroll-margin>: Renamed from automatic-hscroll-margin.
8178 Users changed.
8179 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
8180
81812002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
8182
8183 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
8184
81852002-03-02 Kim F. Storm <storm@cua.dk>
8186
8187 * window.c (Fminibuffer_selected_window): New function.
8188 (syms_of_window): Defsubr it.
8189
81902002-03-01 Kim F. Storm <storm@cua.dk>
8191
8192 * window.h (struct window): New member phys_cursor_width.
8193
8194 * window.c (make_window, replace_window): Init phys_cursor_width.
8195
8196 * xterm.c (x_display_and_set_cursor): Blink box cursor using
8197 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
8198
8199 * w32term.c (x_display_and_set_cursor): Blink box cursor using
8200 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
8201
8202 * lisp.h (GCPRO6): New macro.
8203
8204 * process.c (Fopen_network_stream): Use GCPRO6.
8205
82062002-03-01 Kim F. Storm <storm@cua.dk>
8207
8208 * process.c (Qconnect, Qfailed): New variables.
8209 (syms_of_process): Intern and staticpro them.
8210 (Fprocess_status): Document connect and failed return values.
8211 [NON_BLOCKING_CONNECT]: New conditional.
8212 (connect_wait_mask, num_pending_connects): New variables.
8213 (status_message): Convert Qfailed status.
8214 (Fopen_network_stream): Added support for non-blocking connect.
8215 New optional args: filter, sentinel, non_blocking. Doc updated.
8216 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
8217 (deactivate_process): Handle pending non-blocking connect.
8218 (wait_reading_process_input): Poll for status of non-blocking
8219 connects. Exec sentinel directly when connect succeeds.
8220 (status_notify): Don't read process output if not yet connected.
8221
82222002-02-28 Kim F. Storm <storm@cua.dk>
8223
8224 * window.c: (minibuf_selected_window): Renamed from
8225 Vminibuf_selected_window. Users changed.
8226 (syms_of_window): Staticpro it.
8227
82282002-02-26 Kim F. Storm <storm@cua.dk>
8229
8230 The following changes add a new Vminibuf_selected_window variable
8231 which is similar to Vminibuf_scroll_window, but which is only set
8232 on entry to the minibuffer (from a non-minibuffer window):
8233
8234 * window.c: (Vminibuf_selected_window): New variable.
8235 (struct save_window_data): New member minibuf_selected_window.
8236 (Fset_window_configuration): Restore Vminibuf_selected_window.
8237 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
8238 Set minibuf_scroll_window member to nil if minibuf_level is 0.
8239 (compare_window_configurations): Compare minibuf_selected_window.
8240
8241 * window.h: (Vminibuf_selected_window): Declare extern.
8242
8243 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
8244 entry to minibuffer or on entry from a non-minibuffer window.
8245
8246 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
8247 Vminibuf_selected_window instead of Vminibuf_scroll_window.
8248
8249 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
8250 instead of Vminibuf_scroll_window when deciding in which window
8251 the region should be highlighted. Consequently, the region remains
8252 highlighteded even when a completion buffer is also displayed.
8253
82542002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
8255
8256 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
8257
8258 * xselect.c (Qcompound_text_with_extensions): Renamed from
8259 Qcompound_text_no_extensions.
8260 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
8261
82622002-02-26 Juanma Barranquero <lektu@terra.es>
8263
8264 * w32proc.c (syms_of_ntproc): Doc fix.
8265
82662002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8267
8268 * intervals.h: Include "dispextern.h" unconditionally.
8269
82702002-02-24 Jason Rumney <jasonr@gnu.org>
8271
8272 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
8273 and disp-table.elc.
8274 (lisp): Add emacs-lisp/backquote.elc.
8275
82762002-02-24 Kim F. Storm <storm@cua.dk>
8277
8278 * keymap.c (Flookup_key): Fixed problem in 2001-12-28 patch:
8279 The validation of the event type was too strict as it didn't
8280 allow string events; buffer names are used in bindings for
8281 menu-bar-select-buffer (see `menu-bar-update-buffers').
8282
82832002-02-23 Kim F. Storm <storm@cua.dk>
8284
8285 The following changes rework my patch of 2002-02-06 which
8286 added command remapping by entering the commands directly into
8287 the keymaps. Now, command remapping uses an explicit `remap'
8288 prefix in the keymaps, i.e. [remap COMMAND].
8289
8290 * keymap.c (Qremap, remap_command_vector): New variables.
8291 (is_command_symbol): Removed function.
8292 (Fdefine_key): No longer accept a symbol for KEY.
8293 Added validation of [remap COMMAND] argument for KEY.
8294 The DEF is no longer required to be a symbol when remapping a command.
8295 (Fremap_command): New function to remap command through keymaps.
8296 (Flookup_key): Perform command remapping initiated by
8297 Fremap_command directly for speed.
8298 (Fkey_binding): Use Fremap_command for command remapping.
8299 (where_is_internal): Handle new command remapping representation.
8300 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
8301 staticpro them. Defsubr Fremap_command.
8302
8303 * keymap.h (Fremap_command): Declare extern.
8304 (is_command_symbol): Remove extern.
8305
8306 * keyboard.c (command_loop_1): Use Fremap_command for command
8307 remapping; now try command remapping for all symbols.
8308
83092002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
8310
8311 * coding.h (run_pre_post_conversion_on_str): Add prototype.
8312
83132002-02-23 Jason Rumney <jasonr@gnu.org>
8314
8315 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
8316 on the string before encoding it.
8317 (Fw32_get_clipboard_data): Run post-read-conversion on the string
8318 after decoding it.
8319
8320 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
8321
83222002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8323
8324 * w32term.c (enter_timestamp): Remove unused static variable to
8325 prevent warning.
8326
8327 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
8328
83292002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
8330
8331 * w16select.c (Fw16_get_clipboard_data): Fix last change.
8332
8333 * xselect.c (selection_data_to_lisp_data): Fix last change.
8334
83352002-02-22 Jason Rumney <jasonr@gnu.org>
8336
8337 * w32term.h (struct w32_output): New member menu_command_in_progress.
8338
8339 * w32menu.c (menubar_selection_callback): Free the menu and
8340 clear the menu_command_in_progress flag.
8341
8342 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
8343 (menu_free_timer): New variable.
8344 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
8345 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
8346 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
8347 menu command is in progress.
8348 <WM_COMMAND>: Set the menu_command_in_progress flag.
8349 Kill any menu_free_timer that is running.
8350
8351 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
8352 Call ExtTextOutA rather than ExtTextOut.
8353
83542002-02-22 Eli Zaretskii <eliz@gnu.org>
8355
8356 * puresize.h (BASE_PURESIZE): Increase to 755000.
8357
83582002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
8359
8360 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
8361 on the string before encoding it.
8362 (Fw16_get_clipboard_data): Run post-read-conversion on the string
8363 after decoding it.
8364
83652002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
8366
8367 Support for ICCCM Extended Segments in X selections:
8368
8369 * xselect.c <Qcompound_text_no_extensions>: New variable.
8370 (syms_of_xselect): Intern and staticpro it.
8371 (selection_data_to_lisp_data): Run post-read-conversion on decoded
8372 selection text.
8373 (lisp_data_to_selection_data): If next-selection-coding-system is
8374 compound-text-no-extensions, set the type of selection to be
8375 compound-text.
8376
8377 * xterm.h (x_encode_text): Update prototype.
8378
8379 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
8380 callers changed. If SELECTIONP is non-zero, run the
8381 pre-write-conversion function before encoding the selection text.
8382
83832002-02-21 Kim F. Storm <storm@cua.dk>
8384
8385 * frame.c (syms_of_frame): Change mouse-highlight default to t.
8386
8387 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
8388 Correct composing of language-change event.
8389
83902002-02-20 Kim F. Storm <storm@cua.dk>
8391
8392 * keyboard.c (menu_bar_items): Don't include keymap or local-map
8393 bindings at PT when building menu (the menu is not updated often
8394 enough for this to work reliable).
8395 (tool_bar_items): Likewise.
8396 (current_active_maps): Removed unused (and buggy) function.
8397
83982002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8399
8400 * xfns.c (gif_load): Use correct width and height for GIF images.
8401
84022002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
8403
8404 * floatfns.c (Fatan): Accept an optional second arg and call
8405 atan2 if passed 2 args.
8406
84072002-02-18 Jason Rumney <jasonr@gnu.org>
8408
8409 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
8410
84112002-02-17 Jason Rumney <jasonr@gnu.org>
8412
8413 * w32term.c (x_autoselect_window_p): New variable.
8414 (syms_of_w32term): DEFVAR_BOOL and initialize it.
8415 (note_mouse_movement): Use it.
8416
8417 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
8418
8419 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
8420
8421 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
8422 New variables.
8423 (syms_of_w32fns): Intern and staticpro them.
8424 (x_frame_parms) <"fullscreen">: New parameter.
8425 (x_fullscreen_move, x_set_fullscreen): New functions.
8426 (x_set_frame_parameters): Support Qfullscreen.
8427 (x_real_positions): Save x/y_pixels_diff frame params.
8428 (x_figure_window_size): Support full-screen frames.
8429 (Fx_create_frame): Default the fullscreen parameter.
8430
8431 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
8432 (x_fullscreen_adjust): New functions.
8433 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
8434 fullscreen. Call x_check_fullscreen_move, and set the
8435 want_fullscreen member of output_data.w32
8436 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
8437
8438 * w32term.h: New enum for FULLSCREEN_* constants.
8439 (struct w32_output): New members want_fullscreen, x_pixels_diff,
8440 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
8441 (x-fullscreen-adjust): New prototype.
8442
84432002-02-17 Kim F. Storm <storm@cua.dk>
8444
8445 * frame.c: (Vmouse_highlight): New variable.
8446 (syms_of_frame): DEFVAR_LISP it.
8447
8448 * frame.h: (Vmouse_highlight): Declare extern.
8a8e19a3 8449
048addec 8450 * xterm.h (struct x_display_info): Add mouse_face_hidden.
8a8e19a3 8451
048addec
JD
8452 * xterm.c (disable_mouse_highlight): Removed variable.
8453 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
8454 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
8455 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
8456 and on after keyboard input.
8457 (x_term_init): Initialize mouse_face_hidden.
8a8e19a3 8458
048addec 8459 * msdos.h (struct display_info): Add mouse_face_hidden.
8a8e19a3 8460
048addec
JD
8461 * msdos.c (disable_mouse_highlight): Removed variable.
8462 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
8463 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
8464 (internal_terminal_init): Initialize mouse_face_hidden.
8465 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
8466 and on after keyboard input.
4f1b1854 8467
048addec 8468 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
4f1b1854 8469
048addec
JD
8470 * w32term.c (disable_mouse_highlight): Removed variable.
8471 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
8472 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
8473 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
8474 and on after keyboard input.
8475 (w32_initialize_display_info): Initialize mouse_face_hidden.
4f1b1854 8476
048addec 84772002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
4f1b1854 8478
048addec
JD
8479 * msdos.c (last_mouse_window): New variable.
8480 (dos_rawgetc): Fix last change--if the mouse is in the same window
8481 as recorded in last_mouse_window, don't select this window.
5cb6905d 8482
048addec 8483 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
5cb6905d 8484
048addec
JD
8485 * msdos.c (x_autoselect_window_p): New variable.
8486 (syms_of_msdos): Defvar it.
8487 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
8488 which the last mouse movement occured, unless it is already selected.
437dfb9f 8489
048addec
JD
8490 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
8491 New variables.
8492 (syms_of_xdisp): DEVFAR them.
8493 (hscroll_window_tree): Use automatic_hscroll_margin and
8494 Vautomatic_hscroll_step to compute the amount of window scrolling.
437dfb9f 8495
048addec 84962002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9f696a00 8497
048addec
JD
8498 * xterm.c (x-autoselect-window): New variable.
8499 (note_mouse_movement): Use it.
9f696a00 8500
048addec 8501 * keyboard.c: Do not include "systime.h" twice.
d57966d7 8502
048addec 85032002-02-15 Andreas Schwab <schwab@suse.de>
d57966d7 8504
048addec 8505 * puresize.h (BASE_PURESIZE): Increase to 9/5.
d57966d7 8506
048addec 8507 * alloc.c (NSTATICS): Increase to 1280.
74779f52 8508
048addec 85092002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
74779f52 8510
048addec 8511 * alloc.c (NSTATICS): Bump to 1026.
a474d59c 8512
048addec
JD
8513 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
8514 (Vx_super_keysym): New variables.
8515 (syms_of_xterm): DEFVAR_LISP them.
8516 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
8517 variables to determine which keys to use for the various modifiers.
a474d59c 8518
048addec 85192002-02-13 Kim F. Storm <storm@cua.dk>
fbb70ad9 8520
048addec
JD
8521 * window.c: (Vmode_line_in_non_selected_windows): Removed.
8522 (mode_line_in_non_selected_windows): New variable.
8523 (syms_of_window): DEFVAR_BOOL it.
fbb70ad9 8524
048addec
JD
8525 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
8526 Use mode_line_in_non_selected_windows.
8527 (mode_line_in_non_selected_windows): Declare extern.
8528 (Vmode_line_in_non_selected_windows): Removed extern.
2d10309f 8529
048addec 85302002-02-13 Richard M. Stallman <rms@gnu.org>
2d10309f 8531
048addec
JD
8532 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
8533 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
8534 (Fclear_this_command_keys): Doc fixes.
2d10309f 8535
048addec
JD
8536 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
8537 (update_face_from_frame_parameter): Increment face_change_count
8538 and windows_or_buffers_changed to force redisplay using changed faces.
7f2cddf3 8539
048addec
JD
8540 * xdisp.c (QCpropertize): New variable.
8541 (mode_line_proptrans_alist): New variable.
8542 (display_mode_element): New arg PROPS; all calls changed.
8543 Implement this, for strings.
8544 Handle literal output of strings by sharing the
8545 main-line code for strings, using local var `literal'.
8546 Handle :propertize feature.
8547 (syms_of_xdisp): Initialze and staticpro QCpropertize and
8548 mode_line_proptrans_alist.
0b1e6b54 8549
048addec 85502002-02-11 Kim F. Storm <storm@cua.dk>
7f2cddf3 8551
048addec
JD
8552 * window.c: (Vmode_line_in_non_selected_windows): New variable.
8553 (syms_of_window): DEFVAR_LISP it.
7f2cddf3 8554
048addec
JD
8555 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
8556 (CURRENT_MODE_LINE_FACE_ID): Use it.
8557 (Vmode_line_in_non_selected_windows): Declare extern.
e17144de 8558
048addec
JD
8559 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
8560 to get mode line face.
e17144de 8561
048addec 85622002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 8563
048addec
JD
8564 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
8565 variables; cus-start.el doesn't need them anymore.
44368f8f 8566
048addec 85672002-02-09 Kim F. Storm <storm@cua.dk>
f884b6f4 8568
048addec
JD
8569 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
8570 reduction. This fixes a display problem where stray newlines were
8571 inserted in the window (corrected by C-l). Clarified code (IMHO).
6637c996 8572
048addec 85732002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 8574
048addec 8575 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
6637c996 8576
048addec 8577 * xdisp.c (display_mode_lines): Fix last change.
453c5510 8578
048addec 85792002-02-09 Jason Rumney <jasonr@gnu.org>
453c5510 8580
048addec
JD
8581 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
8582 match each other.
8583 (w32_load_system_font): Prevent Cleartype fonts from loading.
8584 (Fx_show_tip): Ensure tip frames are above other topmost windows.
d1d070e3 8585
048addec 85862002-02-09 Kim F. Storm <storm@cua.dk>
d1d070e3 8587
048addec
JD
8588 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
8589 (CURRENT_MODE_LINE_HEIGHT): Use it.
8590 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 8591
048addec
JD
8592 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
8593 (pos_visible_p, handle_face_prop): Likewise.
8594 (display_mode_lines): Likewise, but for the real selected window.
8595 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 8596
048addec
JD
8597 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
8598 in non-selected windows.
8599 (realize_basic_faces): Realize it.
8600 (syms_of_term): Intern and staticpro it.
308dd672 8601
048addec 86022002-02-08 Kim F. Storm <storm@cua.dk>
edde72f6 8603
048addec
JD
8604 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
8605 Changed mail addresses to emacs-devel@gnu.org.
308dd672 8606
048addec 86072002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
3c1e6b46 8608
048addec
JD
8609 * fileio.c (Fsubstitute_in_file_name): If the file name includes
8610 ~user, and there's no such user, don't discard everything before ~user.
03950b5b 8611
048addec 8612 * floatfns.c (Fround): Doc fix.
3c1e6b46 8613
048addec 86142002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c1e11810 8615
048addec 8616 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
c1e11810 8617
048addec 86182002-02-07 Stefan Monnier <monnier@cs.yale.edu>
1996baee 8619
048addec 8620 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
1996baee 8621
048addec 86222002-02-07 Kim F. Storm <storm@cua.dk>
0065bb74 8623
048addec
JD
8624 * keymap.c (where_is_internal): Only check whether definition is
8625 remapped if it fulfills is_command_symbol.
0065bb74 8626
048addec 86272002-02-07 Andreas Schwab <schwab@suse.de>
0065bb74 8628
048addec 8629 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
b5cb6072 8630
048addec 8631 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
b5cb6072 8632
048addec 86332002-02-06 Kim F. Storm <storm@cua.dk>
15fff01d 8634
048addec
JD
8635 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
8636 defining command remapping. Doc updated.
8637 (Flookup_key): Remap command through keymap if KEY is a symbol.
8638 (is_command_symbol): New function.
8639 (Fkey_binding): Use it. New optional argument NO-REMAP.
8640 Doc updated. Callers changed. Perform command remapping via
8641 recursive call unless that arg is non-nil.
8642 (where_is_internal): New argument no_remap. Callers changed.
8643 Call recursively to find original key bindings for a remapped
8644 comand unless that arg is non-nil.
8645 (Fwhere_is_internal): New optional argument NO-REMAP.
8646 Doc updated. Callers changed. Pass arg to where_is_internal.
0065bb74 8647
048addec
JD
8648 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
8649 (is_command_symbol): Added prototype.
0d8466cc 8650
048addec
JD
8651 * keyboard.c (Vthis_original_command): New variable.
8652 (syms_of_keyboard): DEFVAR_LISP it.
8653 (command_loop_1): Set it, and perform command remapping.
15fff01d 8654
048addec 86552002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2fae9111 8656
048addec 8657 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
2d6c1fc0 8658
048addec 86592002-02-06 Jason Rumney <jasonr@gnu.org>
07025a55 8660
048addec 8661 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
07025a55 8662
048addec 86632002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
07025a55 8664
048addec 8665 * charset.c (get_charset_id): Use if-else instead of ?:.
3a232704 8666
048addec 86672002-02-06 Richard M. Stallman <rms@gnu.org>
539e92ad 8668
048addec 8669 * filelock.c (S_ISLNK): Define if not defined.
3a232704 8670
048addec 86712002-02-03 Richard M. Stallman <rms@gnu.org>
0cb8bb48 8672
048addec 8673 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
539e92ad 8674
048addec
JD
8675 * lread.c (read1): Redesign strategy for force_multibyte and
8676 force_singlebyte. Now is_multibyte records whether read_buffer
8677 is multibyte. Encountering any multibyte character makes it so.
4e02881b 8678
048addec 86792002-02-02 Stefan Monnier <monnier@cs.yale.edu>
4e02881b 8680
048addec
JD
8681 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
8682 with the same sequence, map that sequence to f10 rather than f0.
1ab964d7 8683
048addec 86842002-02-03 Andreas Schwab <schwab@suse.de>
1ab964d7 8685
048addec
JD
8686 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
8687 latter never being defined on GNU/Linux.
749f499f 8688
048addec 86892002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
749f499f 8690
048addec
JD
8691 * xfaces.c (realize_default_face): Don't set the weight and slant of
8692 the default face to Qnormal, unless these attributes are unspecified.
b5d9aaba 8693
048addec 86942002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3a232704 8695
048addec
JD
8696 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
8697 Call cancel_hourglass unconditionally.
d0fd26dd 8698
048addec
JD
8699 * eval.c (Fsignal): Remove duplicated declaration of
8700 the variable `display_hourglass_p'.
b4c45162 8701
048addec 87022002-01-31 Richard M. Stallman <rms@gnu.org>
d0fd26dd 8703
048addec 8704 * editfns.c (region_limit): Nicer error message.
c95eaa61 8705
048addec
JD
8706 * coding.c (decode_composition_emacs_mule):
8707 Give up if NCOMPONENT gets too large to index `component'.
c95eaa61 8708
048addec
JD
8709 * callint.c (check_mark): New arg to specify clearer error message.
8710 Callers changed.
c95eaa61 8711
048addec 87122002-01-27 Richard M. Stallman <rms@gnu.org>
c95eaa61 8713
048addec 8714 * minibuf.c (Fcompleting_read): Doc fix.
c95eaa61 8715
048addec 87162002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c95eaa61 8717
048addec
JD
8718 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
8719 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
8720 Fix doc-strings.
c95eaa61 8721
048addec 87222002-01-26 Richard M. Stallman <rms@gnu.org>
c95eaa61 8723
048addec 8724 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
c95eaa61 8725
048addec
JD
8726 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
8727 and scroll_up_aggressively.
c95eaa61 8728
048addec 87292002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
31877e0a 8730
048addec 8731 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
31877e0a 8732
048addec 87332002-01-25 Stefan Monnier <monnier@cs.yale.edu>
e2c3786a 8734
048addec
JD
8735 * textprop.c (Fnext_property_change, Fnext_single_property_change)
8736 (Fprevious_property_change, Fprevious_single_property_change):
8737 Stay within the narrowed-buffer boundaries.
e2c3786a 8738
048addec 87392002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
c513fc03 8740
048addec
JD
8741 * term.c (Ftty_display_color_cells): New function.
8742 (syms_of_term): Defsubr it.
8743 (Ftty_display_color_cells, Ftty_display_color_p): Change the
8744 argument name to DISPLAY. Doc fix.
bf794306 8745
048addec
JD
8746 * dispextern.h: Add prototype for set_tty_color_mode and
8747 tty_setup_colors.
bf794306 8748
048addec 87492002-01-24 Jason Rumney <jasonr@gnu.org>
bf794306 8750
048addec
JD
8751 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
8752 If region left to draw is not what was expected, mark the frame as
8753 garbaged.
62582985 8754
048addec
JD
8755 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
8756 Combine the regions returned by BeginPaint and GetUpdateRect.
c513fc03 8757
048addec 87582002-01-23 Jason Rumney <jasonr@gnu.org>
3509a04c 8759
048addec
JD
8760 * w32term.c (x_update_window_begin): Only hide caret if
8761 w32_use_visible_system_caret is set.
8762 (x_update_window_end): Only show caret if
8763 w32_use_visible_system_caret is set.
8764 (syms_of_w32term): Handle SystemParametersInfo call failing.
3509a04c 8765
048addec 8766 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
3509a04c 8767
048addec 87682002-01-22 Richard M. Stallman <rms@gnu.org>
3509a04c 8769
048addec
JD
8770 * unexelf.c (unexec): Define n so as to cause compilation error
8771 for the code where people have often written n instead of nn.
1e9a6186 8772
048addec 8773 * .gdbinit (hookpost-run): Defined.
1e9a6186 8774
048addec 87752002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e4e34e31 8776
048addec 8777 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
e4e34e31 8778
048addec 87792002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4521d1fc 8780
048addec
JD
8781 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
8782 if fullscreen is being set.
7c75be36 8783
048addec 87842002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4521d1fc 8785
048addec
JD
8786 * minibuf.c (Fminibuffer_contents)
8787 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
8788 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
4521d1fc 8789
048addec 87902002-01-21 Richard M. Stallman <rms@gnu.org>
4521d1fc 8791
048addec 8792 * window.c (check_frame_size): Fix minimum height calculation.
93dec019 8793
048addec 87942002-01-20 Ken Raeburn <raeburn@gnu.org>
93dec019 8795
048addec
JD
8796 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
8797 height before comparison.
8798 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
905cc05a 8799
048addec 88002002-01-20 Jason Rumney <jasonr@gnu.org>
2ed06289 8801
048addec
JD
8802 * w32term.c (w32_system_caret_width): Remove.
8803 (w32_use_visible_system_caret): New user flag.
8804 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
8805 Windows reports a screen reader running.
8806 (x_update_window_begin): Hide the system caret.
8807 (x_update_window_end): Show the system caret.
8808 (x_display_and_set_cursor): Don't draw a cursor when
8809 w32_use_visible_system_caret is set. Do not adjust width.
0e79d667 8810
048addec
JD
8811 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
8812 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
8813 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
8814 the user requests it. Use system default width when creating.
8815 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
0e79d667 8816
048addec
JD
8817 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
8818 New window messages.
905cc05a 8819
048addec 88202002-01-20 Richard M. Stallman <rms@gnu.org>
82a7ab23 8821
048addec 8822 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
d75bec6a 8823
048addec 88242002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
52dcb476 8825
048addec 8826 * doprnt.c (doprnt1): Fix typos in error call.
82a7ab23 8827
048addec 88282002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
82a7ab23 8829
048addec 8830 * unexelf.c (unexec) [__sgi]: Support the .got sections.
82a7ab23 8831
048addec 88322002-01-20 Jason Rumney <jasonr@gnu.org>
4d0fa4f3 8833
048addec
JD
8834 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
8835 that Windows returns. If a double check fails, try to guess how
8836 ExtTextOut is going to act.
4d0fa4f3 8837
048addec
JD
8838 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
8839 in place of stricmp.
8840 (w32_list_synthesized_fonts): Removed.
8841 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
8842 (struct enumfont_t): New element; list.
8843 (enum_font_cb2): List all style and charset variations of a font.
8844 (Fw32_select_font): New optional argument; include_proportional.
8845 Exclude vertical fonts. Exclude proportional fonts unless
8846 include_proportional is non-nil.
8847 (w32_enable_synthesized_fonts): Change to a boolean.
8848 (Fw32_send_sys_command): Doc fix.
493faf20 8849
048addec 88502002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
493faf20 8851
048addec
JD
8852 * dispnew.c (update_frame): Move the variable `tem' to the block
8853 where it is used.
4971e491 8854
048addec 88552002-01-19 Jason Rumney <jasonr@gnu.org>
4971e491 8856
048addec
JD
8857 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
8858 call to face-set-after-frame-default.
4971e491 8859
048addec 88602002-01-18 Richard M. Stallman <rms@gnu.org>
d911a0fa 8861
048addec
JD
8862 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
8863 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
d911a0fa 8864
048addec 88652002-01-17 Richard M. Stallman <rms@gnu.org>
d911a0fa 8866
048addec
JD
8867 * window.c (enlarge_window): When exceeding size of parent,
8868 directly delete all the siblings instead of trying to resize it.
201c831a 8869
048addec 88702002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
201c831a 8871
048addec 8872 * term.c (set_tty_color_mode): Remove unused variable `tem'.
201c831a 8873
048addec 88742002-01-16 Henrik Enberg <henrik@enberg.org>
34e39c95 8875
048addec 8876 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
34e39c95 8877
048addec 88782002-01-16 Kim F. Storm <storm@cua.dk>
d77fbc16 8879
048addec
JD
8880 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
8881 is invisible. This can happen if cursor is on top line of a
8882 window, and we switch to a buffer with a header line.
d77fbc16 8883
048addec 8884 * w32term.c (x_erase_phys_cursor): Ditto.
61e3b944 8885
048addec 88862002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
61e3b944 8887
048addec
JD
8888 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
8889 `dont_resize' only when used.
61e3b944 8890
048addec 8891 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
70da46c3 8892
048addec 88932002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
70da46c3 8894
048addec
JD
8895 * xdisp.c (display_mode_element): When computing charpos, depend
8896 on multibyteness of elt, not the text in field.
8af01033 8897
048addec 88982002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8af01033 8899
048addec
JD
8900 * buffer.c (Fkill_all_local_variables):
8901 Increment `update_mode_lines' only once.
7363986a 8902
048addec 89032002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7363986a 8904
048addec
JD
8905 * lisp.h (adjust_after_replace_noundo)
8906 (Fupdate_coding_systems_internal): Add prototypes.
d9e6c4b1 8907
048addec 8908 * sound.c (Fplay_sound): Initialize header_size also for :data case.
d20fc48a 8909
048addec 89102002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
d9e6c4b1 8911
048addec
JD
8912 Support for the --color command-line argument and tty-color-mode
8913 frame parameter:
f1a85b89 8914
048addec
JD
8915 * term.c (tty_default_color_capabilities, tty_setup_colors)
8916 (set_tty_color_mode): New functions.
8917 (term_init): Call tty_default_color_capabilities.
8918 (Qtty_color_mode_alist): New variable.
8919 (syms_of_term): Intern and staticpro it.
f1a85b89 8920
048addec
JD
8921 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
8922 frames.
8923 (do_switch_frame): For termcap frames, switch the tty
8924 color mode as specified by the frame's parameters.
8925 (Qtty_color_mode): New variable.
8926 (syms_of_frame): Intern and staticpro it.
3a62677f 8927
048addec
JD
8928 * emacs.c (USAGE2): Add the --color option.
8929 (standard_args): Ditto.
72244db2 8930
048addec
JD
89312002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8932
8933 * xterm.h (struct x_output): New members want_fullscreen,
8934 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
8935 y_pixels_outer_diff.
8936 New enum for FULLSCREEN_* constants.
8937 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
8938 is NULL.
8939 (x_fullscreen_adjust): Add prototype.
3a62677f 8940
048addec
JD
8941 * emacs.c (USAGE2): Add the new full-screen arguments.
8942 (standard_args): Ditto.
3a62677f 8943
048addec
JD
8944 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
8945 New variables.
8946 (syms_of_xfns): Intern and staticpro them.
8947 (x_frame_parms) <"fullscreen">: New parameter.
8948 (x_fullscreen_move, x_set_fullscreen): New functions.
8949 (x_set_frame_parameters): Support for Qfullscreen.
8950 (x_real_positions): More accurate computation of the frame position.
8951 (x_figure_window_size): Support full-screen frames.
8952 (Fx_create_frame): Default the fullscreen parameter.
3a62677f 8953
048addec
JD
8954 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
8955 (XTread_socket) <Expose>: Call x_check_fullscreen.
8956 <ConfigureNotify>: Don't resize to fullscreen.
8957 Call x_check_fullscreen_move, and set the want_fullscreen member of
8958 output_data.x.
3a62677f 8959
048addec 89602002-01-13 Jason Rumney <jasonr@gnu.org>
9d113d9d 8961
048addec
JD
8962 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
8963 for mice with more than 3 buttons.
b8523839 8964
048addec
JD
8965 * w32term.c (parse_button): New parameter xbutton. Callers changed.
8966 (w32_read_socket): Handle new "XBUTTON" messages.
9464dea4 8967
048addec
JD
8968 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
8969 (syms_of_w32fns): DEFVAR_BOOL it.
8970 (w32_wnd_proc): Handle new "XBUTTON" messages.
9d113d9d 8971
048addec 89722002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
70ec1377 8973
048addec 8974 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
70ec1377 8975
048addec 89762002-01-13 Andreas Schwab <schwab@suse.de>
92f7dd37 8977
048addec 8978 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
92f7dd37 8979
048addec 89802002-01-12 Andreas Schwab <schwab@suse.de>
c93674bb 8981
048addec
JD
8982 * .gdbinit (xbuffer): Remove address operator since data is now a
8983 pointer.
c93674bb 8984
048addec 89852002-01-11 Richard M. Stallman <rms@gnu.org>
59b59892 8986
048addec 8987 * insdel.c (adjust_after_replace_noundo): New function.
59b59892 8988
048addec 8989 * coding.c (code_convert_region): Don't copy old text if undo disabled.
c6ea2775 8990
048addec 89912002-01-09 Jason Rumney <jasonr@gnu.org>
c6ea2775 8992
048addec
JD
8993 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
8994 when checking for multiple frames.
91175673 8995
048addec 89962002-01-08 Richard M. Stallman <rms@gnu.org>
91175673 8997
048addec
JD
8998 * window.c (delete_window): Rewrite the code for changing the
8999 selected window to handle the case where WINDOW is not a leaf.
91175673 9000
048addec 90012002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
e0fead5d 9002
048addec
JD
9003 * process.c (send_process): Set src_multibyte to 1 after the call
9004 top setup_coding_system, not before the call.
e0fead5d 9005
048addec 90062002-01-07 Jason Rumney <jasonr@gnu.org>
e0fead5d 9007
048addec
JD
9008 * xmenu.c (set_frame_menubar, xmenu_show):
9009 (xdialog_show): Initialize wv->help to Qnil.
c186cdb3 9010
048addec
JD
9011 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
9012 (w32_dialog_show): Initialize wv->help to Qnil.
c186cdb3 9013
048addec 90142002-01-06 Jason Rumney <jasonr@gnu.org>
c186cdb3 9015
048addec 9016 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
c186cdb3 9017
048addec 9018 * w32menu.c (w32_menu_display_help): Revert last change.
58cfce98 9019
048addec 9020 * xmenu.c (menu_highlight_callback): Revert last change.
58cfce98 9021
048addec 90222002-01-06 Andreas Schwab <schwab@suse.de>
62854fe2 9023
048addec
JD
9024 * insdel.c (make_gap_larger): Make sure buffer size does not
9025 overflow range of int.
62854fe2 9026
048addec 90272002-01-05 Jason Rumney <jasonr@gnu.org>
656f46bb 9028
048addec
JD
9029 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
9030 OVERLAPS_P.
656f46bb 9031
048addec 9032 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
656f46bb 9033
048addec
JD
9034 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
9035 to the left or to the right of the pointer, put it against
9036 the left screen edge.
9037 (x_frame_parms): Add missing braces around initializer.
036e218d 9038
048addec
JD
9039 * w32term.c (x_setup_relief_colors): Don't compute an image's
9040 background color if it doesn't have a Pixmap.
9041 (notice_overwritten_cursor): Don't depend on
9042 output_cursor and updated_area. Compare pixel coordinates with
9043 window's cursor pixel coordinates.
9044 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
9045 Call notice_overwritten_cursor with new arg list.
9046 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
9047 unconditionally.
9048 (x_draw_image_relief): Use predefined macro instead of
9049 constant when the value of `tool_bar_button_relief' is negative.
036e218d 9050
048addec 9051 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
7ddb2c16 9052
048addec 90532002-01-04 Richard M. Stallman <rms@gnu.org>
7ddb2c16 9054
048addec 9055 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
ace9b298 9056
048addec 90572002-01-03 Richard M. Stallman <rms@gnu.org>
90647b07 9058
048addec
JD
9059 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
9060 (Fkey_binding): Try the `keymap' property map first.
9061 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
9062 minor mode bindings.
90647b07 9063
048addec 90642002-01-03 Kim F. Storm <storm@cua.dk>
ace9b298 9065
048addec 9066 * keyboard.c (read_key_sequence): Fixed cast of submaps arg to bcopy.
ace9b298 9067
048addec 90682002-01-02 Richard M. Stallman <rms@gnu.org>
ace9b298 9069
048addec
JD
9070 * keyboard.c (read_key_sequence): Handle the keymap property
9071 before minor mode maps.
9fbc32aa 9072
048addec
JD
9073 * editfns.c (Fformat): Update thissize from field_width
9074 based on the actual width, in the string case.
036e218d 9075
048addec 90762002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fbc32aa 9077
048addec
JD
9078 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
9079 when used as truth value to prevent gcc warnings.
9fbc32aa 9080
048addec
JD
9081 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
9082 * w32proc.c: Include <config.h>.
9fbc32aa 9083
048addec 90842002-01-01 Andreas Schwab <schwab@suse.de>
9fbc32aa 9085
048addec
JD
9086 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
9087 not EMACS_INT, to make them compatible with DEFVAR_INT.
9088 * lisp.h (max_specpdl_size): Adjust declaration.
9fbc32aa 9089
048addec 90902002-01-01 Richard M. Stallman <rms@gnu.org>
9fbc32aa 9091
048addec
JD
9092 * print.c (print_object): Test print_escape_nonascii only for
9093 unibyte strings.
9094 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
9095 when outputting to a multibyte buffer.
9fbc32aa 9096
048addec 90972001-12-29 Richard M. Stallman <rms@gnu.org>
9fbc32aa 9098
048addec
JD
9099 * print.c (print_object): In multibyte string, use hex escapes.
9100 Use octal only for unibyte strings.
9101 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
0142178a 9102
048addec
JD
9103 * lread.c (read_escape): New arg BYTEREP for reporting whether
9104 escape forces unibyte or multibyte.
9105 (read1): When reading a string, take note of that info.
0142178a 9106
048addec 91072001-12-29 Ken Raeburn <raeburn@gnu.org>
d4824a5d 9108
048addec
JD
9109 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
9110 comparison to test lisp value returned by Fget.
d4824a5d 9111
048addec 91122001-12-29 Richard M. Stallman <rms@gnu.org>
b1356234 9113
048addec 9114 * lisp.h (max_specpdl_size): Add declaration.
b1356234 9115
048addec 9116 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
3ce081f5 9117
048addec
JD
9118 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
9119 Handle modifier bits. Correct typo in error message.
99e380ee 9120
048addec 91212001-12-28 Richard M. Stallman <rms@gnu.org>
3ce081f5 9122
048addec
JD
9123 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
9124 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
9125 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
9126 Update calls to Fdefine_abbrev.
9127 (write_abbrev): Update for changed data format.
9128 Don't list "system" abbrevs.
9129 (Fexpand_abbrev): Update use count with new data format.
9130 (describe_abbrev): Update for changed data format.
9131 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
66458f32 9132
048addec 9133 * config.in (HAVE_MBSINIT): Add #undef.
66458f32 9134
048addec 9135 * strftime.c (mbsinit): Define as no-op if not available.
66458f32 9136
048addec
JD
9137 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
9138 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
59a86c99 9139
048addec
JD
9140 * keymap.c (Flookup_key): Error message if key has wrong data type.
9141 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
9142 (exclude_key): New variable.
59a86c99 9143
048addec 91442001-12-28 Gerd Moellmann <gerd@gnu.org>
eb77a5f4 9145
048addec
JD
9146 * xterm.c (x_setup_relief_colors): Don't compute an image's
9147 background color if it doesn't have a Pixmap.
eb77a5f4 9148
048addec
JD
9149 * xterm.c (notice_overwritten_cursor): Don't depend on
9150 output_cursor and updated_area. Compare pixel coordinates with
9151 window's cursor pixel coordinates.
9152 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
9153 Call notice_overwritten_cursor with new arg list.
9154 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
9155 unconditionally.
eb77a5f4 9156
048addec
JD
9157 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
9158 height of the cursor line to the amount to scroll.
eb77a5f4 9159
048addec 91602001-12-27 Richard M. Stallman <rms@gnu.org>
bb313871 9161
048addec
JD
9162 * intervals.c (set_point_both): The position after an invisible,
9163 intangible character is not an acceptable stopping point.
bb313871 9164
048addec 91652001-12-27 Ken Raeburn <raeburn@gnu.org>
55b43a63 9166
048addec
JD
9167 * window.c (enlarge_window): In new preserve_before code, convert
9168 CURBEG from lisp object to integer before doing arithmetic.
6052529b 9169
048addec 91702001-12-27 Richard M. Stallman <rms@gnu.org>
3ce081f5 9171
048addec 9172 * bytecode.c (Fbyte_code): Undo previous change.
3ce081f5 9173
048addec 91742001-12-26 Kim F. Storm <storm@cua.dk>
3ce081f5 9175
048addec
JD
9176 * keyboard.c (record_char): Ignore duplicate help-echo events only
9177 separated by mouse-movement. When tracking mouse, only record
9178 first and last mouse-movement event in same window.
9179 Don't record mouse-movement events in keyboard macros.
3ce081f5 9180
048addec 91812001-12-25 Richard M. Stallman <rms@gnu.org>
55b43a63 9182
048addec
JD
9183 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
9184 (Fenlarge_window): New arg PRESERVE_BEFORE.
111ed14e 9185
048addec
JD
9186 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
9187 instead of Fstring_as_unibyte.
9fabb2f5 9188
048addec 91892001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fabb2f5 9190
048addec 9191 The following changes remove mocklisp support:
9fabb2f5 9192
048addec 9193 * mocklisp.h, mocklisp.c: Files removed.
111ed14e 9194
048addec
JD
9195 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
9196 `Qmocklisp' and `Qmocklisp_arguments'.
9197 Remove prototype of syms_of_mocklisp.
2fa0eedf 9198
048addec 9199 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
d1420435 9200
048addec
JD
9201 * callint.c: Do not include mocklisp.h.
9202 (Fcall_interactively): Do not test for mocklisp case.
2fa0eedf 9203
048addec
JD
9204 * eval.c: Remove variables `Qmocklisp_arguments',
9205 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
9206 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
9207 Do not test for mocklisp case.
9208 (Fwhile): Remove unused variable `tem'.
9209 (syms_of_eval): Remove variable `moclisp-arguments'.
ebcbef4e 9210
048addec 9211 * data.c (wrong_type_argument): Remove mocklisp case.
5c131048 9212
048addec 9213 * doc.c (Fdocumentation): Remove mocklisp case.
5c131048 9214
048addec 9215 * emacs.c (main): Do not call syms_of_mocklisp.
5c131048 9216
048addec 92172001-12-21 Richard M. Stallman <rms@gnu.org>
96d276c3 9218
048addec
JD
9219 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
9220 to the left or to the right of the pointer, put it against
9221 the left screen edge.
6108b49c 9222
048addec 92232001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
96d276c3 9224
048addec
JD
9225 * Makefile.in (distclean): Remove .gdbinit if we are building
9226 outside the source tree.
5eea19a4 9227
048addec 92282001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
5eea19a4 9229
048addec 9230 * w32.c (emacs_root_dir): New function.
5eea19a4 9231
048addec 9232 * msdos.c (emacs_root_dir): New function.
5eea19a4 9233
048addec
JD
9234 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
9235 of the current drive as the fallback for default_directory.
438e57dd 9236
048addec
JD
9237 * dired.c (file_name_completion): Run the elements of
9238 completion-ignored-extensions through ENCODE_FILE.
438e57dd 9239
048addec
JD
9240 * lisp.h (scmp): Remove prototype, since it's now a static
9241 function private to dired.c.
c88e5347 9242
048addec 92432001-12-18 Richard M. Stallman <rms@gnu.org>
c88e5347 9244
048addec
JD
9245 * dired.c (scmp): Function moved from minibuf.c.
9246 Delete multibyte handling--used only on encoded strings.
59ce1461 9247
048addec 9248 * minibuf.c (scmp): Function moved to dired.c.
59ce1461 9249
048addec 9250 * fns.c (merge): Add QUIT call.
59ce1461 9251
048addec 92522001-12-18 Dave Love <fx@gnu.org>
8727d588 9253
048addec
JD
9254 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
9255 language/georgian.el.
8727d588 9256
048addec 92572001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
cc63037e 9258
048addec
JD
9259 * Makefile.in (lisp, shortlisp): Synchronize with changes to
9260 lisp/Makefile.in:DONTCOMPILE.
cc63037e 9261
048addec 92622001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
cc63037e 9263
048addec
JD
9264 * xdisp.c (window_box_height): Do not return negative values.
9265 From Gerd Moellmann <gerd@gnu.org>.
cc63037e 9266
048addec 9267 * keyboard.c (head_table): Add missing braces around initializer.
cc63037e 9268
048addec 9269 * term.c (keys): Likewise.
deece6f5 9270
048addec 9271 * xfns.c (x_frame_parms, visual_classes): Likewise.
deece6f5 9272
048addec 92732001-12-17 Sam Steingold <sds@gnu.org>
1b944d9c 9274
048addec
JD
9275 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
9276 patch (COMPOSING_P, not COMPOSING).
28ff4293 9277
048addec 92782001-12-17 Richard M. Stallman <rms@gnu.org>
a395ef6a 9279
048addec 9280 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
a395ef6a 9281
048addec
JD
9282 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
9283 before calling decode_coding.
9b46de40 9284
048addec 9285 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
9b46de40 9286
048addec
JD
9287 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
9288 instead of only for COMPOSITION_DISABLED.
9b46de40 9289
048addec 92902001-12-16 Richard M. Stallman <rms@gnu.org>
aff37336 9291
048addec 9292 * alloc.c (pure_alloc): After overflow, allocate just a small block.
aff37336 9293
048addec 9294 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
b9937f07 9295
048addec
JD
9296 * buffer.h (struct buffer): New field `display_error_modiff'.
9297 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
b9937f07 9298
048addec 9299 * window.c (Frecenter): Clear display_error_modiff field.
2cd23960 9300
048addec
JD
9301 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
9302 Call redisplay_window, but not if display_error_modiff field says no.
9303 (redisplay_window_error): New function.
9304 (displayed_buffer): New variable.
9305 (redisplay_internal, redisplay_windows): Call the new functions
9306 instead of redisplay_window directly.
2cd23960 9307
048addec 93082001-12-15 Richard M. Stallman <rms@gnu.org>
2cd23960 9309
048addec 9310 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
2cd23960 9311
048addec 93122001-12-14 Andrew Innes <andrewi@gnu.org>
a4184c1c 9313
048addec
JD
9314 * makefile.w32-in (EMACSLOADPATH): Define.
9315 ($(EMACS)): Run `list-load-path-shadows' after dumping emacs.
9316 (bootstrap-temacs): Remove dependency on bootstrap-clean.
a4184c1c 9317
048addec 93182001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
f6fa0866 9319
048addec
JD
9320 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
9321 parameter have a numeric value all the time.
f6fa0866 9322
048addec 9323 * w32fns.c (x_report_frame_params): Likewise.
f4ca4b00 9324
048addec 93252001-12-12 Richard M. Stallman <rms@gnu.org>
f4ca4b00 9326
048addec 9327 * fileio.c (Fwrite_region): Doc fix.
f4e25f94 9328
048addec
JD
9329 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
9330 (redisplay_internal): Call clear_image_cache only for window terminals.
f4e25f94 9331
048addec 93322001-12-12 Gerd Moellmann <gerd@gnu.org>
91c153e2 9333
048addec
JD
9334 * xdisp.c (move_it_vertically_backward): Change heuristic
9335 for the case that we didn't move far enough initially.
91c153e2 9336
048addec
JD
9337 * window.c (Frecenter): Simplify computation in the case of window
9338 system frames and ARG < 0; use window_box_height.
65b7d3e7 9339
048addec 93402001-12-11 Richard M. Stallman <rms@gnu.org>
65b7d3e7 9341
048addec
JD
9342 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
9343 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
6b5f6311 9344
048addec 93452001-12-11 Andrew Innes <andrewi@gnu.org>
6b5f6311 9346
048addec
JD
9347 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
9348 arg is negative.
be676094 9349
048addec 93502001-12-11 Richard M. Stallman <rms@gnu.org>
be676094 9351
048addec
JD
9352 * m/hp800.h: Split the __hpux conditional into the parts
9353 that are right for GNU/Linux too and the parts that are not.
9354 Use the former if GNU_LINUX.
9355 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
032a857d 9356
048addec 9357 * s/gnu-linux.h (GNU_LINUX): Defined.
032a857d 9358
048addec 93592001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
032a857d 9360
048addec
JD
9361 * macros.c, msdos.c, w16select.c: Change doc-string comments to
9362 `new style' [w/`doc:' keyword].
032a857d 9363
048addec 93642001-12-10 Jason Rumney <jasonr@gnu.org>
b6270150 9365
048addec
JD
9366 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
9367 before using.
b6270150 9368
048addec 93692001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
792e5cbd 9370
048addec
JD
9371 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
9372 keyword].
98cbb9fa 9373
048addec 93742001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
98cbb9fa 9375
048addec 9376 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
98cbb9fa 9377
048addec 9378 * s/hpux10.h (srand48): Don't undefine.
98cbb9fa 9379
048addec 93802001-12-09 Jason Rumney <jasonr@gnu.org>
792e5cbd 9381
048addec
JD
9382 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
9383 Add comment to explain where the struct came from.
9384 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
9385 (add_menu_item): Process pop-up menus first to avoid memory leak.
9386 (add_menu_item, w32_menu_display_help): Use `help' field as
9387 Lisp_Object.
9388 (w32_free_submenu_strings): Only free owner-drawn strings.
fa336b91 9389
048addec 93902001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
fa336b91 9391
048addec 9392 * COPYING: Moved back.
fa336b91 9393
048addec
JD
9394 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
9395 Add parentheses around && within ||.
077907d4 9396
048addec 9397 * indent.c (compute_motion): Likewise.
aa2af83a 9398
048addec 9399 * intervals.c (merge_properties_sticky): Likewise.
60a653f1 9400
048addec
JD
9401 * coding.c (setup_coding_system, shrink_encoding_region)
9402 (Fdecode_sjis_char): Likewise.
60a653f1 9403
048addec 94042001-12-07 Andreas Schwab <schwab@suse.de>
60a653f1 9405
048addec
JD
9406 * xdisp.c (display_mode_element): Don't read past end of string if
9407 it ends with '%'.
60a653f1 9408
048addec
JD
9409 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
9410 can hold.
60a653f1 9411
048addec
JD
9412 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
9413 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
9414 type changed to Lisp_Object.
9415 (syms_of_data): DEFVAR_LISP them.
60a653f1 9416
048addec 94172001-12-07 Richard M. Stallman <rms@gnu.org>
60a653f1 9418
048addec
JD
9419 * callproc.c (init_callproc): Set Vdata_directory based on the source
9420 location whenever Emacs was run uninstalled.
60a653f1 9421
048addec 94222001-12-06 Paul Eggert <eggert@twinsun.com>
60a653f1 9423
048addec
JD
9424 * config.in (HAVE_WORKING_VFORK): New #undefs.
9425 * process.c (create_process):
9426 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
9427 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
9428 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
9429 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
9430 * m/intel386.h (HAVE_VFORK): Likewise.
9431 * m/mips-siemens.h (HAVE_VFORK): Likewise.
9432 * m/mips.h (HAVE_VFORK): Likewise.
9433 * s/freebsd.h (vfork): Remove #define.
9434 * s/lynxos.h (HAVE_VFORK): Remove #undef.
9435 * s/usg5-4-2.h: Fix comment about vfork.
60a653f1 9436
048addec 94372001-12-06 Richard M. Stallman <rms@gnu.org>
60a653f1 9438
048addec
JD
9439 * s/hpux10.h (random): Add undef.
9440 (HAVE_RANDOM): Define it just once.
60a653f1 9441
048addec 94422001-12-06 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 9443
048addec 9444 * eval.c: Undo last change: the standard syntax is not wanted.
60a653f1 9445
048addec 94462001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 9447
048addec
JD
9448 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
9449 scroll bars of the frame before deleting the frame itself. If the
9450 frame has a widget, delete the frame with XtDestroyWidget, and do
9451 not call XDestroyWindow before that.
60a653f1 9452
048addec 94532001-12-06 Kim F. Storm <storm@cua.dk>
60a653f1 9454
048addec 9455 * xfns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 9456
048addec 9457 * w32fns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 9458
048addec 94592001-12-05 Andrew Innes <andrewi@gnu.org>
60a653f1 9460
048addec
JD
9461 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
9462 excessively large.
60a653f1 9463
048addec
JD
9464 * insdel.c (make_gap_larger): New function.
9465 (make_gap_smaller): New function.
9466 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
9467 Call make_gap_smaller if arg is negative.
60a653f1 9468
048addec 94692001-12-04 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 9470
048addec
JD
9471 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
9472 Pass a dummy argument when calling interrupt_signal.
9473 (parse_menu_item): Mark disabled items before checking for empty def.
9474 (read_char_minibuf_menu_prompt): Make safety more visible.
9475 (read_key_sequence): Add a `first_unbound' variable.
9476 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
9477 unbound prefix as soon as we can detect it.
60a653f1 9478
048addec
JD
9479 * doc.c (Fsnarf_documentation): Add prototype.
9480 (get_doc_string): Handle negative arguments.
9481 (Fdocumentation): Use AREF and ASIZE.
9482 Move the calls to get_doc_string to a single place.
9483 Don't confuse an interactive-spec for a docstring reference.
9484 (Fdocumentation_property): Take advantage of the fact that
9485 get_doc_string now ignores the sign of the docstring position.
60a653f1 9486
048addec 9487 * eval.c: Use standard syntax for usage in docstrings.
60a653f1 9488
048addec 94892001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 9490
048addec 9491 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief` an option.
60a653f1 9492
048addec 94932001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 9494
048addec
JD
9495 * xterm.c (x_draw_image_relief): Use predefined macro instead of
9496 constant when the value of `tool_bar_button_relief' is negative.
60a653f1 9497
048addec 94982001-12-02 Richard M. Stallman <rms@gnu.org>
60a653f1 9499
048addec
JD
9500 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
9501 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
60a653f1 9502
048addec 9503 * fileio.c (read_non_regular): Delete Fsignal call.
60a653f1 9504
048addec 95052001-12-01 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 9506
048addec 9507 * lisp.h (run_hook_list_with_args): Undo last change.
60a653f1 9508
048addec 95092001-12-01 Gerd Moellmann <gerd@gnu.org>
60a653f1 9510
048addec 9511 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
60a653f1 9512
048addec 95132001-12-01 Jason Rumney <jasonr@gnu.org>
60a653f1 9514
048addec 9515 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
60a653f1 9516
048addec
JD
9517 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
9518 [!WM_MOUSELEAVE]: Define.
60a653f1 9519
048addec
JD
9520 * w32menu.c (current_popup_menu, get_menu_item_info):
9521 (set_menu_item_info): New vars.
9522 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
9523 (w32_menu_show): Set current_popup_menu.
9524 (add_menu_item): Allocate new strings for owner-drawn menu items
9525 and help strings.
9526 Use owner-draw for disabled menu items again.
9527 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
9528 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
60a653f1 9529
048addec
JD
9530 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
9531 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
9532 <WM_EXITMENULOOP>: Free menu strings.
9533 <WM_MOUSELEAVE>: Stop tracking mouse.
9534 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
60a653f1 9535
048addec
JD
9536 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
9537 and mouse face.
60a653f1 9538
048addec 95392001-12-01 Kim F. Storm <storm@cua.dk>
60a653f1 9540
048addec
JD
9541 The following changes add left-fringe and right-fringe
9542 frame parameters to adjust fringe widths, or remove one or
9543 both fringes.
60a653f1 9544
048addec
JD
9545 * frame.h (struct frame): Remove trunc_area_pixel_width and
9546 trunc_area_cols fields.
9547 (Qleft_fringe, Qright_fringe): Declare.
9548 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
60a653f1 9549
048addec
JD
9550 * frame.c (Qleft_fringe, Qright_fringe): New vars.
9551 (syms_of_frame): Initialize them.
60a653f1 9552
048addec
JD
9553 * window.c (coordinates_in_window): Handle separate left and right
9554 fringe widths.
60a653f1 9555
048addec
JD
9556 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
9557 and fringe_cols fields.
9558 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
9559 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
9560 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
9561 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
9562 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
9563 (x_compute_fringe_widths): Add prototype.
60a653f1 9564
048addec
JD
9565 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
9566 fill fringe evenly with small dashes.
9567 (x_draw_fringe_bitmap): Clear background if necessary. Align and
9568 clip the new ZV bitmap to avoid jitter between rows.
9569 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
9570 background. Don't draw fringe bitmaps if fringe width is zero.
9571 (x_compute_fringe_widths): New function.
9572 (x_new_font, x_set_window_size_1): Use it.
60a653f1 9573
048addec
JD
9574 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
9575 (x_set_frame_parameters): Process `font' parameter before other
9576 parameters as fringe widths depend on it.
9577 (x_set_fringe_width): New function.
9578 (x_figure_window_size): Use x_compute_fringe_widths.
9579 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
9580 parameters.
60a653f1 9581
048addec
JD
9582 * widget.c (set_frame_size): Use x_compute_fringe_widths.
9583 (EmacsFrameSetCharSize): Ditto.
60a653f1 9584
048addec
JD
9585 * w32term.h: Merged changes from xterm.h.
9586 * w32term.c: Merged changes from xterm.c.
9587 * w32fns.c: Merged changes from xfns.c.
60a653f1 9588
048addec 95892001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 9590
048addec 9591 * COPYING: Removed.
60a653f1 9592
048addec 95932001-11-29 Dave Love <fx@gnu.org>
60a653f1 9594
048addec
JD
9595 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
9596 extra extra slot.
9597 (detect_coding_mask): Fix call of detect_coding_iso2022.
60a653f1 9598
048addec 95992001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 9600
048addec
JD
9601 * fileio.c (file-name-coding-system)
9602 (default-file-name-coding-system): Doc fix (links to referenced
9603 variables added).
60a653f1 9604
048addec 96052001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 9606
048addec
JD
9607 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
9608 Add dummy uses of gcproN variables.
60a653f1 9609
048addec
JD
9610 * category.c (describe_category, describe_category_1)
9611 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
9612 (syms_of_category): Don't defsubr Sdescribe_categories.
60a653f1 9613
048addec 96142001-11-28 Richard M. Stallman <rms@gnu.org>
60a653f1 9615
048addec 9616 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
60a653f1 9617
048addec
JD
9618 * Makefile.in (lispdir): New variable, referring to build dir.
9619 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
60a653f1 9620
048addec 96212001-11-28 Andrew Innes <andrewi@gnu.org>
60a653f1 9622
048addec
JD
9623 * w32menu.c (w32_menu_display_help): Actually add the new argument
9624 OWNER.
60a653f1 9625
048addec 96262001-11-28 Jason Rumney <jasonr@gnu.org>
60a653f1 9627
048addec
JD
9628 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
9629 menu items. From David Ponce <dponce@wanadoo.fr>.
9630 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
9631 conditionally.
9632 (w32_menu_display_help): New argument OWNER. Rewritten to store a
9633 help event in the owner frame's keyboard buffer.
60a653f1 9634
048addec
JD
9635 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
9636 (Fx_show_tip): Don't subtract last width from row width.
9637
9638 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
9639 (w32_read_socket): Use EQ to compare frames.
60a653f1 9640
048addec 96412001-11-28 Gerd Moellmann <gerd@gnu.org>
60a653f1 9642
048addec
JD
9643 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
9644 OVERLAPS_P.
60a653f1 9645
048addec 96462001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 9647
048addec
JD
9648 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
9649 `gcpro3' and `gcpro4'.
60a653f1 9650
048addec 9651 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
60a653f1 9652
048addec 96532001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 9654
048addec 9655 * ccl.c: Use AREF and ASIZE.
60a653f1 9656
048addec 96572001-11-27 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 9658
048addec
JD
9659 * lisp.h (run_hook_list_with_args): Remove.
9660 (LIST_END_P): Fix call to wrong_type_argument.
9661 (make_fixnum_or_float): Use EMACS_INT rather than int.
60a653f1 9662
048addec 96632001-11-26 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 9664
048addec
JD
9665 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
9666 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
60a653f1 9667
048addec
JD
9668 * eval.c: Use AREF and ASIZE.
9669 (Ffetch_bytecode): Add the file name to the error message.
60a653f1 9670
048addec
JD
9671 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
9672 which match the end of the file-name.
9673 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
9674 is not a valid env var, but leave it as is instead.
60a653f1 9675
048addec
JD
9676 * keymap.c (access_keymap): Handle t bindings like nil bindings.
9677 Make nil bindings in char-tables transparent.
9678 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
60a653f1 9679
048addec 96802001-11-26 Richard M. Stallman <rms@gnu.org>
60a653f1 9681
048addec
JD
9682 * textprop.c (set_text_properties_1): Allow START, END in either order.
9683 Do nothing if range is empty.
60a653f1 9684
048addec 9685 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
60a653f1 9686
048addec
JD
9687 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
9688 (clean): Not here.
60a653f1 9689
048addec 96902001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 9691
048addec
JD
9692 * textprop.c (set_text_properties_1): Clearly mark that the
9693 interval should not be empty.
60a653f1 9694
048addec
JD
9695 * intervals.c (graft_intervals_into_buffer):
9696 Don't call set_text_properties_1 on an empty interval.
60a653f1 9697
048addec 96982001-11-25 Richard M. Stallman <rms@gnu.org>
60a653f1 9699
048addec 9700 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
60a653f1 9701
048addec
JD
9702 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
9703 don't lose the data in it.
60a653f1 9704
048addec 97052001-11-25 Juanma Barranquero <lektu@terra.es>
60a653f1 9706
048addec 9707 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
60a653f1 9708
048addec 9709 * buffer.c (Fkill_buffer): Use Frun_hooks, not Vrun_hooks.
60a653f1 9710
048addec 9711 * print.c (temp_output_buffer_setup): Use Frun_hooks, not Vrun_hooks.
60a653f1 9712
048addec 97132001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 9714
048addec 9715 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
60a653f1 9716
048addec 97172001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 9718
048addec
JD
9719 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
9720 Niemitalo <kon@iki.fi>.
60a653f1 9721
048addec 97222001-11-25 Jason Rumney <jasonr@gnu.org>
60a653f1 9723
048addec 9724 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
60a653f1 9725
048addec
JD
9726 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
9727 (Fx_show_tip): Block input during frame creation.
9728 (Fx_show_tip, Fx_hide_tip): Enable.
60a653f1 9729
048addec 97302001-11-24 Richard M. Stallman <rms@gnu.org>
60a653f1 9731
048addec
JD
9732 * lread.c (Fload): Detect recursive load error for more than 3
9733 nestings of the same file.
9734 (Vrecursive_load_depth_limit): Variable deleted.
9735 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
60a653f1 9736
048addec 97372001-11-24 Jason Rumney <jasonr@gnu.org>
60a653f1 9738
048addec
JD
9739 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
9740 mouse position if either left or top is not specified.
60a653f1 9741
048addec
JD
9742 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
9743 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
9744 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
9745 (my_create_tip_window): Assign tip_window.
9746 (x_create_tip_frame): Use same defaults as X.
9747 (compute_tip_xy): Remove unused variable. Use full screen width.
9748 (Fx_show_tip): Do not double height. Call ShowWindow directly.
60a653f1 9749
048addec
JD
9750 * w32term.c (x_after_update_window_line): Doc fix.
9751 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
9752 frames.
9753 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
60a653f1 9754
048addec
JD
9755 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
9756 for all Windowed systems.
60a653f1 9757
048addec 97582001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 9759
048addec
JD
9760 * msdos.c (IT_clear_screen): If the frame's faces are not yet
9761 realized, use the initial screen colors to clear the screen.
60a653f1 9762
048addec 97632001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 9764
048addec
JD
9765 * textprop.c (Fset_text_properties): Remove unused variables
9766 `unchanged', `prev_changed', `s' and `len'.
60a653f1 9767
048addec
JD
9768 * search.c (Freplace_match): Remove unused variable `inslen'.
9769
9770 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
9771
97722001-11-22 Jason Rumney <jasonr@gnu.org>
9773
9774 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
9775 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
9776 (my_create_tip_window): New function.
9777 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
9778 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
9779
97802001-11-20 Jason Rumney <jasonr@gnu.org>
9781
9782 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
9783 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
9784
9785 * w32fns.c (Vw32_system_coding_system): Remove.
9786 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
9787
97882001-11-19 Stefan Monnier <monnier@cs.yale.edu>
9789
9790 * fileio.c (Fwrite_region): Move choose_write_coding_system to
9791 after build_annotations.
9792
9793 * syntax.c (describe_syntax): Add dummy arg.
9794 (describe_syntax_1): Update call to describe_vector.
9795
9796 * category.c (describe_category): Add dummy arg.
9797 (describe_category_1): Update call to describe_vector.
9798
9799 * keymap.c (Fdescribe_vector): Add `describer' parameter.
9800 (describe_command, describe_translation): Add dummy second param.
9801 (describe_map): Call elt_describer with two arguments.
9802 (describe_vector_princ): Add `fun' parameter.
9803 Call it instead of the hardcoded `princ'.
9804 (describe_vector): Add arg `args'.
9805 Pass it as a new second argument to elt_describer.
60a653f1 9806
048addec 9807 * keymap.h (describe_vector): Update prototype.
60a653f1 9808
048addec
JD
9809 * frame.c: Don't include keymap.h any more.
9810 (keys_of_frame): Remove.
60a653f1 9811
048addec 9812 * lisp.h (keys_of_frame): Remove declaration.
60a653f1 9813
048addec 9814 * emacs.c (main): Don't call `keys_of_frame' any more.
60a653f1 9815
048addec 98162001-11-14 Andreas Schwab <schwab@suse.de>
60a653f1 9817
048addec
JD
9818 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
9819 if defined, 0 otherwise.
9820 (MAP_FAILED): Define if not defined and use it to test mmap failure.
9821 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
60a653f1 9822
048addec 98232001-11-19 Richard M. Stallman <rms@gnu.org>
60a653f1 9824
048addec 9825 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
60a653f1 9826
048addec 98272001-11-18 Jason Rumney <jasonr@gnu.org>
60a653f1 9828
048addec
JD
9829 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
9830 (x_draw_bar_cursor): If the background color of the glyph under
9831 the cursor equals the frame's cursor color, use the glyph's
9832 foreground color for drawing the bar cursor.
9833 (x_after_update_window_line): Clear internal border in different
9834 circumstances.
9835 (w32_set_vertical_scroll_bar): Check for width and height > 0.
9836 (w32_draw_relief_rect): Correct relief by 1 pixel.
9837 (x_set_glyph_string_background_width):
9838 Set extends_to_end_of_line_p if the row's fill_line_p is set and
9839 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
9840 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
9841 if cursor_in_non_selected_windows is false.
9842 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
9843 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
9844 Notice if cursor gets overwritten.
9845 (notice_overwritten_cursor): Renamed from
9846 note_overwritten_text_cursor. Rewritten to take glyph widths
9847 into account, and to take X positions as parameters.
9848 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
9849 around call to x_draw_glyphs.
9850 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
9851 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
9852 color to use for image glyph reliefs.
9853 (x_draw_image_relief): Accept zero tool_bar_button_relief.
9854 (glyph_rect): Remove unused variable `area'.
60a653f1 9855
048addec
JD
9856 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
9857 some items.
9858 (x_set_internal_border_width): Set frame garbaged when window
9859 doesn't exist yet.
9860 (Fx_create_frame): Accept zero tool_bar_button_relief.
9861 (x_clear_image_1, four_corners_best, image_background)
9862 (image_background_transparent): New functions.
9863 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
9864 (gs_format): Add `:background' entry.
9865 (lookup_image): Set IMG's background color if specified.
9866 (pbm_load, xbm_load_image, png_load): Set IMG's background field
9867 when appropriate.
9868 (x_clear_image_1): Reset `background_valid' and
9869 `background_transparent_valid' fields.
9870 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
9871 calculating it here. Set IMG's background_transparent field.
9872 (enum xpm_keyword_index): Add XPM_BACKGROUND.
9873 (enum png_keyword_index): Add PNG_BACKGROUND.
9874 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
9875 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
9876 (enum gif_keyword_index): Add GIF_BACKGROUND.
9877 (enum gs_keyword_index): Add GS_BACKGROUND.
9878 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
9879 Pre-calculate image background color where necessary.
9880 (x_create_x_image_and_pixmap, xbm_load, gs_load):
9881 Use display info's n_cbits entry for screen depth.
9882 (Fx_show_tip): Remove unused variables `buffer', `top',
9883 `left', `max_width' and `max_height'.
60a653f1 9884
048addec 9885 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
60a653f1 9886
048addec 98872001-11-18 Gerd Moellmann <gerd@gnu.org>
60a653f1 9888
048addec 9889 * puresize.h (BASE_PURESIZE): Increase to 750000.
60a653f1 9890
048addec 98912001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 9892
048addec 9893 * frame.c (Fframe_live_p): Doc fix.
60a653f1 9894
048addec 98952001-11-18 Richard M. Stallman <rms@gnu.org>
60a653f1 9896
048addec
JD
9897 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
9898 (message_dolog_marker3): New static variables hold three markers.
9899 (syms_of_xdisp): Initialize and staticpro them.
9900 (message_dolog): Use message_dolog_marker1..3 instead of
9901 allocating markers each time. Unchain them when done.
60a653f1 9902
048addec 99032001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 9904
048addec 9905 * doc.c (Fsnarf_documentation): Doc fix.
60a653f1 9906
048addec 99072001-11-17 Andreas Schwab <schwab@suse.de>
60a653f1 9908
048addec 9909 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
60a653f1 9910
048addec 99112001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 9912
048addec 9913 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
60a653f1 9914
048addec 99152001-11-17 Jason Rumney <jasonr@gnu.org>
60a653f1 9916
048addec 9917 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
60a653f1 9918
048addec 99192001-11-17 Gerd Moellmann <gerd@gnu.org>
60a653f1 9920
048addec
JD
9921 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
9922 with invalid position.
60a653f1 9923
048addec 99242001-11-16 Richard M. Stallman <rms@gnu.org>
60a653f1 9925
048addec 9926 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
60a653f1 9927
048addec
JD
9928 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
9929 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
9930 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
60a653f1 9931
048addec 9932 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
60a653f1 9933
048addec 99342001-11-16 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 9935
048addec
JD
9936 * fileio.c (build_annotations): Split off the tail.
9937 (build_annotations_2): New fun. Extracted from build_annotations.
9938 (Fwrite_region): Split the call to build_annotations into two
9939 calls to build_annotations and build_annotations_2.
077907d4 9940
048addec 99412001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
1756e2fb 9942
048addec
JD
9943 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
9944 clear_waiting_for_input with argument.
1756e2fb 9945
048addec 9946 * xterm.h (x_update_cursor): Remove duplicated prototype.
06e8f738 9947
048addec 9948 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
06e8f738 9949
048addec 9950 * xterm.c (waiting_for_input): Remove unnecessary declaration.
fa336b91 9951
048addec 9952 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
fa336b91 9953
048addec 99542001-11-16 Stefan Monnier <monnier@cs.yale.edu>
fa336b91 9955
048addec
JD
9956 * fileio.c (choose_write_coding_system): New fun, extracted
9957 from Fwrite_region.
9958 (Fwrite_region): Use it.
fa336b91 9959
048addec
JD
9960 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
9961 (funcall_lambda, run_hook_with_args): Make static and add prototype.
9962 (ml_apply, find_handler_clause): Add prototype.
fa336b91 9963
048addec 99642001-11-16 Eli Zaretskii <eliz@gnu.org>
fa336b91 9965
048addec 9966 * config.in: Add #undef HAVE_COFF_H.
fa336b91 9967
048addec
JD
9968 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
9969 Required for ISC 4.1.
fa336b91 9970
048addec 99712001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
fa336b91 9972
048addec
JD
9973 * syswait.h: (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
9974 Andrew Wiseman <a.wiseman@btclick.com>.
fa336b91 9975
048addec 99762001-11-16 Kim F. Storm <storm@cua.dk>
fa336b91 9977
048addec
JD
9978 The following changes are made to clean up the various internal
9979 references to the fringes to actually use the term `fringe' for
9980 them. Previously, they were called `flags areas', `bitmap areas',
9981 `left/right side of windows', or implicitly as `flags' or
9982 `bitmaps':
fa336b91 9983
048addec
JD
9984 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
9985 Comments fixed. Use renamed symbols.
06e8f738 9986
048addec 9987 * dispnew.c: Comment fix. Use renamed symbols.
06e8f738 9988
048addec
JD
9989 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
9990 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
9991 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
9ce647f4 9992
048addec 9993 * msdos.c: Comment fix.
9ce647f4 9994
048addec 9995 * w32fns.c: Use renamed symbols.
9b784ab8 9996
048addec
JD
9997 * w32term.c: Comment fixes. Use renamed symbols.
9998 (fringe_bitmap_type): Renamed from bitmap_type.
9999 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
10000 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
10001 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
9f7e52b4 10002
048addec
JD
10003 * w32term.h: Comment fixes. Use renamed symbols.
10004 (fringes_extra): Renamed from flags_areas_extra.
10005 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
10006 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
10007 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
10008 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
10009 (FRAME_X_LEFT_FRINGE_WIDTH):
10010 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
10011 (FRAME_X_RIGHT_FRINGE_WIDTH):
10012 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
9f7e52b4 10013
048addec 10014 * widget.c: Use renamed symbols.
9f7e52b4 10015
048addec
JD
10016 * window.c: Comment fixes. Use renamed symbols.
10017 (coordinates-in-window-p): Doc fix.
fa336b91 10018
048addec 10019 * xdisp.c: Comment fixes. Use renamed symbols.
34e5d0af 10020
048addec 10021 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
9b784ab8 10022
048addec 10023 * xfns.c: Use renamed symbols.
89512fcd 10024
048addec
JD
10025 * xterm.c: Comment fixes. Use renamed symbols.
10026 (fringe_bitmap_type): Renamed from bitmap_type.
10027 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
10028 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
10029 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
89512fcd 10030
048addec
JD
10031 * xterm.h: Comment fixes. Use renamed symbols.
10032 (fringes_extra): Renamed from flags_areas_extra.
10033 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
10034 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
10035 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
10036 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
10037 (FRAME_X_LEFT_FRINGE_WIDTH):
10038 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
10039 (FRAME_X_RIGHT_FRINGE_WIDTH):
10040 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
10041
100422001-11-15 Jason Rumney <jasonr@gnu.org>
10043
10044 * w32menu.c (add-menu-item): Make help_echo and radio buttons
10045 work for most menu items. From David Ponce
10046 <david.ponce@wanadoo.fr>.
10047
100482001-11-15 Gerd Moellmann <gerd@gnu.org>
10049
10050 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
10051 Some x_set_* function expect to be called even if old and new
10052 value are equal.
10053
10054 * xdisp.c (build_desired_tool_bar_string): Accept zero
10055 tool_bar_button_relief.
10056
10057 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
10058
10059 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
10060
10061 * xterm.c (x_draw_bar_cursor): If the background color of the
10062 glyph under the cursor equals the frame's cursor color, use
10063 the glyph's foreground color for drawing the bar cursor.
10064
10065 * dispnew.c (direct_output_forward_char): Fix character/byte
10066 position comparison.
7d18891d 10067
048addec 100682001-11-15 Miles Bader <miles@gnu.org>
d2936d21 10069
048addec
JD
10070 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
10071 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
10072 Update arguments to find_field.
10073 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
10074 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
10075 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
10076 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
7d18891d 10077
048addec 100782001-11-14 Richard M. Stallman <rms@gnu.org>
7d18891d 10079
048addec 10080 * editfns.c (Fpropertize): Allow call with 1 arg.
7d18891d 10081
048addec
JD
10082 * dispextern.h (image_background, image_background_transparent):
10083 Conditionalize on HAVE_X_WINDOWS.
7d18891d 10084
048addec 100852001-11-13 Richard M. Stallman <rms@gnu.org>
7d18891d 10086
048addec 10087 * print.c (Fprin1_to_string): Doc fix.
7d18891d 10088
048addec 10089 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
7d18891d 10090
048addec 10091 * floatfns.c (Fceiling, Ffloor): Doc fixes.
7d18891d 10092
048addec 10093 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
7d18891d 10094
048addec 10095 * fileio.c (Ffile_accessible_directory_p): Doc fix.
7d18891d 10096
048addec 10097 * eval.c (syms_of_eval): Doc fix.
7d18891d 10098
048addec 10099 * coding.c (syms_of_coding): Doc fix.
7d18891d 10100
048addec 10101 * doc.c (Fsnarf_documentation): Doc fix.
7d18891d 10102
048addec 10103 * dispnew.c (syms_of_display): Doc fix.
9474c847 10104
048addec 10105 * category.c (Fget_unused_category): Doc fix.
9474c847 10106
048addec 10107 * buffer.c (syms_of_buffer): Doc fixes.
e3059a5d 10108
048addec 101092001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
e3059a5d 10110
048addec 10111 * print.c (prin1, print): Doc fix.
e3059a5d 10112
048addec 101132001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
b3700ae7 10114
048addec
JD
10115 * fontset.h: Remove declarations of variables
10116 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
b3700ae7 10117
048addec
JD
10118 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
10119 `Vclip_large_size_font'.
eae936e2 10120
048addec 101212001-11-13 Jason Rumney <jasonr@gnu.org>
4bb962be 10122
048addec 10123 * w32fns.c: Doc fix.
ddb67bdc 10124
048addec 101252001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3467c402 10126
048addec 10127 * xfaces.c (Fface_attributes_as_vector): Doc fix.
3467c402 10128
048addec 10129 * fns.c: Doc fix.
6e1b91d7 10130
048addec 10131 * emacs.c: Doc fix.
1c1d3d69 10132
048addec 10133 * coding.c: Doc fix.
1c1d3d69 10134
048addec
JD
10135 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
10136 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
10137 `new style' [w/`doc:' keyword].
b6f4c7ba 10138
048addec 101392001-11-12 Richard M. Stallman <rms@gnu.org>
b6f4c7ba 10140
048addec
JD
10141 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
10142 LeaveNotify events. Only FocusIn and FocusOut do that now.
10143 (x_display_and_set_cursor): Do display hollow cursors in active
10144 minibuffer windows when they are not selected.
b6f4c7ba 10145
048addec 101462001-11-12 Jason Rumney <jasonr@gnu.org>
a89f435d 10147
048addec
JD
10148 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
10149 * w32term.c: Change doc-string comments to `new style'.
10150 [w/`doc:' keyword]. Doc fixes.
a89f435d 10151
048addec
JD
10152 * w32fns.c: Don't define max.
10153 (Fx_open_connection): Only execute once.
a4cd0cd7 10154
048addec 101552001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
eafb659a 10156
048addec
JD
10157 * ccl.c: Change macros to use do-while block instead of if-else.
10158 Use braces to follow GNU Coding Standards.
eafb659a 10159
048addec 101602001-11-11 Richard M. Stallman <rms@gnu.org>
a4cd0cd7 10161
048addec 10162 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
a4cd0cd7 10163
048addec 10164 * lread.c (read_escape): Use end_of_file_error for reporting eof.
a4cd0cd7 10165
048addec
JD
10166 * insdel.c (replace_range): Use adjust_markers_for_replace
10167 instead of adjust_markers_for_delete and adjust_markers_for_insert.
a4cd0cd7 10168
048addec 10169 * intervals.h: Declare set_text_properties and set_text_properties_1.
a4cd0cd7 10170
048addec
JD
10171 * textprop.c (set_text_properties_1): New subroutine
10172 broken out of set_text_properties.
10173 (set_text_properties): Use set_text_properties_1.
91823618 10174
048addec
JD
10175 * intervals.c (graft_intervals_into_buffer):
10176 Use set_text_properties_1 to clear out properties.
91823618 10177
048addec
JD
10178 * search.c (Freplace_match): Use replace_range to insert
10179 and delete. Don't request property inheritance from
10180 surrounding text.
86928dfb 10181
048addec 101822001-11-10 Jason Rumney <jasonr@gnu.org>
86928dfb 10183
048addec
JD
10184 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
10185 vertical fonts. Allow them if face name is explicitly specified.
10186 Do not give up if we find a font that cannot be converted to an xlfd.
40ef1eda 10187
048addec 101882001-11-10 Gerd Moellmann <gerd@gnu.org>
ab8469eb 10189
048addec
JD
10190 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
10191 instead of malloc/free.
a78e0303 10192
048addec 101932001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
40ef1eda 10194
048addec
JD
10195 * xfaces.c (merge_face_vectors): Use braces to follow GNU
10196 Coding Standards.
10197 (Finternal_set_lisp_face_attribute): Likewise.
fabf4a91 10198
048addec 10199 * buffer.c (Fbury_buffer): Likewise.
0c99b139 10200
048addec 10201 * indent.c (current_column_1): Remove unused variable `prev_col'.
0c99b139 10202
048addec
JD
10203 * coding.c (encode_coding): Use precomputed value of `src'.
10204 (encode_coding): Remove unused variable `src_end'.
10205 (code_convert_region): Remove unused variables `count'.
830ddd77 10206
048addec 102072001-11-07 Jason Rumney <jasonr@gnu.org>
830ddd77 10208
048addec
JD
10209 * w32term.c (x_display_and_set_cursor): Do not move system caret
10210 if cursor_glyph is NULL.
55c6d645 10211
048addec 102122001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
55c6d645 10213
048addec 10214 * keymap.c (access_keymap): Fix compilation error.
5de38842 10215
048addec 102162001-11-07 Miles Bader <miles@gnu.org>
7a4564a4 10217
048addec 10218 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
5de38842 10219
048addec 102202001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4fa23df5 10221
048addec
JD
10222 * intervals.c (graft_intervals_into_buffer):
10223 Remove #ifdef'd-out code.
10224 (graft_intervals_into_buffer): Remove unused variable `middle'.
4fa23df5 10225
048addec
JD
10226 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
10227 code (eval-current-buffer).
10228 Change doc-string comments to `new style' [w/`doc:' keyword].
7a6a97d7 10229
048addec 102302001-11-06 Richard M. Stallman <rms@gnu.org>
c191d13c 10231
048addec 10232 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
7a6a97d7 10233
048addec 102342001-11-06 Stefan Monnier <monnier@cs.yale.edu>
44dc78e0 10235
048addec 10236 * lread.c (read1): Fix behavior with nested backquoting.
44dc78e0 10237
048addec
JD
10238 * keyboard.c (make_lispy_event): Check integerness and fix
10239 Lisp_Object/int mixup.
17893c65 10240
048addec 102412001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4d994a79 10242
048addec 10243 * fns.c (copy_hash_table): Remove unused variable `v'.
d5360cc7 10244
048addec
JD
10245 * fontset.c (fontset_font_pattern): Remove unused variable
10246 `family_registry'.
d5360cc7 10247
048addec 10248 * indent.c (current_column_1): Remove unused variable `prev_col'.
d5360cc7 10249
048addec 102502001-11-05 Richard M. Stallman <rms@gnu.org>
96238a5a 10251
048addec 10252 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
96238a5a 10253
048addec
JD
10254 * buffer.c (Fkill_buffer): Don't delete auto save file
10255 if buffer is modified.
d9d54213 10256
048addec 102572001-11-05 Andrew Innes <andrewi@gnu.org>
d9d54213 10258
048addec
JD
10259 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
10260 CHECK_NUMBER_CDR.
b116830b 10261
048addec 102622001-11-05 Richard M. Stallman <rms@gnu.org>
b116830b 10263
048addec 10264 * unexelf.c (unexec): Minor changes; clean up comments.
3297e2a1 10265
048addec 102662001-11-05 Sam Steingold <sds@gnu.org>
3297e2a1 10267
048addec 10268 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
6fb8339c 10269
048addec 102702001-11-05 Andreas Schwab <schwab@suse.de>
6fb8339c 10271
048addec 10272 * sound.c (sound_perror): Save errno from being clobbered.
7dd73b78 10273
048addec 102742001-11-05 Dale Hagglund <rdh@yottayotta.com>
7dd73b78 10275
048addec
JD
10276 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
10277 the program image directly.
982f6c7e 10278
048addec 102792001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d31053f9 10280
048addec 10281 * buffer.h (Fbuffer_local_value): Add prototype.
d31053f9 10282
048addec 102832001-11-04 Richard M. Stallman <rms@gnu.org>
d31053f9 10284
048addec
JD
10285 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
10286 and CHECK_BUFFER.
d31053f9 10287
048addec
JD
10288 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
10289 (record_char): Likewise.
d31053f9 10290
048addec
JD
10291 * keyboard.c (make_lispy_event): Don't insist a drag event must
10292 move to a different buffer position. Instead, check for moving at
10293 least double_click_fuzz.
982f6c7e 10294
048addec 10295 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
830047fd 10296
048addec 10297 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
b116830b 10298
048addec
JD
10299 * indent.c (current_column_1, Fmove_to_column): Separate the code
10300 for display-table glyphs from the code for buffer text, to fix
10301 bugs in the former.
830047fd 10302
048addec 103032001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
b116830b 10304
048addec
JD
10305 * buffer.c (Fbuffer_local_value): New function.
10306 (syms_of_buffer): Defsubr it.
2df5238c 10307
048addec
JD
10308 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
10309 value of `cursor-in-non-selected-windows'.
4e397688 10310
048addec
JD
10311 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
10312 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
10313 (syms_of_xdisp): Initialize it.
48b0f3ae 10314
048addec 103152001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2df5238c 10316
048addec 10317 * xfns.c (Fx_create_frame): Doc fix.
3ecaf7e5 10318
048addec
JD
10319 * coding.c: Change doc-string comments to `new style' [w/`doc:'
10320 keyword].
3ecaf7e5 10321
048addec
JD
10322 * eval.c (top_level_value, top_level_set): Remove commented and
10323 #ifdef'd-out code.
10324 (Fdefvar): Fix usage in doc-string.
3ecaf7e5 10325
048addec 103262001-11-03 Richard M. Stallman <rms@gnu.org>
3ecaf7e5 10327
048addec 10328 * xfns.c: Include unistd.h, if it exists.
8db2e33b 10329
048addec 10330 * editfns.c: Move the include of ctype.h after unistd.h.
8db2e33b 10331
048addec 10332 * gmalloc.c: Test BROKEN_PROTOTYPES.
aed29b97 10333
048addec 103342001-11-03 Ken Raeburn <raeburn@gnu.org>
aed29b97 10335
048addec
JD
10336 * lisp.h (CHECK_STRING_CAR): New macro.
10337 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
10338 treating XCAR and XCDR as lvalues.
10339 (openp): Use CHECK_STRING_CAR.
10340 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
aed29b97 10341
048addec 103422001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
6cb16f95 10343
048addec
JD
10344 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
10345 (SIGMASKTYPE): Define.
1b1acc13 10346
048addec 10347 * syssignal.h (sigunblock): Don't define if already defined.
020f9b38 10348
048addec 103492001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
020f9b38 10350
048addec
JD
10351 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
10352 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
10353 Fix typos in comments.
6cb16f95 10354
048addec
JD
10355 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
10356 and #ifdef'd-out code.
10357 Fix and reindent comments.
6cb16f95 10358
048addec 10359 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
6cb16f95 10360
048addec
JD
10361 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
10362 argument `i' in macros.
6cb16f95 10363
048addec
JD
10364 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
10365 `i' in macros.
7e9d3c2f 10366
048addec
JD
10367 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
10368 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
10369 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
10370 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
10371 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
10372 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
10373 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
10374 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
10375 in macros.
7e9d3c2f 10376
048addec
JD
10377 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
10378 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
10379 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
10380 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
10381 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
10382 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
10383 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
10384 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
10385 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
10386 (remove unused second argument).
7e9d3c2f 10387
048addec 103882001-11-02 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 10389
048addec
JD
10390 * syntax.c (describe_syntax): New wrapper.
10391 (Finternal_describe_syntax_value): Rename from describe_syntax.
10392 Don't insert space at front and \n at the end.
10393 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
e6bff182 10394
048addec
JD
10395 * regex.c (re_wctype): Try to fix some warnings.
10396 (regcomp, regexec): Don't forget the __restrict.
9ba48103 10397
048addec 103982001-11-02 Richard M. Stallman <rms@gnu.org>
9ba48103 10399
048addec 10400 * textprop.c (Fget_char_property): Doc fix.
9ba48103 10401
048addec 104022001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9ba48103 10403
048addec 10404 * process.c (Fstart_process): Add usage to doc-string.
c22e59e1 10405
048addec 10406 * data.c (Fsetq_default): Ditto.
c22e59e1 10407
048addec 10408 * callint.c (Finteractive): Ditto.
9271ed2c 10409
048addec 104102001-11-01 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 10411
048addec
JD
10412 * macros.c: Don't include keymap.h any more.
10413
104142001-11-01 Richard M. Stallman <rms@gnu.org>
10415
10416 * data.c (Fmake_local_variable): Doc fix.
10417
10418 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
10419 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
e6bff182 10420
048addec 10421 * keymap.c (Fdescribe_buffer_bindings): Print character property
9271ed2c
RS
10422 bindings along with or instead of the buffer local map.
10423 Make the overriding maps override what they should.
10424
f00691a3 104252001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8b8bd9c6
PJ
10426
10427 * window.c (grow_mini_window): Fix typo in comment.
10428
27188d11
GM
104292001-11-01 Gerd Moellmann <gerd@gnu.org>
10430
7b49b9d2
GM
10431 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
10432 (XTset_vertical_scroll_bar): Likewise.
10433
43f7c3ea
GM
10434 * xfns.c (x_build_heuristic_mask): Use four_corners_best
10435 instead of IMAGE_BACKGROUND.
c22e59e1 10436
b350c2e5
GM
10437 * xfns.c (four_corners_best): Reindent.
10438
c22e59e1 10439 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
27188d11
GM
10440 Handle :box so that it is possible to specify sexprs.
10441
bf00d461
EZ
104422001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
10443
10444 * s/hpux11.h: New file.
10445
f00691a3 104462001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e10df59 10447
2b209b97
PJ
10448 * emacs.c (USAGE1): Show command line option --no-window-system
10449 instead of --no-windows in usage.
10450 (standard_args): Rename --no-windows to --no-window-system.
10451 (bug_reporting_address): Follow Emacs coding conventions.
10452
9dbc9081
PJ
10453 * eval.c (Fcommandp): Doc fix.
10454 Change doc-string comments to `new style' [w/`doc:' keyword].
10455
4e10df59
PJ
10456 * frame.c (Fframe_live_p): Doc fix.
10457
10458 * buffer.c (selective-display-ellipses): Doc fix.
10459
dd387b25
GM
104602001-10-31 Gerd Moellmann <gerd@gnu.org>
10461
fe957e65
GM
10462 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
10463
dd387b25
GM
10464 * xfaces.c (realize_x_face): If C is not a single-byte character,
10465 set the face's colors_copied_bitwise_p instead of the defaulted_p
10466 members which have a different meaning.
10467 (free_face_colors): Do nothing for a face whose colors have been
10468 copied bitwise.
10469
c22e59e1 10470 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
dd387b25 10471
f00691a3 104722001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2e1280f8 10473
687784e8
PJ
10474 * marker.c, mocklisp.c: Change doc-string comments to `new style'
10475 [w/`doc:' keyword].
2e1280f8 10476
b9d9a9b9
GM
104772001-10-31 Gerd Moellmann <gerd@gnu.org>
10478
10479 * fns.c (require_unwind): Return Lisp_Object.
10480
f00691a3 104812001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
48400103 10482
fa1361cb
PJ
10483 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
10484 (last-input-char): Revert doc-string to be the same as the
10485 doc-string of `last-input-event'.
10486
6c465a15 10487 * xdisp.c: Fix typos in comments.
48400103 10488
eafa3196
GM
104892001-10-31 Gerd Moellmann <gerd@gnu.org>
10490
10491 * window.c (grow_mini_window): Handle case that the root
10492 window is already smaller than the nominal mininum height.
10493
747d3f2a
SM
104942001-10-30 Stefan Monnier <monnier@cs.yale.edu>
10495
bf9bb76f
SM
10496 * emacs.c (main): Don't call keys_of_macros any more.
10497
10498 * lisp.h (keys_of_macros): Remove.
10499
10500 * macros.c (keys_of_macros): Remove.
10501
747d3f2a
SM
10502 * xfaces.c (Fface_attribute_relative_p): Declare args.
10503
5e905a57
JR
105042001-10-30 Jason Rumney <jasonr@gnu.org>
10505
10506 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
10507 (enum_font_cb2): Ignore fonts with vertical orientation.
10508
3a426197
RS
105092001-10-30 Richard M. Stallman <rms@gnu.org>
10510
10511 * keyboard.c (Finput_pending_p): Doc fix.
10512
a742d646
GM
105132001-10-30 Gerd Moellmann <gerd@gnu.org>
10514
259cf6bc
GM
10515 * xterm.c (x_after_update_window_line): Don't run the code
10516 clearing in borders for rows whose visible height is 0.
10517
3f99f948
GM
10518 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
10519 resized_p flag is set. If not set, use the much less flickering
10520 method previously used.
10521
10522 * dispnew.c (change_frame_size_1): Set frame's resized_p.
10523
10524 * frame.h (struct frame) <resized_p>: New member.
10525
b4a3be43
GM
10526 * lread.c (to_multibyte): Ensure read_buffer is at least twice
10527 as large as the number of bytes to convert.
747d3f2a 10528
a742d646
GM
10529 * lread.c (to_multibyte): New function.
10530 (read1): Use it.
10531
cacbb9e9
EZ
105322001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
10533
10534 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
10535
99cb6b2f
GM
105362001-10-30 Gerd Moellmann <gerd@gnu.org>
10537
327f42ee 10538 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
747d3f2a
SM
10539 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
10540 if the row's fill_line_p is set and drawing the last glyph with
10541 DRAW_IMAGE_{RAISED,SUNKEN}.
327f42ee 10542
99cb6b2f
GM
10543 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
10544
8e8223e2
SM
105452001-10-29 Stefan Monnier <monnier@cs.yale.edu>
10546
10547 * xmenu.c: Include coding.h and charset.h.
10548 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
10549 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
10550 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
10551 Explicitly set wv->help. Use `TRUE' rather than `True'.
10552 (menu_help_callback): Use empty_string.
10553
10554 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
10555 (Fx_popup_dialog): Explicitly init f.
10556 (w32_menu_display_help): Use empty_string.
10557
4d083a8f
RS
105582001-10-29 Richard M. Stallman <rms@gnu.org>
10559
b2304472
RS
10560 * fns.c (Frequire): Detect recursive try to require the same
10561 feature 3 or more levels deep, and get error.
10562 (require_unwind): New subroutine.
10563 (require_nesting_list): New variable.
10564 (syms_of_fns): Init and staticpro it.
10565
4d083a8f
RS
10566 * print.c (print_object): Clarify indication of insertion type.
10567
2fe41216
EZ
105682001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
10569
90480000
EZ
10570 * coding.c (syms_of_coding): Document that locale-coding-system is
10571 used for decoding input on X.
10572
2fe41216
EZ
10573 * window.c (Fscroll_left, Fscroll_right): Doc fix.
10574
f00691a3 105752001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
74e79967
PJ
10576
10577 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
10578 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
10579
60ebcfe8
GM
105802001-10-29 Gerd Moellmann <gerd@gnu.org>
10581
9a7bdceb
GM
10582 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
10583 use NO_CURSOR if cursor_in_non_selected_windows is false.
10584
3f08fcd2
GM
10585 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
10586 the slant attribute if FRAME is t.
10587
0ccfdad2
GM
10588 * xfns.c (x_set_internal_border_width): Set frame garbaged
10589 when X window doesn't exist yet.
10590
ef253080
GM
10591 * xterm.c (x_after_update_window_line): Clear internal border
10592 in different circumstances.
b116830b 10593
60ebcfe8
GM
10594 * xterm.c (XTread_socket) <KeyPress>: Don't use
10595 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
10596 <handa@etl.go.jp>.
10597
73d25f9c
EZ
105982001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
10599
10600 * m/ibms390.h: New file. From Adam Thornton
10601 <athornton@sinenomine.net>.
10602
cac1daf0
GM
106032001-10-28 Gerd Moellmann <gerd@gnu.org>
10604
053b3256 10605 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
b116830b 10606
cac1daf0
GM
10607 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
10608 a loop counter.
10609
f00691a3 106102001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13b1a09c 10611
186486eb
PJ
10612 * emacs.c: Use argv[0] instead of emacs when -t was specified.
10613
4707d2d0
PJ
10614 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
10615 keyword].
10616 Fix typos in comments.
b116830b 10617
d883731c
PJ
10618 * emacs.c (bug_reporting_address): New function.
10619 Use it when displaying usage message.
10620
04012254
PJ
10621 * minibuf.c (read_minibuf): Remove unused external declaration of
10622 variable `Qread_only'.
10623
13b1a09c
PJ
10624 * keymap.c (access_keymap): Remove unused variable `charset'.
10625
5bbf4378
MB
106262001-10-28 Miles Bader <miles@gnu.org>
10627
10628 * xfaces.c (merge_face_heights): Handle TO being relative as well.
10629 Remove #ifdef'd-out code.
10630 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
10631 (syms_of_xfaces): Initialize them.
10632
1ce1e4ee
JR
106332001-10-27 Jason Rumney <jasonr@gnu.org>
10634
10635 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
10636 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
10637 position using the system caret.
10638
10639 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
10640 (w32_system_caret_height, w32_system_caret_x)
10641 (w32_system_caret_y): New variables for tracking system caret.
10642 (w32_initialize): Initialize them.
c2d53558 10643 (x_display_and_set_cursor): Make system caret follow the active cursor.
1ce1e4ee 10644
c2d53558
SM
10645 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
10646 New messages types.
1ce1e4ee
JR
10647
10648 * w32term.c (note_mouse_highlight): Clear old help_echo.
10649
f00691a3 106502001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e30ce42 10651
bb4600a4
PJ
10652 * xterm.c: Fix typo in a comment.
10653
7db35a48
PJ
10654 * emacs.c: Fix typos in comments.
10655 Remove unnecessary spaces.
10656 Change doc-string comments to `new style' [w/`doc:' keyword].
10657 (USAGE2): Fix typos in usage string.
10658
a7248e4f
PJ
10659 * xterm.c: Fix typo in a comment.
10660
4e30ce42
PJ
10661 * lisp.h: (gdb_lisp_params): Remove code in #if 0 which is now in
10662 emacs.c.
10663
62725a92
GM
106642001-10-27 Gerd Moellmann <gerd@gnu.org>
10665
798dbe1f 10666 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
c2d53558 10667 instead of 1/2 line_height in the heuristic for skipping
798dbe1f
GM
10668 farther backward when target_y was not reached.
10669
62725a92
GM
10670 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
10671 Display errno only if non-zero.
10672 (sound_warning): New function.
10673 (vox_configure): Don't treat failing to set sample rate as error.
10674 (various places): Improve error messages.
10675
d4e34d24
EZ
106762001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
10677
944e6f60
EZ
10678 * fileio.c (Faccess_file): Run the argument filename through
10679 Fexpand_file_name, before using it.
10680
d4e34d24
EZ
10681 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
10682 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
10683
38d2af0c
GM
106842001-10-26 Gerd Moellmann <gerd@gnu.org>
10685
da80a8d5
GM
10686 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
10687
38d2af0c
GM
10688 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
10689 Fix clearing in the case of scroll bars on the right.
c2d53558 10690
45de4a6f 106912001-10-26 Juanma Barranquero <lektu@terra.es>
56f508dd
EZ
10692
10693 * w32gui.h (XImage): Add a dummy typedef.
10694
fbd5ceb2
GM
106952001-10-26 Gerd Moellmann <gerd@gnu.org>
10696
c2d53558 10697 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
fbd5ceb2 10698
b23236fb
EZ
106992001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
10700
10701 * frame.c (Fframe_parameter): Fix last change.
10702
5d991fc4
EZ
10703 * fileio.c: Revert last change (which removed old commented-out
10704 version of expand-file-name). Add a comment that explains why
10705 this old version should not be removed.
10706
879eadc3
GM
107072001-10-25 Gerd Moellmann <gerd@gnu.org>
10708
75700ff2
GM
10709 * frame.c (Fframe_parameter): Fix a bug whereby some
10710 ``artificial'' frame parameters, like `minibuffer' were not
10711 obtained by calling Fframe_parameters.
10712
dfe92a6a
GM
10713 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
10714 cursor differently.
10715
879eadc3
GM
10716 * xdisp.c (move_it_vertically_backward): Compute line height
10717 differently. Add heuristic to try to be more compatible to 20.x.
10718
e1010ebe
SM
107192001-10-25 Stefan Monnier <monnier@cs.yale.edu>
10720
d73a471b
SM
10721 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
10722
d6da5a06
GM
10723 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
10724 boolean.
e1010ebe 10725
f66bd220
MB
107262001-10-25 Miles Bader <miles@gnu.org>
10727
10728 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
10729 BG is a pointer to a structure, not a structure.
10730 (gif_format, png_format): Add missing commas.
10731
d436d538
RS
107322001-10-24 Richard M. Stallman <rms@gnu.org>
10733
10734 * xfaces.c (Fface_attributes_as_vector): New function.
c2d53558 10735 (syms_of_xfaces): Defsubr it.
d436d538 10736
f00691a3 107372001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
075c507b
PJ
10738
10739 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
10740 variable `area'.
10741
f00691a3 107422001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d492b584 10743
c2d53558 10744 * search.c (scan_newline): Remove unused variable `selective_display'.
d492b584 10745
e2a57b34
MB
107462001-10-25 Miles Bader <miles@gnu.org>
10747
10748 * dispextern.h (struct image): Add `background',
10749 `background_valid', and `background_transparent' fields.
10750 (image_background, image_background_transparent): New declarations.
10751 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
10752 * xfns.c (image_background, image_background_transparent)
10753 (four_corners_best): New functions.
c2d53558 10754 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
e2a57b34
MB
10755 (gs_format): Add `:background' entry.
10756 (lookup_image): Set IMG's background color if specified.
10757 (pbm_load, xbm_load_image, png_load): Set IMG's background field
10758 when appropriate.
10759 (x_clear_image_1): Reset `background_valid' and
10760 `background_transparent_valid' fields.
10761 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
10762 calculating it here. Set IMG's background_transparent field.
10763 (enum xpm_keyword_index): Add XPM_BACKGROUND.
10764 (enum png_keyword_index): Add PNG_BACKGROUND.
10765 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
10766 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
10767 (enum gif_keyword_index): Add GIF_BACKGROUND.
10768 (enum gs_keyword_index): Add GS_BACKGROUND.
c2d53558 10769 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
e2a57b34
MB
10770 Pre-calculate image background color where necessary.
10771 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
10772 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
10773 color to use for image glyph reliefs.
10774
b547b6e8
GM
107752001-10-24 Gerd Moellmann <gerd@gnu.org>
10776
d9e3b8c6
GM
10777 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
10778 in full-width rows.
c2d53558 10779
b547b6e8
GM
10780 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
10781 Fix clearing of area not covered by scroll bar.
10782
f00691a3 107832001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2beb36f9
PJ
10784
10785 * xterm.c: (x_insert_glyphs): Remove unused variables `real_end'
10786 and `real_start'.
c2d53558 10787 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
2beb36f9
PJ
10788 (glyph_rect): Remove unused variable `area'.
10789
76cb5e06
GM
107902001-10-24 Gerd Moellmann <gerd@gnu.org>
10791
bdbdebff 10792 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
c2d53558
SM
10793
10794 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
10795 (row_containing_pos): Take additional argument DY.
10796 Treat rows ending in middle of char differently.
62e33982
GM
10797 (display_line): Handle tabs on window systems differently.
10798
10799 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
10800 with additional argument.
10801
10802 * dispextern.h (row_containing_pos): Adjust prototype.
10803
76cb5e06
GM
10804 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
10805 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
10806 (try_window_id, try_window_reusing_current_matrix)
10807 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
6c465a15 10808 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
76cb5e06 10809
f00691a3 108102001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
996fee11 10811
c9e60620
PJ
10812 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
10813 gnuemacs).
10814 (HAVE_BOXES): Fix typo in comment.
10815 (push_menu_pane): Fix typo in comment.
10816
3b552d56
PJ
10817 * xdisp.c: (display_prop_string_p): Remove unused local declaration
10818 of `Qwhen'.
10819 (single_display_prop_string_p): Remove unused local declarations
10820 of `Qwhen' and `Qmargin'.
10821 (string_buffer_position): Remove unused variable `around'.
10822 (store_frame_title): Remove unused variable `width'.
10823
15c565ac
PJ
10824 * window.c: Don't define max.
10825 (coordinates_in_window): Remove unused variable `uy'.
10826
a8818eb9
PJ
10827 * widget.c: Don't define max.
10828
996fee11
PJ
10829 * process.c: Don't define max.
10830 (create_process): Remove unused variable `buffer'.
10831
496e1a5b
GM
108322001-10-23 Gerd Moellmann <gerd@gnu.org>
10833
c2d53558 10834 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
496e1a5b 10835
5905ae8b
EZ
108362001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
10837
10838 * xfaces.c (Finternal_set_lisp_face_attribute)
10839 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
10840 frame is on a windowed display.
10841
24db49fb
GM
108422001-10-23 Gerd Moellmann <gerd@gnu.org>
10843
c2d53558
SM
10844 * dispnew.c (sync_window_with_frame_matrix_rows):
10845 Fix handling of windows which aren't full-width, fix handling
c51488cd
GM
10846 of marginal areas.
10847
c2d53558 10848 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
24db49fb 10849
f0487f05
EZ
108502001-10-23 Andreas Schwab <schwab@suse.de>
10851
10852 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
10853 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
10854
f0a48a01
GM
108552001-10-23 Gerd Moellmann <gerd@gnu.org>
10856
c2d53558 10857 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
f0a48a01
GM
10858 REAL_END. Notice if cursor gets overwritten.
10859 (notice_overwritten_cursor): Take X positions as parameters.
10860 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
10861 around call to x_draw_glyphs.
10862
f00691a3 108632001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
a50a10a0 10864
fc11dff0
PJ
10865 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
10866 instead of C) and usage.
a50a10a0 10867
fc11dff0
PJ
10868 * editfns.c (char-to-string): Fix argument names (use CHAR instead
10869 of C) and usage.
a50a10a0
PJ
10870
10871 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
10872 `left', `max_width' and `max_height'.
10873
8738febd
GM
108742001-10-23 Gerd Moellmann <gerd@gnu.org>
10875
10876 * xdisp.c (display_line): For a tab continued to the next line,
10877 set row's ends_in_middle_of_char_p.
10878
653c329b
GM
108792001-10-22 Gerd Moellmann <gerd@gnu.org>
10880
10881 * xdisp.c (display_line): Fix computation of continuation lines
10882 width for TABs.
10883
f00691a3 108842001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
f958c5ac 10885
7ba51063
PJ
10886 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
10887 `Qlaplace'.
10888
f958c5ac
PJ
10889 * fileio.c: Remove unused code.
10890
eb360291
MB
108912001-10-22 Miles Bader <miles@gnu.org>
10892
10893 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
10894 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
10895 Remove `DOC_STRINGS_IN_COMMENTS' cases.
10896
98515cf0
JR
108972001-10-21 Jason Rumney <jasonr@gnu.org>
10898
10899 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
10900
93026d88
EZ
109012001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
10902
10903 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
10904 (Finsert_string): Avoid the multi-line string literals warning.
10905
c9a95b79
MB
109062001-10-22 Miles Bader <miles@gnu.org>
10907
10908 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
10909 (Fdocumentation): Don't use it.
10910 (syms_of_doc): Don't initialize it.
10911
10912 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
10913 * print.c (Fwith_output_to_temp_buffer): Likewise.
10914 * window.c (Fsave_window_excursion): Likewise.
c2d53558 10915 * editfns.c (Fsave_excursion, Fsave_current_buffer)
c9a95b79 10916 (Fsave_restriction): Likewise.
c2d53558
SM
10917 * eval.c (Frun_hooks, Frun_hook_with_args)
10918 (Frun_hook_with_args_until_failure)
10919 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
10920 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
10921 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
c9a95b79
MB
10922 (Funwind_protect, Fcondition_case): Likewise.
10923 * coding.c (Ffind_operation_coding_system): Likewise.
10924 * keyboard.c (Ftrack_mouse): Likewise.
10925
a3b10252
MB
109262001-10-21 Miles Bader <miles@gnu.org>
10927
c2d53558 10928 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
a3b10252
MB
10929 (Fmake_hash_table): Add usage: string to doc string.
10930 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
c2d53558 10931 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
a3b10252
MB
10932 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
10933 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
10934 (Fml_prefix_argument_loop): Likewise.
10935
f00691a3 109362001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c6f73eec 10937
c2d53558 10938 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
888ebd13 10939
c6f73eec
PJ
10940 * sysdep.c (init_sys_modes): Change doc-string comments to `new
10941 style' [w/`doc:' keyword].
10942
10943 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
10944 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
10945 comments to `new style' [w/`doc:' keyword].
10946
3cf3436e
JR
109472001-10-21 Jason Rumney <jasonr@gnu.org>
10948
10949 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
10950
c169b8f1
JR
10951 * w32term.c (remember_mouse_glyph): New function.
10952 (w32_mouse_position): Use it.
10953 (note_mouse_movement): If the mouse moved off the glyph, remember
10954 its new position.
c2d53558 10955
4fdd691b
JR
10956 * w32term.h (struct w32_output): Correct spelling of x_compatible.
10957 (w32_display_info): Add mouse_face_overlay.
10958
c169b8f1
JR
10959 * w32term.c (notice_overwritten_cursor): Renamed from
10960 note_overwritten_text_cursor. Rewritten to take glyph widths into
10961 account.
10962 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
10963 (fast_find_string_pos): New function.
10964 (fast_find_position): Return the correct vpos. Add parameter
10965 STOP. In the final row, stop before glyphs having STOP as object.
10966 Don't consider glyphs that are not from a buffer.
10967 (fast_find_position) [0]: Add a presumably more correct version
10968 for after 21.1.
10969 (expose_window_tree, expose_frame): Don't compute intersections here.
10970 (expose_window): Do it here instead.
10971 (expose_window_tree, expose_window, expose_line): Return 1 when
10972 overwriting mouse-face.
10973 (expose_window): If W is the window currently being updated, mark
10974 the frame garbaged.
10975 (expose_frame): If mouse-face was overwritten, redo it.
10976 (x_use_underline_position_properties): New variable.
10977 (syms_of_xterm): DEFVAR_BOOL it.
10978 (x_draw_glyph_string): Add comment to use it in future.
10979 (x_draw_glyph_string): Restore clipping after drawing box.
10980 Fix a computation of the underline position.
10981 (w32_get_glyph_string_clip_rect): Minor cleanup.
10982 (x_fill_stretch_glyph_string): Remove an assertion.
10983 (x_produce_glyphs): Don't convert multibyte characters
10984 to unibyte characters in unibyte buffers.
10985 (cursor_in_mouse_face_p): New function.
10986 (x_draw_stretch_glyph_string): Use it to choose a different GC
10987 when drawing a cursor within highlighted text. Don't draw
10988 background again if it has already been drawn.
10989 (x_draw_glyph_string_box): Don't draw a full-width
10990 box just because the glyph row's full_width_p flag is set.
10991 (x_draw_glyphs): Fix computation of rightmost x for
10992 full-width rows.
10993 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
10994 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
10995 change bottom shadow accordingly. Some cleanup.
10996 (x_update_window_end): Handle overwritten mouse face
10997 also for tool bar windows.
10998 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
10999 DRAW is DRAW_IMAGE_RAISED.
11000 (clear_mouse_face): Return 1 if text with mouse face was
2c568af5
SM
11001 actually redrawn. Make the function static.
11002 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
c169b8f1
JR
11003 optimize away highlighting if we pass over that same overlay again.
11004 (note_mouse_highlight): Call mouse_face_overlay_overlaps
11005 to detect a case where we have to highlight a different region
11006 despite not having left the currently highlighted region.
11007 Set mouse_face_overlay in the x_display_info. Avoid changing the
11008 mouse pointer shape when show_mouse_face has already done it, or
11009 there is no need. Handle mouse-face and help-echo in strings.
11010 (glyph_rect): New function.
11011 (w32_mouse_position): Use it to raise the threshold for mouse
11012 movement event generation.
11013 (w32_initialize_display_info): Initialize the x_display_info's
11014 mouse_face_overlay.
11015 (w32_set_vertical_scroll_bar): Don't clear a zero height
11016 or width area.
11017 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
11018 a widget to zero height.
11019
3cf3436e 11020 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
4fdd691b 11021 Protect unibyte strings created by replacing their multibyte
3cf3436e
JR
11022 equivalents in menu_items.
11023 (w32_menu_show): Don't overwrite an item's name with its key
11024 description in case the description is a multibyte string.
11025 (single_submenu): Some cleanup.
11026
11027 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
11028 (postprocess_image): New function.
11029 (lookup_image): Call it for all image types except PostScript.
11030 (x_kill_gs_process): Call postprocess_image.
11031 (tiff_error_handler, tiff_warning_handler): New functions.
11032 (tiff_load): Install them as handlers.
11033 (x_kill_gs_process): Recognize if someone has cleared the image
11034 cache under us.
11035 (valid_image_p): Protect better against invalid image
11036 specifications. Previous code could signal an error.
11037 (Fx_hide_tip, Fshow_tip): Doc fix.
11038 (Fv_max_tooltip_size): New variable.
11039 (syns_of_xfns): DEFVAR_LISP it.
11040 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
11041 window buffer to *tip* right after creating the frame. Set frame's
11042 window_width. Use a maximum tooltip size specified by
11043 Vx_max_tooltip_size, if that has valid contents.
11044 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
11045 Make sure the tooltip is completely visible.
11046 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
11047 (Fx_create_frame): Adjust the frame's height for presence
11048 of the tool bar before calling x_figure_window_size.
11049 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
11050 when the window gets smaller.
11051 (x_set_foreground_color): Set frame's cursor_pixel.
11052 (x_set_foreground_color, x_set_background_color): Cleaned up.
11053 (x_set_font): Handle case of x_new_fontset returning the same name
11054 as before, although there was a change in fontsets.
11055
386ca361
MB
110562001-10-21 Miles Bader <miles@gnu.org>
11057
c2d53558 11058 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
386ca361
MB
11059 (Flogxor): Add usage: string to doc string.
11060 * charset.c (Fstring): Likewise.
11061 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
11062 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
11063
f00691a3 110642001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14ff1ee0 11065
03be2694
PJ
11066 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
11067
11068 * alloc.c: Reindent DEFUNs with doc: keywords.
11069
11070 * abbrev.c (Finsert_abbrev_table_description): Reindent.
11071
14ff1ee0
PJ
11072 * frame.c: Change doc-string comments to `new style' [w/`doc:'
11073 keyword].
11074
2f147815 11075See ChangeLog.9 for earlier changes.
6922b018
KH
11076
11077;; Local Variables:
49b3bd82 11078;; coding: iso-2022-7bit
6922b018 11079;; End:
2a34a036 11080
2f147815 11081 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
2a34a036
GM
11082 Copying and distribution of this file, with or without modification,
11083 are permitted provided the copyright notice and this notice are preserved.
ab5796a9
MB
11084
11085;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4