(Documentation Tips): Fix typo.
[bpt/emacs.git] / src / ChangeLog
CommitLineData
f8125c39
EZ
12004-02-21 Eli Zaretskii <eliz@elta.co.il>
2
3 * emacs.c (USAGE1): Split into two halves.
4 (USAGE2): Second half of the old USAGE1.
5 (USAGE3): Renamed from USAGE2.
6 (USAGE4): Renamed from USAGE3.
7
4effffca
EZ
82004-02-21 Juri Linkov <juri@jurta.org>
9
10 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
11 Fix --multibyte. Move --help, --version to USAGE2. Add alias
12 --file. Fix -f, -l. Sort options. Untabify.
13 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
14
923c1e6f
LT
152004-02-19 Luc Teirlinck <teirllm@auburn.edu>
16
17 * category.c (Fdefine_category, Fcategory_docstring)
18 (Fget_unused_category, Fset_category_table)
19 (Fcategory_set_mnemonics): Doc fixes.
20
b0e225fd
KS
212004-02-20 Kim F. Storm <storm@cua.dk>
22
23 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
24 The following changes are relative to the 2004-01-21 revision.
25 (NREAD_INPUT_EVENTS): Define as max number of input events to read
26 in one call to read_socket_hook. Value is 8.
27 (read_avail_input): Separate and rework handling of read_socket_hook
28 and non-read_socket_hook cases. Use smaller input_event buffer
29 in read_socket_hook case, and repeat if full buffer is read. Use
923c1e6f 30 new local variable 'discard' to skip input after C-g.
b0e225fd
KS
31 In non-read_socket_hook case, just use a single input_event, and
32 call kbd_buffer_store_event on the fly for each character.
33
b15aa9f9
SM
342004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
35
36 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
37 Remove unused `gu' alternative.
38
83c9aa95
AS
392004-02-19 Andreas Schwab <schwab@suse.de>
40
41 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
42 warning.
43
cc808173
KS
442004-02-18 Kim F. Storm <storm@cua.dk>
45
46 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
47 Fix last change.
48
ab90a54d
KS
492004-02-17 Kim F. Storm <storm@cua.dk>
50
b26f249f
KS
51 * xdisp.c (fast_find_position): Fix return value of new version;
52 it was inverted compared to the 21.1 version.
53 (get_window_cursor_type): Don't look at glyph if NULL.
54 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
0bf7d005 55
ab90a54d
KS
56 * keyboard.c: Rework previous change; it didn't consider that the
57 buf array was allocated on the stack.
58 (prev_read): Remove variable.
59 (read_avail_input_buf): New static event buffer array.
b9568dfc 60 (in_read_avail_input): New static variable to handle re-entrancy.
ab90a54d 61 (read_avail_input): Change buf to pinter to read_avail_input_buf.
b9568dfc
KS
62 Use in_read_avail_input to handle re-entrance; when re-entered,
63 fully initialize and use tmp_buf array instead of read_avail_input_buf.
64 Do not initialize read_avail_input_buf in full here; instead assume it
ab90a54d
KS
65 is always cleared on entry. To ensure that, we clear (just) the
66 entries that were used before we return.
67 (init_keyboard): Initialize read_avail_input_buf here.
68
4e039f3f
EZ
692004-02-16 Jesper Harder <harder@ifa.au.dk> (tiny change)
70
71 * cmds.c (Fend_of_line): Doc fix.
72
7b5368c1
EZ
732004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
74
75 * keyboard.c (prev_read): New static variable.
76 (read_avail_input): Use it to zero out only those slots in buf[]
77 that were used last time we were called.
78
ca4bc494
EZ
792004-02-16 Eli Zaretskii <eliz@elta.co.il>
80
81 * Makefile.in (obj): Move fringe.o from here...
82 (XOBJ, MAC_OBJ): ...to here.
83
159c348e
SE
842004-02-16 Stephen Eglen <stephen@gnu.org>
85
86 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
87
d2f14999
SM
882004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
89
b15aa9f9
SM
90 * data.c (Fbyteorder):
91 * fringe.c (Fdefine_fringe_bitmap):
92 * xdisp.c (handle_single_display_prop):
d2f14999
SM
93 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
94
8d50508a
JR
952004-02-16 Jason Rumney <jasonr@gnu.org>
96
97 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
98
dd4497dc
ST
992004-02-15 Steven Tamm <steventamm@mac.com>
100
101 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
102 controlling emulation of a three button mouse with option and
103 command keys.
104 (Qreverse, mac_get_enumlated_btn): Handle the emulation
b15aa9f9 105 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
dd4497dc 106
c9159cb3
KS
1072004-02-15 Kim F. Storm <storm@cua.dk>
108
2cc52658
KS
109 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
110
c9159cb3
KS
111 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
112 Perform byte-swapping.
113
12fde2dc
KS
1142004-02-14 Kim F. Storm <storm@cua.dk>
115
116 * dispextern.h (struct draw_fringe_bitmap_params): Change member
117 bits from char to short to facilitate wider bitmaps.
118 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
119 member.
120
121 * fringe.c (struct fringe_bitmap): Change member bits from char to
122 short to facilitate 16 bits wide bitmaps. Modify all standard
123 bitmaps accordingly.
124 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
125 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
126 (draw_fringe_bitmap): Ditto.
127 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
128 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
129 handle up to 16 bits wide bitmaps.
130 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
f21a7192 131 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
12fde2dc
KS
132
133 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
134 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
135 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
136
137 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
138 so it is no longer necessary to expand them here.
139
140 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
141
9d7271e8
KS
1422004-02-12 Kim F. Storm <storm@cua.dk>
143
144 * window.c (Fwindow_fringes): Doc fix.
145
706c1e4f
JD
1462004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
147
148 * xselect.c (x_get_foreign_selection): Add new optional parameter
149 time_stamp.
150 (Fx_get_selection_internal): Ditto, pass time_stamp to
151 x_get_foreign_selection.
152
153 * data.c (Fbyteorder): New function.
154
c2d12b5d
JD
1552004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
156
157 * atimer.c: Move include stdio.h to same place as in other files.
158
159 * region-cache.c: Ditto.
160
161 * sysdep.c: Ditto.
162
163 * xfaces.c: Ditto.
164
4c1947b9
SS
1652004-02-09 Sam Steingold <sds@gnu.org>
166
167 * w32term.c (w32_draw_fringe_bitmap): Fixed a typo in the last patch.
168
82722af3
KS
1692004-02-09 Kim F. Storm <storm@cua.dk>
170
171 * fringe.c: New file. Move original fringe related declarations
172 and code from dispextern.h and xdisp.c here.
173 Rework code to support user defined fringe bitmaps, redefining
174 standard bitmaps, ability to overlay user defined bitmap with
175 overlay arrow bitmap, and add faces to bitmaps.
176 (Voverflow_newline_into_fringe): Declare here.
177 (enum fringe_bitmap_align): New enum.
178 (..._bits): All bitmaps are now defined without bitswapping; that
179 is now done in init_fringe_once (if necessary).
180 (standard_bitmaps): New array with specifications for the
181 standard fringe bitmaps.
182 (fringe_faces): New array.
183 (valid_fringe_bitmap_id_p): New function.
184 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
185 (draw_fringe_bitmap): New function which draws fringe bitmap,
186 possibly overlaying bitmap with cursor in right fringe or the
187 overlay arrow in the left fringe.
188 (update_window_fringes): Do not handle overlay arrow here.
189 Compare and copy fringe bitmap faces.
190 (init_fringe_bitmap): New function.
191 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
192 define and destroy user defined fringe bitmaps.
193 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
194 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
195 (syms_of_fringe): New function. Defsubr new DEFUNs.
196 DEFVAR_LISP Voverflow_newline_into_fringe.
197 (init_fringe_once, init_fringe): New functions.
198 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
4c1947b9 199
82722af3
KS
200 * Makefile.in (obj): Add fringe.o.
201 (fringe.o): New dependencies.
202
203 * dispextern.h (FRINGE_ID_BITS): New definition for number of
204 bits allocated to hold a fringe number. Increase number of bits
205 from 4 to 8 to allow user defined fringe bitmaps.
206 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
207 left_user_fringe_face_id, right_user_fringe_bitmap,
208 right_user_fringe_face_id.
209 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
210 Move to new file fringe.c.
211 (MAX_FRINGE_BITMAPS): Define here.
212 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
213 and overlay_p. Change member which to int.
214 (struct redisplay_interface): New members define_fringe_bitmap
215 and destroy_fringe_bitmap.
216 (valid_fringe_bitmap_id_p): Add prototype.
217 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
218
219 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
220 arrows.
221 (update_frame): Do flush_display if force_flush_display_p to
222 ensure display (specifically fringes) are updated in a timely
223 manner when resizing the frame by dragging the mouse.
224 (update_window_line): Update row if overlay arrow changed.
225 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
226 or overlay arrow changed.
227
228 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
229 syms_of_fringe, and init_fringe.
230
231 * frame.h (struct frame): New member force_flush_display_p.
232
233 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
234 Add prototypes.
235
a3993cc8
KS
236 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
237 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
238 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
239 Use cursor color for displaying cursor in fringe.
82722af3
KS
240 (x_redisplay_interface): Add null handlers for
241 define_fringe_bitmap and destroy_fringe_bitmap functions.
242
243 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
244 xterm.c to handle overlayed fringe bitmaps and to use cursor color
245 for displaying cursor in fringe.
246 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
247 specific functions to define and destroy fringe bitmaps in fringe_bmp.
248 (w32_redisplay_interface): Add them to redisplay_interface.
249 (w32_term_init): Call w32_init_fringe instead of explicitly
250 defining fringe bitmaps in fringe_bmp array.
251 (x_delete_display): Call w32_reset_fringes instead of explicitly
252 destroying fringe bitmaps in fringe_bmp array.
253
254 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
255 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
256 (continued_bits, continuation_bits, ov_bits, first_line_bits)
257 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
258 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
259 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
260 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
261 Move fringe handling vars and code to new file fringe.c.
262 (handle_display_prop): Handle left-fringe and right-fringe
263 display properties; store user fringe bitmaps in iterator.
264 (move_it_in_display_line_to): Handle cursor in fringe at eob.
265 (clear_garbaged_frames): Set force_flush_display_p if resized.
266 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
267 (display_line): Handle cursor in fringe at eob.
268 (display_line): Set row user fringe bitmaps from iterator.
269
270 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
271 Use cursor color for displaying cursor in fringe.
272 (x_redisplay_interface): Add null handlers for
273 define_fringe_bitmap and destroy_fringe_bitmap functions.
274
030400eb
JD
2752004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
276
277 * macfns.c (Fx_change_window_property): Make doc string and
278 parameters same as for X version.
279
280 * w32fns.c (Fx_change_window_property): Ditto.
281
3af55251
KS
2822004-02-07 Kim F. Storm <storm@cua.dk>
283
ec110e9e
KS
284 * xdisp.c (hscroll_window_tree): Position cursor near to right
285 margin in hscrolled window when jumping to end of line (rather
286 than centering cursor).
287
3af55251
KS
288 * process.c (wait_reading_process_input): Don't do adaptive read
289 buffering if waiting for a specific process.
290
b0c138ce
LT
2912004-02-05 Luc Teirlinck <teirllm@auburn.edu>
292
293 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
294 (Fread_minibuffer, Feval_minibuffer)
295 (Fread_string, Fread_no_blanks_input)
296 (Fcompleting_read): Doc fixes.
297 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
298 completion-regexp-list. Define Qcase_fold_search and staticpro it.
299 (read_minibuf): Fix initial comment.
300 (Ftry_completion, Fall_completions, Ftest_completion): Bind
301 case-fold-serach to the value of completion-ignore-case when
302 checking completion-regexp-list.
303 (Fdisplay_completion_list): Make it handle arguments that are
304 symbols. Doc fix.
305
9676f5ad 3062004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
64d1e373 307
9676f5ad 308 * xterm.h: Add declaration of free_frame_menubar.
64d1e373 309
9676f5ad
JD
310 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
311 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
b0c138ce 312 (Fx_change_window_property): Add declaration of parameters type and
9676f5ad 313 format. Remove unused variable cons.
5b698285
JD
314
315 * xselect.c: Include stdio,h.
316
fc1d15f6
KH
3172004-02-05 Kenichi Handa <handa@m17n.org>
318
ebaff4af
KH
319 * fns.c (Fset_char_table_range): Fix previous change.
320
fc1d15f6
KH
321 * buffer.c (Fset_buffer_multibyte): Fix docstring.
322
9676f5ad
JD
3232004-02-04 Luc Teirlinck <teirllm@auburn.edu>
324
325 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
326
da75761f
SM
3272004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
328
329 * keymap.c (Vmouse_events): Rename from Vmenu_events.
330 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
331
13c5d120
KH
3322004-02-04 Kenichi Handa <handa@m17n.org>
333
334 * fns.c (Fset_char_table_range): Handle charsets ascii,
335 eight-bit-control, and eight-bit-graphic correctly.
336
2883d842
JR
3372004-02-03 Jason Rumney <jasonr@gnu.org>
338
339 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
340
341 * w32fns.c (x_to_w32_font): Likewise.
342
69eff41f
JD
3432004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
344
345 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
346 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
347
348 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
349 ClientMessages.
350
351 * xselect.c: Include termhooks.h and X11/Xproto.h
352 (x_check_property_data, x_fill_property_data)
353 (x_property_data_to_lisp, mouse_position_for_drop)
354 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
da75761f 355 (Fx_send_client_event): Move here from xfns.c.
69eff41f
JD
356 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
357
da75761f 358 * xfns.c (x-send-client-message): Move to xselect.c
69eff41f
JD
359 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
360 OUTER_P.
361 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
362 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
363 if vector_ret_p is true.
364 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
69eff41f 365
dcdbbb5d
EZ
3662004-02-02 Eli Zaretskii <eliz@elta.co.il>
367
368 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
369 basename of FILE relative to it, not FILE itself.
370
09721b31
KH
3712004-02-02 Kenichi Handa <handa@m17n.org>
372
373 * coding.c (coding_restore_composition): Check invalid
374 composition data more rigidly.
375
eb996101
LT
3762004-01-30 Luc Teirlinck <teirllm@auburn.edu>
377
378 * fileio.c (Fread_file_name_internal): Correctly handle the case
379 where insert-default-directory is nil.
380 (Fread_file_name): Always return an empty string if the user exits
381 with an empty minibuffer. Adapt the docstring accordingly.
382 (syms_of_fileio): Adapt the docstring of insert-default-directory
383 to the change in Fread_file_name.
384
a0367d42
EZ
3852004-01-29 Eli Zaretskii <eliz@elta.co.il>
386
387 * alloca.c [!alloca]: Fix the prototype for xfree.
388
13f52ed8
KH
3892004-01-29 Kenichi Handa <handa@m17n.org>
390
391 * fns.c (string_char_to_byte): Optimize for ASCII only string.
392 (string_byte_to_char): Likewise.
393
d57625a0
JR
3942004-01-28 Peter Runestig <peter@runestig.com>
395
396 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
397
911c78b4
ST
3982004-01-27 Steven Tamm <steventamm@mac.com>
399
400 * unexmacosx.c (unexec_copy): Do not copy more than was
401 requested to prevent overwriting during unexec.
402
eb37b8fd
JD
4032004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
404
ce38070a
JD
405 * process.c (sigchld_handler): Add comment about not calling malloc.
406
eb37b8fd
JD
407 * process.h: Add extern to synch_process_termsig.
408
21a3e657
ST
4092004-01-27 Steven Tamm <steventamm@mac.com>
410
da75761f
SM
411 * macterm.c (make_mac_frame, make_mac_terminal_frame):
412 Move setting of scroll bars from make_mac_frame to
413 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
21a3e657 414
d62a265d
RS
4152004-01-26 Richard M. Stallman <rms@gnu.org>
416
417 * search.c (Freplace_match): Handle nonexistent
418 back-references properly.
419
4202004-01-03 Richard M. Stallman <rms@gnu.org>
421
422 * window.c (decode_any_window): New function.
423 (Fwindow_height, Fwindow_width, Fwindow_edges)
424 (Fwindow_pixel_edges, Fwindow_inside_edges)
425 (Fwindow_inside_pixel_edges): Use decode_any_window.
426
ff236419
JD
4272004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
428
429 * process.h: synch_process_termsig new variable.
430
431 * callproc.c: Define synch_process_termsig.
432 (Fcall_process): Initiate synch_process_termsig to zero and
433 check if non-zero and get signal name after subprocess has ended.
434
435 * process.c (sigchld_handler): Set synch_process_termsig
436 if terminated by a signal. synch_process_death setting removed.
437
438 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
439
41b867ea
AS
4402004-01-26 Andreas Schwab <schwab@suse.de>
441
442 * print.c (print_preprocess): Declare size as EMACS_INT to not
443 lose bits.
444 (print_object): Likewise.
445 * alloc.c (Fpurecopy): Likewise.
446
a08084ff
LT
4472004-01-25 Luc Teirlinck <teirllm@auburn.edu>
448
449 * window.c (Fwindow_minibuffer_p): Doc fix.
450
b19ac475
JY
4512004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
452
453 * editfns.c (Fformat): Make both passes accept the same set of flags.
454
fe905025
KH
4552004-01-23 Kenichi Handa <handa@m17n.org>
456
457 * fns.c (Fmd5): If OBJECT is a buffer different from the current
458 one, set buffer to OBJECT temporarily.
459
438fc6c0
SM
4602004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
461
455316e2
SM
462 * keyboard.c (kbd_buffer_gcpro): Remove.
463 (kbd_buffer_store_event, clear_event, Fdiscard_input)
464 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
465 Don't initialize and/or maintain the variable any more. It was made
466 redundant by my commit of 2003-06-15.
467
438fc6c0
SM
468 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
469
5335a4ee
JD
4702004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
471
472 * lisp.h: Add undef DECL_ALIGN.
473
dcdaeebc
SM
4742004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
475
476 * process.c (wait_reading_process_input) [SYNC_INPUT]:
477 Check interrupt_input_pending explicitly.
478
479 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
480
481 * keyboard.c (handle_async_input): New fun,
482 extracted from input_available_signal.
483 (input_available_signal, reinvoke_input_signal): Use it.
484
9076a823
SM
4852004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
486
d7107586
SM
487 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
488
489 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
490 manipulation macros for when tags are in the lower bits.
491 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
492 (DECL_ALIGN): New macro.
493 (DEFUN): Use it.
494
495 * lisp.h [ENABLE_CHECKING]: Don't force union type.
496
497 * s/darwin.h (__attribute__): Remove outdated workaround.
498
499 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
500
501 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
502 Don't check range of malloc address.
503 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
504
9076a823
SM
505 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
506
507 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
508
ba029065
KH
5092004-01-19 Kenichi Handa <handa@m17n.org>
510
511 * fontset.c (fontset_font_pattern): Fix previous change.
512
7af0e8d7
MB
5132004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
514
515 * xdisp.c (Voverflow_newline_into_fringe)
516 (move_it_in_display_line_to, redisplay_internal)
517 (update_window_fringes, redisplay_window, display_line, window):
518 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
519 that it compiles without a window-system.
520 * dispnew.c (direct_output_for_insert, update_window): Likewise.
521
77a9cf69
KS
5222004-01-16 Kim F. Storm <storm@cua.dk>
523
524 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
525
526 * buffer.c (init_buffer_once): Set buffer_defaults and
527 buffer_local_flags for indicate_buffer_boundaries.
528 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
529 default- variable for it.
530
531 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
532 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
d7107586 533 New members exact_window_width_line_p and cursor_in_fringe_p for
77a9cf69
KS
534 overflowing newlines into right fringe.
535 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
536 and indicate_bottom_line_p for buffer boundaries and scrolling.
537 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
538 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
539 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
540 and HOLLOW_SQUARE_BITMAP.
541 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
542 Add prototypes.
543
544 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
545 instead of related indicator fields.
546 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
547 (direct_output_for_insert): Handle exact width lines like
548 contined lines. Call update_window_fringes.
549 (update_window): Call update_window_fringes.
550 (scrolling_window): Don't skip desired rows with changed bitmaps.
551 Check if fringe bitmaps changes when assigning scrolled rows.
552
553 * xdisp.c (Voverflow_newline_into_fringe): New variable.
554 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
555 (move_it_in_display_line_to): Overflow newline into fringe for
556 rows that are exactly as wide as the window.
557 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
558 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
559 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
560 (fringe_bitmaps): Add new bitmaps.
561 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
562 Select proper bitmap for cursor in fringe when appropriate.
563 Handle alignment of bitmap to top or bottom of row.
564 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
565 done by update_window_fringes.
566 (update_window_fringes, draw_window_fringes): New functions.
567 (redisplay_internal): Call update_window_fringes in case only
568 cursor row is updated.
569 (redisplay_window): Call update_window_fringes.
570 Explicitly call draw_window_fringes if redisplay was done using
571 the current matrix or the overlay arrow is in the window.
572 (try_window_reusing_current_matrix): Mark scrolled rows for
573 fringe update (to update buffer-boundaries / scrolling icons).
574 (find_last_unchanged_at_beg_row): Handle exact width lines line
575 continued lines.
576 (display_line): Overflow newline into fringe for rows that are
577 exactly as wide as the window. Don't append space for newline
d7107586 578 in this case.
77a9cf69
KS
579 (notice_overwritten_cursor): Explicitly clear cursor bitmap
580 in fringe as if it had been overwritten.
581 (erase_phys_cursor): Erase cursor bitmap in fringe.
d7107586 582 (syms_of_xdisp): Mark show-trailing-whitespace and
77a9cf69
KS
583 void-text-area-pointer as user options.
584 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
d7107586 585
77a9cf69
KS
586 * xterm.c (x_update_window_end): Call draw_window_fringes.
587 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
588 in row instead of actually drawing fringe bitmaps.
589 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
590 (x_draw_window_cursor): Draw cursor in fringe.
591
592 * w32term.c (x_update_window_end): Call draw_window_fringes.
593 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
594 in row instead of actually drawing fringe bitmaps.
595 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
596 (w32_draw_window_cursor): Draw cursor in fringe.
597
598 * macterm.c (x_update_window_end): Call draw_window_fringes.
599 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
600 in row instead of actually drawing fringe bitmaps.
601 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
602 (mac_draw_window_cursor): Draw cursor in fringe.
603
a633a954
JD
6042004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
605
606 * xterm.c (handle_one_xevent): Don't handle characters that are part
607 of an old style (XLookupString) compose sequence.
608
80460525
KH
6092004-01-15 Kenichi Handa <handa@m17n.org>
610
611 * search.c (Freplace_match): Use make_multibyte_string or
612 make_unibyte_string according to the buffer multibyteness.
613
7fc34f85
SM
6142004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
615
616 * alloc.c (struct interval_block, struct string_block)
617 (struct symbol_block, struct marker_block, live_string_p)
618 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
619 Better preserve alignment for objects in blocks.
620 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
621
622 * lread.c (defvar_per_buffer): Remove dead declaration.
623
624 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
625 space size.
626
66070bd1
JD
6272004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
628
629 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
630 if a key press should pop down. Only pop down if a key is pressed
631 outside the menu/dialog.
632 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
633 popup_get_selection.
634 (create_and_show_dialog): Pass 1 for down_on_keypress to
635 popup_get_selection.
636
de7515d6
JD
6372004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
638
639 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
640 BLOCK/UNBLOCK_INPUT.
641
160b1b50
JD
6422004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
643
644 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
645 specified.
646
3a9f36e6
KH
6472004-01-08 Kenichi Handa <handa@m17n.org>
648
649 * editfns.c (Fformat): Fix '&' to '&&'.
650
3803eb32
AS
6512004-01-08 Andreas Schwab <schwab@suse.de>
652
653 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
654 size if PSEUDOVECTOR_FLAG is set.
655
9da88f37
KH
6562004-01-07 Kenichi Handa <handa@m17n.org>
657
74ac5074
KH
658 * charset.c (Fdeclare_equiv_charset): Fix docstring.
659
9da88f37
KH
660 * fontset.c (fontset_ref_via_base): Fix previous change.
661
05faee07
KS
6622004-01-07 Kim F. Storm <storm@cua.dk>
663
664 * process.c (read_process_output): Only activate adaptive
665 buffering if we read less than 256 bytes at a time.
666
634910c8
KS
6672004-01-06 Kim F. Storm <storm@cua.dk>
668
669 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
670 object and image object. Return glyph width and height.
671 (mode_line_string, marginal_area_string): Ditto.
672
673 * dispextern.h (buffer_posn_from_coords, mode_line_string)
674 (marginal_area_string): Fix prototypes.
675
676 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
677 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
678 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
679
680 * keyboard.c (make_lispy_position): Use modified mode_line_string,
681 buffer_posn_from_coords, and marginal_area_string functions to
682 include both string object and image object in the lispy position.
683 Also add actual glyph width and height to position.
684 (read_key_sequence): Use real buffer position from mouse
685 event to find keymap property even when click is in marginal area.
686
687 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
688 mode_line_string and marginal_area_string functions to handle
689 both string object and image object properties.
d7107586 690
57951c2e
AS
6912004-01-06 Andreas Schwab <schwab@suse.de>
692
693 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
694 character.
695
181e6a61
AS
6962004-01-02 Andreas Schwab <schwab@suse.de>
697
d7107586
SM
698 * macterm.c (emacs_options, x_initialized, same_x_server):
699 Remove unused (and duplicated) definitions.
181e6a61 700
31e0fbdd
KS
7012004-01-02 Kim F. Storm <storm@cua.dk>
702
703 * process.h (struct Lisp_Process): New members for adaptive read
704 buffering: adaptive_read_buffering, read_output_delay, and
705 read_output_skip.
706
707 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
708 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
709 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
710 (process_output_delay_count, process_output_skip): New vars.
711 (Vprocess_adaptive_read_buffering): New variable.
712 (make_process): Initialize adaptive read buffering members.
713 (Fstart_process): Set adaptive_read_buffering member.
714 (deactivate_process): Cleanup adaptive read buffering.
715 (wait_reading_process_input): Temporarily omit delayed
716 subprocesses from the set of file descriptors to read from;
717 adjust the select timeout if we skipped any subprocesses.
718 (read_process_output): Increase adaptive read buffering delay if
719 we read less than a full buffer; reduce delay when we read a
720 full buffer.
721 (send_process): Simplify using local Lisp_Process var.
722 Reset adaptive read buffering delay after write.
723 (init_process): Initialize process_output_delay_count and
724 process_output_skip.
725 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
726
68c6a789
JR
7272004-01-01 Jason Rumney <jasonr@gnu.org>
728
d7107586 729 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
68c6a789 730
3f70fe82
LT
7312003-12-30 Luc Teirlinck <teirllm@auburn.edu>
732
733 * print.c (Ferror_message_string): Add hyperlink in the docstring
734 to the definition of `signal' in the Elisp manual.
735 * eval.c (Fsignal): Ditto.
736
c2be49ed
EZ
7372003-12-29 James Clark <jjc@jclark.com> (tiny change)
738
739 * fns.c (internal_equal): Return t for two NaN arguments.
740
7abd90ea
RS
7412003-12-29 Richard M. Stallman <rms@gnu.org>
742
743 * data.c (store_symval_forwarding): Handle setting
744 default-fill-column, etc., by changing the value in
745 buffers that use the default.
746
747 * minibuf.c (Fset_minibuffer_window): Doc fix.
748
749 * fileio.c (choose_write_coding_system): Ignore auto_saving
750 if using the visited file for auto saves.
751 (Fwrite_region): Don't update SAVE_MODIFF
752 if auto-saving in visited file.
753
3e7cfcdc
KH
7542003-12-29 Kenichi Handa <handa@m17n.org>
755
756 * dispextern.h (face_font_available_p): Extern it.
757
758 * fontset.c (Voverriding_fontspec_alist): New variable.
759 (lookup_overriding_fontspec): New function.
d7107586 760 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
3e7cfcdc
KH
761 (fontset_font_pattern): Likewise.
762 (regulalize_fontname): New function.
763 (Fset_fontset_font): Call regulalize_fontname.
764 (Fset_overriding_fontspec_internal): New function.
d7107586
SM
765 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
766 Defsubr Sset_overriding_fontspec_internal.
3e7cfcdc
KH
767
768 * xfaces.c (face_font_available_p): New function.
769
7abd90ea
RS
7702003-12-28 Richard M. Stallman <rms@gnu.org>
771
772 * buffer.c (Fother_buffer): Don't crash if BUF is nil
773 or if its name is nil.
774
775 * buffer.c (Fkill_buffer): Don't delete auto-save file
776 if it's the same as the visited file.
777
de1d1a40
LT
7782003-12-28 Luc Teirlinck <teirllm@auburn.edu>
779
780 * coding.c (Fcheck_coding_system): Doc fix.
781
204fb75e
KS
7822003-12-28 Kim F. Storm <storm@cua.dk>
783
784 * Makefile.in (eval.o): Depend on dispextern.h.
785
786 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
787 image glyph using image's ascent.
788 (mode_line_string): Return image glyph as object clicked on.
789 Adjust y0 for image glyph using image's ascent.
790
791 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
792 (struct glyph): New members, ascent and descent. Used to save
793 this glyph's ascent and descent, instead of having.
794 (struct glyph): Declare member face_id using FACE_ID_BITS.
795 (find_hot_spot): Add prototype.
796
797 * keyboard.c (Qimage): Remove extern (now in lisp.h).
798 (QCmap): Declare extern.
799 (make_lispy_position): When position is inside image hot-spot,
800 use hot-spot element's id as posn element.
801
802 * lisp.h (IMAGEP): New macro to test for image object type.
803 (Qimage): Declare extern.
804
805 * macfns.c (Qimage): Remove extern (now in lisp.h).
806 (valid_image_p, parse_image_spec): Use IMAGEP macro.
807
808 * macterm.c (Qface, Qmouse_face): Remove unused externs.
809
810 * w32fns.c (Qimage): Remove extern (now in lisp.h).
811 (valid_image_p, parse_image_spec): Use IMAGEP macro.
812
813 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
814
815 * w32term.c (Qface, Qmouse_face): Remove unused externs.
816
817 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
818 pointer types.
819 (Qrelative_width, Qalign_to): Remove unused variables.
820 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
821 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
822 image maps.
d7107586 823 (x_y_to_hpos_vpos): Return glyph relative coordinates through
204fb75e
KS
824 new dx and dy args.
825 Remove buffer_only_p arg (always 0). Simplify code accordingly.
826 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
827 than row's ascent and height, to get sensible height on tall rows.
828 (build_desired_tool_bar_string): Remove Qimage extern.
829 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
830 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
831 image glyph is alone on the last line.
832 (append_glyph, append_composite_glyph, produce_image_glyph)
d7107586 833 (append_stretch_glyph): Set glyph's ascent and descent.
204fb75e 834 (on_hot_spot_p): New function to check if position is inside an
d7107586 835 rectangular, circular, or polygon-shaped image hot-spot,
204fb75e
KS
836 (find_hot_spot): New function to search for image hot-spot.
837 (Flookup_image_map): New defun to search for image hot-spot.
838 (define_frame_cursor1): New aux function to determine frame pointer.
839 (note_mode_line_or_margin_highlight, note_mouse_highlight):
840 Handle `pointer' text property and :pointer image property to
841 control frame pointer shape. Detect image hot-spots for pointer
842 and help_echo properties. Use define_frame_cursor1.
843 (note_mouse_highlight): Use Vvoid_text_area_pointer.
844 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
845 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
846
847 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
848
849 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
850 (Qimage): Remove extern (now in lisp.h).
851 (valid_image_p, parse_image_spec): Use IMAGEP macro.
852
853 * xmenu.c (show_help_event): Remove unused code.
854
855 * xterm.c (Qface, Qmouse_face): Remove unused externs.
856 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
857 row's ascent and descent, to get a sensible height on tall rows.
858
fc052137
LT
8592003-12-25 Luc Teirlinck <teirllm@auburn.edu>
860
861 * minibuf.c (Fcompleting_read): Undo previous change.
862
b9148500
LH
8632003-12-25 Lars Hansen <larsh@math.ku.dk>
864
865 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
866 Arguments GCPRO'ed in call to file name handler.
867
56ffd194
TTN
8682003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
869
870 * termcap.c (tgetst1): Scan for "%pN"; if all
871 N are continuous in [1,9], remove all "%pN".
872
5202d23d
JD
8732003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
874
f26fab36
JD
875 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
876
5202d23d
JD
877 * xfaces.c (lface_fully_specified_p): Take into account that
878 MAC OS always have unspecified stipple.
879
8babaa59
TTN
8802003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
881
882 * tparam.c (tparam1): Add handling for `%pN', which
883 means use param N for the next substitution.
884
2d176448
TTN
8852003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
886
887 * xfaces.c (Fcolor_gray_p): Fix omission bug:
888 In case `frame' is nil, consult the selected frame.
889 (Fcolor_supported_p): Likewise.
890
adb0708c
LT
8912003-12-23 Luc Teirlinck <teirllm@auburn.edu>
892
000eeb15
LT
893 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
894 Doc fixes.
0dc72b11
LT
895
896 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
897 and an integer. Adapt the introductory comment accordingly.
adb0708c
LT
898 (Fread_from_minibuffer): Delete code moved into read_minibuf.
899 Doc fix.
900 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
901 read_minibuf.
902 (Fcompleting_read): Delete code moved into read_minibuf.
d7107586 903 (Ftest_completion): Make it handle obarrays and hash tables correctly.
adb0708c 904
2e4d132b
KH
9052003-12-03 Kenichi Handa <handa@m17n.org>
906
907 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
908 encoding sequence.
909
3999c705
KH
9102003-12-01 Kenichi Handa <handa@m17n.org>
911
912 * composite.c (syms_of_composite): Don't make the compostion hash
913 table week.
914
d344ecbb
LT
9152003-11-30 Luc Teirlinck <teirllm@auburn.edu>
916
917 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
918 * textprop.c (Fget_char_property_and_overlay): New function.
919 (syms_of_textprop): Defsubr it.
920
03d6484e
JD
9212003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
922
019b1f0e
JD
923 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
924 to compile on terminal configuration.
925
03d6484e
JD
926 * fileio.c (Fread_file_name): Check use_file_dialog also before
927 calling Fx_file_dialog.
928
929 * fns.c: use_file_dialog: New variable.
930 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
931
442d3fd0
KS
9322003-11-29 Kim F. Storm <storm@cua.dk>
933
934 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
935 (syms_of_msdos): Don't intern and staticpro them.
936
0f6a07a8
KS
9372003-11-27 Kim F. Storm <storm@cua.dk>
938
939 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
940 coordinates relative to glyph at posn. If glyph is an image,
941 return that as object at posn. Callers changed.
942 (mode_line_string, marginal_area_string): Calculate and return
943 pixel coordinates relative to glyph. Callers changed.
944
945 * dispextern.h (buffer_posn_from_coords, mode_line_string)
946 (marginal_area_string): Fix prototypes.
947 (window_box_left_offset, window_box_right_offset): Add prototypes.
948
949 * frame.h (get_specified_cursor_type, get_window_cursor_type):
950 Remove prototypes.
951
952 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
953
954 * keyboard.c (make_lispy_position): Add x and y coordinates
955 relative to the current glyph as 7th element of position.
956 If glyph is an image, return it in the object element.
957 (read_key_sequence): Skip checks for keymap property in cases
958 where POSN_STRING is not a string (e.g. an image).
959
960 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
961 (Vshow_text_cursor_in_void): New variable.
962 (glyph_to_pixel_coords): Don't use negative hpos.
963 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
964 (append_stretch_glyph): Change ascent arg to be actual value
965 in pixels rather than ratio to height. Callers changed.
966 (calc_pixel_width_or_height): New aux function, implementing
967 pixel based artihmetic for glyph widths and heights.
968 (produce_stretch_glyph): Use calc_pixel_width_or_height for
969 :width, :height, :align-to, and :ascent, thus allowing these to
970 be specified in pixels as well as multiples of characters.
971 Don't produce stretch glyphs with zero width or height.
972 (get_specified_cursor_type): Declare static.
973 (get_window_cursor_type): Declare static. Add glyph arg to be
974 able to know when cursor is on an image; always substitute
975 hollow-box cursor for filled-box cursor on images, to avoid
976 negative images and flicker when blinking the cursor.
977 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
978 (note_mode_line_or_margin_highlight): Use non-text cursor rather
979 than vertical scroll-bar cursor in display margins.
980 (note_mouse_highlight): Use non-text cursor rather than text
981 cursor in fringes and over images in the text area.
982 Use non-text cursor when mouse pointer is outside editable text,
983 i.e. in the void after end-of-line or end-of-buffer; this was
984 already done for W32, but is now standard for all systems --
985 user can toggle show-text-cursor-in-void to get old behaviour.
986 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
987 Vdisplay_pixels_per_inch.
988
00498bfc
AS
9892003-11-25 Andreas Schwab <schwab@suse.de>
990
991 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
992 EMACS_INT to not lose bits.
993 (Ffillarray): Don't set bits beyond the size of a bool vector.
994
edaa824d
KS
9952003-11-25 Kim F. Storm <storm@cua.dk>
996
997 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
998 define this defun on systems that cannot use stderr as lvalue.
999
74d6f539
GM
10002003-11-24 Gerd Moellmann <gerd@gnu.org>
1001
1002 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
1003 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
1004 ld's default is incompatible with unexec.
1005
6a1ff3ba
KS
10062003-11-23 Kim F. Storm <storm@cua.dk>
1007
63dc7c6b
KS
1008 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
1009 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
1010 (Fforce_window_update): New defun.
1011 (syms_of_window): Defsubr it.
1012 (Fset_window_margins, Fset_window_fringes): Doc fix.
1013
6a1ff3ba
KS
1014 * print.c (Fredirect_debugging_output): New defun.
1015 (syms_of_print): Defsubr it.
1016
aef109b7
LT
10172003-11-22 Luc Teirlinck <teirllm@auburn.edu>
1018
1019 * fns.c (Fset_char_table_parent): Doc fix.
1020
6a1ff3ba 10212003-11-22 Kim F. Storm <storm@cua.dk>
63ccbe21
KS
1022
1023 * dispnew.c (buffer_posn_from_coords): Return actual row/column
1024 for glyph clicked on, rather than (unused) pixel positions.
1025 (mode_line_string, marginal_area_string): Change X and Y args to
1026 pointers for returning actual row/column for glyph clicked on.
1027 Simplify and optimize loops.
1028
aef109b7
LT
1029 * dispextern.h (mode_line_string, marginal_area_string):
1030 Update prototypes.
63ccbe21
KS
1031
1032 * keyboard.c (make_lispy_position): New function for generating
1033 mouse click positions from frame and pixel coordinates.
1034 Enhanced to return buffer position and actual row/column for
1035 events outside the text area using updated mode_line_string and
1036 marginal_area_string functions.
1037 Return left-fringe and right-fringe clicks as such, rather than
1038 clicks in text area.
1039 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
1040 pixel_to_glyph_coords, as we never use the results.
1041 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
1042 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
1043 Eliminate unused code in WHEEL_EVENT handling.
1044 (make_lispy_movement): Use make_lispy_position.
1045
1046 * window.c (coordinates_in_window): Remove redundant tests.
1047 Fix returned X pixel value for left-margin.
1048
1049 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
1050 mode_line_string and marginal_area_string parameters.
1051
930a9995
LH
10522003-11-22 Lars Hansen <larsh@math.ku.dk>
1053
d7107586
SM
1054 * w32.c (struct the_group, getgrgid): Add.
1055 * mac.c (struct my_group, getgrgid): Add.
aef109b7 1056
3dbf3426
LT
10572003-11-21 Luc Teirlinck <teirllm@auburn.edu>
1058
1059 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
1060
cae8ddbb 10612003-11-21 Lars Hansen <larsh@math.ku.dk>
ded4064f 1062
d7107586
SM
1063 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
1064 include in call to file name handler. Optionally translate numeric
1065 UID and GID to strings. Update docstring.
1066 (directory_files_internal): Add parameter ID-FORMAT.
1067 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
1068 include in call to file name handler and call to
1069 directory_files_internal. Update Docstring.
1070 (Fdirectory_files): Add dummy parameter in call to
1071 directory_files_internal.
1072 * lisp.h (Qinteger): Add.
1073 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
1074 (Ffile_attributes): Add parameter.
1075 * data.c (Qinteger): Export.
cae8ddbb 1076
2550b848
LT
10772003-11-21 Luc Teirlinck <teirllm@auburn.edu>
1078
3dbf3426 1079 * fns.c (Freverse, Fnreverse): Doc fixes.
2550b848 1080
88380018
KS
10812003-11-19 Kim F. Storm <storm@cua.dk>
1082
1083 * xdisp.c (init_iterator): Initialize it->start to position
1084 before reseating (in case start position is invisible).
1085 (init_to_row_start): Set it->start to row-start.
1086 (redisplay_window): Accept optional_new_start if start position
1087 is invisible (in which case IT_CHARPOS overshoots PT).
1088 (display_line): Setup row->start from it->start (rather than
1089 it->current which is wrong if first char on line is invisible).
1090 When done, reseat it->start to it->current (= start of next row).
1091 (expose_area): Fix exposure of text area when first char (e.g. TAB)
1092 is only partially visible.
1093
1094 * dispextern.h (struct it): New member start.
1095
854c1a59
SM
10962003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
1097
455316e2
SM
1098 * alloc.c (make_float, Fcons): Clear the markbit at init time.
1099 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
1100 of block_index outside of the macro call.
1101 (Fgarbage_collect): Remove null code.
1102
1103 * m/amdx86-64.h: Don't redefine XPNTR.
1104
854c1a59
SM
1105 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
1106 of VALMASK.
1107
1108 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
1109 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
1110 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
1111
1112 * lisp.h (VALMASK): Only define for non-union type.
1113 (MARKBIT): Remove.
1114 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
1115 (XTYPE): Define unconditionally.
1116 (XSETTYPE): Remove one more remnant.
1117 (EQ): Define differently for the union and non-union cases.
1118 (INTMASK): New bit mask.
1119 (struct Lisp_Marker): Move down to prepare for upcoming patch.
1120 (GC_EQ): Delegate to EQ.
1121
1122 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
1123
a0c6ef2d
JD
11242003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1125
1126 * xterm.c (x_window_to_scroll_bar): Move check of display to
1127 where window_id is compared.
1128
859492c4
KS
11292003-11-17 Kim F. Storm <storm@cua.dk>
1130
1131 * dispextern.h (struct it): New member first_vpos.
1132
1133 * xdisp.c (start_display): Set it->first_vpos.
1134 (try_window_id): Use first_vpos to start display in first _text_
1135 line if no reusable lines at start of window with header line.
1136
810f2256
JD
11372003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1138
7c402969 1139 * w32fns.c (XPutPixel):
854c1a59
SM
1140 * w32bdf.c (w32_init_bdf_font):
1141 * sunfns.c (sel_read):
1142 * process.c (Fmake_network_process):
1143 * frame.c (store_frame_param):
1144 * fontset.c (Fset_fontset_font):
1145 * emacs.c (shut_down_emacs):
7c402969
JD
1146 * ccl.c (ccl_driver): Remove period at end of error message.
1147
a32e9bfd
JD
1148 * config.in: Regenerate.
1149
810f2256
JD
1150 * xfns.c (x_window_to_frame, x_any_window_to_frame)
1151 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
1152 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
1153 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
1154 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
1155
1156 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
1157
1158 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
1159 (XTmouse_position, handle_one_xevent): Pass Display* to
1160 x_window_to_scroll_bar.
1161 (x_window_to_scroll_bar): Take a Display* argument.
1162 Check that display for frame is equal to Display* argument.
854c1a59 1163 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
810f2256
JD
1164 x_display_info_for_display instead. Use Display in xev instead
1165 of GDK_DISPLAY.
1166 (x_dispatch_event): Call x_display_info_for_display.
1167 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
1168 (x_connection_closed): Call xg_display_close for GTK.
1169 (x_term_init): Call xg_display_open for additional displays.
1170 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
1171 for GTK.
1172
1173 * xmenu.c (single_menu_item, mouse_position_for_popup)
1174 (x_activate_menubar): Formatting adjustments.
1175
1176 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
1177 adjustments.
1178
1179 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
1180 (xg_display_close, xg_create_default_cursor)
1181 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
1182 handling.
854c1a59
SM
1183 (xg_left_ptr_cursor): Remove.
1184 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
810f2256
JD
1185 cursor here.
1186 (xg_win_to_widget): Take Display* argument, call
1187 gdk_xid_table_lookup_for_display.
1188 (xg_create_frame_widgets, xg_get_file_name, create_menus)
1189 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
1190 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
1191 in FRAME_X_DISPLAY_INFO.
1192 (xg_get_scroll_id_for_window): Take Display* argument.
1193 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
854c1a59 1194 (xg_initialize): Remove xg_left_ptr_cursor.
810f2256
JD
1195
1196 * gtkutil.h: xg_get_scroll_id_for_window, xg_win_to_widget takes
1197 Display* argument also. Declare xg_display_open,
1198 xg_display_close, xg_create_default_cursor.
1199
0b03cc78
JD
12002003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1201
1202 * xterm.c (x_detect_focus_change): Do not change focus frame for
1203 Enter/LeaveNotify if the current focus frame has explicit focus.
1204
77e688fa
KS
12052003-11-14 Kim F. Storm <storm@cua.dk>
1206
1207 * dispnew.c (update_text_area): Fix redisplay error when hscroll
1208 is active and first glyph is only partially visible.
854c1a59 1209
dd429b03
KH
12102003-11-13 Kenichi Handa <handa@m17n.org>
1211
1212 * xdisp.c (select_frame_for_redisplay): New function.
1213 (redisplay_internal): Record also selected_frame for
1214 unwind_redisplay. Call select_frame_for_redisplay before
1215 redrawing each frame.
1216 (unwind_redisplay): Argument changed to a cons.
1217
6d9266f4
LT
12182003-11-12 Luc Teirlinck <teirllm@auburn.edu>
1219
1220 * fns.c (Fstring_to_multibyte): Doc fix.
1221
80060eb3
KH
12222003-11-11 Kenichi Handa <handa@m17n.org>
1223
1224 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
1225
74305183
JD
12262003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1227
1228 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
1229 program specified positions.
1230
cfda993e
JD
12312003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1232
1233 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
1234
df211069
KH
12352003-11-08 Kenichi Handa <handa@m17n.org>
1236
1237 * Makefile.in (lisp): Add kannada.el.
1238 (shortlisp): Likewise.
1239
4307d534
KH
12402003-11-07 Kenichi Handa <handa@m17n.org>
1241
854c1a59
SM
1242 * coding.c (coding_allocate_composition_data):
1243 Reset coding->composing to COMPOSITION_NO.
4307d534
KH
1244 (coding_restore_composition): Detect invalid composition data.
1245 Give Fstring and Fvector a Lispy integer, not C int.
1246
854c1a59
SM
12472003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
1248
1249 * floatfns.c (Flogb): Don't use VALMASK.
1250
1251 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
1252 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
1253
1254 * lisp.h (XINT): Move the cast to clarify what is going on.
1255 (GCTYPEMASK, XSETTYPE): Remove.
1256 (XGCTYPE): Make it an alias of XTYPE.
1257
d04103a1
JD
12582003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1259
1260 * xterm.c (x_term_init): Fix formatting.
1261
da18b5ac
JD
12622003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1263
1264 * gtkutil.h: Declare xg_have_tear_offs, remove xg_keep_popup
1265 and xg_did_tearoff.
1266
1267 * gtkutil.c: Remove variable xg_did_tearoff.
1268 (xg_have_tear_offs): New function.
1269 (tearoff_remove): Just decrease xg_detached_menus.
1270 (tearoff_activate): Increase xg_detached_menus and call
1271 tearoff_remove when tearoff is removed.
854c1a59 1272 (xg_keep_popup): Remove function.
da18b5ac
JD
1273 (create_menus): Give add_tearoff_p as argument to recursive
1274 call to create_menus.
1275 (xg_create_widget): Use variables instead of multiple
1276 strcmp. Tell create_menus to create tear off only for
1277 menu bar menus.
1278 (xg_update_menubar): Change title for a detached menu also.
1279 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
1280 of deep_p.
1281 (xg_initialize): Initialize xg_detached_menus, remove
1282 initialization of xg_did_tearoff.
1283
1284 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
1285 xg_have_tear_offs returns non-zero.
1286 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
1287 call to xg_keep_popup.
1288
64d4923e
AC
12892003-11-01 Andrew Choi <akochoi@shaw.ca>
1290
1291 * macterm.c (XTread_socket): Handle menubar selection and grow
1292 window only for mouseDown events.
854c1a59 1293
6cc8bc07
JD
12942003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1295
1296 * xterm.c (x_term_init): For GTK part, increase x_initialized
1297 to check for more than one display. Use error instead of return 0.
1298
043131c4
AC
12992003-10-31 Andrew Choi <akochoi@shaw.ca>
1300
854c1a59 1301 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
043131c4
AC
1302 (copy_dysymtab): Call it.
1303
bdda99a1
LT
13042003-10-31 Luc Teirlinck <teirllm@auburn.edu>
1305
1306 * eval.c (Fdefvaralias): Doc fix.
1307
800f42ff 13082003-10-26 Luc Teirlinck <teirllm@auburn.edu>
0d11571e
LT
1309
1310 * data.c (Fsetplist): Doc fix.
1311
ef35b389
LK
13122003-10-14 Lute Kamstra <lute@gnu.org>
1313
1314 * window.c (Fset_window_fringes): Clarify docstring.
07107abc 1315
ef35b389 13162003-10-14 Kim F. Storm <storm@cua.dk>
854c1a59 1317
07107abc
KS
1318 * window.c (Fset_window_margins): Simplify arg checking.
1319
f7005886
RS
13202003-10-13 Richard M. Stallman <rms@gnu.org>
1321
1322 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
1323 (print_partial_compiled_pattern): Replace assert with a printout.
1324 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
1325
1326 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
1327
1328 * window.c (Fset_window_margins): Allow only integers as args.
1329 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
1330 Doc fixes.
1331
9c0c2af5
LK
13322003-10-13 Lute Kamstra <lute@gnu.org>
1333
1334 * window.c (Fset_window_fringes): Elaborate docstring.
1335
3f080e4e
AC
13362003-10-12 Andrew Choi <akochoi@shaw.ca>
1337
854c1a59 1338 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
a4887377 1339
3f080e4e
AC
1340 * s/darwin.h (GC_MARK_STACK): Define.
1341
0aa513ed
JD
13422003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1343
1344 * window.c (shrink_windows): New function.
1345 (size_window): Call shrink_windows to calculate window sizes when
1346 shrinking frame with more than one window.
1347
6aa8858a
KS
13482003-10-12 Kim F. Storm <storm@cua.dk>
1349
1350 * xdisp.c (compute_fringe_widths): Doc fix.
1351
c2164d91
KH
13522003-10-08 Kenichi Handa <handa@m17n.org>
1353
854c1a59 1354 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
c2164d91 1355
f82ac129
KH
13562003-10-07 Kenichi Handa <handa@m17n.org>
1357
1358 * coding.c (Qcoding_system_define_form): New variable.
1359 (syms_of_coding): Intern and staticpro it.
1360 (Fcheck_coding_system): Try to autoload the definition of
1361 CODING-SYSTEM.
1362
9296c947
LT
13632003-10-05 Luc Teirlinck <teirllm@auburn.edu>
1364
1365 * fns.c (Frequire): Doc fix.
1366
c1f0671a
JD
13672003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1368
3d8c3826
JD
1369 * xfns.c (Fx_send_client_event): New function as a base for
1370 manipulating extended window manager hints.
6dc15d98 1371 (Fx_send_client_event): Remove unused variable s.
3d8c3826 1372
068ae0fd
JD
1373 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
1374 that function is removed.
1375
1376 * xterm.c (x_set_offset): Use move_offset_left/top instead of
1377 x/y_pixels_outer_diff.
1378 (x_check_expected_move): Calculate move_offset_left/top.
1379
1380 * xterm.h (struct x_output): New members: move_offset_top/left.
1381
854c1a59 1382 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
068ae0fd
JD
1383 call x_set_offset directly.
1384
1385 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
1386
96f09305
JD
1387 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
1388
1389 * xterm.c (x_delete_display): Free font names and font_encoder
1390 in dpyinfo->font_table.
1391
854c1a59
SM
1392 * xfns.c (Fx_close_connection): Only call XFreeFont here.
1393 Move xfree of font names to x_delete_display.
96f09305 1394
c1f0671a
JD
1395 * xterm.h (struct x_display_info): New member, wm_type.
1396 (struct x_output): New members, expected_top/left and
1397 check_expected_move.
1398
1399 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
1400 is received.
854c1a59
SM
1401 (handle_one_xevent): Rename x_check_expected_move from
1402 x_check_fullscreen_move.
c1f0671a
JD
1403 (x_set_offset): Only add WM decoration sizes to modified_top/left
1404 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
854c1a59 1405 (x_check_expected_move): Rename from x_check_fullscreen_move.
c1f0671a
JD
1406 Removed fullscreen specific code. Use check_expected_move,
1407 expected_left/top instead. Also, set wm_type.
1408 (x_term_init): Initialize wm_type to unknown.
1409
1410 * frame.c (x_fullscreen_move): Remove addition of WM decoration
1411 sizes to move_x/y.
1412
be2fdba9
KH
14132003-10-03 Kenichi Handa <handa@m17n.org>
1414
1415 * macterm.c (x_load_font): Clear all members of FONTP before start
1416 filling them.
1417
14182003-10-02 Kenichi Handa <handa@m17n.org>
1419
1420 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
1421 before calling find_ccl_program_func. Call find_ccl_program_func
1422 only when fontp->font_encoder is not NULL.
1423
1424 * xterm.c (x_load_font): Clear all members of FONTP before start
1425 filling them.
1426
26a6e439
JPW
14272003-10-03 John Paul Wallington <jpw@gnu.org>
1428
1429 * keymap.c (map_keymap): Don't abort when binding is a vector.
1430
0d4c2dc2
JR
14312003-10-02 Jason Rumney <jasonr@gnu.org>
1432
854c1a59
SM
1433 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
1434 Sync dependencies with Makefile.in.
a63cf46f
JR
1435 (alloca.o): Remove.
1436
0d4c2dc2
JR
1437 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
1438 filling them.
1439
1440 * w32bdf.c (w32_load_bdf_font): Likewise.
1441
ab8f7d5c
RS
14422003-09-30 Richard M. Stallman <rms@gnu.org>
1443
1444 * term.c (set_tty_color_mode): Calculate current_mode_spec
1445 regardless of value of VAL.
1446
854c1a59 1447 * intervals.c (graft_intervals_into_buffer):
ab8f7d5c
RS
1448 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
1449 Handle over_used when splitting UNDER.
1450
14512003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1452
1453 * regex.c (regex_compile): Free the stack when returning from function.
1454
3413f972
KH
14552003-09-28 Kenichi Handa <handa@m17n.org>
1456
1457 * fontset.c (Finternal_char_font): Change return value to
1458 cons (FONT-NAME . GLYPH-CODE).
1459
40409f05
EZ
14602003-09-28 Eli Zaretskii <eliz@elta.co.il>
1461
1462 * term.c (tty_setup_colors): Treat any negative argument as -1.
1463
f98ddc99
KH
14642003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
1465
1466 * process.c (send_process): Delete unused temp_buf.
1467
66c8f1a8
DL
14682003-09-26 Dave Love <fx@gnu.org>
1469
1470 * xterm.c (x_bitmap_mask): Declare.
1471
ca716c26
DL
14722003-09-25 Dave Love <fx@gnu.org>
1473
1474 * Makefile.in (fns.o): Depend on md5.h.
1475
fbe57420
KS
14762003-09-25 Kim F. Storm <storm@cua.dk>
1477
1478 * window.c (set_window_buffer): Fix redisplay problems when
1479 switching between buffers with different display margin widths.
1480
ef6ae4ff
KS
14812003-09-23 Kim F. Storm <storm@cua.dk>
1482
1483 * process.c (set_socket_option): Fix :bindtodevice option.
1484 (Fset_network_process_option): Update process contact list when
1485 setting option succeeds.
1486 (Fmake_network_process): Doc fix.
1487
68e03c1c
DL
14882003-09-23 Dave Love <fx@gnu.org>
1489
7146d1c1 1490 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
68e03c1c 1491
2f809aae
EZ
14922003-09-22 Eli Zaretskii <eliz@elta.co.il>
1493
1494 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
1495 color mode is an integer number (it could be -1).
1496
8fe7d8c8
RS
14972003-09-22 Richard M. Stallman <rms@gnu.org>
1498
1499 * intervals.c (graft_intervals_into_buffer): Correct the main loop
1500 in the case where OVER is longer than UNDER.
1501
2f71b5ea
MY
15022003-09-22 Masatake YAMATO <jet@gyve.org>
1503
7146d1c1 1504 * window.c (Fset_window_scroll_bars): Validate the value of
2f71b5ea 1505 `vertical_type'.
7146d1c1 1506
0c4da023
KS
15072003-09-21 Kim F. Storm <storm@cua.dk>
1508
1509 * frame.c (Vdefault_frame_scroll_bars): New variable.
1510 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
1511 (syms_of_frame): DEFVAR_LISP it, and initialize according to
1512 window-system default scroll bar position.
1513
b648413b
KS
1514 * window.c (Fwindow_scroll_bars): Doc fix.
1515
8f5b9e34
JD
15162003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1517
854c1a59 1518 * xterm.c (x_set_offset): Take window manager decorations into account.
8f5b9e34 1519
b0f23edf
RS
15202003-09-19 Richard M. Stallman <rms@gnu.org>
1521
1522 * atimer.h: Don't include lisp.h.
1523 (P_): Define it here (as well as elsewhere).
1524
1525 * print.c (Fprin1_to_string): Move the PRINTPREPARE
1526 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
1527
1528 * data.c (Fvariable_binding_locus): New function.
1529 (syms_of_data): defsubr it.
1530 (Flocal_variable_p): Delete duplicate call to indirect_variable.
1531
e1283999
DL
15322003-09-18 Dave Love <fx@gnu.org>
1533
ad5f3636
DL
1534 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
1535
e1283999
DL
1536 * process.c (Fnetwork_interface_info): Fix type error.
1537 (Fnetwork_interface_list): Doc fix.
1538 (read_process_output, read_process_output): Delete unused var.
1539
b8c7fd71
KS
15402003-09-17 Kim F. Storm <storm@cua.dk>
1541
1542 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
1543 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
1544 (Fnetwork_interface_info): Check that ifreq struct has required
1545 fields before accessing them; this requires that those fields are
1546 defined as macros, which may be too restrictive on some platforms,
1547 but it is better than failing on other platforms.
1548 (syms_of_process): Only defsubr above fns when included.
1549
11e0a411
DL
15502003-09-17 Dave Love <fx@gnu.org>
1551
1552 * unexalpha.c: Don't include varargs.h.
1553
e9c50801
KS
15542003-09-17 Kim F. Storm <storm@cua.dk>
1555
1556 * process.c (Fset_process_sentinel): Add sentinel to childp plist
1557 for network process.
1558 (socket_options): Add `:' prefix to option names. Add optbit field.
1559 (set_socket_option): Remove no_error arg and special handling of s < 0.
1560 Return 1<<optbit for known option, 0 for unknown.
1561 Do not interpret 0 as false for boolean option (only nil).
1562 Pass failed option and value to report_file_error.
7146d1c1 1563 (Fset_network_process_options): Replace by Fset_network_process_option.
e9c50801
KS
1564 (Fset_network_process_option): New function to set just one option.
1565 (Fmake_network_process): Allow :coding arg to be a cons.
1566 Allow :server arg to be an integer specifying backlog size.
1567 Remove :options arg, and allow options to be specified directly
1568 as :KEY, VALUE pairs. Parse these options before binding socket.
1569 As before, :reuseaddr t is default for a server process, but this
1570 can now be disabled by specifying :reuseaddr nil.
1571 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
1572 (init_process): Availability of network options is now checked with
1573 simpler syntax (featurep 'make-network-process :OPTION); use loop to
1574 setup features.
1575 (syms_of_process): Fix defsubr's for the replaced functions.
1576
a0fc3644
DL
15772003-09-16 Dave Love <fx@gnu.org>
1578
1579 * Makefile.in: Depend on coding.h.
1580
6df2a645
KS
15812003-09-14 Kim F. Storm <storm@cua.dk>
1582
1583 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
1584 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
1585 (syms_of_process): Defsubr them.
1586
1587 * config.in: Regenerate.
7146d1c1
SM
1588
15892003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
1590
1591 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
1592 * m/news-r6.h (XUNMARK): Remove.
1593 * m/mips.h (XUNMARK): Remove.
1594 * m/mips-siemens.h (XUNMARK): Remove.
1595 * m/iris4d.h (XUNMARK): Remove.
1596 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
1597
0930c1a1
SM
15982003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
1599
31003b9e
SM
1600 * lisp.h (VALBITS): Don't remove 1 for the markbit.
1601 (union Lisp_Object): Use unsigned int for types. Remove markbit.
1602 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
1603 (XTYPE): Use unsigned right-shift.
1604 (XMARKBIT, XMARK, XUNMARK): Remove.
1605
0930c1a1
SM
1606 * alloc.c (init_intervals, init_symbol, init_marker):
1607 Don't preallocate anything.
1608 (Fgarbage_collect, mark_object): Ignore the markbit.
1609
1610 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
1611
19bb0fcd 16122003-09-08 Lute Kamstra <lute@gnu.org>
5df034de
LK
1613
1614 * xdisp.c (pint2hrstr): New function.
1615 (decode_mode_spec): Add `%i' and `%I' specs.
1616 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
1617 for `mode-line-format'.
1618
03bb6a06
AS
16192003-09-07 Andreas Schwab <schwab@suse.de>
1620
1621 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
1622 avoid warning.
1623
2063d89c
EZ
16242003-09-07 Eli Zaretskii <eliz@elta.co.il>
1625
0930c1a1 1626 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
2063d89c 1627
ed159bbf
KS
16282003-09-03 Kim F. Storm <storm@cua.dk>
1629
1630 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
1631 change (superseded by 2002-08-30 change); the default blink-off
1632 cursor is now again "no cursor".
1633
fe64a394
JR
16342003-09-01 Jason Rumney <jasonr@gnu.org>
1635
1636 * makefile.w32-in (alloca.o): Remove.
1637 (coding.o): Depend on intervals.h
1638 (emacs.o, bytecode.o): Depend on window.h
1639
c0175e24
DL
16402003-09-01 Dave Love <fx@gnu.org>
1641
1642 * Makefile.in (alloca.o): Remove commands.
1643 (coding.o): Depend on intervals.h composite.h window.h.
1644 (emacs.o): Depend on window.h keyboard.h keymap.h.
1645 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
1646 (bytecode.o): Depend on window.h.
1647
a24d4cb2
JR
16482003-08-31 Jason Rumney <jasonr@gnu.org>
1649
4bc2315e
JR
1650 * w32term.c (w32_per_char_metric): Allow cached metrics to be
1651 returned even when font_type is unknown.
1652
a24d4cb2
JR
1653 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
1654
9d35adc7
JD
16552003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1656
1657 * xterm.c (x_term_init): Initialize new fields in x_display_info.
1658
1659 * xterm.h (struct x_display_info): Add red/green/blue_bits and
1660 *_offset.
1661
1662 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
1663 calculate pixel value.
1664
6f68b035
GM
16652003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
1666
0930c1a1
SM
1667 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
1668 Don't tell redisplay display is accurate when it's actually been
1669 paused for pending input.
6f68b035 1670
4828b4d7
RS
16712003-08-29 Richard M. Stallman <rms@gnu.org>
1672
1673 * dispnew.c (adjust_glyph_matrix): Call window_box
1674 whenever W is nonzero.
1675
1676 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
1677 (Fkill_local_variable, Fmake_variable_frame_local)
0930c1a1 1678 (Flocal_variable_p, Flocal_variable_if_set_p):
4828b4d7
RS
1679 Use indirect_variable to trace thru variable aliases.
1680
1681 * config.in: Updated.
1682
1683 * callint.c (Fcall_interactively): Save and restore
1684 Vthis_command, Vthis_original_command, real_this_command,
1685 and current_kboard->Vlast_command.
1686
1687 * abbrev.c (Fexpand_abbrev): Insert before deleting.
1688
e019878d
GM
16892003-08-29 Gerd Moellmann <gerd@gnu.org>
1690
1691 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
1692
85478bc6
KH
16932003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
1694
0930c1a1 1695 * coding.c (decode_coding_iso2022): Initialize local variable c2.
85478bc6
KH
1696 (decode_coding_sjis_big5): Likewise.
1697
07ce82d3
JR
16982003-08-27 Jason Rumney <jasonr@gnu.org>
1699
d3703de3
JR
1700 * w32.c (sys_pipe): Protect against file descriptor overflow.
1701
ee4a01d1
JR
1702 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
1703
07ce82d3
JR
1704 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
1705
72d19c66
LK
17062003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
1707
1708 * xfns.c (Vgtk_version_string): New variable.
1709 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
1710
5459e42a
EZ
17112003-08-24 Eli Zaretskii <eliz@elta.co.il>
1712
0930c1a1 1713 * term.c (term_init): Remove `const' from buffer_size's declaration.
3d8714e7 1714
5459e42a
EZ
1715 * Makefile.in (msdos.o): Depend on intervals.h.
1716
0930c1a1 1717 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
5459e42a 1718
231d6cfb
JD
17192003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1720
1721 * xterm.h (struct x_display_info): New fields: client_leader_window
1722 and Xatom_wm_client_leader.
1723
1724 * xterm.c (x_initialize): Move call to x_session_initialize to ...
1725 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
1726
1727 * xsmfns.c (create_client_leader_window): New function.
1728 (x_session_initialize): Call create_client_leader_window, take
1729 dpyinfo as argument.
1730
1731 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
1732
1733 * Makefile.in (xsmfns.o): Add more depenedencies.
1734
afa88464
DL
17352003-08-21 Dave Love <fx@gnu.org>
1736
1737 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
1738
f730033e
KH
17392003-08-21 Kenichi Handa <handa@m17n.org>
1740
1741 * term.c (term_init): Fix previous change; don't rely on the
1742 length of `buffer' if TERMINFO is defined.
1743
6dca786c
DL
17442003-08-20 Dave Love <fx@gnu.org>
1745
1746 * atimer.h: Include lisp.h.
1747
1748 * lisp.h (EMACS_LISP_H): New.
1749 (popup_activated_flag): Don't declare.
1750
1751 * alloca.c: Some merging with gnulib. Change logic and doc
1752 concerning (x)malloc/(x)free -- no longer Emacs-specific.
1753 [DO_BLOCK_INPUT]: Don't include lisp.h.
1754 (xmalloc, xfree): Declare.
1755 (malloc): Don't declare.
1756
0930c1a1 1757 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
6dca786c
DL
1758 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
1759 atimer.h, blockinput.h.
1760
1761 * alloc.c (lisp_align_malloc): Change type of `aligned'.
1762
1763 * alloca.s: Removed.
1764
3a06a6d9
RS
17652003-08-19 Gerd Moellmann <gerd@gnu.org>
1766
1767 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
1768 use -lncurses.
1769
1770 * term.c (term_init): Use a buffer of size 4096 for tgetent since
1771 FreeBSD returns something longer than 2044. Abort if the end of
1772 the buffer is overwritten.
1773
27eeee55
MB
17742003-08-19 Miles Bader <miles@gnu.org>
1775
1776 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
1777
2f297815
GM
17782003-08-19 Gerd Moellmann <gerd@gnu.org>
1779
f4446bbf
GM
1780 * alloc.c (lisp_align_malloc): Check for memory full when
1781 allocating ablocks, which also avoids freeing a pointer into an
1782 ablocks structure.
1783
1784 * puresize.h (BASE_PURESIZE): Increase to 1100000.
1785
0930c1a1 1786 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
2f297815 1787
0e7d7aae
RS
17882003-08-16 Richard M. Stallman <rms@gnu.org>
1789
1790 * editfns.c (Fencode_time): Doc fix.
1791
17922003-08-16 David Ponce <david@dponce.com>
1793
1794 * fileio.c (Fwrite_region): Fix conditional expression to issue
1795 the right message.
1796
17972003-08-16 Juri Linkov <juri@jurta.org> (tiny change)
1798
1799 * syntax.c (Fforward_word): Argument changed to optional.
0930c1a1 1800 Set default value to 1.
0e7d7aae 1801
5d551295
KH
18022003-08-15 Kenichi Handa <handa@m17n.org>
1803
1804 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
1805 what autoscaled.
1806 (best_matching_font): Once we find a better scalable font, set
1807 non_scalable_has_exact_height_p to 1.
1808 (try_font_list): Call try_alternative_families to try any family
1809 with the given registry.
1810
1661e56b
AS
18112003-08-09 Andreas Schwab <schwab@suse.de>
1812
f29181dc
AS
1813 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
1814
1661e56b
AS
1815 * print.c (print_string): Fix printing of multibyte string with
1816 nontrivial printcharfun.
1817
465aa50a
JD
18182003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1819
1820 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
1821
1822 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
1823
e430e5ba
KH
18242003-07-31 Kenichi Handa <handa@m17n.org>
1825
1826 * process.c (read_process_output): Return the actually read bytes
1827 instead of the result of decoding.
1828
97e7188e
KH
18292003-07-31 Kenichi Handa <handa@m17n.org>
1830
1831 * xterm.h (struct x_bitmap_record): New member have_mask.
1832
1833 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
1834 to 0.
1835 (x_create_bitmap_from_file): Likewise.
1836 (x_destroy_bitmap): Check have_mask member before freeing a mask.
1837 (x_destroy_all_bitmaps): Likewise.
1838 (x_create_bitmap_mask): Set have_mask member to 1.
1839
b53094d6
RS
18402003-07-30 Richard M. Stallman <rms@gnu.org>
1841
1842 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
1843
631f2082
JD
18442003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1845
1846 * gtkutil.c (xg_mark_data): Update calls to mark_object.
1847
c855f2ca
RS
18482003-07-29 Richard M. Stallman <rms@gnu.org>
1849
1850 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
1851 Conditionalize XIM code on HAVE_XIM.
1852
1853 * fns.c (Fclear_string): New function.
1854 (syms_of_fns): defsubr it.
1855
17e6d491
KH
18562003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> (tiny change)
1857
0930c1a1 1858 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
17e6d491 1859
29ea8ae9
SM
18602003-07-22 Stefan Monnier <monnier@cs.yale.edu>
1861
1862 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
1863
1864 * buffer.c (delete_all_overlays): New function.
1865 * buffer.h (delete_all_overlays): Declare.
1866 * coding.c (run_pre_post_conversion_on_str):
1867 * print.c (temp_output_buffer_setup):
1868 * fileio.c (Finsert_file_contents):
1869 * minibuf.c (get_minibuffer): Use it.
1870
1dd7ccf2
AC
18712003-07-22 Andrew Choi <akochoi@shaw.ca>
1872
1873 * unexmacosx.c (unexec_regions_sort_compare):
1874 (unexec_regions_merge): New functions. Sort and merge unexec
1875 regions before dumping them.
1876
f57bd967
DL
18772003-07-22 Dave Love <fx@gnu.org>
1878
1879 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
1880
7cdee936
SM
18812003-07-21 Stefan Monnier <monnier@cs.yale.edu>
1882
1883 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
1884 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
1885 MARKBIT as the gcmarkbit for strings.
1886
e50886d3
RS
18872003-07-21 Richard M. Stallman <rms@gnu.org>
1888
1889 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
1890
29ea8ae9 1891 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
e50886d3
RS
1892 (syms_of_fns): Corresponding change.
1893
1894 * alloc.c (syms_of_alloc): Doc fixes.
1895
18962003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
1897
1898 * s/netbsd.h: Use -Wl syntax.
1899
fdc39b59
RS
19002003-07-17 Richard M. Stallman <rms@gnu.org>
1901
1902 * xterm.c (xim_initialize): Redo 6/24 change.
1903
9c53385f
SM
19042003-07-15 Stefan Monnier <monnier@cs.yale.edu>
1905
1906 * buffer.c (copy_overlays): Use EMACS_INT for positions.
1907 (Fswitch_to_buffer): Don't signal an error when switching to the same
1908 buffer in a dedicated window.
1909
1910 * alloc.c: Use bitmaps for cons, as was done for floats.
1911 (init_float, init_cons): Let the normal code allocate the first block.
1912 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
1913 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
1914 New macros.
1915 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
1916 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
1917 (live_cons_p): Check the pointer is not past the `conses' array.
1918 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
1919 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
1920 (survives_gc_p): Use CONS_MARKED_P and simplify.
1921 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
1922
dde13196
PE
19232003-07-13 Paul Eggert <eggert@twinsun.com>
1924
1925 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
1926 puts it into BSS instead, at least on Solaris 8 and 9.
1927 This is a valid optimization, and it may occur on other platforms,
1928 so Emacs should not assume that initializing a static variable to
1929 zero puts it into data.
1930 * alloc.c (pure, staticvec):
1931 Initialize these arrays to nonzero, so that they're not
1932 put into BSS by that optimization.
1933
a801bc34
SM
19342003-07-13 Stefan Monnier <monnier@cs.yale.edu>
1935
1936 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
1937 (lisp_align_malloc): Use posix_memalign is available.
1938 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
1939 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
1940 for consistency. Update users.
1941
0c8b2afa
RS
19422003-07-13 Richard M. Stallman <rms@gnu.org>
1943
1944 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
1945
668c2ab0
JB
19462003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
1947
1948 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
1949 and use the Gtk+ function gtk_window_icon_from_file if available.
1950
1951 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
1952 handle mask of bitmaps.
1953 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
1954 mask property.
1955 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
1956
1957 * xterm.h (xg_set_icon): New function.
1958
800bebe3
RS
19592003-07-12 Paul Eggert <eggert@twinsun.com>
1960
1961 * unexelf.c (unexec): Consider a section to precede the .bss
1962 section if its addresses overlap that of .bss.
1963
69e38995
RS
19642003-07-12 Richard M. Stallman <rms@gnu.org>
1965
1966 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
1967
1968 * config.in (HAVE_CRTIN): Add #undef.
1969 (INLINE): Really inline only if OPTIMIZE is defined.
1970
1971 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
1972 END_FILES_1.
1973 (START_FILES_1, END_FILES_1): New macros (conditional).
a801bc34 1974 (LD_SWITCH_SYSTEM_TEMACS): Define.
69e38995
RS
1975
1976 * s/openbsd.h: Don't include bsd4-3.h.
a801bc34
SM
1977 (TERMINFO): Define.
1978 (LIBS_TERMCAP): Define.
1979 (LD_SWITCH_SYSTEM): Define (two definitions).
69e38995
RS
1980
1981 * xfns.c: Include libpng/png.h instead of png.h.
1982
f1d0c238
AS
19832003-07-11 Andreas Schwab <schwab@suse.de>
1984
1985 * buffer.c (modify_overlay): Update prototype.
1986 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
1987 Likewise.
1988
5f6bf5fe
SM
19892003-07-09 Stefan Monnier <monnier@cs.yale.edu>
1990
1991 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
1992 (struct interval): Move to intervals.h.
1993 (struct Lisp_Marker): Use EMACS_INT for position info.
1994 (forward_point): Remove prototype of defunct function.
1995 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
1996 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
1997 (syms_of_textprop, set_text_properties): Remove prototypes that are
1998 already in intervals.h.
1999
2000 * intervals.h (struct interval): Move from lisp.h.
2001 Use EMACS_INT for position and size info.
2002
2003 * coding.c: Include intervals.h for Fset_text_properties.
2004
2005 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
2006 position and length information.
2007
2765b457
SM
20082003-07-09 Stefan Monnier <monnier@cs.yale.edu>
2009
2010 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
2011 position and length information.
2012
2410d73a
SM
20132003-07-09 Stefan Monnier <monnier@cs.yale.edu>
2014
2015 Change overlays_after and overlays_before so the overlays themselves
2016 are linked into lists, rather than using cons cells. After all each
2017 Lisp_Misc already occupies 5 words, so we can add a `next' field to
2018 Lisp_Overlay for free and save up one cons cell per overlay (not
2019 to mention one indirection when traversing the list of overlay).
2020
2021 * lisp.h (struct Lisp_Overlay): New field `next'.
2022
2023 * buffer.h (struct buffer): Change overlays_before and overlays_after
2024 from Lisp lists of overlays to pointers to overlays.
2025
2026 * buffer.c (overlay_strings, recenter_overlay_lists):
2027 Fix typo in eassert in last commit.
2028 (unchain_overlay): New function.
2029 (add_overlay_mod_hooklist): Use AREF.
2030 (copy_overlays, reset_buffer, overlays_at, overlays_in)
2031 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
2032 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
2033 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
2034 (report_overlay_modification, evaporate_overlays, init_buffer_once):
2035 Adjust to new type of overlays_(before|after).
2036
2037 * alloc.c (mark_object): Mark the new `next' field of overlays.
2038 (mark_buffer): Manually mark the overlays_(after|before) fields.
2039
2040 * coding.c (run_pre_post_conversion_on_str):
2041 * editfns.c (overlays_around):
2042 * xdisp.c (load_overlay_strings):
2043 * fileio.c (Finsert_file_contents):
2044 * indent.c (current_column):
2045 * insdel.c (signal_before_change, signal_after_change):
2046 * intervals.c (set_point_both):
2047 * print.c (temp_output_buffer_setup): Use new type for
2048 overlays_(before|after).
2049
04812929
SM
20502003-07-08 Stefan Monnier <monnier@cs.yale.edu>
2051
2052 * buffer.c (report_overlay_modification): Don't run hooks while
2053 traversing the list of overlays.
2054
2055 * buffer.h (struct buffer): Use an int for overlay_center.
2056 (overlays_at, evaporate_overlays, recenter_overlay_lists)
2057 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
2058
2059 * buffer.c (reset_buffer, recenter_overlay_lists)
2060 (adjust_overlays_for_insert, adjust_overlays_for_delete)
2061 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
2062 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
2063 (overlays_at, evaporate_overlays, recenter_overlay_lists)
2064 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
2065
2066 * xdisp.c (fast_find_position): Remove unused var.
2067
2068 * cmds.c (Qexpand_abbrev): New sym.
2069 (syms_of_cmds): Initialize it.
2070 (internal_self_insert): Use it to call expand-abbrev.
2071
2e7ecf15
KS
20722003-07-09 Kim F. Storm <storm@cua.dk>
2073
2074 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if emacs
2075 was configured with --without-xim.
42f81f64 2076 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
2e7ecf15 2077
c6de56a0
RS
20782003-07-07 Richard M. Stallman <rms@gnu.org>
2079
2080 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
2081
2082 * alloc.c (Fgarbage_collect): Doc fix.
2083
b93fb365
KH
20842003-07-07 Nozomu Ando <nand@mac.com> (tiny change)
2085
2086 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
2087
bfe1a3f7
SM
20882003-07-06 Stefan Monnier <monnier@cs.yale.edu>
2089
04812929
SM
2090 * minibuf.c (read_minibuf): UNGCPRO before returning.
2091 (Ftry_completion, Fall_completions): Doc fix.
2092
bfe1a3f7
SM
2093 * alloc.c (live_float_p): Check that p is not past the `floats' array,
2094 now that `floats' is not the last element of the struct any more.
2095
ee79d1aa
JR
20962003-07-06 Jason Rumney <jasonr@gnu.org>
2097
2098 * w32term.h (ClipboardSequence_Proc): New type.
2099
2100 * w32fns.c (clipboard_sequence_fn): New variable.
2101 (globals_of_w32fns): Initialize it.
2102
2103 * w32select.c (last_clipboard_sequence_number): New variable.
2104 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
2105 number if possible.
2106
49723c04
SM
21072003-07-06 Stefan Monnier <monnier@cs.yale.edu>
2108
4698665f
SM
2109 * m/amdx86-64.h (MARKBIT):
2110 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
2111 MARKBIT and ARRAY_MARK_FLAG any more.
2112
2113 * m/hp800.h (XSETMARKBIT):
2114 * m/sr2k.h (XSETMARKBIT):
2115 * lisp.h (XSETMARKBIT): Remove unused macro.
2116
49723c04
SM
2117 * lisp.h (mark_object): Change prototype.
2118
2119 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
2120 (last_marked): Change accordingly.
2121 (mark_interval, mark_maybe_object, mark_maybe_pointer)
2122 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
2123 (mark_buffer): Update calls to mark_object.
2124
2125 * bytecode.c (mark_byte_stack):
2126 * fns.c (sweep_weak_table):
2127 * keyboard.c (mark_kboards): Update calls to mark_object.
2128
1d660eca
JR
21292003-07-06 Jason Rumney <jasonr@gnu.org>
2130
2131 * alloc.c (struct ablock): Only include padding when there is some.
2132
618b5ae4
SM
21332003-07-04 Stefan Monnier <monnier@cs.yale.edu>
2134
2135 * alloc.c (ALIGN): Add casts to simplify usage.
2136 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
2137 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
2138 (struct ablock, struct ablocks): New types.
2139 (free_ablock): New global var.
2140 (lisp_align_malloc, lisp_align_free): New functions.
2141 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
2142 (struct float_block): Reorder and add gcmarkbits.
2143 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
2144 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
2145 (init_float, make_float): Use lisp_align_malloc.
2146 (free_float, live_float_p): Don't use `type' any more.
2147 (make_float): Use FLOAT_UNMARK to access to mark bit.
2148 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
2149 Use FLOAT_MARKED_P to access the mark bit.
2150 (pure_alloc): Simplify use of ALIGN.
2151 (mark_object): Use FLOAT_MARK to access the mark bit.
2152 (gc_sweep): Use new macros to access the float's mark bit.
2153 (init_alloc_once): Init free_ablock.
2154
2155 * lisp.h (struct Lisp_Float): Remove unused field `type'.
2156
3ef06d12
SM
21572003-06-27 Stefan Monnier <monnier@cs.yale.edu>
2158
2159 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
2160 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
2161 (allocate_buffer): Move.
2162 (string_bytes): Don't mask markbit of `size_byte'.
2163 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
2164 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
2165 Use the `size' field of buffers (rather than the `name' field) for
2166 the mark bit, as is done for all other vectorlike objects.
2167 Use the new macros to access the mark bit of vectorlike objects.
2168
e81043aa
RS
21692003-06-26 Richard M. Stallman <rms@gnu.org>
2170
2171 * puresize.h (BASE_PURESIZE): Increment base size.
2172
2173 * xdisp.c (fast_find_position): Enable Gerd's new definition.
2174
2175 * xterm.c (xim_initialize): Undo previous change.
2176
2d0834cc
SM
21772003-06-26 Stefan Monnier <monnier@cs.yale.edu>
2178
2179 * alloc.c (survives_gc_p): Simplify.
2180
2181 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
2182
2183 * window.c (Fset_window_dedicated_p): Simplify.
2184 (display_buffer_1): Don't raise the win from which minibuf was entered.
2185 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
2186 (Fminibuffer_selected_window): Simplify.
2187
2188 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
2189
2190 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
2191 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
2192
2193 * insdel.c (check_markers, adjust_markers_for_delete)
2194 (adjust_markers_for_insert, adjust_markers_for_replace)
2195 (prepare_to_modify_buffer, RESTORE_VALUE):
2196 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
2197 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
2198 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
2199 * alloc.c (Fmake_marker, free_marker, gc_sweep):
2200 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
2201 * editfns.c (save_excursion_restore, transpose_markers):
2202 * window.c (delete_window):
2203 * xdisp.c (message_dolog): Update for new types.
2204
d54ae3d8
JD
22052003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2206
a5f696ac
JD
2207 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
2208 (realize_default_face): Use default_face_done_p for the force_p
2d0834cc 2209 argument to set_lface_from_font_name. Set default_face_done_p to one.
a5f696ac
JD
2210
2211 * frame.c (make_frame): Initialize default_face_done_p.
2212
2213 * frame.h (struct frame): Add default_face_done_p.
2214
d54ae3d8
JD
2215 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
2216 will be defined.
2217
2336fe58
SM
22182003-06-25 Stefan Monnier <monnier@cs.yale.edu>
2219
2220 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
2221 Initialize the new field `gcmarkbit'.
2222 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
2223 (mark_interval_tree): Don't mark the tree separately from the nodes.
2224 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
2225 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
2226 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
2227
2228 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
2229 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
2230 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
2231 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
2232 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
2233
bcea31c2
DL
22342003-06-24 Dave Love <fx@gnu.org>
2235
2236 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
2237
2238 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
2239 from gnulib.
2240
2601f59e
RS
22412003-06-21 Richard M. Stallman <rms@gnu.org>
2242
2243 * fileio.c (Fwrite_region): Alternate messages
2244 for append and partial write.
2245
2246 * keyboard.c (read_key_sequence): When converting upcase fn key to
2247 downcase, update fkey and keytran so `backspace' gets translated.
2248
2249 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
2250
2251 * process.c (wait_reading_process_input): Don't signal SIGIO
2252 in batch mode.
2253
b5d2c621
KH
22542003-06-17 Kenichi Handa <handa@m17n.org>
2255
2256 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
2257 composite.h.
2258
2259 * xselect.c: Don't include charset.h, coding.h, composite.h.
2260 (Qforeign_selection): New variable.
2261 (syms_of_xselect): Intern and static it.
2262 (selection_data_to_lisp_data): Return a unibyte string made from
2263 data with `foreign-selection' text property.
2264
6793bc63
SM
22652003-06-15 Stefan Monnier <monnier@cs.yale.edu>
2266
2267 * termhooks.h (EVENT_INIT): New macro.
2268
2269 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
2270
2271 * alloc.c (mark_kboards): Move to keyboard.c.
2272
2273 * keyboard.c (record_asynch_buffer_change, read_avail_input):
2274 * xterm.c (x_dispatch_event):
2275 * xmenu.c (find_and_call_menu_selection):
2276 * xdisp.c (handle_tool_bar_click):
2277 * w32menu.c (menubar_selection_callback):
2278 * sysdep.c (kbd_input_ast, read_input_waiting):
2279 * msdos.c (dos_rawgetc):
2280 * macterm.c (mac_check_for_quit_char):
2281 * macmenu.c (menubar_selection_callback):
2282 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
2283 data to kbd_buffer_store_event.
2284
b3ea810c
KS
22852003-06-15 Kim F. Storm <storm@cua.dk>
2286
2287 * xdisp.c (x_fix_overlapping_area): Always use area relative X
6793bc63 2288 to fix redisplay problem with tall characters (such as \e,AC\e(B).
b3ea810c 2289
b8f75eda
KG
22902003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
2291
2292 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
2293
ba92ce48
KH
22942003-06-12 Kenichi Handa <handa@m17n.org>
2295
2296 * fileio.c (Fwrite_region): Save and restore restriction.
2297
b80263be
DL
22982003-06-12 Dave Love <fx@gnu.org>
2299
2300 * alloca.c (alloca): Declare arg as size_t.
2301
6793bc63
SM
2302 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
2303 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
b80263be 2304
b23c0a83
DL
23052003-06-11 Dave Love <fx@gnu.org>
2306
2307 * search.c (shrink_regexp_cache): Use xrealloc.
2308 (syms_of_search): Use xmalloc.
2309
700e47c2
KS
23102003-06-10 Kim F. Storm <storm@cua.dk>
2311
2312 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
2313 Adjust phys_cursor.x to be relative to window box, rather than
2314 text area before checking -- to ensure cursor is redrawn when
2315 exposing window.
2316 Note: This also fixes a similar (older) bug if display margins
2317 are present.
2318
f11aa0b2
KH
23192003-06-06 Kenichi Handa <handa@m17n.org>
2320
2321 * coding.c (encoding_buffer_size): If coding->type is
2322 coding_type_ccl, double magnification on CRLF encoding.
2323
3d143690
JR
23242003-06-06 Jason Rumney <jasonr@gnu.org>
2325
2326 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
2327 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
2328
2329 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
2330 Mac too.
2331
f16205ca
DL
23322003-06-05 Dave Love <fx@gnu.org>
2333
b23c0a83
DL
2334 * strftime.c: Merge changes from gnulib.
2335
f16205ca
DL
2336 * mktime.c (__mktime_internal): Merge changes from gnulib
2337 involving year 69 and dst2.
2338
2339 Changes to merge with gnulib version and be consistent with the
2340 autoconf test:
2341
6793bc63
SM
2342 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
2343 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
f16205ca
DL
2344 [HAVE_LOCALE_H]: Include locale.h.
2345 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
2346
9b87a0bc
KS
23472003-06-05 Kim F. Storm <storm@cua.dk>
2348
2349 * window.c (coordinates_in_window): Convert X and Y to window
2350 relative coordinates inside mode-line and header-line parts.
2351 Convert X and Y to margin area relative coordinates inside left
2352 and right display margin parts.
2353
5a8a15ec
JR
23542003-06-05 Jason Rumney <jasonr@gnu.org>
2355
2356 * w32fns.c (add_system_logical_colors_to_map): New function.
2357 (Fx_open_connection): Use it.
2358
01ed8ff1
SM
23592003-06-04 Stefan Monnier <monnier@cs.yale.edu>
2360
2361 * process.c (allocate_pty): Revert part of the previous patch.
2362 (Faccept_process_output): Simplify.
2363
b427b65d
JR
23642003-06-04 Jason Rumney <jasonr@gnu.org>
2365
2366 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
2367
2368 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
2369 (lispy_mouse_wheel_names): Remove.
2370 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
2371 Always define drag_and_drop_syms.
2372
2373 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
2374 WHEEL_EVENT events.
2375
914a8c47
SM
23762003-06-03 Stefan Monnier <monnier@cs.yale.edu>
2377
01ed8ff1
SM
2378 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
2379
914a8c47
SM
2380 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
2381
adcb132c
JD
23822003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2383
2384 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
2385 menu item label.
2386
be781fa7
RS
23872003-06-03 Richard M. Stallman <rms@gnu.org>
2388
2389 * window.c (Fwindow_edges): Doc fix.
2390 (Fwindow_pixel_edges, Fwindow_inside_edges)
2391 (Fwindow_inside_pixel_edges): New functions.
2392 (syms_of_window): defsubr them.
2393
2394 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
2395 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
2396
914a8c47
SM
23972003-06-02 Stefan Monnier <monnier@cs.yale.edu>
2398
2399 * dispnew.c (Fsit_for): Don't lie about the number of args.
2400
5b07197a
DL
24012003-06-02 Dave Love <fx@gnu.org>
2402
2403 * callproc.c: Use HAVE_FCNTL_H, not USG5.
2404 (syms_of_callproc) <process-environment>: Doc fix.
2405
2406 * doc.c: Use HAVE_FCNTL_H, not USG5.
2407
2408 * xfaces.c (font_rescale_ratio): Fix for K&R.
2409
2410 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
2411
2412 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
2413
2414 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
2415
2416 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
2417 (xg_create_frame_widgets): Use ENCODE_UTF_8.
2418
d7107586 2419 * xterm.c (Qutf_8): Move to coding.c
5b07197a
DL
2420
2421 * xmenu.c (ENCODE_MENU_STRING): New.
2422 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
2423 Use it.
2424
2425 * coding.h (ENCODE_UTF_8): New.
2426 (Qutf_8): Declare.
2427
2428 * coding.c (Qutf_8): New.
2429 (syms_of_coding): Intern it.
2430
2431 * fns.c: Doc fixes.
2432
7335b336
KH
24332003-06-02 Kenichi Handa <handa@m17n.org>
2434
2435 * buffer.c (Fset_buffer_multibyte): Fix previous change.
2436
914a8c47
SM
24372003-06-01 Stefan Monnier <monnier@cs.yale.edu>
2438
2439 * lread.c (openp): Make sure STR is a string.
2440
9862c135
JR
24412003-06-01 David Ponce <david@dponce.com>
2442
2443 * termhooks.h (enum event_kind): Added new WHEEL_EVENT event.
2444 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
2445
2446 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
2447 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
2448 (discard_mouse_events): Discard WHEEL_EVENT events too.
2449 (lispy_wheel_names, wheel_syms): New.
2450 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
2451 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX
2452 defined.
914a8c47 2453 (make_lispy_event): Add WHEEL_EVENT handler.
9862c135
JR
2454
2455 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
2456 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
2457 WHEEL_EVENT events.
2458
f984e73e
JPW
24592003-05-31 John Paul Wallington <jpw@gnu.org>
2460
2461 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
2462 timer are in lisp/emacs-lisp.
2463
1efcd78f
KH
24642003-05-31 Kenichi Handa <handa@m17n.org>
2465
458c8af4
KH
2466 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
2467 region when a buffer is changed to unibyte.
2468
1efcd78f
KH
2469 * charset.h (VALID_LEADING_CODE_P): New macro.
2470 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
2471
778e2804
KH
2472 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
2473 is nonzero, accept multibyte form of eight-bit-control chars.
2474 (decode_composition_emacs_mule): Likewise.
2475 (decode_coding_emacs_mule): Likewise.
2476 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
2477 multibyte form of eight-bit-control chars.
2478
2479 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
2480 (Finsert_file_contents): If coding-system-for-read is bound to
2481 Qauto_save_coding, use the coding system emacs-mule with special
2482 setting for recovering a file.
2483 (choose_write_coding_system): On auto saving, use the coding
2484 system emacs-mule with special setting for auto saving.
2485 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
2486
034060e4
KH
24872003-05-30 Kenichi Handa <handa@m17n.org>
2488
2489 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
2490 properly before calling ccl_driver.
2491
778e2804 2492 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
034060e4
KH
2493
2494 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is
2495 nonzero.
2496 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
2497 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
2498
595f5aa5
GM
24992003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
2500
2501 * xfaces.c (realize_default_face): Do not abort if lface is
2502 non-existent - reverts change from 2003-05-19.
2503
103e0180
KH
25042003-05-29 Kenichi Handa <handa@m17n.org>
2505
2506 * coding.c (decode_coding_iso2022): Pay attention to the byte
2507 sequence of CTEXT extended segment, and retain those bytes as is.
2508
25092003-05-28 Kenichi Handa <handa@m17n.org>
2510
2511 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjusted for the name change
2512 of CODING_REPLACEMENT_CHARACTER.
2513 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
2514 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
2515 check this flag on encoding.
2516 (encode_coding_sjis_big5): Check
2517 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
2518 (Fset_terminal_coding_system_internal): Set
2519 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
2520 instead of setting CODING_FLAG_ISO_SAFE flag in
2521 terminal_coding.flags.
2522
2523 * coding.h (CODING_REPLACEMENT_CHARACTER): Renamed from
2524 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
2525 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
2526
ff6a3bfb 25272003-05-28 Richard M. Stallman <rms@gnu.org>
45f266dc 2528
ff6a3bfb
RS
2529 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
2530
2531 * eval.c (unbind_to): Move init of this_binding to separate statement.
45f266dc 2532
1963c428
KS
25332003-05-28 Kim F. Storm <storm@cua.dk>
2534
2535 * xdisp.c (expose_window): Fix error in calculation of
2536 window relative coordinates of area to redisplay.
2537
2b5d4601
JR
25382003-05-27 Jason Rumney <jasonr@gnu.org>
2539
2540 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
2541
1c64a4a2
JB
25422003-05-27 David Ponce <david@dponce.com>
2543
2544 Handle W32 mouse wheel events as mouse click events, like in X.
2545
2546 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
2547 MOUSE_WHEEL_EVENT anymore.
2548
2549 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
2550 Scrolling down/up the mouse wheel is respectively mapped to mouse
2551 button 4 and 5.
2552 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
2553 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
2554 WM_MOUSEWHEEL events.
2555
2d031b89
AS
25562003-05-27 Andreas Schwab <schwab@suse.de>
2557
20464fdf
AS
2558 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
2559
2d031b89
AS
2560 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
2561 partially visible line.
2562
2563 * alloc.c (Fgarbage_collect): Fix last change.
2564
97bc76d4
JPW
25652003-05-26 John Paul Wallington <jpw@gnu.org>
2566
2567 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
2568
56613f06
SM
25692003-05-25 Stefan Monnier <monnier@cs.yale.edu>
2570
2571 * window.c (Fset_window_buffer): Add type of `keep_margins'.
2572 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
2573
2574 * window.h (window_box_text_cols): Declare.
2575
2576 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
2577 (x_draw_vertical_border): Remove unused var `f'.
2578
2579 * xfaces.c (build_scalable_font_name): Remove `unused var
2580 pixel_size' warning.
2581
2582 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
2583
2584 * unexelf.c (unexec): Remove `unused var n' warning.
2585
2586 * strftime.c (my_strftime_localtime_r): Remove `defined but
2587 unused' warning.
2588
2589 * process.c (allocate_pty): Remove `unused var stb' and
2590 `cp might be used uninitialized' warnings.
2591
2592 * dispnew.c (mode_line_string): Remove unused var `f'.
2593
2594 * coding.c (find_safe_codings): Remove unused var `i'.
2595
2596 * bytecode.c (Fbyte_code): Remove `unused val' warning.
2597
2598 * buffer.c (Fkill_buffer): Remove unused var `list'.
2599
2600 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
2601
93421a1f
JD
26022003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2603
2604 * frame.c (make_frame): Condition want_fullscreen with
2605 HAVE_WINDOW_SYSTEM.
2606
c4b8aebc
JB
26072003-05-25 Juanma Barranquero <lektu@terra.es>
2608
2609 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
2610 (Fwindow_scroll_bars): Fix typo in docstring.
2611
0416870b
KS
26122003-05-24 Kim F. Storm <storm@cua.dk>
2613
2614 The following changes serve several purposes:
2615
2616 1) Swap the position of fringes and display margins in windows, i.e.
2617 the fringes are now displayed between the margins and the text area
2618 (by default).
2619
2620 2) Allow fringe and scroll bar parameters to be set per-buffer and
2621 per-window (like display margins). Such settings are now stored
2622 in window configurations, preserved when frames are resized, and
9018a88e 2623 copied when windows are split vertically or horizontally.
0416870b
KS
2624 Several bugs related to display margins have been fixed.
2625
2626 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
9018a88e 2627
0416870b
KS
2628 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
2629 rather than FRAME_WIDTH (FRAME_FONT (f)).
2630
2631 5) Introduce a consistent naming of variables, members and macros
2632 depending on whether their value is measured in pixels or in
2633 canonical columns/lines. Pixel dimensions are named *_width and
2634 *_height, while canonical columns/lines are named *_cols and
2635 *_lines. Pixel positions are named *_x and *_y, while column/line
2636 positions are named *_col and *_line.
2637
2638 6) Consolidate more of the X, W32, and MAC gui code by moving
2639 common data into struct frame, and generalize it for the non-gui
2640 case by using suitable defaults.
2641
2642 7) Cleanup and consolidate the macros controlling frame and window
2643 layout into frame.h and window.h, and generalize the use of the
2644 various window_box_* functions (enhanced to handle the new fringe
2645 position and the per-window fringe and scroll bar settings).
2646
2647 * frame.h (struct frame): Rename members height to text_lines,
2648 width to text_cols, window_height to total_lines, window_width to
2649 total_cols, new_height to new_text_lines, new_width to
2650 new_text_cols. All uses changed.
2651 (struct frame): New members which consolidate common members of
2652 x_output, w32_output, and mac_output structures: left_pos,
2653 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
2654 win_gravity, size_hint_flags, border_width, internal_border_width,
2655 line_height, fringe_cols, left_fringe_width, right_fringe_width,
2656 want_fullscreen. All uses changed.
2657 (struct frame): New member column_width contaning the canonical
2658 column width, analogue to line_height. All uses changed.
2659 (struct frame): Rename members scroll_bar_pixel_width to
2660 config_scroll_bar_width, and scroll_bar_cols to
2661 config_scroll_bar_cols. All uses changed.
2662 (struct frame): New member scroll_bar_actual_width which
2663 consolidates and renames the vertical_scroll_bar_extra member of
2664 x_output, w32_output, and mac_output structures. All uses changed.
2665 (FRAME_PIXEL_HEIGHT): Renamed from PIXEL_HEIGHT and moved
2666 from x/w32/macterm.h files. All uses changed. Also change code
2667 which referred to f->output_data...->pixel_height.
2668 (FRAME_PIXEL_WIDTH): Renamed from PIXEL_WIDTH and moved
2669 from x/w32/macterm.h files. All uses changed. Also change code
2670 which referred to f->output_data...->pixel_width.
2671 (FRAME_LINES): Renamed from FRAME_HEIGHT. All uses changed.
2672 Also change code which referred to f->height.
2673 (FRAME_COLS): Renamed from FRAME_WIDTH. All uses changed.
2674 Also change code which referred to f->width.
2675 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
2676 to update new_text_lines and new_text_cols members directly.
2677 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Renamed from
2678 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
2679 (FRAME_CONFIG_SCROLL_BAR_COLS): Renamed from
2680 FRAME_SCROLL_BAR_COLS. All uses changed.
2681 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
2682 Renamed from FRAME_LEFT_SCROLL_BAR_WIDTH and
2683 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
2684 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
2685 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
2686 (FRAME_TOTAL_COLS): Renamed from FRAME_WINDOW_WIDTH.
2687 (SET_FRAME_COLS): Renamed from SET_FRAME_WIDTH.
2688 (FRAME_TOTAL_COLS_ARG): Renamed from FRAME_WINDOW_WIDTH_ARG.
2689 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
2690 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
2691 (FRAME_LINE_HEIGHT): Renamed from CANON_Y_UNIT. Unconditionally
2692 return line_height member (it now has proper value also for
2693 non-window frames).
2694 (FRAME_COLUMN_WIDTH): Renamed from CANON_X_UNIT. Unconditionally
2695 return new column_width member (rather than the default font width).
2696 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
2697 (FRAME_RIGHT_FRINGE_WIDTH): Renamed from FRAME_X_... and moved
2698 from x/w32/macterm.h files. Unconditionally return corresponding
2699 member of frame structure (they now have proper values also for
2700 non-window frames).
2701 (FRAME_TOTAL_FRINGE_WIDTH): Renamed from FRAME_FRINGE_WIDTH.
2702 Calculate return value from left and right widths.
2703 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
2704 internal_border_width member (has proper value for non-window frame).
2705 (FRAME_PIXEL_X_FROM_CANON_X): Renamed from PIXEL_X_FROM_CANON_X.
2706 (FRAME_PIXEL_Y_FROM_CANON_Y): Renamed from PIXEL_Y_FROM_CANON_Y.
2707 (FRAME_CANON_X_FROM_PIXEL_X): Renamed from CANON_X_FROM_PIXEL_X.
2708 (FRAME_CANON_Y_FROM_PIXEL_Y): Renamed from CANON_Y_FROM_PIXEL_Y.
2709 (FRAME_LINE_TO_PIXEL_Y): Renamed from CHAR_TO_PIXEL_ROW,
2710 consolidated from xterm.h, macterm.h, and w32term.h.
2711 (FRAME_COL_TO_PIXEL_X): Renamed from CHAR_TO_PIXEL_COL,
2712 consolidated from xterm.h, macterm.h, and w32term.h.
2713 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Renamed from
2714 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
2715 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Renamed from
2716 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
2717 (FRAME_PIXEL_Y_TO_LINE): Renamed from PIXEL_TO_CHAR_ROW
2718 consolidated from x/mac/w32term.h.
2719 (FRAME_PIXEL_X_TO_COL): Renamed from PIXEL_TO_CHAR_COL
2720 consolidated from x/mac/w32term.h.
2721 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Renamed from
2722 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
2723 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Renamed from
2724 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
2725
2726 * window.h (struct window): Rename members left to left_col,
2727 top to top_line, height to total_lines, width to total_cols,
2728 left_margin_width to left_margin_cols, right_margin_width to
2729 right_margin_cols, orig_height to orig_total_lines, orig_top to
2730 orig_top_line. All uses changed.
2731 (struct window): New members left_fringe_width, right_fringe_width,
2732 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
2733 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
2734 New macros primarily used to simplify other macros.
2735 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
2736 referred to XINT (w->width).
2737 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
2738 referred to XINT (w->height).
2739 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
2740 referred to XINT (w->width) * canon_x_unit.
2741 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
2742 referred to XINT (w->height) * canon_y_unit.
2743 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
2744 referred to XINT (w->left).
2745 (WINDOW_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_EDGE. Change
2746 all uses and code that referred to XINT (w->left) + XINT (w->width).
2747 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
2748 referred to XINT (w->top).
2749 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
2750 referred to XINT (w->top) + XINT (w->height).
2751 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
2752 referred to XINT (w->left) * canon_x_unit.
2753 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
2754 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
2755 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
2756 referred to XINT (w->top) * canon_y_unit.
2757 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
2758 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
2759 (WINDOW_LEFTMOST_P): New macro.
2760 (WINDOW_BOX_LEFT_EDGE_COL): Renamed from WINDOW_LEFT_MARGIN.
2761 All uses changed.
2762 (WINDOW_BOX_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_MARGIN.
2763 All uses changed.
2764 (WINDOW_BOX_LEFT_EDGE_X): Renamed from
2765 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
2766 Do not exclude left fringe width.
2767 (WINDOW_BOX_RIGHT_EDGE_X): Renamed from
2768 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
2769 Do not exclude fringe widths.
2770 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
2771 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
2772 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
2773 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
2774 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
2775 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
2776 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
2777 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
2778 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
2779 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
2780 New macros. Change code which referenced corresponding
2781 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
2782 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
2783 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
2784 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
2785 allow per-window scroll-bar settings.
2786 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
2787 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
2788 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
2789 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
2790 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
2791 FRAME_SCROLL_BAR_WIDTH.
2792 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
9018a88e 2793 (WINDOW_SCROLL_BAR_AREA_X): New macros.
0416870b
KS
2794 (WINDOW_HEADER_LINE_HEIGHT): Renamed from
2795 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
2796 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Renamed from
2797 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
2798 (WINDOW_BOX_TEXT_HEIGHT): Renamed from
2799 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
2800 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
2801 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
2802 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Moved here from dispextern.h.
2803 (WINDOW_LEFT_MARGIN_WIDTH): Renamed from
2804 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
2805 (WINDOW_RIGHT_MARGIN_WIDTH): Renamed from
2806 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
2807 (window_from_coordinates): Update prototype.
2808 (Fset_window_buffer): Update EXFUN.
2809 (set_window_buffer): Update prototype.
9018a88e 2810
0416870b 2811 * dispextern.h (struct glyph_matrix): Rename members window_left_x
9018a88e 2812 to window_left_col, window_top_y to window_top_line. All uses
0416870b
KS
2813 changed.
2814 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
2815 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
2816 internal_border_width is now set to 0 for non-window frames.
2817 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
2818 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
2819 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
2820 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
2821 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
2822 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
2823 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
2824 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
2825 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
9018a88e 2826 Move to window.h and renamed [see window.h changes].
0416870b
KS
2827 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
2828 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
9018a88e
SM
2829 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
2830 Use WINDOW_TOTAL_LINES.
0416870b
KS
2831 (frame_update_line_height): Remove prototype.
2832
2833 * buffer.h (struct buffer): Rename members measured in columns:
2834 left_margin_width to left_margin_cols, right_margin_width to
2835 right_margin_cols. All uses changed.
2836 New members left_fringe_width, right_fringe_width,
2837 fringes_outside_margins for per-buffer fringe settings.
2838 New members scroll_bar_width and vertical_scroll_bar_type for
2839 per-buffer scroll bar settings.
2840
2841 * buffer.c (init_buffer_once): Set buffer_defaults and
2842 buffer_local_flags for new buffer-local variables
2843 left_fringe_width, right_fringe_width, fringes_outside_margins,
2844 scroll_bar_width, and vertical_scroll_bar_type.
2845 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
2846 default-* variables for them.
2847
2848 * dispnew.c: Make (many) trivial substitutions for renamed and
2849 new macros in dispextern.h, frame.h and window.h.
2850 (mode_line_string): No need to adjust width for mode lines, as it
2851 is already adjusted by the caller.
2852 (marginal_area_string): Handle fringes inside/outside margins.
9018a88e 2853
0416870b
KS
2854 * frame.c: Make (many) trivial substitutions for renamed and
2855 new macros in dispextern.h, frame.h and window.h.
2856 (make_frame): Initialize left_fringe_width, right_fringe_width,
2857 fringe_cols, scroll_bar_actual_width, border_width,
2858 internal_border_width, column_width, line_height, x_pixels_diff,
2859 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
2860 members with values suitable for a non-window frames.
2861
2862 * gtkutil.c: Make (many) trivial substitutions for renamed and
2863 new macros in dispextern.h, frame.h and window.h.
9018a88e 2864
0416870b
KS
2865 * indent.c: Make (few) trivial substitutions for renamed and
2866 new macros in dispextern.h, frame.h and window.h.
2867
2868 * keyboard.c: Make (many) trivial substitutions for renamed and
2869 new macros in dispextern.h, frame.h and window.h.
2870 (make_lispy_event): Use window positions returned from
2871 window_from_coordinates when constructing the lisp event for
2872 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
2873 (incorrect) values locally.
2874 (make_lispy_movement): Use window positions returned from
2875 window_from_coordinates when constructing the lisp event, rather
2876 than calculating (incorrect) values locally.
2877
2878 * scroll.c: Make (some) trivial substitutions for renamed and
2879 new macros in dispextern.h, frame.h and window.h.
2880
2881 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
2882 scroll-bars.
2883
2884 * sysdep.c: Make (few) trivial substitutions for renamed and
2885 new macros in dispextern.h, frame.h and window.h.
2886
2887 * term.c: Make (some) trivial substitutions for renamed and
2888 new macros in dispextern.h, frame.h and window.h.
2889
2890 * widget.c: Make (few) trivial substitutions for renamed and
2891 new macros in dispextern.h, frame.h and window.h.
2892
2893 * window.c: Make (many) trivial substitutions for renamed and
2894 new macros in dispextern.h, frame.h and window.h.
2895 (make_window): Initialize new members
2896 left_margin_cols, right_margin_cols, left_fringe_width,
2897 right_fringe_width, fringes_outside_margins, scroll_bar_width,
2898 and vertical_scroll_bar_type.
2899 (coordinates_in_window): Adapted to new fringe/margin positions
9018a88e 2900 and per-window fringes and scroll-bars.
0416870b 2901 Fix bug related to incorrectly adjusting coordinates by
9018a88e 2902 frame's internal_border_width (the effect normally negible since
0416870b
KS
2903 the internal_border_width is typically 0 or 1 pixel, but very
2904 noticeable for an internal_border_width of e.g. 25 pixels).
2905 Upon successful return (other than ON_NOTHING), the coordinates
2906 are now always properly converted to window relative for the
2907 given display element.
2908 (window_from_coordinates): Add new parameters wx and wy to
2909 return the window relative x and y position in the returned
2910 window and part. A null arg means, don't return the position.
2911 All callers changed.
2912 (adjust_window_margins): New function which may reduce the width
2913 of the display margins if a window's text area is too small after
2914 resizing or splitting windows.
2915 (size_window): Fix bug that did not account for display margin
2916 widths when checking the minimum width of a window; use
2917 adjust_window_margins.
2918 (set_window_buffer): Call Fset_window_fringes and
2919 Fset_window_scroll_bars to setup per-window elements.
2920 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
2921 existing display margin, fringe widths, and scroll bar settings
9018a88e
SM
2922 (e.g. after splitting a window or resizing the frame).
2923 All callers changed.
0416870b
KS
2924 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
2925 (Fsplit_window): Duplicate original window's display margin,
2926 fringe, and scroll-bar settings; then call Fset_window_buffer with
2927 KEEP_MARGINS non-nil. This fixes a bug which caused a split
2928 window to only preserve the display margins in one of the windows.
c4b8aebc 2929 When splitting horizontally, call adjust_window_margins on both
0416870b
KS
2930 windows to ensure that the text area of the new windows is non too
2931 narrow. This fixes a bug which could cause emacs to trap if the
2932 width of the split window was less than the width of the display
2933 margins.
9018a88e
SM
2934 (window_box_text_cols): Renamed from window_internal_width.
2935 All uses changed. Adapt to per-window fringes and scroll bars.
0416870b
KS
2936 Fix bug that caused vertical separator to be subtracted also on
2937 window frames. Fix another bug that did not reduce the returned
2938 value by the columns used for display margins.
2939 (window_scroll_line_based): Fix bug related to scrolling too much
2940 when display margins are present (implicitly fixed by the fix to
2941 window_box_text_cols).
2942 (scroll_left, scroll_right): Fix bug related to scrolling too far
2943 by default when display margins are present (implicitly fixed by
2944 the fix to window_box_text_cols).
2945 (struct saved_window): Rename members left to left_col, top to
2946 top_line, width to total_cols, height to total_lines, orig_top to
2947 orig_top_line, orig_height to orig_total_lines. All uses changed.
2948 New members left_margin_cols, right_margin_cols,
2949 left_fringe_width, right_fringe_width, fringes_outside_margins,
2950 scroll_bar_width, and vertical_scroll_bar_type for saving
2951 per-window display elements.
2952 (Fset_window_configuration): Restore display margins, fringes,
2953 and scroll bar settings. This fixes a bug which caused display
2954 margins to be discarded when saving and restoring a window
2955 configuration.
2956 (save_window_save): Save display margins, fringes, and scroll bar
2957 settings. This fixes a bug which caused display margins to be
2958 discarded when saving and restoring a window configuration.
2959 (Fset_window_margins): Do nothing if display margins are not
2960 really changed. Otherwise, call adjust_window_margins to ensure
2961 the text area doesn't get too narrow. This fixes a bug which
2962 could cause emacs to trap if setting display margins wider than
2963 the width of the window.
2964 (Fset_window_fringes): New defun to allow user to specifically set
2965 this window's fringe widths and position vs. display margins.
2966 (Fwindow_fringes): New defun to return window's actual fringe
2967 settings.
2968 (Fset_window_scroll_bars): New defun to allow user to specifically
2969 set this window's scroll bar width and position.
2970 (Fwindow_scroll_bars): New defun to return window's actual scroll
2971 bar settings.
2972 (compare_window_configurations): Also compare display margins,
2973 fringes, and scroll bar settings.
2974 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
2975
2976 * xdisp.c: Make (many) trivial substitutions for renamed and
2977 new macros in dispextern.h, frame.h and window.h.
2978 (window_box_width): Adapt to per-window fringes and scroll bars,
2979 and new fringe vs. display margin position. Note that returned
2980 value is no longer guaranteed to be a whole multiple of the frame
2981 column width, since per-window fringes may now be any width.
2982 (window_box_left_offset): New function like window_box_left, but
2983 value is relative to left border of window (rather than frame).
2984 (window_box_right_offset): New function like window_box_right,
2985 but value is relative to left border of window.
2986 (window_box_left): Adapt to per-window fringes and scroll bars,
2987 and new fringe vs. display margin position. Simplify by using
2988 WINDOW_LEFT_EDGE_X and window_box_left_offset.
2989 (window_box): Allow null args for unnecessary return values;
2990 change/simplify relevant callers.
2991 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
9018a88e
SM
2992 and new fringe vs. display margin position.
2993 Use window_box_left_offset and window_box_right_offset
0416870b 2994 (get_glyph_string_clip_rect): Adapt to per-window fringes and
9018a88e
SM
2995 scroll bars, and new fringe vs. display margin position.
2996 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
0416870b
KS
2997 (draw_fringe_bitmap): Rework to handle per-window fringes and new
2998 fringe vs. display margin position.
2999 (hscroll_window_tree): Use window_box_width instead of window_box.
3000 (redisplay_window): Adapt to per-window scroll bars.
3001 (draw_glyphs): Rework to handle per-window fringes and scroll
9018a88e
SM
3002 bars, and new fringe vs. display margin position.
3003 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
0416870b
KS
3004 (x_clear_end_of_line): Adapt to per-window fringes and scroll
3005 bars, and new fringe vs. display margin position. Fix bug which
3006 increased total width of full_width rows by width of scroll bars
3007 although window's total width already includes that.
3008 (x_fix_overlapping_area): Simplify using window_box_left_offset.
3009 (expose_area): Simplify using window_box_left_offset.
3010 (x_draw_vertical_border): Handle per-window scroll bar settings,
3011 mixing windows with left, right and no scroll bars.
3012
3013 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
3014 where it's used in x_list_fonts (for clarity).
3015 (frame_update_line_height): Remove unused function; functionality
3016 is now done directly when setting the default font in x_set_font.
3017
3018 * xfns.c: Make (many) trivial substitutions for renamed and
3019 new macros in dispextern.h, frame.h and window.h.
3020
3021 * xmenu.c: Make (some) trivial substitutions for renamed and
3022 new macros in dispextern.h, frame.h and window.h.
3023
3024 * xterm.h (struct x_output): Move members left_pos, top_pos,
3025 border_width, pixel_height, pixel_width, line_height,
3026 internal_border_width, vertical_scroll_bar_extra,
3027 left_fringe_width, right_fringe_width, fringe_cols,
3028 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
3029 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
3030 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
3031 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
3032 (PIXEL_WIDTH, PIXEL_HEIGHT)
3033 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
3034 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
3035 frame.h and renamed [see frame.h changes].
3036 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
3037 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
3038 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
3039 and renamed [see frame.h changes].
9018a88e 3040
0416870b
KS
3041 * xterm.c: Make (several) trivial substitutions for renamed and
3042 new macros in dispextern.h, frame.h and window.h.
3043 (x_draw_glyph_string_box): Adapt to per-window fringes and
3044 scroll-bars.
3045 (scroll_run): Adapt to new fringe position.
3046 (glyph_rect): Use window coordinates returned from
3047 window_from_coordinates rather than frame_to_window_pixel_xy.
3048 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
3049 scroll-bars.
3050 (handle_one_xevent): Simplify a USE_GTK conditional.
3051 (x_clip_to_row): Remove superfluous whole_line_p arg and code
3052 (fringes are now inside margins, i.e. always in the clipping area).
3053 All callers changed.
3054 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
3055 directly, then call compute_fringe_widths. Don't call
3056 frame_update_line_height.
3057
3058 * w32term.h (struct w32_output): Move members left_pos, top_pos,
3059 border_width, pixel_height, pixel_width, line_height,
3060 internal_border_width, vertical_scroll_bar_extra,
3061 left_fringe_width, right_fringe_width, fringe_cols,
3062 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
3063 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
3064 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
3065 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
3066 (PIXEL_WIDTH, PIXEL_HEIGHT)
3067 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
3068 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
3069 frame.h and renamed [see frame.h changes].
3070 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
3071 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
3072 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
3073 and renamed [see frame.h changes].
9018a88e 3074
0416870b
KS
3075 * w32term.c: Make (several) trivial substitutions for renamed and
3076 new macros in dispextern.h, frame.h and window.h.
3077 (x_draw_glyph_string_box): Adapt to per-window fringes and
3078 scroll-bars.
3079 (glyph_rect): Use window coordinates returned from
3080 window_from_coordinates rather than frame_to_window_pixel_xy.
3081 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
3082 scroll-bars.
3083 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
3084 (fringes are now inside margins, i.e. always in the clipping area).
3085 All callers changed.
3086 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
3087 directly, then call compute_fringe_widths. Don't call
3088 frame_update_line_height.
3089
3090 * w32console.c: Make (few) trivial substitutions for renamed and
3091 new macros in dispextern.h, frame.h and window.h.
3092
3093 * w32fns.c: Make (many) trivial substitutions for renamed and
3094 new macros in dispextern.h, frame.h and window.h.
3095
3096 * w32menu.c: Make (few) trivial substitutions for renamed and
3097 new macros in dispextern.h, frame.h and window.h.
3098
3099 * macterm.h (struct mac_output): Move members left_pos, top_pos,
3100 border_width, pixel_height, pixel_width, line_height,
3101 internal_border_width, vertical_scroll_bar_extra,
3102 left_fringe_width, right_fringe_width, fringe_cols,
3103 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
3104 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
3105 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
3106 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
3107 (PIXEL_WIDTH, PIXEL_HEIGHT)
3108 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
3109 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
3110 frame.h and renamed [see frame.h changes].
3111 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
3112 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
3113 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
3114 and renamed [see frame.h changes].
9018a88e 3115
0416870b
KS
3116 * macterm.c: Make (several) trivial substitutions for renamed and
3117 new macros in dispextern.h, frame.h and window.h.
3118 (x_draw_glyph_string_box): Adapt to per-window fringes and
3119 scroll-bars.
3120 (glyph_rect): Use window coordinates returned from
3121 window_from_coordinates rather than frame_to_window_pixel_xy.
3122 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
3123 scroll-bars.
3124 (x_clip_to_row): Remove superfluous whole_line_p arg and code
3125 (fringes are now inside margins, i.e. always in the clipping area).
3126 All callers changed.
3127 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
3128 directly, then call compute_fringe_widths. Don't call
3129 frame_update_line_height.
3130
3131 * macfns.c: Make (several) trivial substitutions for renamed and
3132 new macros in dispextern.h, frame.h and window.h.
9018a88e 3133 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
0416870b
KS
3134
3135 * macmenu.c: Make (few) trivial substitutions for renamed and
3136 new macros in dispextern.h, frame.h and window.h.
3137
3138 * msdos.h (struct x_output): Remove members left_pos, top_pos,
3139 and line_height, and use corresponding new members in struct
3140 frame. All uses changed.
3141 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
3142 superseeded by corresponding macros in frame.h.
3143
3144 * msdos.c: Make (several) trivial substitutions for renamed and
3145 new macros in dispextern.h, frame.h and window.h.
3146 (IT_note_mouse_highlight): Use updated window coordinates returned
9018a88e 3147 by window_from_coordinates, rather than adjusting them locally.
0416870b
KS
3148 (internal_terminal_init): No need to initialize line_height here;
3149 it now defaults to 1.
3150
9018a88e
SM
31512003-05-24 Stefan Monnier <monnier@cs.yale.edu>
3152
3153 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
3154 dropping `down' events.
3155
016bd3c0
AS
31562003-05-24 Andreas Schwab <schwab@suse.de>
3157
3158 * coding.c (find_safe_codings): Fix last change.
3159
4dacadcc
TTN
31602003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
3161
3162 * xfns.c (x_window): Fix typo from 2003-05-21 change.
3163
319830ce
SM
31642003-05-23 Stefan Monnier <monnier@cs.yale.edu>
3165
9018a88e
SM
3166 * xdisp.c (display_mode_element): Increase max depth.
3167 Simplify the error handling code. Use a different error string
3168 for the case where we hit the depth limit.
3169
319830ce
SM
3170 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
3171
3172 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
3173
31742003-05-21 Stefan Monnier <monnier@cs.yale.edu>
3175
3176 * intervals.c (get_local_map): Don't get char-property of previous
3177 point any more: get_pos_property already does it and better.
3178
c67de8ba
DL
31792003-05-21 Dave Love <fx@gnu.org>
3180
3181 [Merged from unicode branch.]
3182
3183 * xfns.c (x_window, x_window): Use use_xim.
3184
3185 * xterm.c (use_xim): Initialize.
3186 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
3187 (x_term_init): Maybe set use_xim.
3188
3189 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
3190
edd3ff1d
JR
31912003-05-21 Jason Rumney <jasonr@gnu.org>
3192
3193 * unexw32.c (_start): Remove _fmode initialization.
3194
3195 * emacs.c (main) [WINDOWSNT]: Move it here.
3196
463f55ee
DL
31972003-05-20 Dave Love <fx@gnu.org>
3198
3199 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
3200
af253914
RS
32012003-05-19 Richard M. Stallman <rms@gnu.org>
3202
3203 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
3204 as value for QCfont attribute.
3205 (realize_default_face): lface should already exist; crash if not.
3206 Specify 0 for FORCE_P when calling set_lface_from_font_name.
3207
3208 * frame.c (Fignore_event): Doc fix.
3209
1d211019
KH
32102003-05-19 Kenichi Handa <handa@m17n.org>
3211
3212 * coding.c (decode_coding_string): Handle post-read-conversion
3213 even if the coding doesn't require decoding.
3214
4dd68254
RS
32152003-05-18 Richard M. Stallman <rms@gnu.org>
3216
3217 * callproc.c (Fcall_process_region): Doc fix.
3218
14d87dc9
SM
32192003-05-17 Stefan Monnier <monnier@cs.yale.edu>
3220
deca5d96
SM
3221 * lread.c (Fload): Print a message if package is obsolete.
3222
14d87dc9
SM
3223 * window.c (Fselect_window): Add optional `norecord' arg.
3224 (select_window_1): Fold into Fselect_window.
3225 (select_window_norecord): New function.
3226 (temp_output_buffer_show): Use it. Preserve current buffer.
3227
3228 * window.h (Fselect_window): Update declaration.
3229
3230 * window.c (delete_window, Fother_window, Fset_window_configuration):
3231 * minibuf.c (read_minibuf):
3232 * macterm.c (x_new_focus_frame):
3233 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
3234 * callint.c (Fcall_interactively):
3235 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
3236
3237 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
3238
78f52183
DK
32392003-05-17 David Kastrup <dak@gnu.org>
3240
3241 * process.c (read_process_output): Back out change from 2003-03-09.
3242
14d87dc9
SM
32432003-05-17 Stefan Monnier <monnier@cs.yale.edu>
3244
3245 * editfns.c (get_pos_property): Don't assume that `object' = nil.
3246
3247 * textprop.c (text_property_stickiness): New arg `buffer'.
3248
3249 * intervals.h (text_property_stickiness): New arg `buffer'.
3250 (get_pos_property): Declare.
3251
3252 * intervals.c (get_local_map): Use get_pos_property, to obey
3253 stickiness and empty overlays.
3254 (create_root_interval, graft_intervals_into_buffer): Use BEG.
3255 (merge_properties, intervals_equal, merge_properties_sticky):
3256 Use XCAR, XCDR.
3257 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
3258
1fd1cc2f
RS
32592003-05-17 Richard M. Stallman <rms@gnu.org>
3260
4f9f637a
RS
3261 * minibuf.c (read_minibuf): If buffer is empty, record the default
3262 in the history.
3263 (Fminibuffer_complete_word): When deleting the overlap, take account
3264 of its real position.
3265
3266 * fns.c (map_char_table): Fix previous change.
3267
1fd1cc2f
RS
3268 * syntax.c (find_defun_start):
3269 When open_paren_in_column_0_is_defun_start,
3270 return beginning of buffer.
3271
3272 * lisp.h (map_char_table): Declare added arg.
3273
3274 * fns.c (map_char_table): New arg TABLE gets the master table.
3275 All calls changed.
3276 Process default and inheritance, resorting to Faref if necessary.
3277
3278 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
3279 (Faccessible_keymaps): Pass new arg to map_char_table.
3280
3281 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
3282
3283 * casetab.c (set_case_table): Pass new arg to map_char_table.
3284
3285 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
3286
3287 * lisp.h (specbinding_func): New typedef.
3288 (struct specbinding): Use specbinding_func, to put the `volatile'
3289 in the right place.
3290
3291 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
3292 to avoid GCC warning.
14d87dc9 3293
b4bd27c5
RS
32942003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org> (tiny change)
3295
14d87dc9 3296 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
b4bd27c5 3297
35fb885d
SM
32982003-05-15 Stefan Monnier <monnier@cs.yale.edu>
3299
3300 * keyboard.c (apply_modifiers): Don't fill the other cache.
3301
9a274fbd
SM
33022003-05-14 Stefan Monnier <monnier@cs.yale.edu>
3303
c55b5fad
SM
3304 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
3305
9a274fbd
SM
3306 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
3307 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
3308 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
3309 (Fset_window_configuration, Fcurrent_window_configuration)
3310 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
3311 (Fpos_visible_in_window_p, mark_window_cursors_off)
3312 (window_internal_height, window_internal_width, Frecenter)
3313 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
3314 (replace_buffer_in_all_windows, init_window_once, init_window)
3315 (syms_of_window, keys_of_window): Move from lisp.h.
3316 * lisp.h: Move window.c declarations to window.h.
3317
3318 * bytecode.c: Include window.h.
3319 * emacs.c: Include window.h.
3320
14d87dc9 3321 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
9a274fbd
SM
3322 (keyremap): Add `parent' field.
3323 (keyremap_step): Use it. Remove `parent' argument.
3324 (read_key_sequence): Setup and use the new `parent' field.
3325
fd93e331
SM
33262003-05-11 Stefan Monnier <monnier@cs.yale.edu>
3327
3328 * keyboard.c (adjust_point_for_property): Ensure termination.
3329
1c4001a1
SM
33302003-05-10 Stefan Monnier <monnier@cs.yale.edu>
3331
3332 * keyboard.c (follow_key): Remove dead variable `did_meta'.
3333 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
3334 duplicated handling of function-key-map and key-translation-map
3335 in read_key_sequence.
3336 (read_key_sequence): Use them.
3337
3338 * keyboard.c (adjust_point_for_property): Try harder to move point
3339 to the non-sticky end of an invisible property.
3340
3341 * xdisp.c (single_display_prop_intangible_p): Make `space' display
3342 property intangible as well.
3343
780379b1
AS
33442003-05-10 Andreas Schwab <schwab@suse.de>
3345
3346 * xmenu.c (single_menu_item): Change last parameter to void* to
3347 avoid warning.
3348
ca2de342
RS
33492003-05-09 Richard M. Stallman <rms@gnu.org>
3350
3351 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
3352 Bind Qinhibit_modification_hooks to t so there will be no GC.
3353 Rename local `tem' to `save_deactivate_mark'.
3354
3355 * eval.c (specpdl_ptr): Declare volatile.
3356 (unbind_to): Copy the whole binding and decrement specpdl_ptr
3357 before doing the work of unbinding it.
3358
3359 * lisp.h (struct specbinding): Declare elements volatile.
3360 (specpdl_ptr): Declare volatile.
3361
3362 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
3363
3364 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
3365 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
3366
347003be
DL
33672003-05-08 Dave Love <fx@gnu.org>
3368
3369 * coding.c (Vlast_coding_system_used): Doc fix.
3370
5adcec23
JR
33712003-05-07 Jason Rumney <jasonr@gnu.org>
3372
3373 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
3374 when system does not support them.
3375
5fe3b8a4
SM
33762003-05-05 Stefan Monnier <monnier@cs.yale.edu>
3377
3378 * fileio.c (Qwrite_region_annotate_functions): New var.
3379 (build_annotations): Use it to process the global part of the hook.
3380 (syms_of_fileio): Init and staticpro it.
3381
3382 * keyboard.c (safe_run_hooks_error): Display a message instead of
3383 silently ignoring the error.
3384
33852003-05-03 Stefan Monnier <monnier@cs.yale.edu>
3386
3387 * keyboard.c (input_available_signal): Mark static.
3388 (menu_bar_items): Use map_keymap.
3389 (menu_bar_one_keymap): Remove.
3390 (menu_bar_item): Adjust arglist (for use in map_keymap).
3391 Properly hide a second binding when not both are keymaps.
3392
3393 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
3394 (single_keymap_panes): Use it and map_keymap.
3395 (single_menu_item): Use skp as well.
3396
3397 * keymap.h (map_keymap_function_t): New type.
3398 (map_keymap): Declare.
3399
3400 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
3401 (map_keymap_call, Fmap_keymap): New functions.
3402 (syms_of_keymap): Defsubr map-keymap.
3403
4b1b4443
JD
34042003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3405
3406 * gtkutil.c (create_dialog, make_widget_for_menu_item)
3407 (make_menu_item, create_menus, xg_update_menu_item): Don't call
3408 ..._with_mnemonic functions for menu items.
3409
1f816871
KH
34102003-05-01 Kenichi Handa <handa@m17n.org>
3411
3412 * coding.c (coding_system_accept_latin_extra_p): Delete this
3413 function.
3414 (find_safe_codings): Pay attention to
3415 the property tranlsation-table-for-encode of each codings.
3416 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
3417
5ed6ba5b
SM
34182003-05-01 Stefan Monnier <monnier@cs.yale.edu>
3419
3420 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
3421
32c06229
SM
34222003-04-30 Stefan Monnier <monnier@cs.yale.edu>
3423
3424 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
3425
3426 * lisp.h (CHECK): Wrap args in parenthesis.
3427 (specbind): Fix doc: symbol = Qnil is not supported any more.
3428
3429 * bytecode.c (Fbyte_code) <unwind-protect>:
3430 Use Fprogn rather than 0 and Qnil.
3431
3432 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
3433 `double', and `triple' modifiers as well.
3434
ed3c3314
RS
34352003-04-30 Richard M. Stallman <rms@gnu.org>
3436
3437 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
3438
3439 * alloc.c (abort_on_gc): New variable.
3440 (Fgarbage_collect): Abort if abort_on_gc is set.
3441
3442 * lisp.h (abort_on_gc): Add decl.
3443
3444 * eval.c (Fsignal): Clear abort_on_gc.
3445
3446 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
32c06229 3447 Reinit FORMAT_START and END before second scan.
ed3c3314
RS
3448
3449 * xdisp.c (move_it_vertically_backward): Do the final big else
3450 even if nlines is 0.
3451
3452 * xdisp.c (redisplay_internal): Finish the per-frame loop
3453 even if redisplay is suspended by input.
3454
0b325c12
AC
34552003-04-24 Andrew Choi <akochoi@shaw.ca>
3456
3457 * macterm.c (x_list_fonts): Return all fonts that match if
3458 maxnames = -1.
3459
4e837cd0
KH
34602003-04-25 Kenichi Handa <handa@m17n.org>
3461
3462 * syntax.c (skip_chars): Fix previous change.
3463
9af7511a
KH
34642003-04-24 Kenichi Handa <handa@m17n.org>
3465
3466 * syntax.c (skip_chars): Make the code faster by using the common
3467 technique of *p, *stop, and *endp.
3468
e3b2c21f
JD
34692003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3470
3471 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
32c06229 3472 tool_bar_items so GTK tool bar expose callback does not access items
e3b2c21f
JD
3473 being updated.
3474
32c06229
SM
34752003-04-19 Stefan Monnier <monnier@cs.yale.edu>
3476
3477 * eval.c (Fapply): Undo last change and add a comment about why.
3478
c6464167
MB
34792003-04-18 Miles Bader <miles@gnu.org>
3480
3481 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
3482 pickier PARSE_MULTIBYTE_SEQ.
3483
e509f168
SM
34842003-04-17 Stefan Monnier <monnier@cs.yale.edu>
3485
3486 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
3487 Use XCDR, XCAR, CONSP.
3488 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
3489 (Fapply): Remove unnecessary GCPRO.
3490
3491 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
3492
3493 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
3494
3495 * buffer.h: Don't hardcode BEG==1.
3496
3497 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
3498
5ceea398
RS
34992003-04-16 Richard M. Stallman <rms@gnu.org>
3500
3501 * xdisp.c (try_window, try_window_reusing_current_matrix):
3502 When at end of window, set window_end_pos to Z-ZV.
3503
3504 * buffer.c (Foverlay_recenter): Doc fix.
3505
e509f168
SM
35062003-04-14 Stefan Monnier <monnier@cs.yale.edu>
3507
3508 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
3509
d243e605
AC
35102003-04-14 Andrew Choi <akochoi@shaw.ca>
3511
3512 * macterm.c (mac_check_for_quit_char): Don't check more often than
3513 once a second.
3514
6901b111
SM
35152003-04-11 Stefan Monnier <monnier@cs.yale.edu>
3516
3517 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
3518 specially, so that they can't hide an implicit switch-frame event.
3519 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
3520 (head_table): Use switch-frame as event_kind for select-window.
3521 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
3522
3523 * editfns.c (Fformat): Lisp_Object/int mixup.
3524 (format2): Remove unused var numargs.
3525
e301806f 35262003-04-11 Kenichi Handa <handa@m17n.org>
aa95b710 3527
6901b111 3528 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
aa95b710
KH
3529 (Qafter_insert_file_set_coding): New variable.
3530 (syms_of_fileio): Initialize and staticpro it. Delete declaration
3531 for after-insert-file-adjust-coding-function.
3532 (Finsert_file_contents): Call Qafter_insert_file_set_coding
3533 instead of Vafter_insert_file_adjust_coding_function.
3534
38914424
KH
35352003-04-11 Kenichi Handa <handa@m17n.org>
3536
3537 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
3538
3539 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
3540 string. Callers changed.
3541
35422003-04-10 Kenichi Handa <handa@m17n.org>
a288d979 3543
6901b111 3544 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
a288d979 3545 (syms_of_fileio): Declare it as a lisp variable.
6901b111
SM
3546 (Finsert_file_contents):
3547 Call Vafter_insert_file_adjust_coding_function before calling
a288d979
KH
3548 decode-format.
3549
f979dc05
JD
35502003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3551
3552 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
3553 get GtkAdjustment as widget now is a GtkRange.
3554
3555 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
3556 GtkRange to avoid memory leak.
3557
f8c6b4c2 35582003-04-09 Kenichi Handa <handa@m17n.org>
cb98871c 3559
50ebc53d
KH
3560 * xfaces.c (Vface_font_rescale_alist): New variable.
3561 (struct font_name): New member rescale_ratio.
3562 (font_rescale_ratio): New function.
6901b111 3563 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
50ebc53d
KH
3564 (better_font_p): On comparing point sized, pay attention to
3565 recale_ratio member of fonts.
3566 (build_scalable_font_name): Reflect font->rescale_ratio in the
3567 font name.
6901b111 3568 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
50ebc53d 3569
cb98871c
KH
3570 * lread.c (read1): Before calling index, check if the 2nd
3571 arguemnt is in ASCII range.
3572
4773b8ca
RS
35732003-04-08 Richard M. Stallman <rms@gnu.org>
3574
b0ada147
RS
3575 * fileio.c (Ffile_symlink_p): Doc fix.
3576
3577 * editfns.c (Fformat): Translate positions of text properties
3578 in the format string to apply them to the result.
3579
4773b8ca
RS
3580 * fileio.c (Finsert_file_contents): Doc fix.
3581 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
3582
35832003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
6901b111 3584
4773b8ca
RS
3585 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
3586
e8f25745 35872003-04-08 Steven Tamm <steventamm@mac.com>
b0ada147 3588
e8f25745
ST
3589 * mac.c (init_mac_osx_environment): Switch libexec and bin so
3590 that self-contained application finds libexec files.
3591
f8c6b4c2 35922003-04-08 Kenichi Handa <handa@m17n.org>
2310d84c 3593
6901b111
SM
3594 * coding.c (code_convert_region_unwind):
3595 Set Vlast_coding_system_used to the argument.
2310d84c
KH
3596 (code_convert_region): If post-read-conversion function changed
3597 the value of last-coding-sytem, keep the new value in
3598 coding->symbol so that it won't be overridden.
3599 (run_pre_post_conversion_on_str): Likewise.
7c086845
KH
3600 (coding_system_accept_latin_extra_p): New function.
3601 (find_safe_codings): Pay attention to characters registered in
3602 latin-extra-code-table.
2310d84c 3603
39c9a034
TTN
36042003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
3605
3606 * Makefile.in (md5.o): Add missing dependency info.
3607
eb67c5d6
RS
36082003-04-06 Richard M. Stallman <rms@gnu.org>
3609
3610 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
3611
3612 * marker.c (verify_bytepos): New function.
3613
3614 * intervals.c (set_intervals_multibyte_1): When becoming
3615 multibyte, adjust right and left child sizes to a whole set of
3616 characters. If an interval gets zero total-length, delete it.
3617 If an interval consists of just its children, delete one of them.
3618
3619 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
3620 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
39c9a034 3621
eb67c5d6
RS
3622 * alloc.c: (VALIDATE_LISP_STORAGE): Macro deleted.
3623 All calls deleted.
3624 (lisp_malloc): Do the work here directly.
3625
b1f81fc5
JB
36262003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
3627
3628 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
3629 char tables.
3630
36312003-04-04 Kenichi Handa <handa@m17n.org>
aa8b70ae
KH
3632
3633 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
3634 destructively change "%S" to "%s".
3635
774666fb
MB
36362003-04-03 Miles Bader <miles@gnu.org>
3637
3638 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
3639 always set.
3640
19c37f01
DL
36412003-04-01 Dave Love <fx@gnu.org>
3642
3643 * xfns.c (xpm_lookup_color): Grok "opaque".
3644
2f4b24c3
AC
36452003-03-31 Andrew Choi <akochoi@shaw.ca>
3646
3647 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
3648 parent window ID.
3649
3650 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
3651
3652 * macterm.h (struct mac_output): Define x_pixels_diff and
3653 y_pixels_diff.
b1f81fc5 3654
9443fcf6
JB
36552003-03-31 Juanma Barranquero <lektu@terra.es>
3656
3657 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
3658 blockinput.h and files included from it.
3659
e072891b
KS
36602003-03-31 Kim F. Storm <storm@cua.dk>
3661
3662 The following changes consolidates the common code related to
3663 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
3664 files into frame.c.
9443fcf6 3665
e072891b
KS
3666 * frame.c: Include blockinput.h.
3667 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
3668 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
3669 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
3670 related vars here.
3671 (struct frame_parm_table, frame_parms): New table for describing
3672 frame parameters and their associated Q-variable.
3673 The order of the parameters corresponds to the sequence of the
3674 frame_parm_handlers table in redisplay_interface.
3675 (x_fullscreen_move, x_set_frame_parameters)
3676 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
3677 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
3678 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
3679 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
3680 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
3681 Generic functions for processing of frame parameters.
3682 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
3683 (display_x_get_resource, x_get_resource_string): Functions for
3684 generic access to X resources.
3685 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
3686 (x_default_parameter, Fx_parse_geometry): Functions for generic
3687 access to frame parameters.
6901b111
SM
3688 (x_figure_window_size): Generic calculation of frame size.
3689 Fixed to add space needed for tool bar. Also setup size_hint_flags.
e072891b
KS
3690 (syms_of_frame): Intern and staticpro frame parameter variables.
3691 Defvar_lisp Vx_resource_class and Vx_resource_name here.
3692 Defsubr Sx_get_resource and Sx_parse_geometry.
9443fcf6 3693
e072891b
KS
3694 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
3695 parameter related vars defined in frame.c.
3696 (EMACS_CLASS): Define here.
3697 (enum FULLSCREEN_*): Define here.
3698 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
3699 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
3700 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
3701 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
3702 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
3703 (x_set_visibility, x_set_autoraise, x_set_autolower)
3704 (x_set_unsplittable, x_set_vertical_scroll_bars)
3705 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
3706 (x_figure_window_size): Add prototypes.
3707
3708 * dispextern.h (frame_parm_handler): New typedef.
3709 (struct redisplay_interface): New member frame_parm_handlers.
3710 (enum resource_types): Move declaration here.
3711 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
3712 (x_default_parameter): Add prototypes.
3713
3714 * window.c: Remove extern decl for frame parameter vars.
3715 (change_window_heights): New generic function;
3716 replaces x_change_window_heights. All users changed.
3717
3718 * window.h (change_window_heights): Add prototype.
3719
3720 * xfaces.c: Remove extern decl for frame parameter vars.
3721
3722 * xterm.h (EMACS_CLASS): Remove. Use generic define.
3723 (struct w32_display_info): Fix type of xrdb member.
3724 (enum FULLSCREEN_*): Remove.
3725 Remove prototypes for generic functions (in frame.h).
3726
3727 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
3728 parameters now defined in frame.h and frame.c.
3729 (Vx_resource_name): Remove. Use generic var.
3730 (enum x_frame_parms): Remove (bogus, unused enum).
3731 (check_x_display_info): Make non-static (for frame.c).
3732 (struct x_frame_parm_table, x_frame_parms): Remove.
3733 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
3734 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
3735 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
3736 (x_change_window_heights, x_set_autoraise, x_set_autolower)
3737 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
3738 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
3739 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
3740 Remove. Use generic functions instead.
3741 (enum resource_types): Remove.
3742 (x_set_scroll_bar_default_width): New global function (for frame.c).
3743 (Fx_create_frame): Depend on x_figure_window_size to add space for
3744 toolbar and setup size_hint_flags.
3745 (x_frame_parm_handlers): New table for redisplay_interface.
3746 (syms_of_xfns): Don't intern/staticpro removed vars.
9443fcf6 3747
e072891b
KS
3748 * xterm.c: Remove unnecessary extern declarations.
3749 (x_fullscreen_adjust): Remove. Use generic instead.
3750 (x_redisplay_interface): Add x_frame_parm_handlers member.
3751
3752 * w32gui.h (XrmDatabase): New (dummy) typedef.
3753
3754 * w32term.h (EMACS_CLASS): Remove. Use generic define.
3755 (struct w32_display_info): Fix type of xrdb member.
3756 (enum FULLSCREEN_*): Remove.
3757 (x_fullscreen_adjust): Remove prototype.
3758
3759 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
3760 parameters now defined in frame.h and frame.c.
3761 (Vx_resource_name): Remove. Use generic var.
3762 (enum x_frame_parms): Remove (bogus, unused enum).
3763 (check_x_display_info): Make non-static (for frame.c).
3764 (struct x_frame_parm_table, x_frame_parms): Remove.
3765 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
3766 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
3767 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
3768 (x_change_window_heights, x_set_autoraise, x_set_autolower)
3769 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
3770 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
3771 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
3772 Remove. Use generic functions instead.
3773 (enum resource_types): Remove.
3774 (x_set_scroll_bar_default_width): New global function (for frame.c).
3775 (Fx_create_frame): Depend on x_figure_window_size to add space for
3776 toolbar and setup size_hint_flags.
3777 (w32_frame_parm_handlers): New table for redisplay_interface.
3778 (syms_of_w32fns): Don't intern/staticpro removed vars.
9443fcf6 3779
e072891b
KS
3780 * w32term.c: Remove unnecessary extern declarations.
3781 (x_fullscreen_adjust): Remove. Use generic instead.
3782 (x_redisplay_interface): Add w32_frame_parm_handlers member.
3783
3784 * w32reg.c (x_get_string_resource): Use XrmDatabase.
3785
3786 * macgui.h (XrmDatabase): New (dummy) typedef.
3787
3788 * macterm.h (EMACS_CLASS): Remove.
3789 (struct mac_display_info): Add xrdb member.
3790 (struct mac_output): Add want_fullscreen member.
3791
3792 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
3793 parameters now defined in frame.h and frame.c.
3794 (Vx_resource_name): Remove. Use generic var.
3795 (check_x_display_info): Make non-static (for frame.c).
3796 (struct x_frame_parm_table, x_frame_parms): Remove.
3797 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
3798 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
3799 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
3800 (x_change_window_heights, x_set_autoraise, x_set_autolower)
3801 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
3802 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
3803 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
3804 Remove. Use generic functions instead.
3805 (enum resource_types): Remove.
3806 (x_set_scroll_bar_default_width): New global function (for frame.c).
3807 (mac_frame_parm_handlers): New table for redisplay_interface.
3808 (syms_of_macfns): Don't intern/staticpro removed vars.
9443fcf6 3809
e072891b
KS
3810 * macterm.c: Remove unnecessary extern declarations.
3811 (x_redisplay_interface): Add mac_frame_parm_handlers member.
3812
3e6a560b
KS
3813 * Makefile.in (frame.o): Add dependency on blockinput.h and files
3814 included from it (atimer.h and systime.h).
3815
7b7b454e
AS
38162003-03-30 Andreas Schwab <schwab@suse.de>
3817
3818 * xdisp.c (x_insert_glyphs): Fix swapped width and height
3819 parameters for shift_glyphs_for_insert.
3820
3821 * macterm.c (x_redisplay_interface): Add missing entry for
3822 draw_vertical_window_border.
3823
beb402de
KG
38242003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
3825
3826 * fileio.c (Fexpand_file_name): In the no-handler case, after
3827 expanding, look again for a handler and invoke it. This is needed
3828 for filenames like "/foo/../user@host:/bar/../baz" -- the first
3829 expansion produces "/user@host:/bar/../baz" which needs to be
3830 expanded again for the finame result "/user@host:/baz".
3831
b676f356
JD
38322003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3833
3834 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
3835 of area to be redrawn for better performance.
3836
3c671a56
SM
38372003-03-28 Stefan Monnier <monnier@cs.yale.edu>
3838
3839 * xterm.c (take_vertical_position_into_account): Remove.
3840 (xt_action_hook): Call set_vertical_scroll_bar if needed.
3841 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
3842 (xm_scroll_callback, x_create_toolkit_scroll_bar)
3843 (x_set_toolkit_scroll_bar_thumb): Simplify.
3844 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
3845 (XTread_socket): Remove unused var.
3846 (x_make_frame_invisible): Replace goto with else.
3847
3848 * xdisp.c (set_vertical_scroll_bar): New fun.
3849 (redisplay_window): Use it.
3850
84f2e615
RS
38512003-03-26 Richard M. Stallman <rms@gnu.org>
3852
3853 * xdisp.c (update_tool_bar): Recompute tool bar if
3854 update_mode_lines is set. Set w->update_mode_line
3855 only if the tool bar contents actually change.
3856 (update_menu_bar): Undo previous change.
3857
70b6104c
JD
38582003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3859
5fd6f727
JD
3860 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
3861 (xg_frame_set_char_size): Calculate scroll bar width before frame
3862 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
3863 (xg_separator_p): Check for all documented separator types.
3864 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
3865 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
3866
70b6104c
JD
3867 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
3868 so tool bar gets updated.
3869
d9b36d19
SM
38702003-03-26 Stefan Monnier <monnier@cs.yale.edu>
3871
3872 * data.c (store_symval_forwarding): Re-instate part of the code
3873 that was deleted with too much enthusiasm.
3874
38752003-03-25 Stefan Monnier <monnier@cs.yale.edu>
3876
3877 * data.c (store_symval_forwarding): Delete special read-only
3878 hack for type == -1, since we now use ->constant instead.
3879 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
3880
3881 * buffer.c (overlays_in): Declare static.
3882 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
3883 `constant' field rather than the variable's `type' field.
3884
365fa1b3
AC
38852003-03-24 Andrew Choi <akochoi@shaw.ca>
3886
3887 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
3888
3889 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
3890
3891 * fns.c [MAC_OSX]: Do not redefine vector.
3892
3893 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
3894
3895 * macgui.h: Remove definition of No_Cursor.
3896
d9b36d19 3897 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
365fa1b3
AC
3898
3899 * xdisp.c: Define No_Cursor.
3900 (x_write_glyphs, notice_overwritten_cursor)
3901 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
3902 (note_mouse_highlight): Remove Mac-specific code.
3903 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
d9b36d19 3904
c0bcce6f
JPW
39052003-03-24 John Paul Wallington <jpw@gnu.org>
3906
3907 * xdisp.c (redisplay_window): If mini window's buffer is not
3908 empty, then redisplay it like other windows.
3909
a526b96c
KS
39102003-03-23 Kim F. Storm <storm@cua.dk>
3911
3912 * w32term.c (w32_draw_window_cursor): Fix last change.
3913
37ab321e
KH
39142003-03-23 Kenichi Handa <handa@m17n.org>
3915
a526b96c
KS
3916 * alloc.c (make_string_from_bytes, make_specified_string):
3917 Add `const' for the arg CONTENTS.
37ab321e
KH
3918
3919 * lisp.h (make_string_from_bytes, make_specified_string):
3920 Prototypes adjusted.
3921
7863d625
JD
39222003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3923
a526b96c 3924 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
fd4c9408 3925
7863d625
JD
3926 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
3927 (XG_SB_RANGE): New define.
3928
3929 * gtkutil.c (xg_fixed_handle_expose): New function.
3930 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
3931 expose events.
3932 (xg_update_scrollbar_pos): Take two more arguments, left and width
3933 of scroll bar including borders.
3934 Clear left and right part outside scroll bar separately as some
3935 themes have bars that are not an even number of pixels.
d9b36d19 3936 Don't set reallocate_redraws, don't call
7863d625
JD
3937 gdk_window_process_all_updates.
3938 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
3939 so no need to change it. Calculate size and value with XG_SB_RANGE.
3940
d9b36d19
SM
3941 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
3942 Pass left and width of scroll bar including borders to
7863d625
JD
3943 xg_update_scrollbar_pos.
3944
af0ad939
TTN
39452003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
3946
3947 * Makefile.in: Make sure space precedes end-of-line backslashes.
3948
b22139fd
KS
39492003-03-22 Kim F. Storm <storm@cua.dk>
3950
3951 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
3952 Add generic versions here. Remove system specific versions
3953 defined elsewhere.
3954
3955 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
3956 Add prototypes.
3957
6e6410cf
KS
3958 * xterm.h (STORE_NATIVE_RECT): New macro.
3959
5c9cc435
KS
39602003-03-21 Kim F. Storm <storm@cua.dk>
3961
00c64fab
SM
3962 * xdisp.c (get_glyph_string_clip_rect):
3963 Use FRAME_INTERNAL_BORDER_WIDTH.
5c9cc435
KS
3964
3965 * dispextern.h (struct redisplay_interface): Add active_p
3966 argument to draw_window_cursor member. All uses changed.
3967
acd37560
KS
39682003-03-21 Kim F. Storm <storm@cua.dk>
3969
3970 The following changes consolidate code related to writing and
3971 inserting glyphs, exposing frame, the tool bar, the mouse face,
3972 the output cursor, and help echo from xterm.c, w32term.c and
3973 macterm.c into xdisp.c. It also generalizes the use of the
3974 window_part enum instead of using numeric values throughout.
af0ad939 3975
acd37560
KS
3976 * xdisp.c: Consolidate gui-independent code here.
3977 Include keymap.h.
3978 (Qhelp_echo): Import.
3979 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
3980 (help_echo_string, help_echo_window, help_echo_object)
3981 (previous_help_echo_string, help_echo_pos): Declare here.
3982 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
3983 (estimate_mode_line_height): Define here. Handle windowing
3984 systems directly (without using estimate_mode_line_height_hook).
3985 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
3986 (update_window_cursor, update_cursor_in_window_tree)
3987 (fast_find_position, fast_find_string_pos)
3988 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
3989 (expose_area, expose_line, expose_overlaps, expose_window)
3990 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
3991 declared static as they are only used locally in xdisp.c.
3992 (draw_glyphs): Rename from x_draw_glyphs and make static.
3993 (tool_bar_item_info, notice_overwritten_cursor): Make static.
3994 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
3995 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
af0ad939 3996 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
acd37560
KS
3997 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
3998 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
3999 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
4000 (note_mouse_highlight, x_clear_window_mouse_face)
4001 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
4002 (x_intersect_rectangles): New generic functions for use by xdisp.c
4003 and GUI front-ends.
4004 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
4005 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
4006
4007 * dispextern.h (Display_Info): Generic typedef for *_display_info.
4008 (NativeRectangle): Generic typedef for rectangle type.
4009 (enum window_part): Move here from window.c.
4010 (struct redisplay_interface): New members flush_display_optional,
4011 define_frame_cursor, clear_frame_area, draw_window_cursor,
4012 draw_vertical_window_border, shift_glyphs_for_insert.
4013 Rename member clear_mouse_face to clear_window_mouse_face.
4014 (estimate_mode_line_height_hook): Remove hook.
4015 (auto_raise_tool_bar_buttons_p): Don't declare extern.
4016 (tool_bar_item_info): Remove prototype.
4017 (help_echo_string, help_echo_window, help_echo_object)
4018 (previous_help_echo_string, help_echo_pos)
4019 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
4020 (x_stretch_cursor_p, output_cursor): Declare extern.
4021 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
4022 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
4023 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
4024 (display_and_set_cursor, set_output_cursor, x_cursor_to)
4025 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
4026 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
4027 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
4028 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
4029 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
4030 Add prototypes.
4031 (mode_line_string, marginal_area_string): Fix prototypes.
4032
4033 * window.c (enum window_part): Move to dispextern.h.
4034 (coordinates_in_window): Use enum window_part member names
4035 instead of numbers to describe return value.
4036 (struct check_window_data): Change part member to window_part.
4037 (check_window_containing): Return window_part unaltered.
4038 (window_from_coordinates): Change part arg from int to enum
4039 window_part. Allow part arg to be null. All users changed.
4040
4041 * window.h (window_from_coordinates): Fix prototype.
4042
4043 * term.c (estimate_mode_line_height): Move to xdisp.c.
4044
4045 * keyboard.c (make_lispy_event): Use enum window_part.
4046
4047 * dispnew.c (mode_line_string, marginal_area_string): Use enum
4048 window_part instead of int in arg list. Users changed.
4049
4050 * xterm.h (No_Cursor): Declare as None for X.
4051 (struct mac_output): Replace member cross_cursor by hand_cursor.
af0ad939 4052
acd37560
KS
4053 * xterm.c: Remove consolidated defines and code.
4054 (BETWEEN): Remove unused macro.
4055 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
4056 (x_define_frame_cursor, x_clear_frame_area)
4057 (x_draw_window_cursor): New X-specific functions for RIF.
4058 (x_redisplay_interface): Add new members.
4059
4060 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
4061
4062 * w32term.h (struct w32_output): Remove cross_cursor member.
4063
4064 * w32term.c: Remove consolidated defines and code.
4065 (BETWEEN): Remove unused macro.
4066 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
4067 (w32_define_frame_cursor, w32_clear_frame_area)
4068 (w32_draw_window_cursor): New W32-specific functions for RIF.
4069 (w32_redisplay_interface): Add new members.
4070
4071 * w32gui.h (No_Cursor): Define as 0 for W32.
4072 (XRectangle): Add X compatible rectangle type.
4073 (NativeRectangle): Declare as RECT for W32.
4074 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
4075
4076 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
4077
4078 * w32console.c: Remove consolidated defines and code.
af0ad939 4079
acd37560
KS
4080 * msdos.h (Display_Info): Add generic typedef.
4081
4082 * msdos.c: Remove consolidated defines and code.
4083 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
4084
4085 * macterm.h (struct mac_output): Replace member cross_cursor by
4086 hand_cursor.
4087 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
4088
4089 * macterm.c: Remove consolidated defines and code.
4090 (BETWEEN): Remove unused macro.
4091 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
4092 (mac_define_frame_cursor, mac_clear_frame_area)
4093 (mac_draw_window_cursor): New Mac-specific functions for RIF.
4094 (x_redisplay_interface): Add new members.
4095
4096 * macgui.h (No_Cursor): Define as 0 for Mac.
4097 (XRectangle): Add X compatible rectangle type.
4098 (NativeRectangle): Declare as Rect for Mac.
4099 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
4100
204ccab1
KS
4101 * macfns.c (x_set_mouse_color): Setup hand_cursor.
4102 (x_set_cursor_color): Use x_display_and_set_cursor.
acd37560 4103
9443fcf6 4104 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
acd37560
KS
4105 included from it. Add dependency on keymap.h.
4106
4107 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
4108
8ba01a70 41092003-03-21 Kenichi Handa <handa@m17n.org>
3f817c73
KH
4110
4111 * fileio.c (Fexpand_file_name): Fix previous change.
4112
8ba01a70 41132003-03-19 Kenichi Handa <handa@m17n.org>
4f497b0a
KH
4114
4115 * fileio.c (Ffile_name_directory): Reconstruct file name by
4116 make_specified_string.
4117 (Ffile_name_nondirectory, Ffile_name_as_directory)
4118 (Fdirectory_file_name, Fexpand_file_name)
4119 (Fsubstitute_in_file_name): Likewise.
4120 (Fread_file_name): Compare decoded homedir with DIR and
4121 DEFAULT_FILENAME.
4122
4123 * alloc.c (make_specified_string): If NCHARS is negative, count
4124 the number of characters.
4125
19536747
JD
41262003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4127
de38ae5a
JD
4128 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
4129 all widgets.
4130
19536747
JD
4131 * gtkutil.h: Removed xg_ignore_next_thumb.
4132
37ab321e 41332003-03-18 Kenichi Handa <handa@m17n.org>
cb0d4562
KH
4134
4135 * coding.c (Vchar_coding_system_table): Remove this variable.
4136 (Vcoding_system_safe_chars): New variable.
4137 (intersection): Remove this function.
4138 (find_safe_codings): Don't use Vchar_coding_system_table, but try
4139 all codings in SAFE_CODINGS.
00c64fab 4140 (Ffind_coding_systems_region_internal): Adjust for the change of
cb0d4562
KH
4141 find_safe_codings. Get generic coding systems from
4142 Vcoding_system_safe_chars.
4143 (Fdefine_coding_system_internal): New function.
4144 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
4145 Initialize and staticpro Vcoding_system_safe_chars.
4146
17097258
JD
41472003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4148
2a2071c3
JD
4149 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
4150 equal old values before updating.
4151
17097258
JD
4152 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
4153
4154 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
4155
41562003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4157
4158 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
4159 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
4160 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
4161 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
4162 (xg_create_scroll_bar): Pass bar to button event callback.
4163 (xg_find_top_left_in_fixed): New function.
4164 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
4165 whole scroll bar area. Get old position with
4166 xg_find_top_left_in_fixed, calculate and only clear needed areas.
4167 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
4168 dragging is in progress. Calculate whole as for Motif.
4169 Remove code that saved last values. Call gtk_range functions to
4170 set scroll bar sizes.
4171
4172 * gtkutil.h: Removed xg_ignore_next_thumb.
4173
8cb9dfbf
JB
41742003-03-17 Juanma Barranquero <lektu@terra.es>
4175
4176 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
4177 and files included from it.
4178
00c64fab
SM
41792003-03-18 Stefan Monnier <monnier@cs.yale.edu>
4180
4181 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
4182 multiple occurrences of the same keymap under different prefixes.
4183 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
4184
c45bb3b2
JR
41852003-03-16 Jason Rumney <jasonr@gnu.org>
4186
4187 * w32gui.h: Use HDC for Display.
4188
4189 * w32term.c (w32_encode_char): Prevent double-byte chars from
4190 crashing Emacs.
4191
4192 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
4193 as binary.
4194
2a6d0874
JB
41952003-03-16 Juanma Barranquero <lektu@terra.es>
4196
4197 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
4198
03eb5fab
KS
41992003-03-16 Kim F. Storm <storm@cua.dk>
4200
4201 The following changes consolidate some of the gui-independent
4202 parts of the processing and drawing of "glyph strings" from
4203 xterm.c, w32term.c, and macterm.c into xdisp.c.
2a6d0874 4204
03eb5fab
KS
4205 * dispextern.h (struct glyph): Reduce face_id member from 22 to
4206 21 bits (this reduces number of faces from 4M to 2M).
4207 Replace W32 specific w32_font_type member (2 bits) by generic
4208 font_type member (3 bits) for portability.
4209 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
4210 (enum draw_glyphs_face): Define here.
4211 (struct glyph_string): Define here. Merge W32 and X versions.
4212 (struct redisplay_interface): New members per_char_metric,
4213 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
4214 (VCENTER_BASELINE_OFFSET): Define here.
4215 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
4216 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
4217
4218 * xdisp.c: Consolidate gui-independent "glyph string" code here.
4219 (dump_glyph_string): Moved here.
4220 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
4221 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
4222 (fill_composite_glyph_string, fill_glyph_string)
4223 (fill_image_glyph_string, fill_stretch_glyph_string)
4224 (left_overwritten, left_overwriting, right_overwritten)
4225 (right_overwriting, get_char_face_and_encoding)
4226 (set_glyph_string_background_width, compute_overhangs_and_x)
4227 (append_glyph, append_composite_glyph, produce_image_glyph)
4228 (take_vertical_position_into_account, append_stretch_glyph)
4229 (produce_stretch_glyph): New generic functions (based on X version).
4230 Call platform specific functions through rif.
4231 (INIT_GLYPH_STRING): New macro, hides W32 details.
4232 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
4233 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
4234 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
4235 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
4236 (notice_overwritten_cursor):
4237 Generic functions exported to platform modules. Users changed.
4238
4239 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
4240 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
4241 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
fad49844 4242 New macros for consolidated code.
2a6d0874 4243
03eb5fab
KS
4244 * xterm.c: Remove consolidated defines and code.
4245 (x_per_char_metric, x_encode_char)
4246 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
4247 (x_redisplay_interface): Add new members.
4248
4249 * w32gui.h (Display): Add dummy typedef for consolidation.
4250 (XChar2b): Define alias for wchar_t for consolidation.
4251 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
4252
4253 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
2a6d0874 4254 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
03eb5fab
KS
4255 New macros for consolidation.
4256
fad49844 4257 * w32term.c: Remove consolidated defines and code.
03eb5fab
KS
4258 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
4259 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
4260 (w32_per_char_metric): Change font_type arg to int for RIF.
4261 (w32_encode_char): Return int according to RIF requirements.
4262 (w32_compute_glyph_string_overhangs): Adapt to RIF.
4263 (w32_get_glyph_overhangs): New function for RIF. Uses generic
4264 x_get_glyph_overhangs.
4265 (w32_redisplay_interface): Add new members.
4266
4267 * macgui.h (XChar2b): Move typedef here for consolidation.
4268 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
4269
4270 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
4271 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
4272 consolidation.
4273
4274 * macterm.c: Remove consolidated defines and code.
4275 (mac_per_char_metric): New function for RIF.
00c64fab 4276 (mac_encode_char): Adapt to new RIF requirements.
03eb5fab
KS
4277 (mac_compute_glyph_string_overhangs): Adapt for RIF.
4278 (x_redisplay_interface): Add new members.
4279
00c64fab
SM
42802003-03-15 Stefan Monnier <monnier@cs.yale.edu>
4281
4282 * keymap.c (Vmenu_events): New var.
4283 (syms_of_keymap): Initialize it.
4284 (where_is_internal): Check more carefully what is a menu event.
4285
225c7a07
RS
42862003-03-14 Richard M. Stallman <rms@gnu.org>
4287
4288 * lread.c (read1): After #!, exit loop on eof.
4289
cea9be54
JD
42902003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4291
9ea0e54d
JD
4292 * gtkutil.h: Add declaration for xg_frame_cleared.
4293
0cb35f4e
JD
4294 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
4295
cea9be54
JD
4296 * gtkutil.c (struct xg_last_sb_pos): New structure.
4297 (handle_fixed_child): New function.
4298 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
4299 and force a redraw on them.
4300 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
4301 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
4302 so we can avoid unneeded redraws.
4303 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
4304 and force a redraw on the scroll bar.
4305 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
4306 if xg_last_sb_pos shows the positions are up to date.
0cb35f4e 4307 (xg_frame_cleared): New function.
cea9be54 4308
20b853f3
KH
43092003-03-13 Kenichi Handa <handa@m17n.org>
4310
4311 * coding.c (Fdetect_coding_region): Fix docstring.
4312 (Fdetect_coding_string): Fix docstring.
4313
7a555aff
AS
43142003-03-13 Andreas Schwab <schwab@suse.de>
4315
25cc0080
AS
4316 * gtkutil.c: Add prototype for create_menus.
4317
30225431
AS
4318 * data.c (long_to_cons): Fix type of top.
4319
4320 * xselect.c (selection_data_to_lisp_data): Use int instead of
4321 long for an integer of size 4.
4322
7a555aff 4323 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
30225431 4324 (xg_tool_bar_help_callback): Likewise.
7a555aff 4325
a3e4741f
AS
43262003-03-12 Andreas Schwab <schwab@suse.de>
4327
4328 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
4329
9668be7c
KS
43302003-03-12 Kim F. Storm <storm@cua.dk>
4331
03eb5fab 4332 The following changes consolidate the fringe handling from
9668be7c 4333 xterm.c, w32term.c, and macterm.c into xdisp.c.
00a88f32 4334
9668be7c
KS
4335 * xdisp.c: Consolidate fringe handling code here.
4336 (left_bits, right_bits, continued_bits, continuation_bits)
4337 (ov_bits, zv_bits): Define fringe bitmaps.
4338 (fringe_bitmaps): New array holding fringe bitmaps.
4339 (draw_fringe_bitmap): Draw a specific bitmap; call display
4340 specific drawing routine via rif->draw_fringe_bitmap.
4341 (draw_row_fringe_bitmaps): Generic replacement for
4342 x_draw_row_fringe_bitmaps; all callers changed.
4343 (compute_fringe_widths): Generic replacement for
4344 x_compute_fringe_widths; all callers changed.
4345
4346 * dispextern.h (enum fringe_bitmap_type): Define here.
4347 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
4348 (fringe_bitmaps): Declare extern.
4349 (struct redisplay_interface): New member draw_fringe_bitmap.
4350 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
4351
4352 * xterm.c: Remove generic fringe code.
4353 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
4354 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
4355
4356 * w32term.c: Remove generic fringe code.
4357 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
4358 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
00a88f32 4359
9668be7c
KS
4360 * macterm.c: Remove generic fringe code.
4361 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
4362 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
4363
00a88f32
SM
43642003-03-11 Stefan Monnier <monnier@cs.yale.edu>
4365
4366 * print.c (Fprin1_to_string): Return unibyte string if possible.
4367
1d1de695
DK
43682003-03-09 David Kastrup <dak@gnu.org>
4369
4370 * process.c (read_process_output): We have allocated enough space
4371 for readmax and carryover, so actually use the alloted space.
4372
257f40f2
JD
43732003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4374
4375 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
4376 toolkit scrollbar click.
4377
4378 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
4379 for USE_GTK.
4380 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
4381 also.
4382 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
4383 scrollbar and control is pressed, call x_scroll_bar_handle_click.
00a88f32 4384
257f40f2
JD
4385 * gtkutil.h: Declare xg_get_scroll_id_for_window.
4386
4387 * gtkutil.c (xg_get_scroll_id_for_window): New function.
4388 (xg_tool_bar_item_expose_callback): New function.
4389 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
4390 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
4391 on the tool bar widget.
4392 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
4393 to expose on the tool bar item widgets.
4394
15213141
JD
43952003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4396
26b74a0b 4397 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
00a88f32 4398 struct image* when deciding to update (struct image* may have been
26b74a0b
JD
4399 deleted from the image cache).
4400
15213141
JD
4401 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
4402 the event isn't for a frame (i.e. for dialogs).
4403
20b853f3 44042003-03-07 Kenichi Handa <handa@m17n.org>
cb681b34
KH
4405
4406 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
4407 composition components reaches the limit, terminate composing.
4408 (COMPOSITION_OK): New macro.
00a88f32 4409 (detect_coding_iso2022): Use it if an escape sequence for
cb681b34
KH
4410 composition is found.
4411 (coding_restore_composition): Adjust the number of composition
4412 components if it is not sane.
4413
c9029fe5
JB
44142003-03-06 Juanma Barranquero <lektu@terra.es>
4415
4416 * w32term.h (struct w32_display_info): Add xrdb member to support
4417 passing resources via -xrm on Windows.
4418
4419 * w32term.c (w32_make_rdb): New function.
4420 (w32_term_init): Use it to initialize xrdb member of w32_display_info
4421 struct. Delete leftover code.
4422
4423 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
4424 for resources passed on the command line.
4425
4426 * w32reg.c (w32_get_rdb_resource): New function.
4427 (x_get_string_resource): Use it, so resources passed with -xrm
4428 supercede the ones in the registry.
4429
9d00001f
JD
44302003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4431
4432 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
4433 instead of x_top_window_to_frame.
4434
ca2417b9
JD
44352003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4436
4437 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
4438 when restarting Emacs.
4439
5b20caf0
RS
44402003-03-03 Richard M. Stallman <rms@gnu.org>
4441
4442 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
4443 to run kill-buffer-query-functions.
4444 (Qkill_buffer_query_functions): New var.
4445 (syms_of_buffer): Init and staticpro it.
4446
58e91b77
JD
44472003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4448
4449 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
4450
932357b4
KS
44512003-02-25 Kim F. Storm <storm@cua.dk>
4452
4453 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
4454 If centering point failed to make whole line visible and vscroll
4455 is non-zero, disable vscroll and try centering point again.
4456
4457 * lread.c (read1): Accept `single space' syntax like (? x).
4458
bb8db7e1
JD
44592003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4460
4461 * keyboard.c (cancel_hourglass_unwind): Surround with
4462 #ifdef HAVE_X_WINDOWS
4463
47d77aab
KH
44642003-02-25 Kenichi Handa <handa@m17n.org>
4465
4466 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
4467 process only when "subprocesses" is defined.
4468
6a097c0c
SM
44692003-02-24 Stefan Monnier <monnier@cs.yale.edu>
4470
4471 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
4472
0b063c27
JB
44732003-02-24 Juanma Barranquero <lektu@terra.es>
4474
d1135afc
JB
4475 * callint.c (fix_command): Declare as static void and move before
4476 Fcall_interactively.
4477
0b063c27
JB
4478 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
4479 (syms_of_xdisp): Don't initialize Qwhen.
4480
0af912f0
JD
44812003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4482
4483 * keyboard.c (cancel_hourglass_unwind): New function.
4484 (command_loop_1): Cancel hourglass with unwind-protect.
4485
120d0a23
RS
44862003-02-23 Richard M. Stallman <rms@gnu.org>
4487
4488 * callint.c (fix_command): New subroutine, from Fcall_interactively.
4489 Detect (when ... (region-beginning)) etc.
4490 (Fcall_interactively): Call fix_command.
4491 (Qif, Qwhen): New variables.
4492 (syms_of_callint): Init and staticpro them.
0b063c27 4493
120d0a23
RS
4494 * regex.c (print_partial_compiled_pattern): Output to stderr.
4495
4ece81a6
KG
44962003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
4497
4498 * dired.c (directory_files_internal): Don't expand directory.
4499 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
4500 instead. From Lars Hansen <larsh@math.ku.dk>.
4501
e52bd6b7
SM
45022003-02-22 Stefan Monnier <monnier@cs.yale.edu>
4503
4504 * fns.c (string_to_multibyte): Remove unused var i.
4505 (Flanginfo): Fix int/Lisp_Object mixup.
4506 (void_call2): New fun.
4507 (Fmap_char_table): Use it in place of call2.
4508
4509 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
4510
4511 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
4512
4513 * keymap.c (copy_keymap_1): Make it static.
4514
4515 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
4516
c33ef7c4
JB
45172003-02-22 David Ponce <david@dponce.com>
4518
4519 * lread.c (Fload): Don't check STRING_MULTIBYTE.
4520
16782258
JD
45212003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4522
4523 * process.h: Removed subtty field from struct Lisp_Process.
4524
4525 * process.c (create_process): Remove setting of subtty.
4526 (emacs_get_tty_pgrp): New function.
e52bd6b7
SM
4527 (Fprocess_running_child_p, process_send_signal):
4528 Call emacs_get_tty_pgrp instead of ioctl.
16782258
JD
4529 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
4530
3abeca61
KG
45312003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
4532
4533 * keymap.c (Fdefine_key): Doc fix.
4534
92a8ce63
JB
45352003-02-21 Juanma Barranquero <lektu@terra.es>
4536
4537 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
4538
4539 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
4540 POLLING_PROBLEM_IN_SELECT.
4541
4542 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
4543 Delete #undef of POLLING_PROBLEM_IN_SELECT.
4544
4545 * s/hpux10-20.h: New file.
4546
e52bd6b7
SM
4547 * process.c (wait_reading_process_input):
4548 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
92a8ce63 4549
20f1ef2e
KH
45502003-02-20 Kenichi Handa <handa@m17n.org>
4551
32d0a9dc
KH
4552 * fontset.c (check_fontset_name): If NAME is nil, return the
4553 default fontset.
4554 (override_font_info): New function.
e52bd6b7 4555 (Fset_fontset_font): Document that NAME nil means the default fontset.
32d0a9dc
KH
4556 (Ffontset_info): If FONTSET is not the default fontset, merge
4557 FONTSET onto the copy of the default fontset, and work on that
4558 copy. Document that NAME nil means the default fontset.
4559 (Ffontset_font): Document that NAME nil means the default fontset.
4560
20f1ef2e
KH
4561 * process.c (setup_process_coding_systems): If the process's
4562 in/out descriptor is -1, do nothing.
4563
77d1daf2
AS
45642003-02-19 Andreas Schwab <schwab@suse.de>
4565
e52bd6b7
SM
4566 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
4567 Add prototypes.
77d1daf2 4568
f9a45bb3
KH
45692003-02-19 Kenichi Handa <handa@m17n.org>
4570
4571 * xfaces.c (try_alternative_families): Try all scalable fonts if
4572 Vscalable_fonts_allowed is not Qt.
4573
72ecb43c
JD
45742003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4575
4576 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
4577
ee5be7c3
JD
45782003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4579
4580 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
4581 names.
4582
4583 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
e52bd6b7 4584 (sorted_font_list): Move allocation of struct font_name to
ee5be7c3
JD
4585 x_face_list_fonts.
4586 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
4587 (Fx_list_fonts): Set maxnames to -1 to get all font names.
4588
4cd519a7
KS
45892003-02-18 Kim F. Storm <storm@cua.dk>
4590
068f9882
KS
4591 * lread.c (read1): Fix last change.
4592 "`" is not always special. Allow "?" after a character constant.
4cd519a7 4593
7290a344
AC
45942003-02-18 Andrew Choi <akochoi@shaw.ca>
4595
4596 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
4597
1f7fa69b
AS
45982003-02-18 Andreas Schwab <schwab@suse.de>
4599
4600 * window.c (window_scroll_pixel_based): Move outside a
4601 multi-glyph character before setting new window start.
4602
4603 * xdisp.c (in_display_vector_p): New function.
4604 * dispextern.h (in_display_vector_p): Declare.
4605
23e21195
KS
46062003-02-18 Kim F. Storm <storm@cua.dk>
4607
4608 * lread.c (read1): Fix and relax read syntax.
4609 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
4610 Only recognize "," after dotted-pair dot if inside backquote.
4611 Never include "`" or "," (inside backquote) in a symbol.
4612 Allow dotted-pair dot after a character constant.
4613 Allow "`" and "," (inside backquote) after a character constant.
92a8ce63 4614
f098b121
JD
46152003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4616
4617 * gtkutil.c (xg_tool_bar_expose_callback): New function.
4618 (xg_create_tool_bar): Force style of tool bar to be horizontal with
4619 icons. Set name of tool bar to emacs-toolbar.
4620 (update_frame_tool_bar): Connect expose event to
4621 xg_tool_bar_expose_callback.
4622
63020c46
RS
46232003-02-17 Richard M. Stallman <rms@gnu.org>
4624
4625 * keyboard.c (this_command_key_count_reset): New variable.
4626 Initiatize to 0 where this_command_key_count is set.
4627 (read_char): Save and restore this_command_key_count_reset
4628 around input method code.
4629 (read_char): If this_command_key_count_reset, echo reread commands.
4630 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
4631
fb4452cc
KH
46322003-02-17 Kenichi Handa <handa@m17n.org>
4633
4634 * fns.c (string_to_multibyte): Always return a multibyte string.
4635
bd11cc09
JR
46362003-02-16 Jason Rumney <jasonr@gnu.org>
4637
e52bd6b7
SM
4638 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
4639 Negative max_fonts parameter means list all.
bd11cc09 4640
4cdf4bde
DL
46412003-02-14 Dave Love <fx@gnu.org>
4642
4643 * fns.c (Flanginfo): Doc fix.
4644
023b93f6
KS
46452003-02-13 Kim F. Storm <storm@cua.dk>
4646
37cd4238
KS
4647 * lread.c (read_escape): Interpret \s as a SPACE character, except
4648 for \s-X in a character constant which still is the super modifier.
4649 (read1): Signal an `invalid read syntax' error if a character
4650 constant is immediately followed by a digit or symbol character.
4651
140a6b7e
KS
4652 * search.c (Fmatch_data): Doc fix. Explicitly state that
4653 match-data is undefined if last search failed.
4654
023b93f6
KS
4655 * keymap.c (Fcommand_remapping): Renamed from Fremap_command.
4656 All uses changed.
4657
7d5c86e5
JB
46582003-02-12 Juanma Barranquero <lektu@terra.es>
4659
4660 * eval.c (Fdefmacro): Fix typo.
4661
295fff2c
KS
46622003-02-12 Kim F. Storm <storm@cua.dk>
4663
4664 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
4665 macro is a string, convert meta modifiers in string when copying
4666 the string into a vector.
4667
60f3202d
KS
46682003-02-11 Kim F. Storm <storm@cua.dk>
4669
4670 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
4671
61cb0b53
KH
46722003-02-11 Kenichi Handa <handa@m17n.org>
4673
4674 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
4675
7392e23c
KS
46762003-02-10 Kim F. Storm <storm@cua.dk>
4677
4678 * process.c: Doc fixes.
4679 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
4680
ce4254bd
KH
46812003-02-10 Kenichi Handa <handa@m17n.org>
4682
9c7a329a
KH
4683 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
4684
ce4254bd
KH
4685 * process.c (QCfilter_multibyte): New variable.
4686 (setup_process_coding_systems): New function.
e52bd6b7
SM
4687 (Fset_process_buffer, Fset_process_filter):
4688 Call setup_process_coding_systems.
ce4254bd
KH
4689 (Fstart_process): Initialize the member `filter_multibyte' of
4690 struct Lisp_Process.
4691 (create_process): Call setup_process_coding_systems.
4692 (Fmake_network_process): New keyward `:filter-multibyte'.
4693 Initialize the member `filter_multibyte' of struct Lisp_Process.
4694 Call setup_process_coding_systems.
4695 (server_accept_connection): Call setup_process_coding_systems.
4696 (read_process_output): If the process has a filter, decide the
4697 multibyteness of a string to given to the filter by
4698 `filter_multibyte' member of the process. If the process doesn't
4699 have a filter and the result of conversion is unibyte, use
4700 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
4701 multibyte form.
4702 (Fset_process_coding_system): Call setup_process_coding_systems.
4703 (Fset_process_filter_multibyte): New function.
4704 (Fprocess_filter_multibyte_p): New function.
4705 (syms_of_process): Intern and staticpro QCfilter_multibyte.
4706 Defsubr Sset_process_filter_multibyte and
4707 Sprocess_filter_multibyte_p.
4708
4709 * process.h (struct Lisp_Process): New member filter_multibyte.
4710
4711 * lisp.h (setup_process_coding_systems): Add prototype.
4712
4713 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
4714 process, update coding systems for the process.
4715
b08d5f59
KH
47162003-02-09 Kenichi Handa <handa@m17n.org>
4717
4718 * fns.c (string_to_multibyte): New function.
4719 (Fstring_to_multibyte): New function.
4720 (syms_of_fns): Defsubr it.
4721
0dfd93c0
AS
47222003-02-08 Andreas Schwab <schwab@suse.de>
4723
4724 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
4725 instead of the substitution.
4726
7b76ca1c
JD
47272003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4728
4729 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
4730
4731 * xmenu.c (menu_position_func): Adjust menu popup position so that
4732 the menu is fully visible.
7b76ca1c 4733
2436a4e4
JD
47342003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4735
4736 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
e52bd6b7
SM
4737 (x_make_frame_invisible, x_wm_set_icon_position):
4738 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
2436a4e4
JD
4739
4740 * xfns.c (x_set_name, x_set_title): Ditto.
4741
37d1e680
RS
47422003-02-04 Richard M. Stallman <rms@gnu.org>
4743
4744 * keyboard.c (echo_now): Update before_command_echo_length.
4745 (Freset_this_command_lengths): Reset this_command_key_count etc.
4746 immediately rather than arranging to do it later.
4747 (before_command_key_count_1, before_command_echo_length_1)
4748 (before_command_restore_flag): Vars deleted.
4749 (add_command_key): Don't handle before_command_restore_flag.
4750 (read_char, record_menu_key): Don't update before_command_key_count or
4751 before_command_echo_length.
4752 (read_char): Don't handle before_command_restore_flag.
4753
4754 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
4755 in direct-output clauses if it wouldn't be called in the ordinary case.
4756
578846a3
KS
47572003-02-04 Kim F. Storm <storm@cua.dk>
4758
4759 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
4760
49853a4d
JD
47612003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4762
4763 * gtkutil.c (remove_from_container): Copying list is not needed.
4764 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
4765 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
4766 on list returned from gtk_container_get_children to avoid memory leak.
4767
8b53dc06
JR
47682003-02-01 Jason Rumney <jasonr@gnu.org>
4769
5d54d177
JR
4770 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
4771 local malloc.
4772 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
4773 definitions in xpm.h.
4774 (init_xpm_functions): New function.
4775 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
4776 (init_external_image_libraries): Try to load libXpm.dll.
4777
8b53dc06
JR
4778 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
4779 timestamp.
4780
b222e415
DL
47812003-01-31 Dave Love <fx@gnu.org>
4782
4783 * syntax.c (Fskip_chars_forward)
4784 (open-paren-in-column-0-is-defun-start): Doc fix.
4785
c60ee5e7
JB
47862003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
4787
4788 * fileio.c: Support // at start of name for Cygwin (just added proper
4789 preprocessor tests).
4790
4791 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
4792
4793 * Makefile.in: Use @EXEEXT@ for Cygwin.
4794
4795 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
4796
4797 * s/cygwin.h: Added for Cygwin port.
4798
53b37591
JB
47992003-01-31 Juanma Barranquero <lektu@terra.es>
4800
4801 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
4802 when including gif_lib.h.
fe929957
JB
4803 (init_gif_functions, init_tiff_functions): New functions.
4804 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
4805 Windows. Disable color table lookups. Call library functions
53b37591 4806 through pointers determined at runtime.
fe929957
JB
4807 (init_external_image_libraries): Try to load libungif.dll and
4808 libtiff.dll.
53b37591 4809
45415a8f
KH
48102003-01-31 Kenichi Handa <handa@m17n.org>
4811
4812 * xdisp.c (SKIP_GLYPHS): New macro.
e52bd6b7 4813 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
45415a8f 4814
a97e4138
JD
48152003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4816
e52bd6b7 4817 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
a97e4138 4818
6eed9bed
DL
48192003-01-30 Dave Love <fx@gnu.org>
4820
4821 * alloc.c (Vgc_elapsed, gcs_done): New variables.
4822 (Fgarbage_collect): Use them.
4823 (init_alloc, syms_of_alloc): Set them up.
4824
100dcd40
JB
48252003-01-30 Juanma Barranquero <lektu@terra.es>
4826
4827 * w32fns.c (init_external_image_libraries): Add missing operator.
4828
fbd852af
JR
48292003-01-29 Jason Rumney <jasonr@gnu.org>
4830
4831 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
4832 an alternative name for jpeg.dll.
4833
8a2d8020
KH
48342003-01-29 Kenichi Handa <handa@m17n.org>
4835
4836 * xdisp.c (set_cursor_from_row): Pay attention to string display
4837 properties.
4838
058c18c7
AC
48392003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
4840
4841 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
4842 <escape>.
4843 (keycode_to_xkeysym_table): Reformat and add more comments.
4844 (XTread_socket): Drop special case for backspace.
4845
385f11cf
AC
48462003-01-28 Andrew Choi <akochoi@shaw.ca>
4847
4848 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
4849 values in old-style RGB specs.
4850
c922a224
JB
48512003-01-27 Juanma Barranquero <lektu@terra.es>
4852
4853 * w32fns.c (init_external_image_libraries): Try alternate names for the
4854 jpeg dll.
4855
0a1d6de0
JD
48562003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4857
4858 * gtkutil.c (create_dialog, xg_separator_p)
4859 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
4860 before calling strcmp or strlen.
4861
a97e4138 48622003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1d1885fc
JD
4863
4864 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
4865 and handle image load failure.
4866
28908312
JR
48672003-01-26 Jason Rumney <jasonr@gnu.org>
4868
4869 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
4870 New functions.
4871 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
4872 Disable color table lookups. Call jpeg library functions
4873 through pointers determined at runtime.
4874 (init_external_image_libraries): Try to load jpeg.dll.
4875
84e47416
RS
48762003-01-25 Richard M. Stallman <rms@gnu.org>
4877
4878 * lisp.h: Declare format2 instead of format1.
4879
4880 * fileio.c (barf_or_query_if_file_exists):
4881 Call format2 instead of format1.
4882
4883 * editfns.c (format2): New function, replaces format1
4884 but takes exactly two Lisp Objects as format args.
4885
4886 * buffer.c (Fkill_buffer): Call format2 instead of format1.
4887
a97e4138 48882003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1fcfb866
JD
4889
4890 * xterm.h: Change to return value of x_dispatch_event to int.
4891
4892 * xterm.c (x_filter_event): New function.
4893 (event_handler_gdk, XTread_socket): Call x_filter_event.
4894 (x_dispatch_event): Change to return value of finish.
4895 (event_handler_gdk): Use return value from x_dispatch_event.
4896
4897 * xfns.c (x_window): Call create_frame_xic for GTK version to
4898 initialize input methods.
4899
4900 * gtkutil.h: Add (void) prototypes.
4901
4902 * gtkutil.c (create_menus): Remove code that puts the help menu to
4903 the right.
4904
54eefef1
JR
49052003-01-25 Jason Rumney <jasonr@gnu.org>
4906
4907 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
4908 [HAVE_PNG]: Sync with xfns.c version.
4909 (png_load): Adjust colors for Windows. Use Windows
4910 bitmaps. Disable color table lookups.
c262430d
JR
4911 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
4912 (init_png_functions): New function.
4913 (png_read_from_memory, png_load): Call png library functions
4914 through pointers determined at runtime.
4915 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
4916 (init_external_image_libraries): New function.
4917 (init_xfns): Call it.
54eefef1 4918
1a9e275b
AS
49192003-01-24 Andreas Schwab <schwab@suse.de>
4920
4921 * minibuf.c (Fminibuffer_message): Verify type of parameter.
4922
a97e4138 49232003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
81e302ef
JD
4924
4925 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
4926 of static initializer.
4927
422eec7e
DL
49282003-01-24 Dave Love <fx@gnu.org>
4929
4930 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
4931 architectures.
4932
4933 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
4934 Use __alignof__.
4935
2a026b04
KH
49362003-01-24 Kenichi Handa <handa@m17n.org>
4937
4938 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
e52bd6b7 4939 It it is nonzero, don't pretend that an invisible area doesn't exist.
2a026b04
KH
4940 (command_loop_1): Call adjust_point_for_property with proper
4941 second arg.
4942
a18bb28d
JR
49432003-01-22 Jason Rumney <jasonr@gnu.org>
4944
4945 Sync changes with xterm.c and xfns.c.
4946
4947 * w32term.c (x_draw_glyph_string_foreground)
4948 (x_draw_composite_glyph_string_foreground): Implement overstriking.
4949
4950 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
4951 phys_cursor's hpos is overwritten. This is still not completely
4952 correct, as it doesn't really make sense to use hpos at all to
4953 get the cursor glyph (as that is relative to the width of the
4954 characters on the line, which may have changed during the update).
4955
4956 * w32term.c (notice_overwritten_cursor): Handle the special case
4957 of the cursor being in the first blank non-text line at the
4958 end of a window.
4959
4960 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
4961 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
4962 Compute from the x position returned by x_draw_glyphs.
4963
4964 (x_display_and_set_cursor): Don't set phys_cursor_width here,
4965 except for NO_CURSOR and system caret, to make phys_cursor_width
4966 contain what its name suggests.
4967 (notice_overwritten_cursor): Consider the cursor image erased if
4968 the output area intersects the cursor image in y-direction.
4969
6a097c0c
SM
4970 * w32term.c (note_mode_line_or_margin_highlight): Rename from
4971 note_mode_line_highlight and extend.
a18bb28d
JR
4972
4973 * w32term.c (last_window): New variable.
4974 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
4975 (note_mouse_movement): Remove reimplemented code in #if 0.
4976
4977 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
4978 not update_mode_lines, and always set it to 1.
4979
ac6e47ef
JR
49802003-01-21 Jason Rumney <jasonr@gnu.org>
4981
4982 * w32fns.c (IDC_HAND): Define it if system headers don't.
4983
49842003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
4985
4986 * w32term.h (struct w32_output): New member hand_cursor.
4987 (WM_EMACS_SETCURSOR): New message definition.
4988
4989 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
4990 function w32_define_cursor.
4991 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
4992 position, change member name output_data.x to output_data.w32 and
4993 add function w32_define_cursor.
4994 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
4995 and change member name output_data.x to output_data.w32.
e52bd6b7
SM
4996 (w32_initialize_display_info):
4997 Setup dpyinfo->vertical_scroll_bar_cursor.
ac6e47ef
JR
4998
4999 * w32fns.c (Vx_hand_shape): New variable.
5000 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
5001 WM_EMACS_SETCURSOR.
5002 (x-create-frame): Setup Cursor types.
5003
ceb39a17
JB
50042003-01-21 David Ponce <david@dponce.com>
5005
ac6e47ef
JR
5006 * w32term.c (w32_encode_char): For DIM=1 charset, set
5007 ccl->reg[2] to -1 before calling ccl_driver. (Sync. with xterm.c
5008 x_encode_char change by Kenichi Handa <handa@m17n.org> on
ceb39a17 5009 2002-09-30.)
ac6e47ef
JR
5010 (w32_draw_relief_rect): Declare all args.
5011 (w32_define_cursor): New.
5012
5013 * w32fns.c (w32_load_cursor): New function.
5014 (w32_init_class): Use it.
5015 (x_put_x_image): Declare all args.
5016
46cf0bed
JB
50172003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
5018
5019 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
5020
a97e4138 50212003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e8794476
JD
5022
5023 * gtkutil.c: Must include stdio.h before termhooks.h
5024
83fc9c63
DL
50252003-01-21 Dave Love <fx@gnu.org>
5026
5027 * alloc.c (Fgc_status): Print zombie list.
5028 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
5029 Fix assignment of zombies.
5030 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
5031 Don't take car of non-cons.
5032
5033 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
5034
5035 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
5036
fe04b8c8
JR
50372003-01-20 David Ponce <david@dponce.com>
5038
5039 * w32menu.c (digest_single_submenu): Declare all args.
5040
5041 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
5042 changes in xmenu.c:
5043
5044 (parse_single_submenu): Use individual keymap's prompt
5045 string as pane name, if there is one.
5046 (set_frame_menubar): Save menu_items_n_panes from each call to
5047 parse_single_submenu and use it when calling digest_single_submenu.
5048
539e69a9
ST
50492003-01-20 Steven Tamm <steventamm@mac.com>
5050
5051 * macterm.c (XTread_socket): Checks for valid, visible window
5052 before sending a scroll-wheel event.
5053
675d000f
RS
50542003-01-20 Richard M. Stallman <rms@gnu.org>
5055
5056 * xdisp.c (redisplay_window): If mini window's buffer is not
5057 a minibuffer, then redisplay it like other windows.
5058
a97e4138 50592003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
22174d10
JD
5060
5061 * gtkutil.c (xg_create_frame_widgets): Check if there is an
5062 external tool bar before setting tool bar height.
5063
048addec
JD
50642003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5065
5066 * xterm.c (handle_one_xevent): Surround popup_activated
5067 with #ifdef:s for non-toolkit version.
5068
5069 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
5070 (gtkutil.o): New file.
5071 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
5072 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
5073
5074 * gtkutil.c: New file for GTK version.
5075
5076 * gtkutil.h: New file for GTK version.
5077
5078 * xterm.h: Add xt_or_gtk_widget.
5079 Include gtk files for USE_GTK.
5080 (struct x_output): Add toolbar_height.
5081 (struct x_output): Add GTK widgets and Gdk size_hints.
5082 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
5083 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
5084 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
5085
5086 * xterm.c: Include gtkutil.h for USE_GTK.
5087 Declare extern void free_frame_menubar for USE_GTK.
5088 (note_mouse_highlight): Check popup_activated for USE_GTK.
5089 (xt_action_hook): Don't compile if USE_GTK.
5090 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
5091 (xg_scroll_callback): New function.
5092 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
5093 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
5094 for USE_GTK.
5095 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
5096 xg_show_scroll_bar for USE_GTK.
5097 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
5098 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
5099 (event_handler_gdk): New function for USE_GTK.
5100 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
5101 (handle_one_xevent): Make sure widget is mapped before
5102 calling x_real_positions for USE_GTK.
5103 (XTread_socket): Add GTK event loop for USE_GTK.
5104 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
5105 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
5106 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
5107 (x_iconify_frame): Add code for USE_GTK.
5108 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
5109 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
5110 is in gtkutil.c.
5111 (x_term_init): Add initialization for GTK.
5112 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
5113
5114 * xmenu.c: Include gtkutil.h for USE_GTK.
5115 (Fx_popup_menu): Use current position if x and y is NIL.
6bdb309a
SM
5116 (single_menu_item, single_menu_item, Fx_popup_dialog):
5117 Check for USE_GTK.
048addec
JD
5118 (popup_widget_loop): New function for USE_GTK.
5119 (x_activate_menubar): Add code for USE_GTK.
5120 (popup_activate_callback, popup_deactivate_callback)
6bdb309a
SM
5121 (menu_highlight_callback, menubar_selection_callback):
5122 Add USE_GTK versions.
048addec
JD
5123 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
5124 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
5125 (free_frame_menubar): Only compile if not USE_GTK. GTK version
5126 is in gtkutil.c.
5127 (popup_selection_callback): New version for USE_GTK.
5128 (create_and_show_popup_menu): New fuction, one USE_GTK version and
6bdb309a 5129 one USE_X_TOOLKIT version.
048addec
JD
5130 (xmenu_show): Call create_and_show_popup_menu.
5131 (dialog_selection_callback): New version for USE_GTK.
5132 (create_and_show_dialog): New fuction, one USE_GTK version and
6bdb309a 5133 one USE_X_TOOLKIT version.
048addec
JD
5134 (xdialog_show): Call create_and_show_dialog.
5135
5136 * xfns.c: Include gtkutil for USE_GTK.
5137 (x_window_to_frame, x_any_window_to_frame)
5138 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
5139 (x_top_window_to_frame): Add code for USE_GTK.
5140 (x_set_background_color): Call xg_set_background_color for GTK.
5141 (x_set_menu_bar_lines): Check for USE_GTK.
5142 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
5143 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
5144 (x_window): Call xg_create_frame_widgets for USE_GTK.
5145 (Fx_create_frame): Check for USE_GTK
5146 (Fx_file_dialog): New implementation for USE_GTK.
5147
5148 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
5149 (update_menu_bar): Add check for USE_GTK.
5150 (update_tool_bar): Add check for USE_GTK and external tool bar.
5151 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
5152 (redisplay_internal): Add check for USE_GTK and popup_activated.
5153 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
5154 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
5155 (display_menu_bar): Add check for USE_GTK
5156
5157 * lisp.h: Declare Vx_resource_name extern.
5158
5159 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
5160 for USE_GTK.
5161 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
5162
5163 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
5164 (FRAME_EXTERNAL_TOOL_BAR): New macro.
5165 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
5166
5167 * fileio.c (Fread_file_name): Add check for USE_GTK.
5168
6bdb309a
SM
5169 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
5170 Add check for USE_GTK.
048addec
JD
5171
5172 * config.in: Added HAVE_GTK
5173
5174 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
5175
51762003-01-18 Stefan Monnier <monnier@cs.yale.edu>
5177
5178 * charset.h (Funibyte_char_to_multibyte): Export.
5179
51802003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5181
5182 * xmenu.c (mouse_position_for_popup): New function.
5183 (Fx_popup_menu): Call mouse_position_for_popup for X and
5184 mouse_position_hook for others.
5185
51862003-01-17 Kim F. Storm <storm@cua.dk>
5187
5188 * editfns.c (Finsert): Mention `string-make-multibyte' and
5189 `string-as-multibyte' in doc string.
5190
51912003-01-17 Kenichi Handa <handa@m17n.org>
5192
5193 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
3c02a6f5 5194
048addec
JD
5195 * editfns.c (Fformat): Convert an unibyte char argument that is
5196 formatted by "%c" to multibyte if the total result must be a
5197 multibyte string.
cd7df9c0 5198
048addec 51992003-01-16 Kim F. Storm <storm@cua.dk>
cd7df9c0 5200
048addec
JD
5201 * process.c (set-process-filter): Document unibyte/multibyte-ness
5202 of string argument.
56210ecd 5203
048addec 52042003-01-16 Kenichi Handa <handa@m17n.org>
56210ecd 5205
048addec 5206 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
56210ecd 5207
048addec
JD
5208 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
5209 (re_search_2): Likewise.
6df8b9fe 5210
048addec 52112003-01-15 Kenichi Handa <handa@m17n.org>
6df8b9fe 5212
048addec
JD
5213 * xdisp.c (message_dolog): Fix bug of the case that *Message*
5214 buffer is unibyte.
292ddc31 5215
048addec 52162003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
292ddc31 5217
048addec 5218 * fns.c (Fsubstring): Clarify doc string.
292ddc31 5219
048addec
JD
5220 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
5221 (Fprevious_char_property_change)
5222 (Fnext_single_char_property_change)
5223 (Fprevious_single_char_property_change, Fnext_property_change)
5224 (Fnext_single_property_change, Fprevious_property_change)
5225 (Fprevious_single_property_change, Fadd_text_properties)
5226 (Fput_text_property, Fset_text_properties)
5227 (Fremove_text_properties, Fremove_list_of_text_properties)
5228 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
63e4e4c6 5229
048addec 52302003-01-14 Kim F. Storm <storm@cua.dk>
63e4e4c6 5231
048addec
JD
5232 * process.h (struct Lisp_Process): New member plist replaces old
5233 member private_vars. All uses changed.
63e4e4c6 5234
048addec 5235 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
6bdb309a 5236 (QCplist): Rename from QCvars. Change all uses.
048addec 5237 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
6bdb309a 5238 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
048addec 5239 (syms_of_process): Intern, staticpro, defsubr these.
6bdb309a 5240 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
7ed16567 5241
048addec 52422003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
7ed16567 5243
6bdb309a 5244 * m/delta.h: Remove (obsolete).
e833850f 5245
048addec 52462003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
e833850f 5247
048addec
JD
5248 * fileio.c (Fdelete_directory, Fdelete_file): Document the
5249 behaviour in front of symlinks.
5250 (Fdelete_file): Raise an error on directories.
817cb127 5251
048addec 52522003-01-13 Dave Love <fx@gnu.org>
817cb127 5253
048addec 5254 * fns.c (Freverse): Use QUIT.
3e8cf2ea 5255
048addec 52562003-01-13 Richard M. Stallman <rms@gnu.org>
3e8cf2ea 5257
048addec
JD
5258 * minibuf.c (minibuffer_completion_contents):
5259 Error if point is inside prompt.
3e8cf2ea 5260
048addec
JD
5261 * keyboard.c (command_loop_1): Don't redisplay directly
5262 if there's a post-command-hook.
3e8cf2ea 5263
048addec
JD
5264 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
5265 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
2c10f029 5266
048addec 52672003-01-12 Kim F. Storm <storm@cua.dk>
94e8ffca 5268
048addec 5269 * process.h (struct Lisp_Process): New member private_vars.
94e8ffca 5270
048addec
JD
5271 * process.c (QCvars): New variable.
5272 (syms_of_process): Intern and staticpro it.
5273 (Fset_process_contact): Removed function.
5274 (Fprocess_variable, Fset_process_variable): New functions.
5275 (syms_of_process): Defsubr them.
5276 (Fstart_process): Initialize private_vars plist to nil.
5277 (Fmake_network_process): New arg :vars to setup the private
5278 variables for new network process.
5279 (server_accept_connection): Copy server's private variables to
5280 client process.
2c10f029 5281
048addec
JD
5282 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
5283 crashes). Code rewritten and simplified. Now directly aligns the
5284 pointer and recalculates pure_bytes_used, rather than aligning the
5285 size and adjusting the pointer.
b8a76c6c 5286
048addec 52872003-01-11 Kim F. Storm <storm@cua.dk>
b8a76c6c 5288
048addec
JD
5289 * process.c (Fset_process_contact): New function.
5290 (syms_of_process): defsubr it.
5291 (make-network-process): Update doc.
3a8d0899 5292
048addec 52932003-01-10 Andreas Schwab <schwab@suse.de>
3a8d0899 5294
048addec
JD
5295 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
5296 Reported by Berthold Gunreben <b.gunreben@web.de>.
4abc7470 5297
048addec 52982003-01-10 Dave Love <fx@gnu.org>
4abc7470 5299
048addec 5300 * composite.c (syms_of_composite): Make composition_hash_table weak.
b809d662 5301
048addec 53022003-01-09 Kim F. Storm <storm@cua.dk>
b809d662 5303
048addec
JD
5304 * process.c (Fmake_network_process): Convert new port number
5305 to host byte order for `:service t' case. From Mario Lang.
bf338245 5306
048addec 53072003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
bf338245 5308
048addec
JD
5309 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
5310 instead of XtAppProcessEvent.
bf338245 5311
048addec
JD
5312 * xterm.c (handle_one_xevent): New function.
5313 (x_dispatch_event): New function.
5314 (XTread_socket): Call handle_one_xevent.
bf338245 5315
048addec 5316 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
e833850f 5317
048addec
JD
5318 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
5319 call XQueryPointer to get coordinates.
5320 (popup_get_selection): Do not set popup_activated_flag to zero,
5321 let popup_deactivate_callback do that. Needed for Motif.
5322 Call x_dispatch_event instead of XtDispatchEvent.
5323 (xmenu_show): Calculate root coordinate from frame top/left position.
c4af2bce 5324
048addec 53252003-01-08 Kim F. Storm <storm@cua.dk>
c4af2bce 5326
6bdb309a 5327 * process.c (server_accept_connection): Fix recording of new
048addec
JD
5328 connection's local address in :local property of contact info.
5329 (Fmake_network_process): Record local network address for new
5330 client processes in :local property of contact info.
6bdb309a 5331 (format-network-address): Add arg OMIT-PORT. Change callers.
00e3ab56 5332
048addec 53332003-01-07 Dave Love <fx@gnu.org>
00e3ab56 5334
048addec 5335 * Makefile.in (fns.o): Depend on coding.h.
f387e1fd 5336
048addec 53372003-01-07 Markus Rost <rost@math.ohio-state.edu>
f387e1fd 5338
048addec 5339 * minibuf.c (Fread_variable): Doc fix.
f387e1fd 5340
048addec
JD
5341 * eval.c (Fuser_variable_p): Doc change. For custom variables,
5342 use the same test as for custom-variable-p.
8c6d74c6 5343
048addec 53442003-01-05 Richard M. Stallman <rms@gnu.org>
e833850f 5345
048addec
JD
5346 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
5347 Count LAST_LINE_MISFIT in scroll margin for end of window.
5348 Move label too_near_end before setting SCROLL_MARGIN_POS.
5349 Set LAST_LINE_MISFIT before jumping there.
8c6d74c6 5350
048addec
JD
5351 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
5352 scroll_conservatively case. If scrolling that much doesn't change
5353 STARTP, move it down one line.
e833850f 5354
048addec
JD
5355 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
5356 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
8c6d74c6 5357
048addec
JD
5358 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
5359 selected frame.
8c6d74c6 5360
048addec
JD
5361 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
5362 (syms_of_keymap): staticpro them.
5363 (Fapropos_internal): Initialize them and clear them out.
5364 Don't GCPRO them.
8c6d74c6 5365
048addec
JD
5366 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
5367 Doc fixes.
8c6d74c6 5368
048addec
JD
5369 * lisp.h: New misc type Lisp_Save_Value.
5370 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
5371 (XSAVE_VALUE): New macro.
5372 (struct Lisp_Save_Value): New data type.
5373 (union Lisp_Misc): Add u_save_value alternative.
5374 (make_save_value): Declared.
8c6d74c6 5375
048addec 5376 * alloc.c (make_save_value): New function.
8c6d74c6 5377
048addec
JD
5378 * xterm.c (x_catch_errors): Save dpy using make_save_value.
5379 (x_catch_errors_unwind): Call XSync.
8c6d74c6 5380
048addec 53812003-01-01 Richard M. Stallman <rms@gnu.org>
8c6d74c6 5382
048addec 5383 * window.c (window_scroll_pixel_based): Partially undo last change.
8c6d74c6 5384
048addec
JD
5385 * keyboard.c (command_loop_1): Call adjust_point_for_property
5386 in direct action cases for Qforward_char and Qbackward_char.
5387 Set already_adjusted so it won't be done twice.
8c6d74c6 5388
048addec 53892002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
8c6d74c6 5390
048addec
JD
5391 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
5392 type definition of size_t.
8c609cff 5393
048addec 53942003-01-02 Steven Tamm <steventamm@mac.com>
8c609cff 5395
048addec
JD
5396 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
5397 distinguish Carbon GUI builds from X11 builds on darwin.
b37113a1 5398
048addec 53992002-12-30 Steven Tamm <steventamm@mac.com>
b37113a1 5400
048addec
JD
5401 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
5402 to default to t.
fa634a5e 5403
048addec 54042002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
fa634a5e 5405
048addec 5406 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
ce0669d4 5407
048addec 54082002-12-28 Steven Tamm <steventamm@mac.com>
ce0669d4 5409
048addec
JD
5410 * Makefile.in (macosx-bundle): Fixes to Mac OS X/Carbon port to
5411 allow building in a different directory than source. Uses some
5412 GNU Make extensions, but there is no other make on Mac OS X.
2308af15 5413
048addec 54142002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
2308af15 5415
048addec
JD
5416 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
5417 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
5418 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
5419 (Fstring_to_number): Mention the returned value in the doc strings.
2155ecf3 5420
048addec 54212002-12-23 Richard M. Stallman <rms@gnu.org>
2155ecf3 5422
048addec
JD
5423 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
5424 <scroll-down-aggressively>: Doc fix.
2155ecf3 5425
048addec
JD
5426 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
5427 string as pane name, if there is one.
5428 (set_frame_menubar): Save menu_items_n_panes from each call to
5429 parse_single_submenu and use it when calling digest_single_submenu.
2155ecf3 5430
048addec
JD
5431 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
5432 Don't try to make last line fully visible if it is past end of window.
61f1d295 5433
048addec 54342002-12-22 Steven Tamm <steventamm@mac.com>
61f1d295 5435
048addec
JD
5436 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
5437 (mac_menu_show): Add support for hierarchical popup menus.
5438 (add_menu_item): Remove indentation support.
5439 (fill_submenu, fill_menu): Create hierarchical menus
5440 instead of using indentation.
0b17a217 5441
048addec 54422002-12-22 Richard M. Stallman <rms@gnu.org>
0b17a217 5443
048addec
JD
5444 * xdisp.c (try_cursor_movement): Don't call try_window here.
5445 (redisplay_window): Never redisplay minibuffer when inactive.
0b17a217 5446
048addec 5447 * window.c (select_window_1): Undo 9/21 change.
402e4f8b 5448
048addec 54492002-12-22 Steven Tamm <steventamm@mac.com>
402e4f8b 5450
048addec
JD
5451 * macterm.c (XTread_socket): Call KeyTranslate for control and
5452 meta to deal correctly shifted non-alpha characters, like C-S-5
5453 being treated like C-%. Does not look for shift key to deal
5454 with masking off control-key with mac-reverse-ctrl-meta.
f02cac82 5455
048addec 54562002-12-21 Richard M. Stallman <rms@gnu.org>
f02cac82 5457
048addec
JD
5458 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
5459 If it is non-nil, run timers. Use an unwind-protect to requeue
5460 the events that were read ahead.
5461 (popup_get_selection_unwind): New subroutine.
5462 (popup_get_selection_queue): File-scope variable now holds that queue.
5463 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
5464 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
5465 Use an unwind-protect to pop down the dialog box.
5466 (xdialog_show_unwind): New subroutine implements that.
f02cac82 5467
048addec
JD
5468 * xdisp.c (row_containing_pos): Change exit test using last_y.
5469 (try_window_id): Abort if row_containing_pos returns null.
f02cac82 5470
048addec
JD
5471 * lread.c (load_error_handler): New function.
5472 (Fload): Handle errors in Fsubstitute_in_file_name.
5473 Don't expect Fsignal to return.
f02cac82 5474
048addec
JD
5475 * eval.c: Errors and throws work right with interrupt blocking.
5476 (struct catchtag): New elt interrupt_input_blocked.
5477 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
5478 (internal_catch, Fcondition_case, internal_condition_case)
5479 (internal_condition_case_1, internal_condition_case_2): Save it.
5480 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
f02cac82 5481
048addec 5482 * editfns.c (Fformat): Add parens.
f02cac82 5483
048addec
JD
5484 * dired.c (file_name_completion): Fix that change.
5485 Delete special quit-handling code; just use QUIT.
f02cac82 5486
048addec 54872002-12-21 Tak Ota <Takaaki.Ota@am.sony.com> (tiny change)
f02cac82 5488
048addec
JD
5489 * dired.c (file_name_completion): Close directory on error
5490 just as in directory_files_internal.
1a590729 5491
048addec 54922002-12-19 David Kastrup <David.Kastrup@t-online.de>
1a590729 5493
048addec
JD
5494 * window.c (Fset_window_configuration): Set old_point to correct
5495 value when new_current_buffer == current_buffer.
f02cac82 5496
048addec 54972002-12-17 Ben Key <bkey1@tampabay.rr.com>
2308af15 5498
048addec
JD
5499 Revisited my earlier fix for the following entry in etc/PROBLEMS:
5500 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
5501 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
9785d95b 5502
048addec
JD
5503 These changes were in part based upon suggestions made by Peter
5504 'Luna' Runestig [peter@runestig.com].
9785d95b 5505
048addec
JD
5506 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token,
5507 g_b_init_get_token_information, g_b_init_lookup_account_sid,
6bdb309a 5508 g_b_init_get_sid_identifier_authority ): Add several static
048addec 5509 global variables.
9785d95b 5510
048addec
JD
5511 * w32.c (globals_of_w32): New function. Used to initialize those
5512 global variables that must always be initialized on startup even
5513 when the global variable initialized is non zero. Its primary
5514 purpose at this time is to set the global variables
5515 g_b_init_is_windows_9x, g_b_init_open_process_token,
5516 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
5517 g_b_init_get_sid_identifier_authority to 0 on startup.
5518 Called from main.
9785d95b 5519
048addec
JD
5520 * w32.c (is_windows_9x): Perform initialization only if
5521 g_b_init_is_windows_9x is equal to 0. On initialization set
5522 g_b_init_is_windows_9x equal to 1.
2308af15 5523
048addec
JD
5524 * w32.c (open_process_token): Perform initialization only if
5525 g_b_init_open_process_token is equal to 0. On initialization set
5526 g_b_init_open_process_token equal to 1.
2308af15 5527
048addec
JD
5528 * w32.c (get_token_information): Perform initialization only if
5529 g_b_init_get_token_information is equal to 0. On initialization
5530 set g_b_init_get_token_information equal to 1.
9785d95b 5531
048addec
JD
5532 * w32.c (lookup_account_sid): Perform initialization only if
5533 g_b_init_lookup_account_sid is equal to 0. On initialization
5534 set g_b_init_lookup_account_sid equal to 1.
9785d95b 5535
048addec
JD
5536 * w32.c (get_sid_identifier_authority): Perform initialization
5537 only if g_b_init_get_sid_identifier_authority is equal to 0.
5538 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
9785d95b 5539
048addec
JD
5540 * w32fns.c (globals_of_w32fns): New function. Used to initialize
5541 those global variables that must always be initialized on startup
5542 even when the global variable initialized is non zero.
5543 Its primary purpose at this time is to initialize the global variable
5544 track_mouse_event_fn.
9785d95b 5545
048addec
JD
5546 * w32fns.c (w32_wnd_proc): Remove initialization of
5547 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
9785d95b 5548
048addec 5549 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
9785d95b 5550
048addec
JD
5551 * w32menu.c (globals_of_w32menu): New function. Used to
5552 initialize those global variables that must always be initialized
5553 on startup even when the global variable initialized is non zero.
5554 Its primary purpose at this time is to initialize the global
5555 variables get_menu_item_info and set_menu_item_info.
9785d95b 5556
048addec
JD
5557 * w32menu.c (initialize_frame_menubar): Remove initialization of
5558 get_menu_item_info and set_menu_item_info.
9785d95b 5559
048addec 5560 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
9785d95b 5561
048addec
JD
5562 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
5563 Declare them.
9785d95b 5564
048addec
JD
5565 * emacs.c (main): Call globals_of_w32 prior to calling
5566 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
5567 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
5568 is defined.
9785d95b 5569
048addec
JD
5570 * w32term.c (x_update_window_begin): Fix Windows API error
5571 detected by BoundsChecker. Test to determine if
5572 w32_system_caret_hwnd is NULL prior to attempting to use
5573 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
2308af15 5574
048addec
JD
5575 * w32term.c (x_update_window_end): Fix Windows API error
5576 detected by BoundsChecker. Test to determine if
5577 w32_system_caret_hwnd is NULL prior to attempting to use
5578 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
b6da19ef 5579
048addec 55802002-12-17 Kenichi Handa <handa@m17n.org>
b6da19ef 5581
048addec
JD
5582 * coding.c (coding_system_require_warning): New variable.
5583 (syms_of_coding): DEFVAR it.
b6da19ef 5584
048addec 5585 * coding.h (coding_system_require_warning): Extern it.
b6da19ef 5586
048addec
JD
5587 * fileio.c (choose_write_coding_system): Even if
5588 Vcoding_system_for_write is non-nil, if
5589 coding_system_require_warning is nonzero, call
5590 Vselect_safe_coding_system_function.
bfcf6dbe 5591
048addec 55922002-12-17 Markus Rost <rost@math.ohio-state.edu>
bfcf6dbe 5593
048addec
JD
5594 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
5595 (lisp): Add font-core.
2c568af5 5596
048addec 55972002-12-13 Stefan Monnier <monnier@cs.yale.edu>
2c568af5 5598
048addec
JD
5599 * textprop.c (text_read_only): New arg `propval'.
5600 (get_char_property_and_overlay): Remove unused var `next_overlay'.
5601 (verify_interval_modification): Use text_read_only's new arg.
b8c6225c 5602
048addec 56032002-12-13 Kenichi Handa <handa@m17n.org>
b8c6225c 5604
048addec 5605 * coding.c (Funencodable_char_position): Set pend correctly.
706ddb8f 5606
048addec 56072002-12-12 Jason Rumney <jasonr@gnu.org>
706ddb8f 5608
048addec
JD
5609 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
5610 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
5611 Be more careful about when help_events are generated.
96720f09 5612
048addec 56132002-12-12 Steven Tamm <steventamm@mac.com>
96720f09 5614
048addec
JD
5615 * macterm.c (mac_check_for_quit_char): Correctly set the
5616 modifiers of the event to 0.
5617 * mac.c (sys_select): Duplicate rfds before calling select to
5618 ensure that rfds survive the while loop.
e5ae1c49 5619
048addec 56202002-12-11 Kim F. Storm <storm@cua.dk>
e5ae1c49 5621
048addec
JD
5622 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
5623 row_containing_pos returned NULL.
2eb46b2d 5624
048addec 56252002-12-10 Steven Tamm <steventamm@mac.com>
2eb46b2d 5626
6bdb309a 5627 * mac.c (sys_read): Fix sys_read to not call select if IO is
048addec 5628 non-blocking.
6bdb309a 5629 (sys_select): Fix sys_select to not use a timeout larger than
048addec 5630 the one given.
b11f1d8a 5631
048addec 56322002-12-10 Juanma Barranquero <lektu@terra.es>
b11f1d8a 5633
048addec 5634 * editfns.c (Fformat): Use alloca, not _alloca.
d8528226 5635
048addec 56362002-12-09 Richard M. Stallman <rms@gnu.org>
d8528226 5637
048addec
JD
5638 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
5639 as the last thing.
a4ac5b17 5640
048addec 56412002-12-09 Dave Love <fx@gnu.org>
a4ac5b17 5642
048addec 5643 * s/sol2-8.h: Removed. (Not necessary.)
ac42d7b9 5644
048addec 56452002-12-09 Matthew Swift <swift@alum.mit.edu>
ac42d7b9 5646
048addec
JD
5647 * editfns.c (Fformat): Handle precision in string conversion
5648 specifiers like libc functions do (ie, print at most that many
5649 characters).
85cce843 5650
048addec 56512002-12-08 Richard M. Stallman <rms@gnu.org>
85cce843 5652
048addec
JD
5653 * xdisp.c (row_containing_pos): Check more carefully
5654 whether charpos is really in the row before returning it.
0d4d26a7 5655
048addec 56562002-12-07 Steven Tamm <steventamm@mac.com>
0d4d26a7 5657
048addec 5658 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
b11f1d8a 5659
048addec
JD
5660 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
5661 each stack frame. This may change as it could be time consuming.
0d4d26a7 5662
048addec
JD
5663 * macterm.c (mac_check_for_quit_char, quit_char_comp)
5664 (init_quit_char_handler, mac_determine_quit_char_modifiers)
6bdb309a 5665 (mac_initialize): Add code to check for pressing of quit_char
048addec 5666 in the OS event queue.
b11f1d8a 5667
048addec
JD
5668 * mac.c (sys_select): Call mac_check_for_quit_char every second
5669 while blocking on select.
0d4d26a7 5670
048addec
JD
5671 * mac.c (sys_read): Use sys_select to test for input first
5672 before calling read, to allow C-g to break.
9252f7bc 5673
048addec 56742002-12-07 Richard M. Stallman <rms@gnu.org>
9252f7bc 5675
048addec 5676 * minibuf.c (Fcompleting_read): Doc fix.
9252f7bc 5677
048addec 5678 * lread.c (syms_of_lread) <load-history>: Doc fix.
9252f7bc 5679
048addec 5680 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
9252f7bc 5681
048addec
JD
5682 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
5683 autoload.
9252f7bc 5684
048addec 5685 * data.c (Fdefalias): Record in load-history redefining an autoload.
9252f7bc 5686
048addec 5687 * alloca.c: Undo ifdef change accidentally made on 12-04.
bfa261c0 5688
048addec 56892002-12-06 Francesco Potorti` <pot@gnu.org>
bfa261c0 5690
048addec 5691 * xfns.c (png_load): Avoid double gamma correction for PNG images.
c5992177 5692
048addec 56932002-12-04 Richard M. Stallman <rms@gnu.org>
c5992177 5694
048addec 5695 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 5696
048addec 5697 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 5698
048addec 5699 * alloca.c: Don't use #error.
02d588e2 5700
048addec 57012002-12-03 Dave Love <fx@gnu.org>
02d588e2 5702
048addec
JD
5703 * buffer.c (Qucs_set_table_for_input): New.
5704 (Fget_buffer_create): Use it.
5705 (Qset_buffer_major_mode_hook): Deleted.
5706 (Fset_buffer_major_mode): Revert previous change.
5707 (init_buffer_once): Intern ucs-set-table-for-input.
5708 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
5709 Add &Qucs_set_table_for_input.
451e2697 5710
048addec 57112002-12-03 Andreas Schwab <schwab@suse.de>
451e2697 5712
048addec
JD
5713 * callint.c (Fcall_interactively): Use next_event only if less
5714 than key_count.
72742a99 5715
048addec 57162002-12-02 Andrew Choi <akochoi@shaw.ca>
72742a99 5717
048addec
JD
5718 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
5719 names to 255 characters.
72742a99 5720
048addec
JD
5721 * macterm.c (XTread_socket): If all frames have been collapsed,
5722 expand the first one before handling drag-and-drop events.
72742a99 5723
048addec
JD
5724 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
5725 which is detected by autoconf.
40e6ff95 5726
048addec 57272002-12-01 Steven Tamm <steventamm@mac.com>
40e6ff95 5728
048addec
JD
5729 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
5730 offset in two hints table to allow prebinding to be redone and
5731 allow the executable to be stripped.
c02138c6 5732
048addec 57332002-11-29 Dave Love <fx@gnu.org>
c02138c6 5734
048addec
JD
5735 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
5736 already provided.
0e47bbf7 5737
048addec 57382002-11-29 Richard M. Stallman <rms@gnu.org>
0e47bbf7 5739
048addec
JD
5740 * xdisp.c (start_display): Check more intelligently for
5741 whether the line is continued.
5742 (move_it_vertically_backward): Clear it->continuation_lines_width.
44129dcb 5743
048addec 57442002-11-28 Dave Love <fx@gnu.org>
44129dcb 5745
048addec
JD
5746 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
5747 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
f707342d 5748
048addec 57492002-11-27 Steven Tamm <steventamm@mac.com>
f707342d 5750
048addec
JD
5751 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
5752 more descriptive error output from lread.c:Fload upon most require
5753 cycles during boostrapping.
1637fd2c 5754
048addec 57552002-11-27 Jason Rumney <jasonr@gnu.org>
1637fd2c 5756
048addec
JD
5757 * fileio.c (Finsert_file_contents): Give a more appropriate error
5758 for files bigger than 2Gb when off_t is 32 bit.
1637fd2c 5759
048addec
JD
5760 * dired.c (Ffile_attributes): Don't return negative file sizes for
5761 files bigger than 2Gb when off_t is 32 bit.
540c2788 5762
048addec 57632002-11-27 Dave Love <fx@gnu.org>
6b2fd6ea 5764
048addec 5765 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
6b2fd6ea 5766
048addec
JD
5767 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
5768 Test GETPGRP_VOID instead.
5769 [BSD_TERMIOS]: Remove definitions (never used).
6b2fd6ea 5770
048addec
JD
5771 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
5772 Don't define.
5773 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
540c2788 5774
048addec 5775 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
8cc03716 5776
048addec 57772002-11-25 Jason Rumney <jasonr@gnu.org>
8cc03716 5778
048addec
JD
5779 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
5780 supported.
4042a81a 5781
048addec 57822002-11-25 Dave Love <fx@gnu.org>
4042a81a 5783
048addec 5784 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
4042a81a 5785
048addec 5786 * Makefile.in (TEMACS_LDFLAGS): Update last change.
be4ee72f 5787
048addec 57882002-11-25 Andreas Schwab <schwab@suse.de>
be4ee72f 5789
048addec 5790 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
82122254 5791
048addec 57922002-11-24 Steven Tamm <steventamm@mac.com>
82122254 5793
048addec
JD
5794 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
5795 determine the size of pointers alloced in unexed space instead
5796 of using possibly invalid emacs_zone pointers. This fixes the
5797 binary incompatibility problems caused by updates to libSystem.B.
c1ee53bc 5798
048addec 57992002-11-24 Richard M. Stallman <rms@gnu.org>
c1ee53bc 5800
048addec 5801 * search.c (Fstring_match): Doc fix.
c1ee53bc 5802
048addec
JD
5803 * callint.c (Fcall_interactively): If a command fails because
5804 `*' detects a read-only buffer, but RECORD_FLAG is set,
5805 record it anyway if the args don't actually do tty input.
5598c32e 5806
048addec 58072002-11-22 Dave Love <fx@gnu.org>
5598c32e 5808
048addec 5809 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
5598c32e 5810
048addec
JD
5811 * keyboard.c (interrupt_signal): Provide forward declaration.
5812 (kbd_buffer_store_event): Don't declare interrupt_signal.
5598c32e 5813
048addec 5814 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
97b14e22 5815
048addec 58162002-11-21 Richard M. Stallman <rms@gnu.org>
97b14e22 5817
048addec
JD
5818 * eval.c (interactive_p): Skip any number of bytecode
5819 and special form frames, in any order.
516eea8e 5820
048addec 58212002-11-20 Jason Rumney <jasonr@gnu.org>
516eea8e 5822
048addec
JD
5823 * w32fns.c (convert_mono_to_color_image): New function.
5824 (xbm_load, xbm_load_image): Use it when foreground or background
5825 is explicitly set.
04dbfa08 5826
048addec 58272002-11-19 Dave Love <fx@gnu.org>
04dbfa08 5828
048addec 5829 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
b4aebae3 5830
048addec 58312002-11-18 Jason Rumney <jasonr@gnu.org>
b4aebae3 5832
048addec
JD
5833 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
5834 (XPutPixel): Swap blue and red.
5835 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
5836 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
5837 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
5838 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
1998560a 5839
048addec 58402002-11-18 Dave Love <fx@gnu.org>
d824beee 5841
048addec 5842 * m/orion105.h (HAVE_ALLOCA): Don't define.
d824beee 5843
048addec 5844 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
d824beee 5845
048addec 5846 * m/intel386.h: Don't include alloca.h or define alloca.
d824beee 5847
048addec
JD
5848 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
5849 malloc, realloc, calloc.
d824beee 5850
048addec
JD
5851 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
5852 (bcmp): Don't define.
d824beee 5853
048addec 5854 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
d824beee 5855
048addec 5856 * m/amdahl.h: Don't define LIB_STANDARD.
d824beee 5857
048addec 5858 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
d824beee 5859
048addec 5860 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
d824beee 5861
048addec
JD
5862 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
5863 Don't include alloca.h.
d824beee 5864
048addec 5865 * s/aix3-2.h (HAVE_FSYNC): Don't define.
1998560a 5866
048addec 5867 * regex.c (_GNU_SOURCE): Don't define.
1998560a 5868
048addec 5869 * process.c (_GNU_SOURCE): Don't define.
1998560a 5870
048addec 5871 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
8704a6ab 5872
048addec 58732002-11-18 Markus Rost <rost@math.ohio-state.edu>
8704a6ab 5874
048addec 5875 * s/sol2-8.h: Include sol2-6.h.
6ae2cd57 5876
048addec 58772002-11-18 Miles Bader <miles@gnu.org>
6ae2cd57 5878
048addec
JD
5879 * dispextern.h (struct face): Add `overstrike' field.
5880 * xterm.c (x_draw_glyph_string_foreground)
5881 (x_draw_composite_glyph_string_foreground): Implement overstriking.
5882 * xfaces.c (load_face_font): Set `face->overstrike' based on
5883 result from choose_face_font.
5884 (best_matching_font, choose_face_font): Add `needs_overstrike'
5885 argument, and use it to return whether overstriking is desirable
5886 for this face/font combo.
5887 (set_font_frame_param: Pass new argument to choose_face_font.
6ae2cd57 5888
048addec 58892002-11-17 Ben Key <BKey1@tampabay.rr.com>
3582b6a3 5890
048addec
JD
5891 This change is my fix for the following entry in etc/PROBLEMS:
5892 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
5893 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
f60ae425 5894
048addec
JD
5895 * w32.c: Added wrapper functions around the win32 API functions
5896 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
5897 GetSidIdentifierAuthority. These wrapper functions serve two
5898 purposes:
5899 1. They ensure that the wrapped function can never be called
5900 when Emacs is running on an operating system on which they are
5901 not supported (Microsoft Windows 95 / 98 / ME).
5902 2. They call the wrapped functions via function pointers rather
5903 than calling them directly. This avoids taking advantage of the
5904 undocumented fact that although these functions are not supported
5905 in the 9x branch of Microsoft Windows, the functions do exist in
5906 the version of advapi32.dll that is found in the 9x branch of
5907 Microsoft Windows.
f60ae425 5908
6bdb309a 5909 * w32.c (init_user_info): Replace the calls to the win32 API
048addec
JD
5910 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
5911 and GetSidIdentifierAuthority with calls to the newly added
5912 wrapper functions.
f60ae425 5913
048addec
JD
5914 * w32.h: Added extern declarations for the following functions:
5915 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
5916 syms_of_w32menu, and void syms_of_fontset.
f60ae425 5917
6bdb309a 5918 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
048addec
JD
5919 function pointer track_mouse_event_fn in the handler for the
5920 WM_SETFOCUS message.
3582b6a3 5921
6bdb309a 5922 * w32menu.c (initialize_frame_menubar): Add code to
048addec
JD
5923 reinitialize the function pointers set_menu_item_info and
5924 get_menu_item_info.
f60ae425 5925
048addec 59262002-11-17 Ben Key <BKey1@tampabay.rr.com>
f60ae425 5927
048addec
JD
5928 * sound.c: Added a partial implementation of play-sound-internal
5929 for Microsoft Windows. Added various #ifdef / #else / #endif
5930 code blocks to separate the code that will compile under
5931 Microsoft Windows from the code that is specific to Gnu/Linux.
5932 Moved several blocks of code around to make this separation of code
5933 into Windows compatible and Gnu/Linux compatible code blocks easier.
f60ae425 5934
048addec 5935 * makefile.w32-in: Include sound.c and link with WinMM.lib.
a0f0878d 5936
048addec
JD
5937 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
5938 added support for play-sound-internal under Windows would be
5939 included in the build of Emacs.
517f42a0 5940
048addec 59412002-11-16 Jason Rumney <jasonr@gnu.org>
517f42a0 5942
048addec 5943 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
517f42a0 5944
048addec 5945 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
a0f0878d 5946
048addec 59472002-11-15 Stefan Monnier <monnier@cs.yale.edu>
a0f0878d 5948
048addec
JD
5949 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
5950 (adjust_point_for_property): Move out of display and invisible even if
5951 we were already inside before (in case a property was added while
5952 we weren't looking). Be more careful when handling invisible props.
5953 Skip invisible text as if it really wasn't there at all.
aab83f91 5954
048addec 59552002-11-15 Jason Rumney <jasonr@gnu.org>
aab83f91 5956
048addec
JD
5957 * w32term.c (x_draw_image_foreground)
5958 (w32_draw_image_foreground_1): Use standard copy and invert
5959 operations to draw images.
aab83f91 5960
048addec
JD
5961 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
5962 depth of 1.
5963 (xbm_read_bitmap_data): Invert bits as xbm is read in.
5964 (XPutPixel): Don't invert bits here.
a4478a76 5965
048addec 59662002-11-15 Jason Rumney <jasonr@gnu.org>
a4478a76 5967
048addec
JD
5968 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
5969 (w32_draw_image_foreground_1): Handle image masks.
5970 (x_draw_image_glyph_string): Don't BitBlt transparently.
a4478a76 5971
048addec
JD
5972 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
5973 (x_from_xcolors): Adjust RGB values for W32.
5974 (image_background, image_background_transparent)
5975 (postprocess_image, x_to_xcolors, x_disable_image)
5976 (x_build_heuristic_mask): Adapt for W32 and enable.
5977 (x_create_x_image_and_pixmap): Mark images with palettes as such.
5978 (xbm_load): Remove unused variable.
03670a65 5979
048addec 59802002-11-14 Richard M. Stallman <rms@gnu.org>
03670a65 5981
048addec 5982 * buffer.c (syms_of_buffer): Doc fix.
59daa29a 5983
048addec 59842002-11-14 Dave Love <fx@gnu.org>
59daa29a 5985
048addec 5986 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
59daa29a 5987
048addec
JD
5988 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
5989 * xmenu.c (unuse_menu_items, digest_single_submenu):
5990 * xfns.c (x_put_x_image):
5991 * xdisp.c (message2_nolog, set_message):
5992 * undo.c (record_point):
5993 * terminfo.c (tparam):
5994 * syntax.c (scan_sexps_forward):
5995 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
5996 * composite.c (update_compositions):
5997 * cm.c (calccost, cmgoto):
5998 * charset.c (c_string_width): Declare all args (per C99).
59daa29a 5999
048addec 6000 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
59daa29a 6001
048addec
JD
6002 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
6003 Don't declare.
59daa29a 6004
048addec 6005 * emacs.c (main) [!VMS]: Avoid third arg.
59daa29a 6006
048addec
JD
6007 * fns.c (Fcopy_sequence): Doc fix.
6008 (Fmap_char_table): Cast `call2'.
3947677c 6009
048addec
JD
60102002-11-14 Francesco Potorti` <pot@gnu.org>
6011
6012 * s/sol2-8.h: New file.
6013
60142002-11-14 Kim F. Storm <storm@cua.dk>
6015
6016 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
6017 dependency on `risky-local-variable' and the :propertize form.
6018
60192002-11-12 Stefan Monnier <monnier@cs.yale.edu>
6020
6021 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
6022
6023 * syntax.c (scan_sexps_forward): Undo last patch.
6024 Use a more obvious fix: check eob before updating the syntax table.
6025
60262002-11-09 Stefan Monnier <monnier@cs.yale.edu>
6027
6028 * syntax.c (scan_sexps_forward): Update syntax table before reading
6029 a char rather than after so we don't update the table past eob.
6030
60312002-11-09 Dave Love <fx@gnu.org>
6032
6033 * buffer.c (Fset_buffer_major_mode): Fix last change.
6034
6035 * regex.c (regexec): Fix pmatch declaration.
6036
6037 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
6038
6039 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
6040 to self-inserting characters.
6041 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
6042
6043 * coding.c (Vtranslation_table_for_input): New.
6044 (syms_of_coding): DEFVAR it.
6045
60462002-11-08 Juanma Barranquero <lektu@terra.es>
6047
6048 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
6049 window.
6050
60512002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
6052
6bdb309a 6053 * process.c (Fformat_network_address): Remove unused locals p,
048addec
JD
6054 cp, and i.
6055
60562002-11-06 Dave Love <fx@gnu.org>
6057
6058 * buffer.c (Qset_buffer_major_mode_hook): New.
6059 (Fset_buffer_major_mode): Use it.
6060
60612002-11-06 Richard M. Stallman <rms@gnu.org>
6062
6063 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
6064 and stop_polling.
6065
6066 * process.c (wait_reading_process_input):
6067 Test POLLING_PROBLEM_IN_SELECT, not hpux.
6068 Avoid initialization for auto Lisp_Object var.
6069
6070 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
6071
6072 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
6073
60742002-11-05 Richard M. Stallman <rms@gnu.org>
6075
6076 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
6077
6078 * callint.c (Fcall_interactively): New local filter_specs.
6079 (Fcall_interactively): Check for progn as well as let.
6080 Add a gcpro.
6081 (Qprogn): New variable.
6082 (syms_of_callint): Staticpro and init Qprogn.
6083
60842002-11-04 John Paul Wallington <jpw@shootybangbang.com>
6085
6086 * lread.c (Feval_buffer): Doc fix.
6087
60882002-11-04 Dave Love <fx@gnu.org>
6089
6090 * keyboard.c (read_char): Always translate iff
6091 Vkeyboard_translate_table is a char table and c is valid.
6092
6093 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
6094 and fix C types.
6095
60962002-11-03 Stefan Monnier <monnier@cs.yale.edu>
6097
6098 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
6099
6100 * editfns.c (get_pos_property): Don't hardcode Qfield.
6101
6102 * keyboard.c (adjust_point_for_property): Handle `display' prop on
6103 overlays. Also handle `invisible' prop.
6104
61052002-11-02 Stefan Monnier <monnier@cs.yale.edu>
6106
6107 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
6108 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
6109
61102002-11-01 Andreas Schwab <schwab@suse.de>
6111
6112 * editfns.c (Fmessage): Revert last change to properly handle %%.
6113
61142002-11-01 Stefan Monnier <monnier@cs.yale.edu>
6115
6116 * xmenu.c (unuse_menu_items): New fun.
6117 (menu_items_inuse): New var.
6118 (syms_of_xmenu): Initialize it.
6119 (init_menu_items): Use it to detect re-entrance.
6120 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
6121 (Fx_popup_menu): Remove spurious XSETFRAME.
6122
6123 * editfns.c (find_field): Make an exception for nil fields.
6124
61252002-11-01 Dave Love <fx@gnu.org>
6126
6127 * m/gec63.h: Deleted.
6128
61292002-10-31 Dave Love <fx@gnu.org>
6130
6131 * xterm.c (XTread_socket): Fix last change.
6132 (xaw_scroll_callback): Cast call_data to long to avoid warning.
6133
61342002-10-31 Stefan Monnier <monnier@cs.yale.edu>
6135
6136 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
6137
61382002-10-30 Stefan Monnier <monnier@cs.yale.edu>
6139
6140 * editfns.c (overlays_around, get_pos_property): New funs.
6141 (find_field): Use them.
6142 Also be careful not to modify POS before its last use.
6143 (Fmessage): Don't Fformat if there's nothing to format.
6144
61452002-10-30 Dave Love <fx@gnu.org>
6146
6147 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
6148 [HAVE_PTY_H]; Include pty.h.
6149
6150 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
6151
6152 * xterm.c (Qeql): Declare.
6153 (Vx_keysym_table): New.
6154 (syms_of_xterm): Initialize it.
6155 (XTread_socket): Use it. Deal with ASCII keysyms.
6156 (XSetIMValues) [HAVE_X11R6]: Prototype.
6157
6158 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
6159 (lispy_kana_keys): Comment out.
6160 (make_lispy_event) [XK_kana_A]: Comment out.
6161 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
6162 Fix sprintf call.
6163
6164 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
6165 regexp.h change).
6166 (TERMINFO, LIBS_TERMCAP): Define.
6167
6168 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
6169 (bcmp): Define conditional on HAVE_BCMP.
6170 (NO_SIOCTL_H): Don't define.
6171 (TIOCSIGSEND): Don't make conditional on IRIX6.
6172
6173 * s/sol2-5.h: Don't include strings.h.
6174 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
6175
6176 * s/irix6-0.h (IRIX6): Don't define.
6177 (bcopy, bcmp, bzero): Don't undef.
6178
6179 * s/irix6-5.h: Don't include strings.h.
6180 (IRIX6): Don't define.
6181 (bcopy, bcmp, bzero): Don't undef.
6182
6183 * syntax.c (Fforward_comment): Doc fix.
6184
61852002-10-29 Kim F. Storm <storm@cua.dk>
6186
6187 * process.c (Fsignal_process): Allow PROCESS to be specified by
6188 name in addition to pid (as integer or string).
6189
61902002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
6191
6192 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
6193 environments.
6194
61952002-10-27 Kim F. Storm <storm@cua.dk>
6196
6197 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
6198
6199 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
6200
6201 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
6202
6203 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
6204
62052002-10-26 Richard M. Stallman <rms@gnu.org>
6206
6207 * editfns.c (Fformat): Detect invalid format letters for floats.
6208
62092002-10-25 Kenichi Handa <handa@m17n.org>
6210
6211 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
6212 (x_set_title): Likewise.
6213
62142002-10-25 Juanma Barranquero <lektu@terra.es>
6215
6216 * macgui.h:
6217 * w32gui.h: Remove definition of XColor.
6218
6219 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
6220
62212002-10-24 Kim F. Storm <storm@cua.dk>
6222
6223 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
6224 Callers changed (supply dummy arg).
6225
6226 * lisp.h (get_window_cursor_type): Update prototype.
6227
6228 * w32term.c (x_display_and_set_cursor): Get active_cursor from
6229 get_window_cursor_type to track system caret.
6230
62312002-10-24 Kim F. Storm <storm@cua.dk>
6232
6233 * process.c (Fformat_network_address): New function.
6234 (syms_of_process): Defsubr it.
6235 (list_processes_1): Use it to format :local/:remote address if
6236 service/host is not set; before emacs would crash in that case.
6237 (Fmake_network_process): Don't use Ffind_operation_coding_system
6238 to setup coding system if host or service is not set.
6239
62402002-10-23 Juanma Barranquero <lektu@terra.es>
6241
6242 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
6243
6244 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
6245 COLORREF.
6246
6247 * macgui.h:
6248 * w32gui.h: Add definition of XColor.
6249
6250 * macfns.c:
6251 * w32fns.c:
6252 * xfaces.c: Remove definition of XColor.
6253
62542002-10-22 Stefan Monnier <monnier@cs.yale.edu>
6255
6256 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
6257
6258 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
6259 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
6260 window if it is dedicated.
6261 (Fshrink_window): Add preserve_before as was done for enlarge_window.
6262 (Vspecial_display_function): Update docstring.
6263
6264 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
6265 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
6266 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
6267
62682002-10-21 Stefan Monnier <monnier@cs.yale.edu>
6269
6270 * casefiddle.c (casify_region): Don't treat a prefix char as part
6271 of a word when at the beginning.
6272
62732002-10-17 Juanma Barranquero <lektu@terra.es>
6274
6275 * lread.c (syms_of_lread): Fix typos.
6276
62772002-10-17 Dave Love <fx@gnu.org>
6278
6279 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
6280
62812002-10-16 Richard M. Stallman <rms@gnu.org>
6282
6283 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
6284
62852002-10-14 Juanma Barranquero <lektu@terra.es>
6286
6287 * w16select.c (syms_of_win16select): Fix docstring for
6288 `selection-coding-system'.
6289
6290 * w32select.c (syms_of_w32select): Likewise.
6291
62922002-10-14 Stefan Monnier <monnier@cs.yale.edu>
6293
6294 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
6295 a backslash-quoted char.
6296 (scan_lists, scan_sexps_forward): Pacify the compiler.
6297
62982002-10-13 Richard M. Stallman <rms@gnu.org>
6299
6300 * window.c (window_scroll): Set immediate_quit.
6301
6302 * print.c (print): When backquote form is the car of a list,
6303 output in old style. Use old_backquote_output to output all
6304 comma forms inside it in old style too.
6305
6306 * buffer.h (struct buffer): Move `undo_list' down below `name'.
6307
63082002-10-11 Markus Rost <rost@math.ohio-state.edu>
6309
6310 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
6311 batch mode).
6312
6313 * lread.c (Fload): Doc fix (load-suffixes).
6314
63152002-10-10 Steven Tamm <steventamm@mac.com>
6316
6317 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
6318 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
6319 Also switch the default to Qnil from Qt.
6320
63212002-10-08 Kenichi Handa <handa@m17n.org>
6322
6323 * coding.c (code_convert_region): When we need more GAP for
6324 conversion, pay attention to the case that coding->produced is not
6325 greater than coding->consumed.
6326
63272002-10-07 Richard M. Stallman <rms@gnu.org>
6328
6329 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
6330
63312002-10-06 Andrew Choi <akochoi@shaw.ca>
6332
6333 * macmenu.c (mac_menu_show): Add j to count menu items; match
6334 menu_item_selection to it to find selected item.
6335
63362002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6337
6338 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
6339 cases. The correct fix is to pass ReparentNotify to Xt.
6340 The shell widget interprets ConfigureNotify differently depending
6341 on if it has been reparented or not.
6342
63432002-10-05 Markus Rost <rost@math.ohio-state.edu>
6344
6345 * editfns.c (Fformat_time_string): Doc fix.
6346
63472002-10-05 John Paul Wallington <jpw@shootybangbang.com>
6348
6349 * fns.c (Flength): Doc fix.
6350
63512002-10-04 Stefan Monnier <monnier@cs.yale.edu>
6352
6353 * keyboard.c (keyremap): New struct.
6354 (read_key_sequence): Use it: globally replace keytran_foo with
6355 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
6356 keytran_next and fkey_next to just `next'.
6357
63582002-10-04 Steven Tamm <steventamm@mac.com>
6359
6360 * macterm.c (keycode_to_xkeysym_table): Change return to be
6361 treated like an X keysym.
6362
63632002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6364
6365 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
6366 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
6367 This is to also handle x/y changes that occur because of a resize.
6368
63692002-10-02 John Paul Wallington <jpw@shootybangbang.com>
6370
6371 * frame.c (Vdelete_frame_functions): New variable.
6372 (syms_of_frame): Initialize and defvar it.
6373 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
6374 it when frame's `tooltip' parameter is non-nil.
6375
6376 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
6377
6378 * w32fns.c (x_create_tip_frame): Likewise.
6379
6380 * macfns.c (x_create_tip_frame): Likewise.
6381
63822002-09-30 Kenichi Handa <handa@m17n.org>
6383
6384 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
6385 -1 before calling ccl_driver.
6386
6387 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
6388 Only when it is non-nil, handle composition sequence.
6389 (setup_coding_system) <0>: Don't force composition handling.
6390
6391 * Makefile.in (lisp, shortlisp): Add utf-16.elc
6392
63932002-09-29 Richard M. Stallman <rms@gnu.org>
6394
6395 * search.c (Freplace_match): Adjust match data for the substitution
6396 just made in the buffer.
6397
6398 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
6399 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
6400
64012002-09-27 Richard M. Stallman <rms@gnu.org>
6402
6403 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
6404 (read_char): Use them. Do all exits thru the end of the function.
6405
64062002-09-27 Kenichi Handa <handa@etl.go.jp>
6407
6408 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
6409 is nil.
6410
64112002-09-26 Richard M. Stallman <rms@gnu.org>
6412
6413 * regex.h (__restrict_arr): Don't define if already defined.
6414
6415 * coding.c (run_pre_post_conversion_on_str):
6416 Save and restore Vdeactivate_mark.
6417
64182002-09-26 John Paul Wallington <jpw@shootybangbang.com>
6419
6420 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
6421
64222002-09-26 Kenichi Handa <handa@etl.go.jp>
6423
6424 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
6425 nonzero, try face's family at first. Otherwise try FAMILY at first.
6426 (choose_face_font): If C is a single byte char or latin-1, call
6427 try_font_list with PREFER_FACE_FAMILY 1.
6428
64292002-09-21 Richard M. Stallman <rms@gnu.org>
6430
6431 * window.c (select_window_1): Don't select frame.
6432 Set frame's selected window only when frame itself is selected.
6433 (Fselect_window): Doc fix.
6434
64352002-09-18 Kim F. Storm <storm@cua.dk>
6436
6437 * process.c (make-network-process): Doc fix (there is no
6438 network-server-log-function hook).
6439
64402002-09-18 Richard M. Stallman <rms@gnu.org>
6441
6442 * print.c (print): Clear out the unused parts of Vprint_number_table.
6443 (syms_of_print): Doc fix for `print-number-table'.
6444
6445 * unexelf.c (unexec): Undo previous change.
6446
64472002-09-17 Andreas Schwab <schwab@suse.de>
6448
6449 * m/alpha.h [LINUX]: Don't define DATA_START.
6450
64512002-09-16 Dave Love <fx@gnu.org>
6452
6453 * unexelf.c (unexec): Deal with .got, reinstating change from
6454 25-08-1999.
6455
64562002-09-13 Richard M. Stallman <rms@gnu.org>
6457
6458 * s/sol2-6.h (UNEXEC): Comment out definition.
6459
6460 * unexsol.c (unexec): Don't downcase first letter of error msg.
6461
6462 * xfaces.c (Fcolor_supported_p): Just one arg is required.
6463
64642002-09-12 Markus Rost <rost@math.ohio-state.edu>
6465
6466 * unexsol.c: Include buffer.h, charset.h, coding.h.
6467
64682002-09-11 Richard M. Stallman <rms@gnu.org>
6469
6470 * unexsol.c: Don't use report_file_error; do it by hand
6471 using dlerror.
6472
6473 * process.c (wait_reading_process_input, both versions):
6474 Before calling turn_on_atimers, call stop_polling.
6475
6476 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
6477
6478 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
6479 we go to too_near_end, call clear_glyph_matrix.
6480 (redisplay_window): After make_cursor_line_fully_visible,
6481 call clear_glyph_matrix and bypass `goto done'.
6482
6483 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
6484 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
6485
64862002-09-10 Richard M. Stallman <rms@gnu.org>
6487
6488 * fileio.c (Fdo_auto_save): Catch error making directory.
6489 Only call push_message if we need to.
6490 At the same time, make an unwind-protect to pop it.
6491 Rename local message_p to old_message_p.
6492 (do_auto_save_make_dir, do_auto_save_eh): New functions.
6493 (do_auto_save_unwind): Don't call pop_message.
6494
6495 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
6496
6497 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
6498
6499 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
6500
6501 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
6502
65032002-09-10 Stefan Monnier <monnier@cs.yale.edu>
6504
6505 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
6506 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
6507 (re_match_2_internal): Be more careful with infinite loops.
6508
65092002-09-10 Kim F. Storm <storm@cua.dk>
6510
6511 * macros.c (end_kbd_macro): New function.
6512 (Fend_kbd_macro): Use it.
6513
6514 * macros.h (end_kbd_macro): Declare extern.
6515
6516 * keyboard.c (Fdiscard_input): If defining keyboard macro,
6517 end and save it instead of discarding it.
6518
65192002-09-09 Markus Rost <rost@math.ohio-state.edu>
6520
6521 * s/sol2-6.h: Fix typo. Add comment.
6522
65232002-09-09 Richard M. Stallman <rms@gnu.org>
6524
6525 * regex.c (regnum_t): Use signed int, not unsigned int.
6526
6527 * s/sol2-6.h: New file.
6528
6529 * s/sol2-5.h (UNEXEC): Definition deleted.
6530
65312002-09-08 Kim F. Storm <storm@cua.dk>
6532
6533 * macros.c (executing_macro_index): Change type to EMACS_INT.
6534 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
6535
6536 * macros.h (executing_macro_index): Change type to EMACS_INT.
6537
65382002-09-06 Richard M. Stallman <rms@gnu.org>
6539
6540 * casetab.c (set_case_table): Make canon table point to eqv table.
6541
65422002-09-06 Juanma Barranquero <lektu@terra.es>
6543
6544 * coding.c (syms_of_coding): Fix spacing.
6545
6546 * composite.c (Fcompose_region_internal)
6547 (Fcompose_string_internal): Likewise.
6548
6549 * data.c (Flsh): Likewise.
6550
6551 * fontset.c (Fset_fontset_font): Likewise.
6552
6553 * macfns.c (Fx_server_max_request_size): Likewise.
6554
6555 * w16select.c (syms_of_win16select): Likewise.
6556
6557 * w32select.c (syms_of_w32select): Likewise.
6558
6559 * xselect.c (syms_of_xselect): Likewise.
6560
65612002-09-05 Richard M. Stallman <rms@gnu.org>
6562
6563 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
6564 call EXTEND_RANGE_TABLE and return a proper value.
6565 (set_image_of_range): Don't call set_image_of_range_1
6566 if no TRANSLATE or if range includes all of Latin-1.
6567 Only call it for the Latin-1 part of the range.
6568 For other cases, make two separate ranges,
6569 one for the original specified characters and one for
6570 their case-conversions.
6571
65722002-09-04 Richard M. Stallman <rms@gnu.org>
6573
6574 * s/sol2-5.h (UNEXEC): Use unexsol.o.
6575
6576 * window.c (displayed_window_lines): Correct for one-off bug
6577 in HEIGHT on non-window displays.
6578
6579 * regex.c (set_image_of_range_1): New function.
6580 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
6581 Return a value to indicate running out of memory.
6582 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
6583 (extend_range_table_work_area): New subroutine.
6584 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
6585 Different calling conventions, and used from set_image_of_range{,_1}.
6586 (IMMEDIATE_QUIT_CHECK): Definitions moved.
6587
65882002-09-04 Juanma Barranquero <lektu@terra.es>
6589
6590 * makefile.w32-in: All dependencies updated.
6591
65922002-09-01 Richard M. Stallman <rms@gnu.org>
6593
6594 * unexsol.c: New file.
6595
6596 * xfns.c (Qbox): Declare external, don't define.
6597
6598 * xdisp.c (redisplay_window) <force-start case>:
6599 If point is on semi-visible last line, reposition
6600 it at previous line.
6601
6602 * alloc.c (display_malloc_warning): Use display-warning.
6603 (malloc_warning_1): Function deleted.
6604
6605 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
6606
6607 * lread.c (read1): Handle #! by skipping the line.
6608
66092002-08-31 Richard M. Stallman <rms@gnu.org>
6610
6611 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
6612 Don't include LDFLAGS.
6613 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
6614
66152002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
6616
6617 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
6618 member of x_display_info unless we compile for some window system.
6619
66202002-08-31 Kim F. Storm <storm@cua.dk>
6621
6622 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
6623 (get_window_cursor_type): Don't use them.
6624 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
6625
66262002-08-30 Kenichi Handa <handa@etl.go.jp>
6627
6628 * xdisp.c (get_next_display_element): Fix previous change.
6629
66302002-08-30 Andrew Choi <akochoi@shaw.ca>
6631
6632 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
6633 (expose_window): Use it to fix the display of overlapping
6634 rows (merge code from xterm.c).
6635
6636 * macfns.c (Qbox): Add extern declaration.
6637
66382002-08-30 Juanma Barranquero <lektu@terra.es>
6639
6640 * w32fns.c (Qbox): Make extern.
6641 (syms_of_w32fns): Remove initialization of Qbox.
6642
66432002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
6644
6645 * xfns.c (Fx_open_connection): Fix error message.
6646
66472002-08-30 Kim F. Storm <storm@cua.dk>
6648
6649 The following changes consolidates the handling of the cursor
6650 type in xdisp.c, moving duplicate code and functionality from
6651 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
6652
6653 * frame.h (enum text_cursor_kinds): Consolidated here.
6654 Added DEFAULT_CURSOR value.
6655 (struct frame) <desired_cursor, cursor_width>
6656 <blink_off_cursor, blink_off_cursor_width>: New fields.
6657 Consolidated from output_x, output_w32 and output_mac structs.
6658 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
6659 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
6660
6661 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
6662 Variables consolidated here.
6663 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
6664 (Vcursor_in_non_selected_windows): Renamed from
6665 cursor_in_non_selected_windows and changed to Lisp_Object.
6666 (syms_of_xdisp): Define and staticpro new and moved variables.
6667 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
6668 consolidated here. Recognize Qhollow setting.
6669 (set_frame_cursor_types): New function to set frame cursor types
6670 based on the frame parameters.
6671 (get_window_cursor_type): New function to calculate new cursor
6672 type and width for the specified window. Based on duplicated
6673 code consolidated here.
6674 Enhancements: cursor-in-non-selected-windows may be a cursor type,
6675 check buffer-local alternate-cursor-type and blink-cursor-alist
6676 before using built-in blink off methods.
6677
6678 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
6679
6680 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
6681 (get_specified_cursor_type, get_window_cursor_type)
6682 (set_frame_cursor_types): Added prototypes.
6683
6684 * macfns.c (x_specified_cursor_type): Removed.
6685 (x_set_cursor_type): Use set_frame_cursor_types.
6686 (Qbar, Qbox): Removed.
6687 (syms_of_macfns): Don't intern or staticpro them.
6688
6689 * macterm.c (x_specified_cursor_type): Remove prototype.
6690 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
6691 (x_display_and_set_cursor): Use get_window_cursor_type.
6692 Remove unused local variables cursor_non_selected, active_cursor.
6693 Redraw cursor if hbar cursor width changes.
6694 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
6695
6696 * macterm.h (enum text_cursor_kinds): Removed.
6697 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
6698 <blink_off_cursor, blink_off_cursor_width>: Members removed.
6699 (FRAME_DESIRED_CURSOR): Macro removed.
6700
6701 * w32fns.c (Vblink_cursor_alist): Removed.
6702 (Qbar, Qhbar, Qbox, Qhollow): Removed.
6703 (syms_of_w32fns): Don't intern, staticpro, or define them.
6704 (x_specified_cursor_type): Removed.
6705 (x_set_cursor_type): Use set_frame_cursor_types.
6706
6707 * w32term.c (x_specified_cursor_type): Remove prototype.
6708 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
6709 (x_display_and_set_cursor): Use get_window_cursor_type.
6710 Remove unused local variables cursor_off_state.
6711 Redraw cursor if hbar cursor width changes.
6712 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
6713
6714 * w32term.h (enum text_cursor_kinds): Removed.
6715 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
6716 <blink_off_cursor, blink_off_cursor_width>: Members removed.
6717 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
6718 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
6719 (struct w32_display_info) <x_highlight_frame>: Renamed member from
6720 w32_highlight_frame.
6721
6722 * xfns.c (Vblink_cursor_alist): Removed.
6723 (Qbar, Qhbar, Qbox, Qhollow): Removed.
6724 (syms_of_xfns): Don't intern, staticpro, or define them.
6725 (x_specified_cursor_type): Removed.
6726 (x_set_cursor_type): Use set_frame_cursor_types.
6727
6728 * xterm.c (x_specified_cursor_type): Remove prototype.
6729 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
6730 (x_display_and_set_cursor): Use get_window_cursor_type.
6731 Remove unused local variables cursor_off_state.
6732 Redraw cursor if hbar cursor width changes.
6733
6734 * xterm.h (enum text_cursor_kinds): Removed.
6735 (struct output_x) <current_cursor, desired_cursor, cursor_width>
6736 <blink_off_cursor, blink_off_cursor_width>: Members removed.
6737 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
6738 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
6739 (x_specified_cursor_type): Remove prototype.
6740
67412002-08-28 Richard M. Stallman <rms@gnu.org>
6742
6743 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
6744 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
6745 (Vblink_cursor_alist): New variable.
6746 (syms_of_w32fns): Initialize and defvar it.
6747 (x_specified_cursor_type): Recognize Qbox for filled box.
6748 Exceptions are hollow boxes.
6749 (Qbox, Qhollow): New variables.
6750 (syms_of_w32fns): Initialize and staticpro them.
6751
6752 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
6753 New macros.
6754 (struct w32_output): New fields blink_off_cursor,
6755 blink_off_cursor_width.
6756 (FRAME_CURSOR_WIDTH): New macro.
6757
6758 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
6759 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
6760
6761 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
6762 for bar cursor.
6763
6764 * w32term.c (expose_overlaps): New function.
6765 (expose_window): Use it to fix the display of overlapping rows.
6766
67672002-08-28 Simon Josefsson <jas@extundo.com>
6768
6769 * xfns.c (Fx_open_connection): Improve help when X connection
6770 fails, xhost is insecure and xauth is better.
6771
67722002-08-28 Juanma Barranquero <lektu@terra.es>
6773
6774 * makefile.w32-in: Add missing dependencies on w32term.h and
6775 composite.h.
6776
6777 * emacs.c (USAGE1): Add missing newline.
6778
67792002-08-27 Andrew Choi <akochoi@shaw.ca>
6780
6781 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
6782
67832002-08-27 Richard M. Stallman <rms@gnu.org>
6784
6785 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
6786 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
6787 (Vblink_cursor_alist): New variable.
6788 (syms_of_xfns): Initialize and defvar it.
6789 (x_specified_cursor_type): Recognize Qbox for filled box.
6790 Exceptions are hollow boxes.
6791 (Qbox, Qhollow): New variables.
6792 (syms_of_xfns): Initialize and staticpro them.
6793
6794 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
6795 New macros.
6796 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
6797
6798 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
6799 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
6800
6801 * emacs.c (main): Handle --script.
6802 (USAGE1): Mention --script.
6803 (standard_args): Define sort order for --script.
6804
68052002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
6806
6807 * xdisp.c (redisplay_updating_p): Variable removed.
6808 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
6809 New variables.
6810 (init_iterator): Don't free realized faces if
6811 inhibit_free_realized_faces is set.
6812 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
6813 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
6814 initialize Qinhibit_free_realized_faces.
6815
6816 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
6817 when iterator is adding glyphs to a glyph matrix.
6818
68192002-08-27 Kenichi Handa <handa@etl.go.jp>
6820
6821 * xdisp.c (get_next_display_element): In unibyte case, don't use
6822 octal form for such eight-bit characters that can be converted to
6823 multibyte char.
6824
68252002-08-26 Kim F. Storm <storm@cua.dk>
6826
6827 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize foreground
6828 and background colors. From Joe Buehler (tiny change).
6829
68302002-08-26 Miles Bader <miles@gnu.org>
6831
6832 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
6833
68342002-08-25 Andrew Choi <akochoi@shaw.ca>
6835
6836 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
6837 defined instead of MAC_OSX.
6838
6839 * s/darwin.h (select): Define select to sys_select only if
6840 HAVE_CARBON is defined.
6841 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
6842 (DONT_REOPEN_PTY): #def it.
6843
6844 * macterm.c (XTread_socket): Remove code to call
6845 SendEventToEventTarget for keys with command modifiers when
6846 mac_command_key_is_meta is nil.
6847
68482002-08-24 Andreas Schwab <schwab@suse.de>
6849
6850 * eval.c (Fdefvar): Fix last change.
6851
68522002-08-23 Richard M. Stallman <rms@gnu.org>
6853
6854 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
6855 Record variables in load history as (defvar . VAR).
6856 (Fdefvar): Don't record in load history if no initial value.
6857 (Qdefvar): New variable.
6858 (syms_of_eval): Init and staticpro it.
6859
6860 * lread.c (syms_of_lread): Doc fix.
6861 (build_load_history): Use Fmember to see if a definition
6862 is already in the Vload_history element.
6863
6864 * process.c (Fstart_process): Remove /: from program name.
6865
6866 * emacs.c (decode_env_path): Don't add /: if file name handler
6867 has a `safe-magic' property.
6868
6869 * callproc.c (Fcall_process): Remove /: from program name.
6870
68712002-08-23 Stefan Monnier <monnier@cs.yale.edu>
6872
6873 * regex.c (PATFETCH): Remove the translating fetch.
6874 (PATFETCH_RAW): Rename to PATFETCH.
6875 (set_image_of_range): New fun.
6876 (SET_RANGE_TABLE_WORK_AREA): Use it.
6877 (regex_compile): Don't translate the pattern chars so eagerly.
6878 Only do it when inserting an `exactn' bytecode or when handling
6879 a char-range.
6880 (mutually_exclusive_p): Avoid empty statement.
6881
68822002-08-22 Kim F. Storm <storm@cua.dk>
6883
6884 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
6885 end up on a partially visible line; this reverts a specific part
6886 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
6887 display error which has been reported several times now.
6888 However it introduces the problem that changes was supposed to fix.
6889 See my comments in the source if you want to debug this further.
6890
68912002-08-20 Kenichi Handa <handa@etl.go.jp>
6892
6893 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
6894
68952002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
6896
6897 * msdos.c (croak): Add `void' to definition.
6898
6899 * sysdep.c [MSDOS] (request_sigio, unrequest_sigio):
6900 Don't define them, they are defined in msdos.c.
6901
6902 * mem-limits.h [MSDOS]: Declare etext.
6903
6904 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
6905 `const' since CORRECT_DIR_SEPS modifies its target.
6906
69072002-08-19 Kim F. Storm <storm@cua.dk>
6908
6909 * keyboard.c (Fclear_this_command_keys): Added optional arg
6910 KEEP-RECORD to avoid clearing lossage when we just want to clear
6911 the current key sequence (kmacro needs this).
6912
69132002-08-19 Kenichi Handa <handa@localhost>
6914
6915 * composite.c (run_composition_function): Call FUNC if it is fboundp.
6916
6917 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
6918 cons, return Qnil.
6919
69202002-08-17 Richard M. Stallman <rms@gnu.org>
6921
6922 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
6923
6924 * sysdep.c [!VMS]: Include sys/files.h.
6925
6926 * editfns.c (save_restriction_restore): Defend from unchained marker.
6927
6928 * buffer.c (overlays_at): Handle extending vec uniformly.
6929 (overlays_in): Handle extending vec from length 0 as in overlays_at.
6930
69312002-08-15 Andrew Choi <akochoi@shaw.ca>
6932
6933 * mac.c (init_mac_osx_environment): New function.
6934
6935 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
6936
69372002-08-14 Kim F. Storm <storm@cua.dk>
6938
6939 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
6940 executing macro before appending to it (when used from Lisp).
6941 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
6942 which is called prior to each iteration of macro (for kmacro.el).
6943 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
6944
6945 * lisp.h (Fexecute_kbd_macro): Update prototype.
6946
6947 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
6948
69492002-08-14 Kenichi Handa <handa@etl.go.jp>
6950
6951 * xselect.c (QUTF8_STRING): New variable.
6952 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
6953 (x_atom_to_symbol): Likewise.
6954 (x_get_local_selection): New argument local_request. If it is
6955 nonzero, call handler_fn with the second arg nil.
6956 (x_handle_selection_request): Call x_get_local_selection with
6957 local_request 0.
6958 (lisp_data_to_selection_data): Don't encode the string here.
6959 (Fx_get_selection_internal): Call x_get_local_selection with
6960 local_request 1.
6961 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
6962
6963 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
6964
6965 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
6966
69672002-08-13 Richard M. Stallman <rms@gnu.org>
6968
6969 * minibuf.c (Fminibufferp): New function.
6970 (syms_of_minibuf): Defsubr it.
6971 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
6972
69732002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
6974
6975 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
6976
69772002-08-12 Richard M. Stallman <rms@gnu.org>
6978
6979 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
6980 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
6981 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
6982 already.
6983
6984 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
6985
69862002-08-11 Andrew Choi <akochoi@shaw.ca>
6987
6988 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
6989 (Vmac_pass_command_to_system): New variable.
6990 (Vmac_pass_control_to_system): New variable.
6991 (do_mouse_moved): Check wp with is_emacs_window.
6992 (XTread_socket): Check window_ptr with is_emacs_window.
6993 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
6994 events back to Mac Toolbox for processing, depending on values of
6995 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
6996 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
6997 Vmac_pass_control_to_system.
6998
69992002-08-10 Kenichi Handa <handa@etl.go.jp>
7000
7001 * coding.c (unencodable_char_position): New function.
7002 (Funencodable_char_position): New function.
7003 (syms_of_coding): Defsubr Funencodable_char_position.
7004
70052002-08-10 Andrew Choi <akochoi@shaw.ca>
7006
7007 * mac.c (sys_select) [MAC_OSX]: New function.
7008
7009 * macterm.c (MakeMeTheFrontProcess): New function.
7010 (mac_initialize): Call MakeMeTheFrontProcess.
7011
7012 * s/darwin.h: Define select to sys_select.
7013
70142002-08-09 Richard M. Stallman <rms@gnu.org>
7015
7016 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
7017
70182002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
7019
7020 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
7021 end of the buffer.
7022
70232002-08-08 Ken Raeburn <raeburn@mit.edu>
7024
7025 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
7026
7027 * puresize.h (BASE_PURESIZE): Increase to 910000.
7028
70292002-08-08 Kenichi Handa <handa@etl.go.jp>
7030
7031 * coding.c (Ffind_operation_coding_system): For write-region, if
7032 VISIT is a filename, make it the target.
7033
70342002-08-07 Richard M. Stallman <rms@gnu.org>
7035
7036 * alloc.c (mark_object): Detect long lists for debugging.
7037 (mark_object_loop_halt): New variable.
7038
7039 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
7040
7041 * data.c (Fmake_variable_frame_local): Doc fix.
7042
70432002-08-01 David Ponce <david@dponce.com>
7044
7045 * w32menu.c (local_heap, local_alloc, local_free): New macros.
7046 (malloc_widget_value, free_widget_value)
7047 (w32_free_submenu_strings): Use them.
7048
7049 (push_submenu_start, push_submenu_end, push_left_right_boundary)
7050 (push_menu_pane, push_menu_item, single_keymap_panes)
7051 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
7052 (single_submenu, set_frame_menubar)
7053 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
7054
7055 (Fx_popup_menu): Don't show pop up menu until preceding one is
7056 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
7057
7058 * w32menu.c: Changes adapted from xmenu.c
7059 (set_frame_menubar): First parse all submenus,
7060 then make widget_value trees from them.
7061 Don't allocate any widget_value objects
7062 until we are done with the parsing.
7063 (parse_single_submenu): New function.
7064 (digest_single_submenu): New function.
7065 (single_submenu): Function deleted, replaced by those two.
7066
70672002-08-04 Andrew Choi <akochoi@shaw.ca>
7068
7069 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
7070 returns a valid window pointer before proceeding for keyDown and
7071 autoKey events.
7072
70732002-08-03 Andrew Choi <akochoi@shaw.ca>
7074
7075 * macterm.c (USE_CARBON_EVENTS): New macro.
7076 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
7077 (x_iconify_frame): Call CollapseWindow.
7078 (Vmac_reverse_ctrl_meta): New variable.
7079 (Vmac_wheel_button_is_mouse_2): New variable.
7080 (init_mac_drag_n_drop): New function.
7081 (mac_do_receive_drag): New function.
7082 (mac_handle_service_event): New function.
7083 (init_service_handler): New function.
7084 (mac_to_emacs_modifiers): New function.
7085 (mac_event_to_emacs_modifiers): New function.
7086 (mac_get_mouse_btn): New function.
7087 (mac_convert_event_ref): New function.
7088 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
7089 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
7090 mac_get_mouse_btn.
7091 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
7092
7093 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
7094 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
7095 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
7096 TOOL_BAR_EVENT for MAC_OS as well.
7097 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
7098 as for WINDOWS_NT.
7099 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
7100
7101 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
7102
71032002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
7104
7105 * xdisp.c (forward_to_next_line_start): Fix a condition that
7106 lead to a newline being skipped.
7107
71082002-08-02 Andrew Choi <akochoi@shaw.ca>
7109
7110 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
7111
71122002-08-01 Richard M. Stallman <rms@gnu.org>
7113
7114 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
7115
71162002-07-31 Andrew Choi <akochoi@shaw.ca>
7117
7118 * macfns.c: #undef init_process before #define-ing it.
7119
7120 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
7121 HAVE_CARBON is defined.
7122
71232002-07-31 Richard M. Stallman <rms@gnu.org>
7124
7125 * xmenu.c (set_frame_menubar): First parse all submenus,
7126 then make widget_value trees from them.
7127 Don't allocate any widget_value objects
7128 until we are done with the parsing.
7129 (parse_single_submenu): New function.
7130 (digest_single_submenu): New function.
7131 (single_submenu): Function deleted, replaced by those two.
7132
71332002-07-30 Juanma Barranquero <lektu@terra.es>
7134
7135 * w32proc.c (syms_of_ntproc): Fix docstring of
7136 `w32-get-true-file-attributes'.
7137
71382002-07-28 Richard M. Stallman <rms@gnu.org>
7139
7140 * s/hpux8.h (HPUX8): Define this before including hpux.h.
7141 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
7142
7143 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
7144
7145 * keyboard.c (make_lispy_event):
7146 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
7147 Explicitly clear up_modifier in event->modifiers.
7148
71492002-07-27 Richard M. Stallman <rms@gnu.org>
7150
7151 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
7152
7153 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
7154 for bar cursor.
7155
71562002-07-26 Kenichi Handa <handa@etl.go.jp>
7157
7158 * coding.c (detect_coding_iso2022): While checking a byte sequence
7159 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
7160 it in the normal loop.
7161
71622002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
7163
7164 * xterm.c (expose_overlaps): New function.
7165 (expose_window): Use it to fix the display of overlapping rows.
7166
7167 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
7168
71692002-07-23 Ken Raeburn <raeburn@gnu.org>
7170
7171 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
7172 since it only depends on XUINT.
7173
7174 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
7175 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
7176 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
7177 Macros deleted.
3947677c 7178
77d1daf2
AS
7179 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
7180 its value over other approaches.
7181 * sysdep.c (start_of_data): Don't define the function if a macro
7182 form has been defined.
8a8e19a3 7183
048addec
JD
71842002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
7185
7186 * xdisp.c (redisplay_updating_p): New variable.
7187 (init_iterator): Don't free realized faces when
7188 redisplay_updating_p is set.
7189 (redisplay_internal): Set redisplay_updating_p while updating
7190 the display.
7191
71922002-07-23 Richard M. Stallman <rms@gnu.org>
7193
7194 * editfns.c (Fmessage): Treat "" like nil.
7195
71962002-07-23 Kenichi Handa <handa@etl.go.jp>
7197
7198 * xdisp.c (face_before_or_after_it_pos):
7199 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
7200
72012002-07-22 Juanma Barranquero <lektu@terra.es>
7202
7203 * callproc.c (init_callproc) [DOS_NT]:
7204 Initialize Vshared_game_score_directory to nil.
7205 (syms_of_callproc) [DOS_NT]: Likewise.
7206
72072002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
7208
7209 * xdisp.c (display_line): Replace an abort with xassert.
7210
72112002-07-21 Richard M. Stallman <rms@gnu.org>
7212
7213 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
7214 and END_UNCHANGED when setting buffer_unchanged_p.
7215 Use current_matrix_up_to_date_p to decide whether to use
7216 try_cursor_movement.
7217
7218 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
7219
7220 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
7221
7222 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
7223 Set to nil if dir does not exist.
7224 (syms_of_callproc): Init unconditionally and simply.
7225
7226 * buffer.c (Fbuffer_list): Doc fix.
7227
72282002-07-21 Ken Raeburn <raeburn@gnu.org>
7229
7230 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
7231
7232 * buffer.c (mmap_realloc): When shrinking, make sure number of
7233 pages to unmap is rounded towards zero.
7234
7235 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
7236 (XSETINT): Deleted.
7237
7238 * m/att3b.h (XINT): Don't define.
7239 (VALBITS, VALMASK, XTYPE): Deleted.
7240 (DATA_SEG_BITS): Define.
7241 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
7242 ARRAY_MARK_FLAG): Deleted.
7243 (DATA_SEG_BITS): Define.
7244 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
7245 (DATA_SEG_BITS): Define.
7246
72472002-07-20 Richard M. Stallman <rms@gnu.org>
7248
7249 * print.c (print_error_message): New args CONTEXT and CALLER.
7250 Calls changed.
7251
7252 * lisp.h (print_error_message): Declare new args.
7253
7254 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
7255 and CONTEXT to print_error_message, don't print them here.
7256 For a Quit, don't use Vsignaling_function.
7257 Call message_log_maybe_newline.
7258
7259 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
7260
72612002-07-20 Kim F. Storm <storm@cua.dk>
7262
7263 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
7264
72652002-07-19 Ken Raeburn <raeburn@gnu.org>
7266
7267 * bytecode.c (struct byte_stack): Pointers into byte string now
7268 point to const.
7269 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
7270 const.
7271 * charset.h (BCOPY_SHORT): Source pointer now points to const.
7272 * coding.c (encode_eol, detect_coding, detect_eol):
7273 (decode_coding, encode_coding, detect_coding_system):
7274 Source strings now treated as const.
7275 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
7276 modify Lisp string contents.
7277 * coding.h (decode_coding, encode_coding, detect_coding,
7278 detect_eol): Declarations updated.
7279 * composite.c (compose_chars_in_text): Treat Lisp string contents
7280 as const.
7281 * dispnew.c (safe_bcopy): Source pointer now points to const.
7282 * lisp.h (STRING_COPYIN): New macro.
7283 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
7284 (internal_with_output_to_temp_buffer): Declarations updated.
7285 * print.c (temp_output_buffer_setup):
7286 (internal_with_output_to_temp_buffer): Buffer name argument is now
7287 pointer to const.
7288 * sound.c (struct sound_device): Function pointer field "write"
7289 buffer argument now points to const.
7290 (vox_write): Buffer argument points to const.
7291 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
7292 contents as const.
7293 * sysdep.c (emacs_write): Buffer pointer now const.
7294 * term.c (encode_terminal_code): Buffer pointer now const.
7295 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
7296 (x_face_list_fonts, x_update_menu_appearance):
7297 (hash_string_case_insensitive): Treat Lisp string contents as const.
7298
72992002-07-19 Juanma Barranquero <lektu@terra.es>
7300
7301 * fileio.c (Ffile_name_as_directory): Fix argument name in docstring.
7302 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
7303
7304 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
7305
7306 * fileio.c (syms_of_fileio): Likewise.
7307
73082002-07-18 Richard M. Stallman <rms@gnu.org>
7309
7310 * data.c (Fdefalias): Doc fix.
7311
73122002-07-17 Dave Love <fx@gnu.org>
7313
7314 * intervals.h (text_property_stickiness): Use P_.
7315
7316 * ccl.c: Remove `emacs' conditionals.
7317 (ccl_backtrace_table): Fix size spec.
7318 (ccl_driver): Fix type errors.
7319
73202002-07-16 Ken Raeburn <raeburn@gnu.org>
7321
7322 * alloc.c (xstrdup, make_string, make_unibyte_string)
7323 (make_multibyte_string, build_string): String pointer args now
7324 point to const.
7325 * charset.c (find_charset_in_text, c_string_width):
7326 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
7327 * fileio.c (report_file_error):
7328 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
7329 (count_combining_before, count_combining_after, insert_1_both):
7330 (insert, insert_and_inherit, insert_string):
7331 (insert_before_markers, insert_before_markers_and_inherit):
7332 * lread.c (intern, oblookup, hash_string):
7333 * minibuf.c (temp_echo_area_glyphs):
7334 * search.c (fast_c_string_match_ignore_case):
7335 * sysdep.c (emacs_open, set_file_times):
7336 * xfaces.c (xstricmp):
7337 * xdisp.c (store_frame_title, string_char_and_length):
7338 (message_dolog, message2, message2_nolog, set_message): Likewise.
7339 (set_message_1): Cast message string argument to const pointer.
7340 * editfns.c (general_insert_function): Insertion function now
7341 takes pointer to const for input data.
7342 * charset.h (find_charset_in_text, c_string_width):
7343 (parse_str_as_multibyte): Declarations updated.
7344 * dispextern.h (xstricmp): Declaration updated.
7345 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
7346 (count_size_as_multibyte, count_combining_before):
7347 (count_combining_after, insert_1, insert_1_both, message_dolog):
7348 (insert, insert_and_inherit, insert_before_markers)
7349 (insert_before_markers_and_inherit, set_message, message2):
7350 (message2_dolog, build_string, make_string, make_unibyte_string):
7351 (make_multibyte_string, intern, oblookup, report_file_error):
7352 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
7353 (emacs_open, xstrdup): Declarations updated.
7354 * systime.h (set_file_times): Declaration updated.
7355
7356 * charset.c (find_charset_in_text, lisp_string_width): Use const
7357 for pointer to lisp string data.
7358 * charset.h (FETCH_STRING_CHAR_ADVANCE):
7359 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
7360 * coding.c (Ffind_coding_systems_region_interval):
7361 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
7362 (Fmake_directory_internal, Fdelete_directory):
7363 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
7364 * fontset.c (font_family_registry, fs_query_fontset):
7365 (list_fontsets):
7366 * frame.c (Fframe_parameter):
7367 * keyboard.c (cmd_error_internal):
7368 * keymap.c (Fdescribe_buffer_bindings):
7369 * lread.c (complete_filename_p, openp):
7370 * minibuf.c (Fminibuffer_complete_word):
7371 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
7372 (face_before_or_after_it_pos, next_element_from_string):
7373 (get_overlay_arrow_glyph_row, display_mode_element):
7374 (decode_mode_spec_coding):
7375 * xterm.c (same_x_server): Likewise.
7376
7377 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
7378 settings of non-existent fields.
7379
7380 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
7381 copy a lisp value.
7382
7383 * lread.c (Fintern_soft): Use string macros instead of
7384 Lisp_String fields.
7385 * keyboard.c (echo_char, parse_modifiers_uncached):
7386 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
7387 * textprop.c (validate_interval_range, interval_of): Likewise.
7388
7389 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
7390
7391 * charset.h (FETCH_STRING_CHAR_ADVANCE)
7392 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
7393 XSTRING()->size_byte.
7394
7395 * lisp.h (SDATA, SREF): Produce rvalue.
7396 (SSET): New macro.
7397 * alloc.c (make_event_array): Use SSET for storing into a string.
7398 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
7399 a string.
7400 * casefiddle.c (casify_object): Use SSET.
7401 * charset.h (FETCH_STRING_CHAR_ADVANCE)
7402 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
7403 address of string contents.
7404 * data.c (Faref): Use SDATA.
7405 (Faset): Use SDATA, SSET.
7406 * dired.c (directory_files_internal): Use SSET.
7407 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
7408 (Fread_file_name): Use SREF, SSET.
7409 * fns.c (concat): Use SSET.
7410 (concat, Fdelete): Use SDATA.
7411 * insdel.c (insert_from_string_1): Use SDATA.
7412 * keyboard.c (Fevent_convert_list): Use SREF.
7413 * lread.c (Fload): Use SDATA, SSET.
7414 * macfns.c (validate_x_resource_name): Use SSET.
7415 * process.c (status_message): Use SSET.
7416 * search.c (wordify): Use SDATA.
7417 (Freplace_match): Use SREF.
7418 * w32fns.c (validate_x_resource_name): Use SSET.
7419 * xfns.c (validate_x_resource_name): Use SSET.
7420 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
7421
74222002-07-16 Richard M. Stallman <rms@gnu.org>
7423
7424 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
7425
7426 * xdisp.c (reconsider_clip_changes):
7427 Don't test prevent_redisplay_optimizations_p.
7428 (redisplay_internal): Test prevent_redisplay_optimizations_p
7429 along with clip_changed in some cases.
7430 (try_window_id): Likewise.
7431 (redisplay_window): New local var buffer_unchanged_p.
7432
7433 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
7434
7435 * process.c (create_process): Test USG_SUBTTY_WORKS.
7436 (process_send_signal): Clean up handling of GID.
7437 Detect errors in ioctls meant to set GID.
7438
7439 * window.c (temp_output_buffer_show):
7440 Don't set prevent_redisplay_optimizations_p.
7441
74422002-07-15 Juanma Barranquero <lektu@terra.es>
7443
7444 * eval.c (Fdefvaralias): Add docstring argument.
7445
74462002-07-15 Ken Raeburn <raeburn@gnu.org>
7447
7448 * lisp.h (STRING_INTERVALS): Produce rvalue.
7449 (STRING_SET_INTERVALS): New macro.
7450 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
7451 * fns.c (Fstring_as_multibyte): Likewise.
7452 * intervals.c (balance_possible_root_interval, delete_interval)
7453 (create_root_interval, copy_intervals_to_string): Likewise.
7454 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
7455 instead of 0.
7456
74572002-07-14 Ken Raeburn <raeburn@gnu.org>
7458
7459 * lisp.h (STRING_SET_CHARS): New macro.
7460 (SCHARS, SBYTES): Produce rvalues.
7461 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
7462 * fns.c (concat): Likewise.
7463 * lread.c (read_vector): Likewise.
7464
7465 * lisp.h (SMBP): Deleted. All uses changed to STRING_MULTIBYTE.
7466 (STRING_SET_UNIBYTE): New macro.
7467 (SET_STRING_BYTES): Deleted. Callers (all of which supplied a
7468 length of -1) changed to use STRING_SET_UNIBYTE.
7469 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
7470 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
7471 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
7472 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
7473 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
7474 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
7475 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
7476 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
7477 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
7478 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
7479 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
7480 STRING_BYTES or indirection changed to SCHARS, SBYTES,
7481 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
7482 unchanged for now.
7483
74842002-07-13 Kim F. Storm <storm@cua.dk>
7485
7486 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
7487
74882002-07-12 Richard M. Stallman <rms@gnu.org>
7489
7490 * fileio.c (Fwrite_region): Doc fix.
7491
7492 * print.c (print_error_message): Don't handle Vsignaling_function here.
7493
7494 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
7495 (command_loop_1): Avoid certain actions after memory-full error.
7496
7497 * eval.c (Fsignal): Don't call cancel_hourglass.
7498 For a memory-full error, don't call Vsignal_hook_function
7499 and don't set Vsignaling_function.
7500
7501 * process.c (process_send_signal): Add abort call.
7502
75032002-07-11 Markus Rost <rost@math.ohio-state.edu>
7504
7505 * keymap.c (Fkey_binding): Fix typo.
7506
75072002-07-11 Richard M. Stallman <rms@gnu.org>
7508
7509 * alloc.c (Vmemory_full): New variable.
7510 (Vmemory_signal_data): Renamed from memory_signal_data.
7511 Uses changed.
7512 (syms_of_alloc): Defvar them.
7513 (memory_full, buffer_memory_full): Set Vmemory_full.
7514
7515 * lisp.h (Vmemory_full): Add declaration.
7516 (current_column, indented_beyond_p): Change declaration.
7517
7518 * indent.c (last_known_column): Declare as double, not float.
7519 (current_column, current_column_1, string_display_width)
7520 (position_indentation): Return `double'.
7521 (indented_beyond_p): Arg `column' is `double'. Callers changed.
7522
7523 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
7524 (back_to_previous_visible_line_start)
7525 (reseat_at_next_visible_line_start, next_element_from_buffer):
7526 Use `double', not `float', when calling indented_beyond_p.
7527
7528 * s/hpux11.h (BROKEN_SA_RESTART): Defined.
7529
7530 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
7531
75322002-07-11 Juanma Barranquero <lektu@terra.es>
7533
7534 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
7535 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
7536 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
7537 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
7538 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
7539 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
7540
75412002-07-10 Juanma Barranquero <lektu@terra.es>
7542
7543 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE. All callers
7544 changed.
7545
75462002-07-09 Stefan Monnier <monnier@cs.yale.edu>
7547
7548 * data.c (Fdefalias): Add an optional `docstring' argument.
7549 (set_internal, Fsetq_default): Use XCAR/XCDR.
7550
7551 * composite.c (HASH_VALUE, HASH_KEY):
7552 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
7553
75542002-07-09 Kenichi Handa <handa@etl.go.jp>
7555
7556 * callproc.c (Fcall_process): Fix previous change.
7557
75582002-07-07 Stefan Monnier <monnier@cs.yale.edu>
7559
7560 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
7561 Add support for hash-tables.
7562 (Ftry_completion): Return t even if the string appears multiple times.
7563
7564 * fns.c (Fnconc): Use XCDR.
7565 (Fprovide): Use CONSP and XCDR.
7566 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
7567 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
7568 (Fmake_hash_table): Accept `:size nil'.
7569 (Fmakehash): Delete: moved to subr.el.
7570 (syms_of_fns): Don't defsubr makehash.
7571
7572 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
7573 (HASH_TABLE_SIZE): Move from fns.c.
7574
75752002-07-07 Richard M. Stallman <rms@gnu.org>
7576
7577 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
7578 Instead just return 0 when there is something to be done.
7579 (try_scrolling): If make_cursor_line_fully_visible returns 0,
7580 retry scrolling as if cursor were off the bottom.
7581 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
7582 return CURSOR_MOVEMENT_MUST_SCROLL.
7583 (redisplay_window): If make_cursor_line_fully_visible returns 0,
7584 go to try_to_scroll.
7585
7586 * buffer.c (Fbuffer_local_value): Store current value into its binding
7587 so we get the up-to-date value for the binding that is loaded.
7588
7589 * eval.c (Fdefmacro): Doc fix.
7590
75912002-07-05 Dave Love <fx@gnu.org>
7592
7593 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
7594 correctly.
7595
7596 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
7597 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
7598 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
7599 CCL_LookupCharConstTbl.
7600 (syms_of_ccl): Defvar translation-hash-table-vector.
7601
76022002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7603
7604 * xdisp.c: Remove unused variable `face'.
7605
76062002-07-04 Juanma Barranquero <lektu@terra.es>
7607
7608 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
7609 obsolescence information.
7610
76112002-07-03 Andrew Choi <akochoi@shaw.ca>
7612
7613 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
7614 pattern. Search cache first.
7615 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
7616 for Japanese font.
7617 (XLoadQueryFont): Use it.
7618
76192002-07-02 Richard M. Stallman <rms@gnu.org>
7620
7621 * keymap.c (Fdefine_key): Doc fix.
7622
7623 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
7624
76252002-07-02 Juanma Barranquero <lektu@terra.es>
7626
7627 * keymap.c (syms_of_keymap): Fix typo.
7628
76292002-07-01 Andrew Choi <akochoi@shaw.ca>
7630
7631 * s/darwin.h: Define POSIX_SIGNALS.
7632
7633 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
7634 and FSRefMakePath to convert FSSpec returned with Apple Event to
7635 Posix pathname.
7636 (mac_initialize) [TARGET_API_MAC_CARBON]:
7637 Call init_required_apple_events and disable the `Quit' menu item
7638 provided automatically by the Carbon Toolbox.
7639
76402002-07-01 Dave Love <fx@gnu.org>
7641
7642 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
7643 for K&R.
7644
7645 * xterm.c: Fix prototype for K&R.
7646
7647 * term.c (costs_set): Declare static, non-initialized for pcc.
7648
76492002-07-01 Richard M. Stallman <rms@gnu.org>
7650
7651 * keyboard.c (timer_last_idleness_start_time): New variable.
7652 (timer_start_idle): Set that.
7653 (read_key_sequence): Use that to reset timer_idleness_start_time
7654 to previous value.
7655
7656 * window.c (Frecenter): With arg, set optional_new_start.
7657
7658 * xdisp.c (redisplay_internal): Make optional_new_start really work.
7659
7660 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
7661 buffer for completion.
7662
76632002-06-29 Ken Raeburn <raeburn@gnu.org>
7664
7665 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
7666
76672002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7668
7669 * keyboard.c (readable_filtered_events): New function that filters
7670 FOCUS_IN_EVENT depending on parameter.
7671 (readable_events): Calls readable_filtered_events, not filtering
7672 FOCUS_IN_EVENT.
7673 (get_filtered_input_pending): New function, filtering parameter passed
7674 to readable_filtered_events.
7675 (get_input_pending): Calls get_filtered_input_pending, not filtering
7676 FOCUS_IN_EVENT.
7677 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
7678 FOCUS_IN_EVENT.
7679
7680 * xterm.h (struct x_output): Add focus_state.
7681
7682 * xterm.c (x_focus_changed): New function.
7683 (x_detect_focus_change): New function.
7684 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
7685 EnterNotify and LeaveNotify to track X focus changes.
7686
76872002-06-28 Andreas Schwab <schwab@suse.de>
7688
7689 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
7690
76912002-06-27 Kim F. Storm <storm@cua.dk>
7692
7693 * xdisp.c: (mode_line_string_list, mode_line_string_face)
7694 (mode_line_string_face_prop): New variables.
7695 (store_mode_line_string): New function.
7696 (display_mode_element): Use store_mode_line_string to
7697 add mode-line string elements to mode_line_string_list
7698 when mode_line_string_list is non-nil.
7699 (Fformat_mode_line): Now returns propertized string by
7700 default. New arg NO-PROPS to ignore properties.
7701 (decode_mode_spec): Only add two dashes for %- in propertized
7702 mode-line string.
7703 (syms_of_xdisp): Init and staticpro mode_line_string_list.
7704
77052002-06-27 Stefan Monnier <monnier@cs.yale.edu>
7706
7707 * minibuf.c (minibuffer_completion_contents): Add return type.
7708
77092002-06-27 Juanma Barranquero <lektu@terra.es>
7710
7711 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
7712
77132002-06-26 Juanma Barranquero <lektu@terra.es>
7714
7715 * fileio.c (read_file_name_cleanup): Add missing return.
7716
77172002-06-26 Richard M. Stallman <rms@gnu.org>
7718
7719 * window.c (Frecenter): Don't set force_start flag.
7720
7721 * minibuf.c (do_completion, Fminibuffer_complete_word)
7722 (Fminibuffer_completion_help): Complete just the text before point.
7723 (minibuffer_completion_contents): New function.
7724
7725 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
7726
7727 * frame.c (frames_bury_buffer): Function deleted.
7728
77292002-06-25 Miles Bader <miles@gnu.org>
7730
7731 * callint.c (Fcall_interactively): When checking to see if doprnt hit
7732 the end of callint_message, allow for a terminating '\0'.
7733
77342002-06-24 Juanma Barranquero <lektu@terra.es>
7735
7736 * w32select.c: Include composite.h
7737
7738 * w16select.c: Likewise.
7739
77402002-06-24 Kenichi Handa <handa@etl.go.jp>
7741
7742 * callproc.c (Fcall_process): If code detection is necessary,
7743 call detect_coding directly here.
7744
7745 * coding.c (detect_eol): Preserve coding->cmp_data.
7746
7747 * w16select.c (Fw16_get_clipboard_data):
7748 * w32fns.c (w32_to_x_font):
7749 * w32select.c (Fw32_get_clipboard_data):
7750 * xselect.c (selection_data_to_lisp_data):
7751 * xterm.c (XTread_socket): Disable composition handling.
7752
77532002-06-24 Stefan Monnier <monnier@cs.yale.edu>
7754
7755 * print.c (temp_output_buffer_setup): Kill all local variables.
7756
77572002-06-22 Stefan Monnier <monnier@cs.yale.edu>
7758
7759 * lread.c (Fread): Remove redundant and imprecise declaration.
7760
7761 * xfns.c (check_x_display_info): Use check_x_frame.
7762
7763 * .gdbinit (xprintsym): Use the new `xname' field.
7764 (xsymbol): Use it.
7765
77662002-06-22 Jason Rumney <jasonr@gnu.org>
7767
7768 * w32fns.c (file_dialog_callback): New function.
7769 (Fx_file_dialog): Allow selecting directories as well as files.
7770
77712002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7772
7773 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
7774 OpenBSD. Add support for mipseb-*-netbsd* machines.
7775
77762002-06-17 Andrew Choi <akochoi@shaw.ca>
7777
7778 * macterm.c (mac_scroll_area): Set foreground and backcolor to
7779 black and white before scrolling. Restore frame background and
7780 foreground color after scrolling.
7781 (do_window_update): Call XClearWindow before calling expose_frame.
7782 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
7783 FRAME_FOREGROUND_PIXEL of frame.
7784
7785 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
7786 test Mac command key as <ALT> key.
7787
77882002-06-17 Stefan Monnier <monnier@cs.yale.edu>
7789
7790 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
7791
7792 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
7793 Lookup keys in function-key-map immediately so that key-translation-map
7794 can be applied earlier.
7795 Remove function_key_possible and key_translation_possible, replaced
7796 by checking `keytran_start < t'.
7797
7798 * .gdbinit (xsymbol): Use the new `xname' field.
7799
78002002-06-17 Andrew Choi <akochoi@shaw.ca>
7801
7802 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
7803 test Mac command key as <ALT> key.
7804
7805 * mac.c (do_applescript): Call initialize_applescript if necessary
7806 when first called. Dispose of result_desc only when there is no error.
7807 (Fdo_applescript): Use %d format specifier instead of %ld.
7808
78092002-06-16 Andrew Choi <akochoi@shaw.ca>
7810
7811 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
7812 of FrontWindow for cases keyDown and autoKey.
7813
7814 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
7815 Vdefault_fontset to Monaco with mac-roman coding.
7816
7817 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
7818 init_process before and after inclusion of Carbon/Carbon.h, resp.
7819
7820 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
7821 cursor_gc.
7822 (add_font_name_table_entry): New function.
7823 (init_font_name_table): Use add_font_name_table_entry; add italic,
7824 bold, and bold-italic entries for truetype fonts.
7825
7826 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
7827 for Mac too.
7828 (try_font_list) [MAC_OS]: If no font matches given registry, try
7829 fonts with any registry matching face_family.
7830 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
7831
7832 * s/darwin.h: If autoconf detects the Ncurses library, define
7833 LIBS_TERMCAP to -lncurses to use it.
7834
78352002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
7836
7837 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
7838
78392002-06-15 Richard M. Stallman <rms@gnu.org>
7840
7841 * window.c (Fset_window_configuration): Explicitly preserve
7842 the point value that new_current_buffer had at the start.
7843
78442002-06-14 Juanma Barranquero <lektu@terra.es>
7845
7846 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
7847 Fix typos.
7848
78492002-06-14 Kim F. Storm <storm@cua.dk>
7850
7851 * insdel.c (insert_1_both, insert_from_string_1)
7852 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
7853 insert happened in the end_unchanged region. Otherwise, the
7854 redisplay may be confused and duplicate the last line in the
7855 buffer [seen after save-buffer when require-final-newline==t].
7856
78572002-06-13 Jason Rumney <jasonr@gnu.org>
7858
7859 * w32.c (init_environment): Remove EMACSLOCKDIR.
7860 (stat): Swap _S_IFDIR and _S_IFREG.
7861
78622002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7863
7864 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
7865 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
7866 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
7867 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
7868 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
7869 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
7870 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
7871 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
7872 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
7873 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
7874 SELECTION_REQUEST_EVENT, selection_clear_event to
7875 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
7876 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
7877 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
7878 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
7879 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
7880 no_event to NO_EVENT.
7881
78822002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7883
7884 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
7885
78862002-06-12 Stefan Monnier <monnier@cs.yale.edu>
7887
7888 * intervals.c (textget): Don't forget to `return'.
7889 (lookup_char_property): Use XCAR/XCDR.
7890
78912002-06-12 Juanma Barranquero <lektu@terra.es>
7892
7893 * xdisp.c (Fformat_mode_line): Fix typo.
7894
78952002-06-12 Kim F. Storm <storm@cua.dk>
7896
7897 * xdisp.c (Fformat_mode_line): New function.
7898 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
7899 (store_frame_title_char, store_frame_title): Use unconditionally.
7900 (init_xdisp): Defsubr Fformat_mode_line.
7901 Initialize frame_title_buf etc. unconditionally.
7902
79032002-06-11 Stefan Monnier <monnier@cs.yale.edu>
7904
7905 * keyboard.c (read_key_sequence):
7906 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
7907 things through those maps after downcasing events.
7908 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
7909 applies after function-key-map.
7910 Make sure that keytran can be done in the middle in the sequence.
7911 Be careful not to throw away events past the one we downcase.
7912
7913 * lread.c (read_integer): Remove unused var `tem'.
7914 (read1): Fix int/Lisp_Object mixup.
7915
7916 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
7917
79182002-06-11 Richard M. Stallman <rms@gnu.org>
7919
7920 * keyboard.c (readable_events): Ignore any number of
7921 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
7922
79232002-06-09 Miles Bader <miles@gnu.org>
7924
7925 * xfaces.c (Ftty_supports_face_attributes_p): New function.
7926 (parse_rgb_list, tty_lookup_color): New functions.
7927 (tty_defined_color): Use `tty_lookup_color' to do all the work.
7928 (color_distance, Fcolor_distance): New functions.
7929 (TTY_SAME_COLOR_THRESHOLD): New macro.
7930 (Qtty_color_standard_values): New variable.
7931 (syms_of_xfaces): Initialize new vars & functions.
7932
79332002-06-08 Colin Walters <walters@verbum.org>
7934
7935 * textprop.c (Vchar_property_alias_alist): New variable.
7936 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
7937
7938 * intervals.c (lookup_char_property): New function for looking up
7939 overlay and text properties, created from textget.
7940 (textget): Use it.
7941
7942 * intervals.h (lookup_char_property): Declare.
7943 (Vchar_property_alias_alist): Declare.
7944
7945 * buffer.c (Foverlay_get): Use lookup_char_property.
7946
79472002-06-07 Sam Steingold <sds@gnu.org>
7948
7949 * xselect.c (lisp_data_to_selection_data): Fix last change:
7950 *data_ret is not a Lisp string, while unibyte_string is.
7951
79522002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
7953
7954 * xselect.c (lisp_data_to_selection_data): Fix last change:
7955 set size_ret.
7956
79572002-06-07 Andreas Schwab <schwab@suse.de>
7958
7959 * m/amdx86-64.h: New file.
7960
79612002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
7962
7963 * fns.c (Fstring_make_unibyte): Doc fix.
7964
7965 * xselect.c (lisp_data_to_selection_data): If the requested type
7966 is STRING, call string_make_unibyte to encode the selected text
7967 as a string.
7968
7969 * window.c (Fset_window_hscroll): Doc fix.
7970
79712002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7972
7973 * fileio.c (choose_write_coding_system):
7974 Call select-safe-coding-system properly.
7975
79762002-06-03 Richard M. Stallman <rms@gnu.org>
7977
7978 * xdisp.c (message_with_string): Error if STRING is not a string.
7979
7980 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
7981
7982 * fileio.c (choose_write_coding_system): Pass FILE arg to
7983 Vselect_safe_coding_system_function.
7984
79852002-06-03 Ken Raeburn <raeburn@gnu.org>
7986
7987 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
7988
79892002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
7990
7991 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
7992 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
7993 * keymap.c (describe_command): Likewise.
7994 * minibuf.c (read_minibuf): Likewise.
7995
7996 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
7997 Cast `current_column' return value to int.
7998 (back_to_previous_visible_line_start)
7999 (reseat_at_next_visible_line_start, next_element_from_buffer):
8000 Cast `indented_beyond_p' 3rd arg to float.
8001
8002 * indent.c (last_known_column): Now a float.
8003 (current_column_1, position_indentation, current_column)
8004 (string_display_width): Return float.
8005 (Fcurrent_column): Cast `current_column' return value to int.
8006 (Fcurrent_indentation): Cast `position_indentation' retval to int.
8007 (indented_beyond_p): Third arg now a float.
8008 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
8009
8010 * lisp.h (current_column): Now returns float.
8011 (indented_beyond_p): 3rd arg now a float.
8012
80132002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
8014
8015 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
8016 is Qcompound_text_with_extensions.
8017
8018 * xselect.c (lisp_data_to_selection_data): Always set selection
8019 type as string if x_encode_text returns streingp non-NULL.
8020
8021 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
8022
80232002-05-30 Richard M. Stallman <rms@gnu.org>
8024
8025 * window.c (Fset_window_configuration): Correct the handling
8026 of point in current buffer, to work with multiple windows.
8027
80282002-05-29 Colin Walters <walters@verbum.org>
8029
8030 * lread.c (Fread_from_string): Don't depend on order of evaluation
8031 for C function parameters.
8032
80332002-05-28 Richard M. Stallman <rms@gnu.org>
8034
8035 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
8036 way for blinked-off state and for a nonselected window.
8037
8038 * window.c (window_scroll_pixel_based): Don't call Fbolp;
8039 instead, see if the new start pos is at beginning of line.
8040
8041 * fileio.c (Fwrite_region): If START is a string, don't
8042 make any annotations.
8043
8044 * eval.c (syms_of_eval): Doc fix.
8045
80462002-05-28 Colin Walters <walters@debian.org>
8047
8048 * emacs.c (USAGE1): Add --no-splash.
8049 (standard_args): Ditto.
8050
80512002-05-28 Colin Walters <walters@gnu.org>
8052
8053 * lread.c (readchar_count): New variable.
8054 (readchar): Increment it.
8055 (unreadchar): Decrement it.
8056 (read_multibyte): Decrement it.
8057 (Vread_with_symbol_positions): New variable.
8058 (Vread_symbol_positions_list): New variable.
8059 (read_internal_start): New function, created from Fread and
8060 Fread_from_string. Handle Vread_symbol_positions_list and
8061 Vread_with_symbol_positions.
8062 (readevalloop, Fread, Fread_from_string): Use it.
8063 (read1): Use readchar_count to add symbol positions to
8064 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
8065 (syms_of_lread): DEFVAR_LISP and initialize them.
8066
8067 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
8068 (substitute_object_recurse, substitute_object_in_subtree)
8069 (substitute_in_interval): Prototype.
8070 (read_multibyte): Return c if it's less than zero.
8071
80722002-05-28 Kim F. Storm <storm@cua.dk>
8073
8074 * fileio.c (Fread_file_name_internal): Added brute-force
8075 speed up for using predicate file-directory-p.
8076
80772002-05-28 Kim F. Storm <storm@cua.dk>
8078
8079 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
8080 New variables.
8081 (syms_of_fileio): DEFVAR_LISP them.
8082 (read_file_name_cleanup): New unwind function.
8083 (Fread_file_name_internal): Only return completions satifying
8084 Vread_file_name_predicate. Temporarily unwind protect and rebind
8085 default-directory while checking completions against the predicate.
8086 (Fread_file_name): Added PREDICATE argument. Specbind it to
8087 Vread_file_name_predicate during completion.
8088 Call Vread_file_name_function to read the file name if non-nil.
8089
8090 * lisp.h (Fread_file_name): Now has 6 args.
8091
8092 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
8093 predicate for Fread_file_name when reading directory name.
8094 Supply Qnil for predicate in other calls to Fread_file_name.
8095
80962002-05-26 Miles Bader <miles@gnu.org>
8097
8098 * term.c (tty_capable_p): New function.
8099 * dispextern.h (tty_capable_p): New function declaration.
8100 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
8101 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
8102
81032002-05-23 Stefan Monnier <monnier@cs.yale.edu>
8104
8105 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
8106 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
8107 (Vwrite_region_annotate_functions): Docstring fix.
8108
81092002-05-23 Kim F. Storm <storm@cua.dk>
8110
8111 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
8112 phys_cursor's hpos is overwritten. This is still not completely
8113 correct, as it doesn't really make sense to use hpos at all to
8114 get the cursor glyph (as that is relative to the width of the
8115 characters on the line, which may have changed during the update).
8116
81172002-05-22 Jason Rumney <jasonr@gnu.org>
8118
8119 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
8120 Lisp_Object.
8121 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
8122 Use modified enumfont_t struct.
8123
8124 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
8125
8126 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
8127 Handle the `hbar' cursor type.
8128 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
8129
8130 * w32fns.c (Qhbar): New variable.
8131 (x_specified_cursor_type): Use it.
8132
81332002-05-21 Ken Raeburn <raeburn@gnu.org>
8134
8135 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
8136 now, when the address is needed.
8137
81382002-05-21 Colin Walters <walters@gnu.org>
8139
8140 * Makefile.in (shortlisp): Add font-core.el.
8141
81422002-05-20 Richard M. Stallman <rms@gnu.org>
8143
8144 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
8145
8146 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
8147 equivalent key bindings here.
8148
81492002-05-20 Ken Raeburn <raeburn@gnu.org>
8150
8151 Change symbol structure to contain a lisp object for the symbol
8152 name:
8153 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
8154 object field named "xname".
8155 (SYMBOL_NAME): New macro.
8156 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
8157 name field.
8158 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
8159 (mark_object, gc_sweep): Use symbol xname field and XSTRING
8160 instead of name field.
8161 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
8162 SYMBOL_NAME instead of XSYMBOL and name field.
8163 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
8164 instead of XSYMBOL and name field.
8165 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
8166 and SYMBOL_NAME instead of XSYMBOL and name field.
8167 * coding.c (Fread_coding_system, code_convert_region1)
8168 (code_convert_string1, code_convert_string_norecord)
8169 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
8170 XSYMBOL and name field.
8171 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
8172 (Fmake_variable_buffer_local, Fmake_local_variable)
8173 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
8174 of XSYMBOL and name field.
8175 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
8176 XSYMBOL and name field.
8177 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
8178 instead of XSYMBOL and name field.
8179 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
8180 XSYMBOL and name field.
8181 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
8182 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
8183 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
8184 instead of XSYMBOL and name field.
8185 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
8186 (parse_modifiers, apply_modifiers, Fevent_convert_list)
8187 (parse_solitary_modifier, Fexecute_extended_command):
8188 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
8189 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
8190 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
8191 of XSYMBOL and name field.
8192 (describe_command, describe_translation): Use SYMBOL_NAME and
8193 assignment instead of XSYMBOL and name field and XSETSTRING.
8194 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
8195 instead of XSYMBOL and name field.
8196 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
8197 name field and XSETSTRING.
8198 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
8199 of XSYMBOL and name field.
8200 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
8201 assignment instead of XSYMBOL and name field and XSETSTRING.
8202 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
8203 XSTRING instead of XSYMBOL and name field.
8204 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
8205 and XSTRING instead of XSYMBOL and name field.
8206 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
8207 and XSTRING instead of XSYMBOL and name field.
8208 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
8209 XSTRING instead of XSYMBOL and name field.
8210 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
8211 of XSYMBOL and name field.
8212 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
8213 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
8214
82152002-05-19 Ken Raeburn <raeburn@gnu.org>
8216
8217 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
8218 and XCDR real rvalues in most configurations.
8219
8220 * buffer.c (fix_overlays_in_range, fix_overlays_before):
8221 Don't take the address of the cdr part of a cons cell; instead, track
8222 the parent cell and call XSETCDR, or set the variable for the head
8223 of the list if we haven't started down the list yet.
8224
82252002-05-19 Richard M. Stallman <rms@gnu.org>
8226
8227 * doc.c (reread_doc_file): Don't ask for confirmation.
8228
82292002-05-18 Jason Rumney <jasonr@gnu.org>
8230
8231 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
8232 (xbm_load_image): Use it.
8233 (xbm_load): Ditto.
8234 (xbm_read_bitmap_data): Reverted to xfns.c version.
8235 From David Ponce <david@dponce.com>.
8236
82372002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
8238
8239 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
8240 2.02 and later.
8241
82422002-05-16 Juanma Barranquero <lektu@terra.es>
8243
8244 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
8245
82462002-05-15 Stefan Monnier <monnier@cs.yale.edu>
8247
8248 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
8249 meaningful test.
8250 (read_char_minibuf_menu_prompt): Fix typo.
8251
82522002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
8253
8254 * eval.c (Fcommandp): Doc fix.
8255
82562002-05-13 Stefan Monnier <monnier@cs.yale.edu>
8257
8258 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
8259 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
8260 (Fset_keymap_parent): Gcpro a bit more.
8261 (access_keymap): Gcpro around meta_map call and around the main loop.
8262 (get_keyelt): Gcpro when following indirect references.
8263 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
8264 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
8265 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
8266 Remove useless ad-hoc remap code.
8267
82682002-05-13 Richard M. Stallman <rms@gnu.org>
8269
8270 * search.c (search_buffer): Give up boyer moore search if inverse
8271 translation change charset_base.
8272
82732002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
8274
8275 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
8276 characters is carried over from the previous block of text, adjust
8277 coding->produced to account for the extra character.
8278
82792002-05-11 Andreas Schwab <schwab@suse.de>
8280
8281 * coding.c (intersection): Keep the elements of the returned list
8282 in the same order as in the first list.
8283
82842002-05-11 Kim F. Storm <storm@cua.dk>
8285
8286 * keymap.c (current_minor_maps): Fixed resizing of cmm_maps;
8287 only update cmm_size if realloc actually succeeds.
8288 Testing with initial size of 2 elements revealed that using
8289 realloc on GNU/Linux would cause a random trap in xmalloc
8290 later on, so I rewrote the code to use malloc/bcopy/free instead
8291 of realloc.
8292
82932002-05-10 Jason Rumney <jasonr@gnu.org>
8294
8295 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
8296
82972002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
8298
8299 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
8300 parens, to ensure correct evaluation order.
8301
83022002-05-10 Kim F. Storm <storm@cua.dk>
8303
8304 * keymap.c (Vemulation_mode_map_alists): New variable.
8305 (syms_of_keymap): DEFVAR_LISP it.
8306 (current_minor_maps): Process keymap alists in that list before
8307 minor-mode-overriding-map-alist and minor-mode-map-alist.
8308
83092002-05-09 Richard M. Stallman <rms@gnu.org>
8310
8311 * search.c (Freplace_match): Doc fix.
8312
83132002-05-09 Kim F. Storm <storm@cua.dk>
8314
8315 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
8316 Enlarge cursor rectangle drawn around image with non-zero relief.
8317
8318 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
8319 Enlarge cursor rectangle drawn around image with non-zero relief.
8320
8321 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
8322 Enlarge cursor rectangle drawn around image with non-zero relief.
8323
83242002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
8325
8326 * xselect.c (lisp_data_to_selection_data): Don't set selection
8327 type if comes from the Lisp object's car. If the selection
8328 contains a pure ASCII text, always return QSTRING as its type.
8329
83302002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8331
8332 * mac.c (mac-cut-function): Doc fix.
8333
83342002-05-05 Richard M. Stallman <rms@gnu.org>
8335
8336 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
8337
83382002-05-04 Jason Rumney <jasonr@gnu.org>
8339
8340 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
8341 for event-click-count.
8342
8343 * process.c (init_process): Only add server subfeature if we can
8344 use non-blocking I/O.
8345
83462002-05-04 Andrew Choi <akochoi@shaw.ca>
8347
8348 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
8349 repeatedly.
8350
83512002-05-03 Jason Rumney <jasonr@gnu.org>
8352
8353 * process.c (Fmake_network_process): Only support server sockets
8354 when we can make them non-blocking.
8355
8356 * s/ms-w32.h (HAVE_SELECT): Define.
8357
8358 * w32.h (FILE_NDELAY): New flag.
8359
8360 * w32.c (sys_getpeername, fcntl): New functions.
8361 (_sys_read_ahead): Temporarily block on non-blocking sockets.
8362
8363 * w32proc.c: include sys/file.h.
8364
83652002-05-03 Colin Walters <walters@verbum.org>
8366
8367 * callproc.c (Vgame_score_directory): Renamed to
8368 Vshared_game_score_directory.
8369
83702002-04-30 Richard M. Stallman <rms@gnu.org>
8371
8372 * s/gnu.h [emacs]: Include stdio.h.
8373 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
8374
8375 * eval.c (do_autoload): Error if called while preparing to dump.
8376
8377 * fns.c (Frequire): Error if need to load while preparing to dump.
8378
83792002-04-28 Colin Walters <walters@verbum.org>
8380
8381 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
8382 Default to "~/.emacs.d/games".
8383
83842002-04-29 Stefan Monnier <monnier@cs.yale.edu>
8385
8386 * lread.c (openp): Change arg exec_only to predicate.
8387 (build_load_history): Use XCAR/XCDR.
8388 (Flocate_file_internal): New fun.
8389 (syms_of_lread): Defsubr it.
8390 (Fload): Update call to openp.
8391
8392 * lisp.h (openp): Update prototype.
8393
8394 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
8395 * w32proc.c (sys_spawnve):
8396 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
8397 * w32.c (check_windows_init_file):
8398 * sound.c (Fplay_sound_internal):
8399 * process.c (Fstart_process):
8400 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
8401 * mac.c (run_mac_command):
8402 * emacs.c (init_cmdargs):
8403 * callproc.c (Fcall_process): Update call to openp.
8404
8405 * textprop.c (remove_properties): Don't use XCAR without CONSP.
8406
8407 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
8408
84092002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8410
8411 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
8412 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
8413
84142002-04-28 Richard M. Stallman <rms@gnu.org>
8415
8416 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
8417
8418 * eval.c (Fcommandp): New arg for_call_interactively.
8419 * lisp.h (Fcommandp): Declare new arg.
8420
84212002-04-28 Jason Rumney <jasonr@gnu.org>
8422
8423 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
8424
8425 * w32.c (stat, fstat): Use file index information to generate
8426 inodes for directories where available.
8427
84282002-04-26 Andrew Choi <akochoi@shaw.ca>
8429
8430 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
8431 [HAVE_CARBON]: Include Mac object files.
8432
8433 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
8434 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
8435 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
8436 MAC_OSX, and MAC_OS instead of macintosh.
8437
8438 * editfns.c [MAC_OS8]: Include stdio.h.
8439
8440 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
8441
8442 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
8443 Apple Monaco.
8444
8445 * process.c: Declare QCfamily and QCfilter as extern.
8446 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
8447 calling select.
8448
8449 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
8450
8451 * tparam.c [MAC_OSX]: Don't define BC and UP.
8452
8453 * config.in [HAVE_CARBON]: Add.
8454
8455 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
8456 Move here from mac/src and mac/inc.
8457
8458 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
8459
84602002-04-26 Gerd Moellmann <gerd@gnu.org>
8461
8462 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
8463 Compute phys_cursor_width from the x position returned
8464 by x_draw_glyhs, which is cheaper.
8465 (x_display_and_set_cursor): Compute the buffer-local value
8466 of `cursor-in-non-selected-windows' only when needed.
8467
84682002-04-25 Gerd Moellmann <gerd@gnu.org>
8469
8470 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
8471 cursor on a stretch glyph has a width that depends on
8472 x_stretch_cursor_p.
8473
84742002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8475
8476 * abbrev.c (abbrev-start-location): Doc fix.
8477
8478 * indent.c (Fvertical_motion): Fix last change.
8479
84802002-04-25 Gerd Moellmann <gerd@gnu.org>
8481
8482 * indent.c (Fvertical_motion): Move to the start of the line
8483 containing PT before moving up or down.
8484
84852002-04-24 Gerd Moellmann <gerd@gnu.org>
8486
8487 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
8488 case of writing a whole row, more or less analogous to the case of
8489 writing only parts of a row.
8490
8491 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
8492 0 for NO_CURSOR.
8493
8494 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
8495
84962002-04-23 Colin Walters <walters@verbum.org>
8497
8498 * buffer.c (syms_of_buffer): Doc fix.
8499
85002002-04-23 Gerd Moellmann <gerd@gnu.org>
8501
8502 * xterm.c (notice_overwritten_cursor): Handle the special case
8503 of the cursor being in the first blank non-text line at the
8504 end of a window.
8505
8506 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
8507 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
8508 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
8509 bar cursors only, to make phys_cursor_width contain what its name
8510 suggests.
8511 (notice_overwritten_cursor): Consider the cursor image erased if
8512 the output area intersects the cursor image in y-direction.
8513
85142002-04-23 Simon Marshall <simon@gnu.org>
8515
8516 * xfns.c (x_set_mouse_color): Change default for cross_cursor
8517 to XC_hand2.
8518
85192002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8520
8521 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
8522
85232002-04-22 Kim F. Storm <storm@cua.dk>
8524
8525 * textprop.c (remove_properties): Fixed trap for malformed plist.
8526
85272002-04-22 Richard M. Stallman <rms@gnu.org>
8528
8529 * cmds.c (Fend_of_line): Handle intangible text in mid line.
8530
8531 * window.c (make_window): Initialize height_fixed_p,
8532 last_cursor_off_p, and p->cursor_off_p slots.
8533
85342002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8535
8536 * fns.c (use-dialog-box): Doc fix.
8537
85382002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8539
8540 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
8541 variables `row', `i' and `area'.
8542 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
8543 toolkit library.
8544
85452002-04-19 Stefan Monnier <monnier@cs.yale.edu>
8546
8547 * xfaces.c (clear_font_table): Don't free the default font of
8548 a frame even if it's on another display.
8549 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
8550 that could be Qt.
8551
85522002-04-19 Juanma Barranquero <lektu@terra.es>
8553
8554 * indent.c (Fmove_to_column): Remove unused local variable
8555 `next_boundary_byte'.
8556 (current_column_1): Likewise.
8557
85582002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
8559
8560 * msdos.c (Qhbar): New variable.
8561 (syms_of_msdos): Intern and staticpro it.
8562 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
8563 cursor type.
8564
85652002-04-19 Dave Lambert <dlambert@acm.org>
8566
8567 Theses change implement an underscore-like (`hbar') cursor.
8568
8569 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
8570
8571 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
8572 Handle the `hbar' cursor type.
8573 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
8574
8575 * xfns.c (Qhbar): New variable.
8576 (syms_of_xfns): Intern and staticpro it.
8577 (x_specified_cursor_type): Handle `hbar' cursor.
8578
8579 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
8580 not defined.
8581
85822002-04-18 Richard M. Stallman <rms@gnu.org>
8583
8584 * textprop.c (remove_properties): New arg LIST allows scanning
8585 either a list or a plist.
8586 (interval_has_some_properties_list): New function, like
8587 interval_has_some_properties using list instead of plist.
8588 All callers changed.
8589 (Fremove_list_of_text_properties): New function.
8590 (syms_of_textprop): Defsubr it.
8591
85922002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
8593
8594 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
8595
85962002-04-17 Juanma Barranquero <lektu@terra.es>
8597
8598 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
8599
86002002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
8601
8602 * window.c (coordinates_in_window): Don't report on margin area
8603 if its width is zero.
8604
86052002-04-16 Jason Rumney <jasonr@gnu.org>
8606
8607 * w32fns.c (Fx_file_dialog): Decode file name before using.
8608
8609 * w32term.c (construct_drag_n_drop): Likewise.
8610
86112002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
8612
8613 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
8614 store load-history in pure space.
8615
8616 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
8617
86182002-04-16 Stefan Monnier <monnier@cs.yale.edu>
8619
8620 * xterm.c (Qlatin_1, Qutf_8): New vars.
8621 (syms_of_xterm): Initialize them.
8622 (XTread_socket): Eliminate incorrect optimization that tried to avoid
8623 decoding the output of X*LookupString.
8624 Always use latin-1 to decode the output of XLookupString.
8625 Try Xutf8LookupString if XmbLookupString failed.
8626
8627 * region-cache.c (new_region_cache): Use BEG.
8628
86292002-04-16 Gerd Moellmann <gerd@gnu.org>
8630
8631 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
8632 configuration files.
8633 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
8634 returns 0.
8635
86362002-04-15 Andreas Schwab <schwab@suse.de>
8637
8638 * config.in: Regenerated using autoheader.
8639
8640 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
8641 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
8642 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
8643 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
8644 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
8645 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
8646 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
8647 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
8648 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
8649 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
8650 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
8651 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
8652 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
8653 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
8654 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
8655 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
8656 STACK_DIRECTION, now set by autoconf.
8657
86582002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8659
8660 * dispnew.c (marginal_area_string): Sort arguments.
8661
8662 * dispextern.h (marginal_area_string): Add prototype.
8663
86642002-04-13 Richard M. Stallman <rms@gnu.org>
8665
8666 * fileio.c (Finsert_file_contents):
8667 Don't call temp_output_buffer_setup--do just part, by hand.
8668
8669 * coding.c (run_pre_post_conversion_on_str):
8670 Don't call temp_output_buffer_setup--do just part, by hand.
8671
8672 * keyboard.c (command_loop_1): Don't call start_hourglass
8673 or cancel_hourglass when executing a macro.
8674
8675 * marker.c (count_markers): New function.
8676
8677 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
8678 grow without limit. Move recently used elements to the front.
8679
86802002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
8681
8682 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
8683
86842002-04-12 Gerd Moellmann <gerd@gnu.org>
8685
8686 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
8687 rows marginal areas.
8688 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
8689 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
8690
8691 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
8692
86932002-04-12 Dave Love <fx@gnu.org>
8694
8695 * dispnew.c (marginal_area_string): New.
8696
8697 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
8698 (Qleft_margin, Qright_margin): Declare.
8699 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
8700
8701 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
8702 note_mode_line_highlight and extended.
8703
8704 * keyboard.c (Qleft_margin, Qright_margin): Declare.
8705 (make_lispy_event): Deal with mouse events in margins.
8706
87072002-04-12 Stefan Monnier <monnier@cs.yale.edu>
8708
8709 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
8710
8711 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
8712 than deactivating the mark if tmm is set to `lambda'.
8713 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
8714 Use a single event for HELP_EVENT.
8715 (Fexecute_extended_command): Save last_point_position.
8716
87172002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8718
8719 * lisp.h (Fpropertize): Add prototype.
8720
8721 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
8722
87232002-04-10 Colin Walters <walters@verbum.org>
8724
8725 * config.in: Add HAVE_SHARED_GAME_DIR.
8726
8727 * callproc.c: (Vgame_score_directory): New variable.
8728 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
8729
87302002-04-10 Richard M. Stallman <rms@gnu.org>
8731
8732 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
8733
87342002-04-09 Stefan Monnier <monnier@cs.yale.edu>
8735
8736 * minibuf.c (read_minibuf): Use empty_string.
8737 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
8738 Short-circuit the search as soon as it "failed".
8739 (Fall_completions): Allow lambda forms and lists of strings for alist.
8740 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
8741 when require_match is nil.
8742 (Ftest_completion): Rename from `test_completion' and export to elisp.
8743 Call the predicate also when alist is a list.
8744 Obey Vcompletion_regexp_list.
8745 (do_completion, Fminibuffer_complete_and_exit): Use it.
8746 (Fassoc_string): Rename from `assoc_for_completion'.
8747 Allow list of strings as well and export to elisp.
8748
87492002-04-08 Stefan Monnier <monnier@cs.yale.edu>
8750
8751 * puresize.h (BASE_PURESIZE): Increase to 900KB.
8752
87532002-04-08 Juanma Barranquero <lektu@terra.es>
8754
8755 * w32.c (sys_accept): Don't hide variable `s'.
8756
87572002-04-05 Gerd Moellmann <gerd@gnu.org>
8758
8759 * callint.c (Fcall_interactively): Use INTEGERP instead of
8760 NUMBERP for checking Vhistory_length.
8761
87622002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8763
8764 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
8765 Doc fix to reflect it.
8766
87672002-04-04 Richard M. Stallman <rms@gnu.org>
8768
8769 * xdisp.c (display_mode_element): New arg RISKY.
8770 Disregard text props found or specified within a variable
8771 that isn't marked risky-local-variable.
8772 (Qrisky_local_variable): New variable.
8773 (syms_of_xdisp): Init and staticpro it.
8774
87752002-04-04 Stefan Monnier <monnier@cs.yale.edu>
8776
8777 * undo.c (record_point): New fun.
8778 (record_delete, record_insert): Use it.
8779
87802002-04-03 Juanma Barranquero <lektu@terra.es>
8781
8782 * doc.c (Fdocumentation): Add missing parentheses.
8783 (Fdocumentation_property): Likewise.
8784
87852002-04-03 Stefan Monnier <monnier@cs.yale.edu>
8786
8787 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
8788 data is 0, just return nil.
8789
87902002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
8791
8792 * msdos.c (syms_of_msdos): Fix last change with
8793 mouse_autoselect_window.
8794
87952002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8796
8797 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
8798 mouse_autoselect_window.
8799
88002002-04-02 Stefan Monnier <monnier@cs.yale.edu>
8801
8802 * keyboard.c (make_lispy_event): Handle unknown keysyms together
8803 with system-specific keysyms. Use it also for unknown function keys.
8804
8805 * doc.c (reread_doc_file): Return whether reload was attempted.
8806 (Fdocumentation, Fdocumentation_property): Don't try to reload
8807 if the doc is 0 and only ask once.
8808
8809 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
8810
88112002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
8812
8813 * keyboard.c (read_char): If the event was Qselect_window,
8814 restore timer_idleness_start_time to its previous value.
8815
8816 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
8817
88182002-04-01 Stefan Monnier <monnier@cs.yale.edu>
8819
8820 * region-cache.c (new_region_cache): Use BEG.
8821
8822 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
8823 Use BEG and BEG_BYTE.
8824
8825 * doc.c (get_doc_string): Return nil if the location is wrong.
8826 (reread_doc_file): New fun.
8827 (Fdocumentation, Fdocumentation_property):
8828 Call it if get_doc_string fails.
8829 (Fsnarf_documentation): Make it work for a dumped Emacs.
8830
8831 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
8832 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
8833
8834 * charset.c (Fstring): Allow 0 arguments.
8835
8836 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
8837
8838 * process.c (DATAGRAM_CONN_P, list_processes_1)
8839 (Fprocess_datagram_address, Fset_process_datagram_address)
8840 (Fset_network_process_options, server_accept_connection):
8841 Fix some int/Lisp_Object confusions (thank you union types).
8842
88432002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8844
8845 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
8846
8847 * w32term.c: Likewise.
8848 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
8849
8850 * keyboard.c (Qselect_window): New symbol.
8851 (head_table): Use it.
8852 (keys_of_keyboard): Bound select-window event to handle-select-window.
8853 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
8854
8855 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
8856 (last_window): New variable.
8857 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
8858 (note_mouse_movement): Remove reimplemented code in #if 0.
8859 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
8860 Emacs windows.
8861
8862 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
8863
88642002-03-31 Gerd Moellmann <gerd@gnu.org>
8865
8866 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
8867 Callers changed.
8868
88692002-03-30 Richard M. Stallman <rms@gnu.org>
8870
8871 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
8872 loop whenever it stops making progress.
8873
8874 * widget.c (set_frame_size): Don't call change_frame_size.
8875
88762002-03-30 Gerd Moellmann <gerd@gnu.org>
8877
8878 * dispnew.c (direct_output_for_insert):
8879 Call mark_window_display_accurate.
8880
88812002-03-29 Jason Rumney <jasonr@gnu.org>
8882
8883 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
8884
88852002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
8886
8887 * Makefile.in (lread.o): Depend on coding.h.
8888
8889 * lread.c (openp, Fload): Encode the file name before passing it
8890 to `stat', `access', and `emacs_open'.
8891 (openp): GCPRO the encoded file name. Don't recompute Lisp
8892 strings unnecessarily.
8893
88942002-03-29 Kim F. Storm <storm@cua.dk>
8895
8896 * fns.c (Flax_plist_put): Doc fix.
8897
88982002-03-28 Miles Bader <miles@gnu.org>
8899
8900 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
8901
89022002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8903
8904 * process.c (set-network-process-options): Add usage.
8905 (make-network-process): Doc fix.
8906
89072002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
8908
8909 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
8910
89112002-03-26 Richard M. Stallman <rms@gnu.org>
8912
8913 * fns.c (Fsubstring_no_properties): New function.
8914 (Flax_plist_get, Flax_plist_put): New functions.
8915 (syms_of_fns): defsubr them.
8916
8917 * xdisp.c (update_menu_bar): Test only update_mode_lines;
8918 don't test or alter w->update_mode_line.
8919
8920 * window.c (Fdisplay_buffer): Doc fix.
8921
89222002-03-24 Richard M. Stallman <rms@gnu.org>
8923
8924 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
8925
89262002-03-24 Gerd Moellmann <gerd@gnu.org>
8927
8928 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
8929 (Fdefmacro): Handle `(declare ...)'.
8930 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
8931 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
8932
89332002-03-24 Jason Rumney <jasonr@gnu.org>
8934
8935 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
8936 (xbm_file_p): Add prototypes.
8937 (xbm_format, xbm_image_p): Sync with xfns.c.
8938 (reflect_byte): New function.
8939 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
8940 (xbm_load_image): Create bitmaps with a depth of 1.
8941 (init_xfns): Enable XBM images.
8942
89432002-03-23 Jason Rumney <jasonr@gnu.org>
8944
8945 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
8946 correctly. Do not pass up_modifier to keyboard buffer.
8947
8948 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
8949
89502002-03-22 Stefan Monnier <monnier@cs.yale.edu>
8951
8952 * Makefile.in (bootstrapclean): New target.
8953 (bootstrap-temacs, bootstrap-doc): Remove.
8954 (bootstrap-emacs): Use a bog-standard `temacs'.
8955 Don't bother to build a DOC file.
8956
8957 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
8958
8959 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
8960 in temacs even if !CANNOT_DUMP.
8961 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
8962
8963 * alloc.c (check_pure_size): Only output a warning.
8964
89652002-03-22 Jason Rumney <jasonr@gnu.org>
8966
8967 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
8968 supported.
8969
8970 * w32term.c (zv_bits): Declare as short, for word alignment.
8971 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
8972 (syms_of_w32term): Define x-use-underline-position-properties.
8973
8974 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
8975 (clear_image_cache): Block input, fix logic, clear matrices in
8976 all frames that share this cache.
8977
89782002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
8979
8980 * emacs.c (main): Update the Copyright year in the blurb printed
8981 by "emacs --version".
8982
8983 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
8984
8985 * xterm.c (XTread_socket): If XK_ISO_Lock and
8986 XK_ISO_Last_Group_Lock are defined, handle keysyms between
8987 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
8988
89892002-03-21 Kim F. Storm <storm@cua.dk>
8990
8991 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
8992 menu-bar bindings in keymap and local-map properties _are_ used.
8993 But try keymap property first in accordance with 2002-01-03 patch.
8994 Added comment describing why this is not always reliable.
8995 (tool_bar_items): Ditto for tool-bar.
8996
89972002-03-21 Jason Rumney <jasonr@gnu.org>
8998
8999 * w32fns.c (x_clear_image_1): Disable color table code.
9000
90012002-03-21 Kim F. Storm <storm@cua.dk>
9002
9003 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
9004 removed the wrong version of the DEFUN macro; fixed it.
9005
9006 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
9007 Fmember rather than Fmemq).
9008 (Fprovide): Check that subfeatures is a list.
9009
9010 * process.c (QCfeature, QCdatagram): Removed variables.
9011 (QCtype, Qdatagram): New variables.
9012 (network_process_featurep): Removed function.
9013 (Fmake_network_process): Removed :feature check.
9014 Use :type 'datagram instead of :datagram t to create a datagram
9015 socket. This allows us to add other connection types (e.g. raw
9016 sockets) later in a consistent manner.
9017 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
9018 supported subfeatures for feature make-network-process.
9019 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
9020 Intern and staticpro QCtype and Qdatagram.
9021 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
9022
9023 * xfns.c: (QCtype): Remove duplicate declaration and
9024 initialization (is now declared in process.c).
9025
9026 * w32fns.c: (QCtype): Remove duplicate declaration and
9027 initialization (is now declared in process.c).
9028
90292002-03-21 Richard M. Stallman <rms@gnu.org>
9030
9031 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
9032 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
9033 when jumping to `fail' to avoid undoing reg changes in the
9034 last iteration of the loop.
9035 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
9036
9037 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
9038 Depend on process.h.
9039
90402002-03-20 Jason Rumney <jasonr@gnu.org>
9041
9042 Most of the following changes are still conditional on HAVE_IMAGES
9043 which is not set by default on Windows.
9044
9045 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
9046
9047 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
9048 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
9049 (four_corners_best, x_clear_image_1, x_clear_image)
9050 (x_alloc_image_color, postprocess_image)
9051 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
9052 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
9053 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
9054
9055 * w32gui.h (struct XImage): Define.
9056
9057 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
9058 extract mouse co-ordinates.
9059
90602002-03-20 Jason Rumney <jasonr@gnu.org>
9061
9062 * w32.c (init_winsock): Dynamically load new server and UDP
9063 socket functions.
9064 (socket_to_fd): New function.
9065 (sys_socket): Use it.
9066 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
9067 (sys_recvfrom, sys_sendto): New wrapper functions.
9068
9069 * process.c (QCfamily, QCfilter): Remove duplicate declaration
9070 and initialization.
9071
9072 * makefile.w32-in (LIBS): Remove $(WSOCK32).
9073
90742002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
9075
9076 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
9077 Don't use "sun" as a variable, it's a predefined constant on Sun
9078 machines.
9079
90802002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9081
9082 * bytecode.c (Fbyte_code): Revert last change.
9083
90842002-03-19 Kim F. Storm <storm@cua.dk>
9085
9086 * makefile.w32-in (LIBS): Add $(WSOCK32).
9087 From David Ponce <dponce@voila.fr>.
9088
90892002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9090
9091 * process.c (wait_reading_process_input): Move variables `pname'
9092 and `pnamelen' down where they are used.
9093
9094 * bytecode.c (Fbyte_code): Discard unused computed value to
9095 prevent gcc warning.
9096
9097 * lisp.h (Fplist_member): Add prototype.
9098
90992002-03-18 Kim F. Storm <storm@cua.dk>
9100
9101 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
9102 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
9103
9104 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
9105 Remove explicit GNU_LINUX settings for datagram support.
9106
91072002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9108
9109 * process.c (Fmake_network_process): Remove unused variable `sa'.
9110 Doc fix. Add usage:.
9111 (set_socket_options): Remove unused variables `optnum' and `opttype'.
9112
91132002-03-17 Richard M. Stallman <rms@gnu.org>
9114
9115 * xdisp.c (cursor_type_changed): New variable.
9116 (redisplay_internal): Redisplay all windows if cursor_type_changed.
9117 Clear it when clearing windows_or_buffers_changed.
9118 (try_cursor_movement, redisplay_window, try_window_id)
9119 (try_window_reusing_current_matrix): Test cursor_type_changed
9120 along with windows_or_buffers_changed.
9121
9122 * window.h (cursor_type_changed): New variable.
9123
9124 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
9125 not update_mode_lines, and always set it to 1.
9126
9127 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
9128 if no frames needed redrawing.
9129
91302002-03-17 Kim F. Storm <storm@cua.dk>
9131
9132 The following changes add support for network server processes,
9133 datagram connections, and local (unix) sockets.
9134
9135 * process.h (struct Lisp_Process): New member log.
9136 Doc fix: Member command used to indicate stopped network process.
9137 Doc fix: Member childp contains plist for network process.
9138 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
9139
9140 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
9141 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
9142 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
9143 New variables.
9144 (NETCONN1_P): New macro.
9145 (DATAGRAM_SOCKETS): New conditional symbol.
9146 (datagram_address): New array.
9147 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
9148 (status_message): Use concat3.
9149 (Fprocess_status): Add `listen' status to doc string. Return `stop'
9150 for a stopped network process.
9151 (Fset_process_buffer): Update contact plist for network process.
9152 (Fset_process_filter): Ditto. Don't enable input for stopped
9153 network processes. Server must listen, even if filter is t.
9154 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
9155 New functions.
9156 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
9157 (Fprocess_contact): Added KEY argument. Handle datagrams.
9158 (list_processes_1): Optionally show only processes with the query
9159 on exit flag set. Dynamically adjust column widths. Omit tty
9160 column if not needed. Report stopped network processes.
9161 Identify server and datagram network processes.
9162 (Flist_processes): New optional arg `query-only'.
9163 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
9164 (conv_lisp_to_sockaddr, set_socket_options)
9165 (network_process_featurep, unwind_request_sigio): New helper functions.
9166 (Fprocess_datagram_address, Fset_process_datagram_address):
9167 (Fset_network_process_options): New lisp functions.
9168 (Fopen_network_stream): Removed. Now defined in simple.el.
9169 (Fmake_network_process): New lisp function. Code is based on previous
9170 Fopen_network_stream, but heavily reworked with new property list based
9171 argument list, support for datagrams, server processes, and local
9172 sockets in addition to old client-only functionality.
9173 (server_accept_connection): New function.
9174 (wait_reading_process_input): Use it to handle incoming connects.
9175 Do not enable input on a new connection if process is stopped.
9176 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
9177 (send_process): Handle datagram sockets.
9178 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
9179 network process is indicated by setting command field to t .
9180 (Fprocess_send_eof): No-op if datagram connection.
9181 (Fstatus_notify): Don't read input for a stream server socket or a
9182 stopped network process.
9183 (init_process): Initialize datagram_address array.
9184 (syms_of_process): Intern and staticpro new variables, defsubr new
9185 functions.
9186
91872002-03-16 Jason Rumney <jasonr@gnu.org>
9188
9189 * w32fns.c (w32_to_all_x_charsets): Return correct type in
9190 startup case.
9191
91922002-03-16 Richard M. Stallman <rms@gnu.org>
9193
9194 * xdisp.c (redisplay_internal, redisplay_windows):
9195 Use list_of_error to call internal_condition_case_1.
9196 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
9197 so as to catch all errors with no possibility of debugger redisplay.
9198 (list_of_error): New variable.
9199 (syms_of_xdisp): Init and staticpro it.
9200
9201 * print.c (print_object): Delete `\ ' from printed rep of frame.
9202
92032002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
9204
9205 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
9206 until its implementation is fixed.
9207
92082002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9209
9210 * xfns.c (png_load): Remove unused variable `gamma_str'.
9211
92122002-03-14 Richard M. Stallman <rms@gnu.org>
9213
9214 * xfns.c (x_real_positions): Handle failure in XQueryTree.
9215
92162002-03-14 Miles Bader <miles@gnu.org>
9217
9218 * intervals.c (adjust_for_invis_intang): New function.
9219 (set_point_both): Use `adjust_for_invis_intang' to do most of the
9220 work for dealing with invisible+intangible regions. Do so before
9221 and after both forward and backward movements, to handle both
9222 front-sticky and rear-sticky cases.
9223 * textprop.c (text_property_stickiness): Function moved here from
9224 `editfns.c'.
9225 * intervals.h (text_property_stickiness): New declaration.
9226 * editfns.c (char_property_eq): Function removed.
9227 (text_property_stickiness): Function moved to `textprop.c'.
9228
92292002-03-13 Jason Rumney <jasonr@gnu.org>
9230
9231 * config.in: Add STRFTIME_NO_POSIX2.
9232
9233 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
9234 and %OX when underlying strftime does not.
9235
92362002-03-13 Stefan Monnier <monnier@cs.yale.edu>
9237
9238 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
9239 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
9240 line) to avoid annoying flicker.
9241 (xm_scroll_callback): Get rid of the now unnecessary kludge.
9242 (XTread_socket): Mark it static.
9243
9244 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
9245
92462002-03-13 Kim F. Storm <storm@cua.dk>
9247
9248 * puresize.h (BASE_PURESIZE): Increase to 775000.
9249
92502002-03-12 Juanma Barranquero <lektu@terra.es>
9251
9252 * editfns.c (syms_of_editfns): Fix typo.
9253
92542002-03-12 Gerd Moellmann <gerd@gnu.org>
9255
9256 * xsmfns.c: Include stdio.h because termhooks.h needs it.
9257 Include termopt.h for interrupt_input.
9258
92592002-03-11 Andreas Schwab <schwab@suse.de>
9260
9261 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
9262
92632002-03-11 Gerd Moellmann <gerd@gnu.org>
9264
9265 * xterm.c (note_mouse_movement): Put code for
9266 x_autoselect_window_p in #if 0.
9267
9268 * lread.c (Fload): Don't assume that message_with_string uses the
9269 string it is given like a C string.
9270
92712002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9272
9273 * xterm.h (x_session_check_input, x_session_initialize): Declared.
9274
9275 * xterm.c: (XTread_socket): Add call to x_session_check_input and
9276 x_session_have_connection.
9277 (x_initialize): Add call to x_session_initialize.
9278
9279 * termhooks.h (enum event_kind): Add save_session_event.
9280
9281 * keyboard.c: Add Emacs event save_session_event.
9282
9283 * emacs.c (main): Add call to syms_of_xsmfns.
9284
9285 * lisp.h: Declare syms_of_xsmfns as extern.
9286
9287 * config.in: Add HAVE_X_SM.
9288
9289 * Makefile.in (LIBXT): Add -lSM -lICE
9290 if HAVE_X_SM and not USE_X_TOOLKIT.
9291 (XOBJ): New file xsmfns.c added.
9292
9293 * xsmfns.c: New file for X session management.
9294
92952002-03-09 Jason Rumney <jasonr@gnu.org>
9296
9297 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
9298 read-only when setting modified time.
9299
93002002-03-08 Gerd Moellmann <gerd@gnu.org>
9301
9302 * xdisp.c (move_it_vertically_backward): At the end of the function,
9303 when moving forward by lines, treat terminal frames specially.
9304
9305 * keyboard.c (echo_char): Make sure to add a separator between
9306 keys even if echo_dash hasn't been called.
9307
9308 * xdisp.c: Use new string macros.
9309 (update_echo_area): Pass number of bytes to message3 instead of
9310 number of chars.
9311 (set_message_1): Don't access a string's size_byte directly.
9312 (decode_mode_spec_coding): Use number of bytes of eoltype string
9313 instead number of chars.
9314
9315 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
9316
93172002-03-08 Juanma Barranquero <lektu@terra.es>
9318
9319 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
9320 24-bit.
9321
93222002-03-06 Jason Rumney <jasonr@gnu.org>
9323
9324 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
9325
93262002-03-06 Gerd Moellmann <gerd@gnu.org>
9327
9328 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
9329 (cancel_echoing, echo_length, echo_truncate): Changed to
9330 work with new kboard definition.
9331 (echo_now): Use message3_nolog instead of message2_nolog.
9332
9333 * alloc.c (mark_kboards): Mark echo_string.
9334
9335 * keyboard.h (ECHOBUFSIZE): Removed.
9336 (struct kboard): Member echoptr removed, member echobuf renamed
9337 to echo_string.
9338
9339 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
9340 message3 instead of message2 to display the message using STRING's
9341 text properties.
9342
93432002-03-05 Andreas Schwab <schwab@suse.de>
9344
9345 * xdisp.c (hscroll_margin): Change to EMACS_INT.
9346
93472002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
9348
9349 * frame.c (default-frame-alist): Explain that setting it doesn't
9350 affect existing frames.
9351
93522002-03-05 Stefan Monnier <monnier@cs.yale.edu>
9353
9354 * indent.c (skip_invisible): Fix my brain fart.
9355
9356 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
9357
93582002-03-04 Stefan Monnier <monnier@cs.yale.edu>
9359
9360 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
9361 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
9362 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
9363 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
9364 and variables to use EMACS_INT instead of just int.
9365
9366 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
9367
93682002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
9369
9370 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
9371 environment, pass it down with corrected value.
9372
93732002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9374
9375 * lread.c (read_filtered_event): Do not call start_hourglass
9376 before returning.
9377
93782002-03-04 Juanma Barranquero <lektu@terra.es>
9379
9380 * w32term.c (x_display_and_set_cursor): Fix typo.
9381
93822002-03-03 Richard M. Stallman <rms@gnu.org>
9383
9384 * fileio.c (Fmake_temp_name): Doc fix.
9385
93862002-03-03 Gary Wong <gtw@gnu.org>
9387
9388 * termcap.c [!emacs]: Replace ospeed for building standalone
9389 libtermcap, for binary compatibility.
9390
9391 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
9392
93932002-03-03 Richard M. Stallman <rms@gnu.org>
9394
9395 * xrdb.c (file_p): Rename arg `path' to `filename'.
9396
9397 * abbrev.c (Fexpand_abbrev): Increment plist as use count
9398 only if it is an integer.
9399
9400 * xfns.c (png_load): Set screen_gamma based on f->gamma.
9401 If png_get_sRGB gives an answer, call png_set_gamma
9402 using the default image gamma value.
9403
9404 * lread.c (read1): When reading from a file, default string to
9405 multibyte only if it has some multibyte characters.
9406
9407 * print.c (print_object): Output multibyte chars 128...255
9408 using \x even if ! print_escape_multibyte.
9409
9410 * xdisp.c (display_mode_element): Move the places where
9411 bytepos, charpos, this, and lisp_string are set.
9412 Use lisp_string to set bytepos.
9413
9414 * xdisp.c (redisplay_internal):
9415 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
9416
9417 * xdisp.c (display_mode_element): Merge properties specified with
9418 :propertize onto those that come with the string.
9419
94202002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
9421
9422 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
9423 automatic-hscrolling. Users changed.
9424 <hscroll-margin>: Renamed from automatic-hscroll-margin.
9425 Users changed.
9426 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
9427
94282002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
9429
9430 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
9431
94322002-03-02 Kim F. Storm <storm@cua.dk>
9433
9434 * window.c (Fminibuffer_selected_window): New function.
9435 (syms_of_window): Defsubr it.
9436
94372002-03-01 Kim F. Storm <storm@cua.dk>
9438
9439 * window.h (struct window): New member phys_cursor_width.
9440
9441 * window.c (make_window, replace_window): Init phys_cursor_width.
9442
9443 * xterm.c (x_display_and_set_cursor): Blink box cursor using
9444 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
9445
9446 * w32term.c (x_display_and_set_cursor): Blink box cursor using
9447 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
9448
9449 * lisp.h (GCPRO6): New macro.
9450
9451 * process.c (Fopen_network_stream): Use GCPRO6.
9452
94532002-03-01 Kim F. Storm <storm@cua.dk>
9454
9455 * process.c (Qconnect, Qfailed): New variables.
9456 (syms_of_process): Intern and staticpro them.
9457 (Fprocess_status): Document connect and failed return values.
9458 [NON_BLOCKING_CONNECT]: New conditional.
9459 (connect_wait_mask, num_pending_connects): New variables.
9460 (status_message): Convert Qfailed status.
9461 (Fopen_network_stream): Added support for non-blocking connect.
9462 New optional args: filter, sentinel, non_blocking. Doc updated.
9463 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
9464 (deactivate_process): Handle pending non-blocking connect.
9465 (wait_reading_process_input): Poll for status of non-blocking
9466 connects. Exec sentinel directly when connect succeeds.
9467 (status_notify): Don't read process output if not yet connected.
9468
94692002-02-28 Kim F. Storm <storm@cua.dk>
9470
9471 * window.c: (minibuf_selected_window): Renamed from
9472 Vminibuf_selected_window. Users changed.
9473 (syms_of_window): Staticpro it.
9474
94752002-02-26 Kim F. Storm <storm@cua.dk>
9476
9477 The following changes add a new Vminibuf_selected_window variable
9478 which is similar to Vminibuf_scroll_window, but which is only set
9479 on entry to the minibuffer (from a non-minibuffer window):
9480
9481 * window.c: (Vminibuf_selected_window): New variable.
9482 (struct save_window_data): New member minibuf_selected_window.
9483 (Fset_window_configuration): Restore Vminibuf_selected_window.
9484 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
9485 Set minibuf_scroll_window member to nil if minibuf_level is 0.
9486 (compare_window_configurations): Compare minibuf_selected_window.
9487
9488 * window.h: (Vminibuf_selected_window): Declare extern.
9489
9490 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
9491 entry to minibuffer or on entry from a non-minibuffer window.
9492
9493 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
9494 Vminibuf_selected_window instead of Vminibuf_scroll_window.
9495
9496 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
9497 instead of Vminibuf_scroll_window when deciding in which window
9498 the region should be highlighted. Consequently, the region remains
9499 highlighteded even when a completion buffer is also displayed.
9500
95012002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
9502
9503 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
9504
9505 * xselect.c (Qcompound_text_with_extensions): Renamed from
9506 Qcompound_text_no_extensions.
9507 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
9508
95092002-02-26 Juanma Barranquero <lektu@terra.es>
9510
9511 * w32proc.c (syms_of_ntproc): Doc fix.
9512
95132002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9514
9515 * intervals.h: Include "dispextern.h" unconditionally.
9516
95172002-02-24 Jason Rumney <jasonr@gnu.org>
9518
9519 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
9520 and disp-table.elc.
9521 (lisp): Add emacs-lisp/backquote.elc.
9522
95232002-02-24 Kim F. Storm <storm@cua.dk>
9524
9525 * keymap.c (Flookup_key): Fixed problem in 2001-12-28 patch:
9526 The validation of the event type was too strict as it didn't
9527 allow string events; buffer names are used in bindings for
9528 menu-bar-select-buffer (see `menu-bar-update-buffers').
9529
95302002-02-23 Kim F. Storm <storm@cua.dk>
9531
9532 The following changes rework my patch of 2002-02-06 which
9533 added command remapping by entering the commands directly into
9534 the keymaps. Now, command remapping uses an explicit `remap'
9535 prefix in the keymaps, i.e. [remap COMMAND].
9536
9537 * keymap.c (Qremap, remap_command_vector): New variables.
9538 (is_command_symbol): Removed function.
9539 (Fdefine_key): No longer accept a symbol for KEY.
9540 Added validation of [remap COMMAND] argument for KEY.
9541 The DEF is no longer required to be a symbol when remapping a command.
9542 (Fremap_command): New function to remap command through keymaps.
9543 (Flookup_key): Perform command remapping initiated by
9544 Fremap_command directly for speed.
9545 (Fkey_binding): Use Fremap_command for command remapping.
9546 (where_is_internal): Handle new command remapping representation.
9547 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
9548 staticpro them. Defsubr Fremap_command.
9549
9550 * keymap.h (Fremap_command): Declare extern.
9551 (is_command_symbol): Remove extern.
9552
9553 * keyboard.c (command_loop_1): Use Fremap_command for command
9554 remapping; now try command remapping for all symbols.
9555
95562002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
9557
9558 * coding.h (run_pre_post_conversion_on_str): Add prototype.
9559
95602002-02-23 Jason Rumney <jasonr@gnu.org>
9561
9562 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
9563 on the string before encoding it.
9564 (Fw32_get_clipboard_data): Run post-read-conversion on the string
9565 after decoding it.
9566
9567 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
9568
95692002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9570
9571 * w32term.c (enter_timestamp): Remove unused static variable to
9572 prevent warning.
9573
9574 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
9575
95762002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
9577
9578 * w16select.c (Fw16_get_clipboard_data): Fix last change.
9579
9580 * xselect.c (selection_data_to_lisp_data): Fix last change.
9581
95822002-02-22 Jason Rumney <jasonr@gnu.org>
9583
9584 * w32term.h (struct w32_output): New member menu_command_in_progress.
9585
9586 * w32menu.c (menubar_selection_callback): Free the menu and
9587 clear the menu_command_in_progress flag.
9588
9589 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
9590 (menu_free_timer): New variable.
9591 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
9592 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
9593 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
9594 menu command is in progress.
9595 <WM_COMMAND>: Set the menu_command_in_progress flag.
9596 Kill any menu_free_timer that is running.
9597
9598 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
9599 Call ExtTextOutA rather than ExtTextOut.
9600
96012002-02-22 Eli Zaretskii <eliz@gnu.org>
9602
9603 * puresize.h (BASE_PURESIZE): Increase to 755000.
9604
96052002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
9606
9607 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
9608 on the string before encoding it.
9609 (Fw16_get_clipboard_data): Run post-read-conversion on the string
9610 after decoding it.
9611
96122002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
9613
9614 Support for ICCCM Extended Segments in X selections:
9615
9616 * xselect.c <Qcompound_text_no_extensions>: New variable.
9617 (syms_of_xselect): Intern and staticpro it.
9618 (selection_data_to_lisp_data): Run post-read-conversion on decoded
9619 selection text.
9620 (lisp_data_to_selection_data): If next-selection-coding-system is
9621 compound-text-no-extensions, set the type of selection to be
9622 compound-text.
9623
9624 * xterm.h (x_encode_text): Update prototype.
9625
9626 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
9627 callers changed. If SELECTIONP is non-zero, run the
9628 pre-write-conversion function before encoding the selection text.
9629
96302002-02-21 Kim F. Storm <storm@cua.dk>
9631
9632 * frame.c (syms_of_frame): Change mouse-highlight default to t.
9633
9634 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
9635 Correct composing of language-change event.
9636
96372002-02-20 Kim F. Storm <storm@cua.dk>
9638
9639 * keyboard.c (menu_bar_items): Don't include keymap or local-map
9640 bindings at PT when building menu (the menu is not updated often
9641 enough for this to work reliable).
9642 (tool_bar_items): Likewise.
9643 (current_active_maps): Removed unused (and buggy) function.
9644
96452002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9646
9647 * xfns.c (gif_load): Use correct width and height for GIF images.
9648
96492002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
9650
9651 * floatfns.c (Fatan): Accept an optional second arg and call
9652 atan2 if passed 2 args.
9653
96542002-02-18 Jason Rumney <jasonr@gnu.org>
9655
9656 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
9657
96582002-02-17 Jason Rumney <jasonr@gnu.org>
9659
9660 * w32term.c (x_autoselect_window_p): New variable.
9661 (syms_of_w32term): DEFVAR_BOOL and initialize it.
9662 (note_mouse_movement): Use it.
9663
9664 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
9665
9666 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
9667
9668 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
9669 New variables.
9670 (syms_of_w32fns): Intern and staticpro them.
9671 (x_frame_parms) <"fullscreen">: New parameter.
9672 (x_fullscreen_move, x_set_fullscreen): New functions.
9673 (x_set_frame_parameters): Support Qfullscreen.
9674 (x_real_positions): Save x/y_pixels_diff frame params.
9675 (x_figure_window_size): Support full-screen frames.
9676 (Fx_create_frame): Default the fullscreen parameter.
9677
9678 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
9679 (x_fullscreen_adjust): New functions.
9680 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
9681 fullscreen. Call x_check_fullscreen_move, and set the
9682 want_fullscreen member of output_data.w32
9683 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
9684
9685 * w32term.h: New enum for FULLSCREEN_* constants.
9686 (struct w32_output): New members want_fullscreen, x_pixels_diff,
9687 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
9688 (x-fullscreen-adjust): New prototype.
9689
96902002-02-17 Kim F. Storm <storm@cua.dk>
9691
9692 * frame.c: (Vmouse_highlight): New variable.
9693 (syms_of_frame): DEFVAR_LISP it.
9694
9695 * frame.h: (Vmouse_highlight): Declare extern.
8a8e19a3 9696
048addec 9697 * xterm.h (struct x_display_info): Add mouse_face_hidden.
8a8e19a3 9698
048addec
JD
9699 * xterm.c (disable_mouse_highlight): Removed variable.
9700 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
9701 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
9702 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
9703 and on after keyboard input.
9704 (x_term_init): Initialize mouse_face_hidden.
8a8e19a3 9705
048addec 9706 * msdos.h (struct display_info): Add mouse_face_hidden.
8a8e19a3 9707
048addec
JD
9708 * msdos.c (disable_mouse_highlight): Removed variable.
9709 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
9710 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
9711 (internal_terminal_init): Initialize mouse_face_hidden.
9712 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
9713 and on after keyboard input.
4f1b1854 9714
048addec 9715 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
4f1b1854 9716
048addec
JD
9717 * w32term.c (disable_mouse_highlight): Removed variable.
9718 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
9719 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
9720 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
9721 and on after keyboard input.
9722 (w32_initialize_display_info): Initialize mouse_face_hidden.
4f1b1854 9723
048addec 97242002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
4f1b1854 9725
048addec
JD
9726 * msdos.c (last_mouse_window): New variable.
9727 (dos_rawgetc): Fix last change--if the mouse is in the same window
9728 as recorded in last_mouse_window, don't select this window.
5cb6905d 9729
048addec 9730 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
5cb6905d 9731
048addec
JD
9732 * msdos.c (x_autoselect_window_p): New variable.
9733 (syms_of_msdos): Defvar it.
9734 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
9735 which the last mouse movement occured, unless it is already selected.
437dfb9f 9736
048addec
JD
9737 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
9738 New variables.
9739 (syms_of_xdisp): DEVFAR them.
9740 (hscroll_window_tree): Use automatic_hscroll_margin and
9741 Vautomatic_hscroll_step to compute the amount of window scrolling.
437dfb9f 9742
048addec 97432002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9f696a00 9744
048addec
JD
9745 * xterm.c (x-autoselect-window): New variable.
9746 (note_mouse_movement): Use it.
9f696a00 9747
048addec 9748 * keyboard.c: Do not include "systime.h" twice.
d57966d7 9749
048addec 97502002-02-15 Andreas Schwab <schwab@suse.de>
d57966d7 9751
048addec 9752 * puresize.h (BASE_PURESIZE): Increase to 9/5.
d57966d7 9753
048addec 9754 * alloc.c (NSTATICS): Increase to 1280.
74779f52 9755
048addec 97562002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
74779f52 9757
048addec 9758 * alloc.c (NSTATICS): Bump to 1026.
a474d59c 9759
048addec
JD
9760 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
9761 (Vx_super_keysym): New variables.
9762 (syms_of_xterm): DEFVAR_LISP them.
9763 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
9764 variables to determine which keys to use for the various modifiers.
a474d59c 9765
048addec 97662002-02-13 Kim F. Storm <storm@cua.dk>
fbb70ad9 9767
048addec
JD
9768 * window.c: (Vmode_line_in_non_selected_windows): Removed.
9769 (mode_line_in_non_selected_windows): New variable.
9770 (syms_of_window): DEFVAR_BOOL it.
fbb70ad9 9771
048addec
JD
9772 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
9773 Use mode_line_in_non_selected_windows.
9774 (mode_line_in_non_selected_windows): Declare extern.
9775 (Vmode_line_in_non_selected_windows): Removed extern.
2d10309f 9776
048addec 97772002-02-13 Richard M. Stallman <rms@gnu.org>
2d10309f 9778
048addec
JD
9779 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
9780 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
9781 (Fclear_this_command_keys): Doc fixes.
2d10309f 9782
048addec
JD
9783 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
9784 (update_face_from_frame_parameter): Increment face_change_count
9785 and windows_or_buffers_changed to force redisplay using changed faces.
7f2cddf3 9786
048addec
JD
9787 * xdisp.c (QCpropertize): New variable.
9788 (mode_line_proptrans_alist): New variable.
9789 (display_mode_element): New arg PROPS; all calls changed.
9790 Implement this, for strings.
9791 Handle literal output of strings by sharing the
9792 main-line code for strings, using local var `literal'.
9793 Handle :propertize feature.
9794 (syms_of_xdisp): Initialze and staticpro QCpropertize and
9795 mode_line_proptrans_alist.
0b1e6b54 9796
048addec 97972002-02-11 Kim F. Storm <storm@cua.dk>
7f2cddf3 9798
048addec
JD
9799 * window.c: (Vmode_line_in_non_selected_windows): New variable.
9800 (syms_of_window): DEFVAR_LISP it.
7f2cddf3 9801
048addec
JD
9802 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
9803 (CURRENT_MODE_LINE_FACE_ID): Use it.
9804 (Vmode_line_in_non_selected_windows): Declare extern.
e17144de 9805
048addec
JD
9806 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
9807 to get mode line face.
e17144de 9808
048addec 98092002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 9810
048addec
JD
9811 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
9812 variables; cus-start.el doesn't need them anymore.
44368f8f 9813
048addec 98142002-02-09 Kim F. Storm <storm@cua.dk>
f884b6f4 9815
048addec
JD
9816 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
9817 reduction. This fixes a display problem where stray newlines were
9818 inserted in the window (corrected by C-l). Clarified code (IMHO).
6637c996 9819
048addec 98202002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 9821
048addec 9822 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
6637c996 9823
048addec 9824 * xdisp.c (display_mode_lines): Fix last change.
453c5510 9825
048addec 98262002-02-09 Jason Rumney <jasonr@gnu.org>
453c5510 9827
048addec
JD
9828 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
9829 match each other.
9830 (w32_load_system_font): Prevent Cleartype fonts from loading.
9831 (Fx_show_tip): Ensure tip frames are above other topmost windows.
d1d070e3 9832
048addec 98332002-02-09 Kim F. Storm <storm@cua.dk>
d1d070e3 9834
048addec
JD
9835 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
9836 (CURRENT_MODE_LINE_HEIGHT): Use it.
9837 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 9838
048addec
JD
9839 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
9840 (pos_visible_p, handle_face_prop): Likewise.
9841 (display_mode_lines): Likewise, but for the real selected window.
9842 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 9843
048addec
JD
9844 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
9845 in non-selected windows.
9846 (realize_basic_faces): Realize it.
9847 (syms_of_term): Intern and staticpro it.
308dd672 9848
048addec 98492002-02-08 Kim F. Storm <storm@cua.dk>
edde72f6 9850
048addec
JD
9851 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
9852 Changed mail addresses to emacs-devel@gnu.org.
308dd672 9853
048addec 98542002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
3c1e6b46 9855
048addec
JD
9856 * fileio.c (Fsubstitute_in_file_name): If the file name includes
9857 ~user, and there's no such user, don't discard everything before ~user.
03950b5b 9858
048addec 9859 * floatfns.c (Fround): Doc fix.
3c1e6b46 9860
048addec 98612002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c1e11810 9862
048addec 9863 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
c1e11810 9864
048addec 98652002-02-07 Stefan Monnier <monnier@cs.yale.edu>
1996baee 9866
048addec 9867 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
1996baee 9868
048addec 98692002-02-07 Kim F. Storm <storm@cua.dk>
0065bb74 9870
048addec
JD
9871 * keymap.c (where_is_internal): Only check whether definition is
9872 remapped if it fulfills is_command_symbol.
0065bb74 9873
048addec 98742002-02-07 Andreas Schwab <schwab@suse.de>
0065bb74 9875
048addec 9876 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
b5cb6072 9877
048addec 9878 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
b5cb6072 9879
048addec 98802002-02-06 Kim F. Storm <storm@cua.dk>
15fff01d 9881
048addec
JD
9882 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
9883 defining command remapping. Doc updated.
9884 (Flookup_key): Remap command through keymap if KEY is a symbol.
9885 (is_command_symbol): New function.
9886 (Fkey_binding): Use it. New optional argument NO-REMAP.
9887 Doc updated. Callers changed. Perform command remapping via
9888 recursive call unless that arg is non-nil.
9889 (where_is_internal): New argument no_remap. Callers changed.
9890 Call recursively to find original key bindings for a remapped
9891 comand unless that arg is non-nil.
9892 (Fwhere_is_internal): New optional argument NO-REMAP.
9893 Doc updated. Callers changed. Pass arg to where_is_internal.
0065bb74 9894
048addec
JD
9895 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
9896 (is_command_symbol): Added prototype.
0d8466cc 9897
048addec
JD
9898 * keyboard.c (Vthis_original_command): New variable.
9899 (syms_of_keyboard): DEFVAR_LISP it.
9900 (command_loop_1): Set it, and perform command remapping.
15fff01d 9901
048addec 99022002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2fae9111 9903
048addec 9904 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
2d6c1fc0 9905
048addec 99062002-02-06 Jason Rumney <jasonr@gnu.org>
07025a55 9907
048addec 9908 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
07025a55 9909
048addec 99102002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
07025a55 9911
048addec 9912 * charset.c (get_charset_id): Use if-else instead of ?:.
3a232704 9913
048addec 99142002-02-06 Richard M. Stallman <rms@gnu.org>
539e92ad 9915
048addec 9916 * filelock.c (S_ISLNK): Define if not defined.
3a232704 9917
048addec 99182002-02-03 Richard M. Stallman <rms@gnu.org>
0cb8bb48 9919
048addec 9920 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
539e92ad 9921
048addec
JD
9922 * lread.c (read1): Redesign strategy for force_multibyte and
9923 force_singlebyte. Now is_multibyte records whether read_buffer
9924 is multibyte. Encountering any multibyte character makes it so.
4e02881b 9925
048addec 99262002-02-02 Stefan Monnier <monnier@cs.yale.edu>
4e02881b 9927
048addec
JD
9928 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
9929 with the same sequence, map that sequence to f10 rather than f0.
1ab964d7 9930
048addec 99312002-02-03 Andreas Schwab <schwab@suse.de>
1ab964d7 9932
048addec
JD
9933 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
9934 latter never being defined on GNU/Linux.
749f499f 9935
048addec 99362002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
749f499f 9937
048addec
JD
9938 * xfaces.c (realize_default_face): Don't set the weight and slant of
9939 the default face to Qnormal, unless these attributes are unspecified.
b5d9aaba 9940
048addec 99412002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3a232704 9942
048addec
JD
9943 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
9944 Call cancel_hourglass unconditionally.
d0fd26dd 9945
048addec
JD
9946 * eval.c (Fsignal): Remove duplicated declaration of
9947 the variable `display_hourglass_p'.
b4c45162 9948
048addec 99492002-01-31 Richard M. Stallman <rms@gnu.org>
d0fd26dd 9950
048addec 9951 * editfns.c (region_limit): Nicer error message.
c95eaa61 9952
048addec
JD
9953 * coding.c (decode_composition_emacs_mule):
9954 Give up if NCOMPONENT gets too large to index `component'.
c95eaa61 9955
048addec
JD
9956 * callint.c (check_mark): New arg to specify clearer error message.
9957 Callers changed.
c95eaa61 9958
048addec 99592002-01-27 Richard M. Stallman <rms@gnu.org>
c95eaa61 9960
048addec 9961 * minibuf.c (Fcompleting_read): Doc fix.
c95eaa61 9962
048addec 99632002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c95eaa61 9964
048addec
JD
9965 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
9966 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
9967 Fix doc-strings.
c95eaa61 9968
048addec 99692002-01-26 Richard M. Stallman <rms@gnu.org>
c95eaa61 9970
048addec 9971 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
c95eaa61 9972
048addec
JD
9973 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
9974 and scroll_up_aggressively.
c95eaa61 9975
048addec 99762002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
31877e0a 9977
048addec 9978 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
31877e0a 9979
048addec 99802002-01-25 Stefan Monnier <monnier@cs.yale.edu>
e2c3786a 9981
048addec
JD
9982 * textprop.c (Fnext_property_change, Fnext_single_property_change)
9983 (Fprevious_property_change, Fprevious_single_property_change):
9984 Stay within the narrowed-buffer boundaries.
e2c3786a 9985
048addec 99862002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
c513fc03 9987
048addec
JD
9988 * term.c (Ftty_display_color_cells): New function.
9989 (syms_of_term): Defsubr it.
9990 (Ftty_display_color_cells, Ftty_display_color_p): Change the
9991 argument name to DISPLAY. Doc fix.
bf794306 9992
048addec
JD
9993 * dispextern.h: Add prototype for set_tty_color_mode and
9994 tty_setup_colors.
bf794306 9995
048addec 99962002-01-24 Jason Rumney <jasonr@gnu.org>
bf794306 9997
048addec
JD
9998 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
9999 If region left to draw is not what was expected, mark the frame as
10000 garbaged.
62582985 10001
048addec
JD
10002 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
10003 Combine the regions returned by BeginPaint and GetUpdateRect.
c513fc03 10004
048addec 100052002-01-23 Jason Rumney <jasonr@gnu.org>
3509a04c 10006
048addec
JD
10007 * w32term.c (x_update_window_begin): Only hide caret if
10008 w32_use_visible_system_caret is set.
10009 (x_update_window_end): Only show caret if
10010 w32_use_visible_system_caret is set.
10011 (syms_of_w32term): Handle SystemParametersInfo call failing.
3509a04c 10012
048addec 10013 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
3509a04c 10014
048addec 100152002-01-22 Richard M. Stallman <rms@gnu.org>
3509a04c 10016
048addec
JD
10017 * unexelf.c (unexec): Define n so as to cause compilation error
10018 for the code where people have often written n instead of nn.
1e9a6186 10019
048addec 10020 * .gdbinit (hookpost-run): Defined.
1e9a6186 10021
048addec 100222002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e4e34e31 10023
048addec 10024 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
e4e34e31 10025
048addec 100262002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4521d1fc 10027
048addec
JD
10028 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
10029 if fullscreen is being set.
7c75be36 10030
048addec 100312002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4521d1fc 10032
048addec
JD
10033 * minibuf.c (Fminibuffer_contents)
10034 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
10035 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
4521d1fc 10036
048addec 100372002-01-21 Richard M. Stallman <rms@gnu.org>
4521d1fc 10038
048addec 10039 * window.c (check_frame_size): Fix minimum height calculation.
93dec019 10040
048addec 100412002-01-20 Ken Raeburn <raeburn@gnu.org>
93dec019 10042
048addec
JD
10043 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
10044 height before comparison.
10045 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
905cc05a 10046
048addec 100472002-01-20 Jason Rumney <jasonr@gnu.org>
2ed06289 10048
048addec
JD
10049 * w32term.c (w32_system_caret_width): Remove.
10050 (w32_use_visible_system_caret): New user flag.
10051 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
10052 Windows reports a screen reader running.
10053 (x_update_window_begin): Hide the system caret.
10054 (x_update_window_end): Show the system caret.
10055 (x_display_and_set_cursor): Don't draw a cursor when
10056 w32_use_visible_system_caret is set. Do not adjust width.
0e79d667 10057
048addec
JD
10058 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
10059 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
10060 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
10061 the user requests it. Use system default width when creating.
10062 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
0e79d667 10063
048addec
JD
10064 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
10065 New window messages.
905cc05a 10066
048addec 100672002-01-20 Richard M. Stallman <rms@gnu.org>
82a7ab23 10068
048addec 10069 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
d75bec6a 10070
048addec 100712002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
52dcb476 10072
048addec 10073 * doprnt.c (doprnt1): Fix typos in error call.
82a7ab23 10074
048addec 100752002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
82a7ab23 10076
048addec 10077 * unexelf.c (unexec) [__sgi]: Support the .got sections.
82a7ab23 10078
048addec 100792002-01-20 Jason Rumney <jasonr@gnu.org>
4d0fa4f3 10080
048addec
JD
10081 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
10082 that Windows returns. If a double check fails, try to guess how
10083 ExtTextOut is going to act.
4d0fa4f3 10084
048addec
JD
10085 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
10086 in place of stricmp.
10087 (w32_list_synthesized_fonts): Removed.
10088 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
10089 (struct enumfont_t): New element; list.
10090 (enum_font_cb2): List all style and charset variations of a font.
10091 (Fw32_select_font): New optional argument; include_proportional.
10092 Exclude vertical fonts. Exclude proportional fonts unless
10093 include_proportional is non-nil.
10094 (w32_enable_synthesized_fonts): Change to a boolean.
10095 (Fw32_send_sys_command): Doc fix.
493faf20 10096
048addec 100972002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
493faf20 10098
048addec
JD
10099 * dispnew.c (update_frame): Move the variable `tem' to the block
10100 where it is used.
4971e491 10101
048addec 101022002-01-19 Jason Rumney <jasonr@gnu.org>
4971e491 10103
048addec
JD
10104 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
10105 call to face-set-after-frame-default.
4971e491 10106
048addec 101072002-01-18 Richard M. Stallman <rms@gnu.org>
d911a0fa 10108
048addec
JD
10109 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
10110 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
d911a0fa 10111
048addec 101122002-01-17 Richard M. Stallman <rms@gnu.org>
d911a0fa 10113
048addec
JD
10114 * window.c (enlarge_window): When exceeding size of parent,
10115 directly delete all the siblings instead of trying to resize it.
201c831a 10116
048addec 101172002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
201c831a 10118
048addec 10119 * term.c (set_tty_color_mode): Remove unused variable `tem'.
201c831a 10120
048addec 101212002-01-16 Henrik Enberg <henrik@enberg.org>
34e39c95 10122
048addec 10123 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
34e39c95 10124
048addec 101252002-01-16 Kim F. Storm <storm@cua.dk>
d77fbc16 10126
048addec
JD
10127 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
10128 is invisible. This can happen if cursor is on top line of a
10129 window, and we switch to a buffer with a header line.
d77fbc16 10130
048addec 10131 * w32term.c (x_erase_phys_cursor): Ditto.
61e3b944 10132
048addec 101332002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
61e3b944 10134
048addec
JD
10135 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
10136 `dont_resize' only when used.
61e3b944 10137
048addec 10138 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
70da46c3 10139
048addec 101402002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
70da46c3 10141
048addec
JD
10142 * xdisp.c (display_mode_element): When computing charpos, depend
10143 on multibyteness of elt, not the text in field.
8af01033 10144
048addec 101452002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8af01033 10146
048addec
JD
10147 * buffer.c (Fkill_all_local_variables):
10148 Increment `update_mode_lines' only once.
7363986a 10149
048addec 101502002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7363986a 10151
048addec
JD
10152 * lisp.h (adjust_after_replace_noundo)
10153 (Fupdate_coding_systems_internal): Add prototypes.
d9e6c4b1 10154
048addec 10155 * sound.c (Fplay_sound): Initialize header_size also for :data case.
d20fc48a 10156
048addec 101572002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
d9e6c4b1 10158
048addec
JD
10159 Support for the --color command-line argument and tty-color-mode
10160 frame parameter:
f1a85b89 10161
048addec
JD
10162 * term.c (tty_default_color_capabilities, tty_setup_colors)
10163 (set_tty_color_mode): New functions.
10164 (term_init): Call tty_default_color_capabilities.
10165 (Qtty_color_mode_alist): New variable.
10166 (syms_of_term): Intern and staticpro it.
f1a85b89 10167
048addec
JD
10168 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
10169 frames.
10170 (do_switch_frame): For termcap frames, switch the tty
10171 color mode as specified by the frame's parameters.
10172 (Qtty_color_mode): New variable.
10173 (syms_of_frame): Intern and staticpro it.
3a62677f 10174
048addec
JD
10175 * emacs.c (USAGE2): Add the --color option.
10176 (standard_args): Ditto.
72244db2 10177
048addec
JD
101782002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10179
10180 * xterm.h (struct x_output): New members want_fullscreen,
10181 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
10182 y_pixels_outer_diff.
10183 New enum for FULLSCREEN_* constants.
10184 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
10185 is NULL.
10186 (x_fullscreen_adjust): Add prototype.
3a62677f 10187
048addec
JD
10188 * emacs.c (USAGE2): Add the new full-screen arguments.
10189 (standard_args): Ditto.
3a62677f 10190
048addec
JD
10191 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
10192 New variables.
10193 (syms_of_xfns): Intern and staticpro them.
10194 (x_frame_parms) <"fullscreen">: New parameter.
10195 (x_fullscreen_move, x_set_fullscreen): New functions.
10196 (x_set_frame_parameters): Support for Qfullscreen.
10197 (x_real_positions): More accurate computation of the frame position.
10198 (x_figure_window_size): Support full-screen frames.
10199 (Fx_create_frame): Default the fullscreen parameter.
3a62677f 10200
048addec
JD
10201 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
10202 (XTread_socket) <Expose>: Call x_check_fullscreen.
10203 <ConfigureNotify>: Don't resize to fullscreen.
10204 Call x_check_fullscreen_move, and set the want_fullscreen member of
10205 output_data.x.
3a62677f 10206
048addec 102072002-01-13 Jason Rumney <jasonr@gnu.org>
9d113d9d 10208
048addec
JD
10209 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
10210 for mice with more than 3 buttons.
b8523839 10211
048addec
JD
10212 * w32term.c (parse_button): New parameter xbutton. Callers changed.
10213 (w32_read_socket): Handle new "XBUTTON" messages.
9464dea4 10214
048addec
JD
10215 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
10216 (syms_of_w32fns): DEFVAR_BOOL it.
10217 (w32_wnd_proc): Handle new "XBUTTON" messages.
9d113d9d 10218
048addec 102192002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
70ec1377 10220
048addec 10221 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
70ec1377 10222
048addec 102232002-01-13 Andreas Schwab <schwab@suse.de>
92f7dd37 10224
048addec 10225 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
92f7dd37 10226
048addec 102272002-01-12 Andreas Schwab <schwab@suse.de>
c93674bb 10228
048addec
JD
10229 * .gdbinit (xbuffer): Remove address operator since data is now a
10230 pointer.
c93674bb 10231
048addec 102322002-01-11 Richard M. Stallman <rms@gnu.org>
59b59892 10233
048addec 10234 * insdel.c (adjust_after_replace_noundo): New function.
59b59892 10235
048addec 10236 * coding.c (code_convert_region): Don't copy old text if undo disabled.
c6ea2775 10237
048addec 102382002-01-09 Jason Rumney <jasonr@gnu.org>
c6ea2775 10239
048addec
JD
10240 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
10241 when checking for multiple frames.
91175673 10242
048addec 102432002-01-08 Richard M. Stallman <rms@gnu.org>
91175673 10244
048addec
JD
10245 * window.c (delete_window): Rewrite the code for changing the
10246 selected window to handle the case where WINDOW is not a leaf.
91175673 10247
048addec 102482002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
e0fead5d 10249
048addec
JD
10250 * process.c (send_process): Set src_multibyte to 1 after the call
10251 top setup_coding_system, not before the call.
e0fead5d 10252
048addec 102532002-01-07 Jason Rumney <jasonr@gnu.org>
e0fead5d 10254
048addec
JD
10255 * xmenu.c (set_frame_menubar, xmenu_show):
10256 (xdialog_show): Initialize wv->help to Qnil.
c186cdb3 10257
048addec
JD
10258 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
10259 (w32_dialog_show): Initialize wv->help to Qnil.
c186cdb3 10260
048addec 102612002-01-06 Jason Rumney <jasonr@gnu.org>
c186cdb3 10262
048addec 10263 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
c186cdb3 10264
048addec 10265 * w32menu.c (w32_menu_display_help): Revert last change.
58cfce98 10266
048addec 10267 * xmenu.c (menu_highlight_callback): Revert last change.
58cfce98 10268
048addec 102692002-01-06 Andreas Schwab <schwab@suse.de>
62854fe2 10270
048addec
JD
10271 * insdel.c (make_gap_larger): Make sure buffer size does not
10272 overflow range of int.
62854fe2 10273
048addec 102742002-01-05 Jason Rumney <jasonr@gnu.org>
656f46bb 10275
048addec
JD
10276 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
10277 OVERLAPS_P.
656f46bb 10278
048addec 10279 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
656f46bb 10280
048addec
JD
10281 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
10282 to the left or to the right of the pointer, put it against
10283 the left screen edge.
10284 (x_frame_parms): Add missing braces around initializer.
036e218d 10285
048addec
JD
10286 * w32term.c (x_setup_relief_colors): Don't compute an image's
10287 background color if it doesn't have a Pixmap.
10288 (notice_overwritten_cursor): Don't depend on
10289 output_cursor and updated_area. Compare pixel coordinates with
10290 window's cursor pixel coordinates.
10291 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
10292 Call notice_overwritten_cursor with new arg list.
10293 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
10294 unconditionally.
10295 (x_draw_image_relief): Use predefined macro instead of
10296 constant when the value of `tool_bar_button_relief' is negative.
036e218d 10297
048addec 10298 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
7ddb2c16 10299
048addec 103002002-01-04 Richard M. Stallman <rms@gnu.org>
7ddb2c16 10301
048addec 10302 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
ace9b298 10303
048addec 103042002-01-03 Richard M. Stallman <rms@gnu.org>
90647b07 10305
048addec
JD
10306 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
10307 (Fkey_binding): Try the `keymap' property map first.
10308 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
10309 minor mode bindings.
90647b07 10310
048addec 103112002-01-03 Kim F. Storm <storm@cua.dk>
ace9b298 10312
048addec 10313 * keyboard.c (read_key_sequence): Fixed cast of submaps arg to bcopy.
ace9b298 10314
048addec 103152002-01-02 Richard M. Stallman <rms@gnu.org>
ace9b298 10316
048addec
JD
10317 * keyboard.c (read_key_sequence): Handle the keymap property
10318 before minor mode maps.
9fbc32aa 10319
048addec
JD
10320 * editfns.c (Fformat): Update thissize from field_width
10321 based on the actual width, in the string case.
036e218d 10322
048addec 103232002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fbc32aa 10324
048addec
JD
10325 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
10326 when used as truth value to prevent gcc warnings.
9fbc32aa 10327
048addec
JD
10328 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
10329 * w32proc.c: Include <config.h>.
9fbc32aa 10330
048addec 103312002-01-01 Andreas Schwab <schwab@suse.de>
9fbc32aa 10332
048addec
JD
10333 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
10334 not EMACS_INT, to make them compatible with DEFVAR_INT.
10335 * lisp.h (max_specpdl_size): Adjust declaration.
9fbc32aa 10336
048addec 103372002-01-01 Richard M. Stallman <rms@gnu.org>
9fbc32aa 10338
048addec
JD
10339 * print.c (print_object): Test print_escape_nonascii only for
10340 unibyte strings.
10341 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
10342 when outputting to a multibyte buffer.
9fbc32aa 10343
048addec 103442001-12-29 Richard M. Stallman <rms@gnu.org>
9fbc32aa 10345
048addec
JD
10346 * print.c (print_object): In multibyte string, use hex escapes.
10347 Use octal only for unibyte strings.
10348 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
0142178a 10349
048addec
JD
10350 * lread.c (read_escape): New arg BYTEREP for reporting whether
10351 escape forces unibyte or multibyte.
10352 (read1): When reading a string, take note of that info.
0142178a 10353
048addec 103542001-12-29 Ken Raeburn <raeburn@gnu.org>
d4824a5d 10355
048addec
JD
10356 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
10357 comparison to test lisp value returned by Fget.
d4824a5d 10358
048addec 103592001-12-29 Richard M. Stallman <rms@gnu.org>
b1356234 10360
048addec 10361 * lisp.h (max_specpdl_size): Add declaration.
b1356234 10362
048addec 10363 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
3ce081f5 10364
048addec
JD
10365 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
10366 Handle modifier bits. Correct typo in error message.
99e380ee 10367
048addec 103682001-12-28 Richard M. Stallman <rms@gnu.org>
3ce081f5 10369
048addec
JD
10370 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
10371 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
10372 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
10373 Update calls to Fdefine_abbrev.
10374 (write_abbrev): Update for changed data format.
10375 Don't list "system" abbrevs.
10376 (Fexpand_abbrev): Update use count with new data format.
10377 (describe_abbrev): Update for changed data format.
10378 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
66458f32 10379
048addec 10380 * config.in (HAVE_MBSINIT): Add #undef.
66458f32 10381
048addec 10382 * strftime.c (mbsinit): Define as no-op if not available.
66458f32 10383
048addec
JD
10384 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
10385 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
59a86c99 10386
048addec
JD
10387 * keymap.c (Flookup_key): Error message if key has wrong data type.
10388 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
10389 (exclude_key): New variable.
59a86c99 10390
048addec 103912001-12-28 Gerd Moellmann <gerd@gnu.org>
eb77a5f4 10392
048addec
JD
10393 * xterm.c (x_setup_relief_colors): Don't compute an image's
10394 background color if it doesn't have a Pixmap.
eb77a5f4 10395
048addec
JD
10396 * xterm.c (notice_overwritten_cursor): Don't depend on
10397 output_cursor and updated_area. Compare pixel coordinates with
10398 window's cursor pixel coordinates.
10399 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
10400 Call notice_overwritten_cursor with new arg list.
10401 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
10402 unconditionally.
eb77a5f4 10403
048addec
JD
10404 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
10405 height of the cursor line to the amount to scroll.
eb77a5f4 10406
048addec 104072001-12-27 Richard M. Stallman <rms@gnu.org>
bb313871 10408
048addec
JD
10409 * intervals.c (set_point_both): The position after an invisible,
10410 intangible character is not an acceptable stopping point.
bb313871 10411
048addec 104122001-12-27 Ken Raeburn <raeburn@gnu.org>
55b43a63 10413
048addec
JD
10414 * window.c (enlarge_window): In new preserve_before code, convert
10415 CURBEG from lisp object to integer before doing arithmetic.
6052529b 10416
048addec 104172001-12-27 Richard M. Stallman <rms@gnu.org>
3ce081f5 10418
048addec 10419 * bytecode.c (Fbyte_code): Undo previous change.
3ce081f5 10420
048addec 104212001-12-26 Kim F. Storm <storm@cua.dk>
3ce081f5 10422
048addec
JD
10423 * keyboard.c (record_char): Ignore duplicate help-echo events only
10424 separated by mouse-movement. When tracking mouse, only record
10425 first and last mouse-movement event in same window.
10426 Don't record mouse-movement events in keyboard macros.
3ce081f5 10427
048addec 104282001-12-25 Richard M. Stallman <rms@gnu.org>
55b43a63 10429
048addec
JD
10430 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
10431 (Fenlarge_window): New arg PRESERVE_BEFORE.
111ed14e 10432
048addec
JD
10433 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
10434 instead of Fstring_as_unibyte.
9fabb2f5 10435
048addec 104362001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fabb2f5 10437
048addec 10438 The following changes remove mocklisp support:
9fabb2f5 10439
048addec 10440 * mocklisp.h, mocklisp.c: Files removed.
111ed14e 10441
048addec
JD
10442 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
10443 `Qmocklisp' and `Qmocklisp_arguments'.
10444 Remove prototype of syms_of_mocklisp.
2fa0eedf 10445
048addec 10446 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
d1420435 10447
048addec
JD
10448 * callint.c: Do not include mocklisp.h.
10449 (Fcall_interactively): Do not test for mocklisp case.
2fa0eedf 10450
048addec
JD
10451 * eval.c: Remove variables `Qmocklisp_arguments',
10452 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
10453 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
10454 Do not test for mocklisp case.
10455 (Fwhile): Remove unused variable `tem'.
10456 (syms_of_eval): Remove variable `moclisp-arguments'.
ebcbef4e 10457
048addec 10458 * data.c (wrong_type_argument): Remove mocklisp case.
5c131048 10459
048addec 10460 * doc.c (Fdocumentation): Remove mocklisp case.
5c131048 10461
048addec 10462 * emacs.c (main): Do not call syms_of_mocklisp.
5c131048 10463
048addec 104642001-12-21 Richard M. Stallman <rms@gnu.org>
96d276c3 10465
048addec
JD
10466 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
10467 to the left or to the right of the pointer, put it against
10468 the left screen edge.
6108b49c 10469
048addec 104702001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
96d276c3 10471
048addec
JD
10472 * Makefile.in (distclean): Remove .gdbinit if we are building
10473 outside the source tree.
5eea19a4 10474
048addec 104752001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
5eea19a4 10476
048addec 10477 * w32.c (emacs_root_dir): New function.
5eea19a4 10478
048addec 10479 * msdos.c (emacs_root_dir): New function.
5eea19a4 10480
048addec
JD
10481 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
10482 of the current drive as the fallback for default_directory.
438e57dd 10483
048addec
JD
10484 * dired.c (file_name_completion): Run the elements of
10485 completion-ignored-extensions through ENCODE_FILE.
438e57dd 10486
048addec
JD
10487 * lisp.h (scmp): Remove prototype, since it's now a static
10488 function private to dired.c.
c88e5347 10489
048addec 104902001-12-18 Richard M. Stallman <rms@gnu.org>
c88e5347 10491
048addec
JD
10492 * dired.c (scmp): Function moved from minibuf.c.
10493 Delete multibyte handling--used only on encoded strings.
59ce1461 10494
048addec 10495 * minibuf.c (scmp): Function moved to dired.c.
59ce1461 10496
048addec 10497 * fns.c (merge): Add QUIT call.
59ce1461 10498
048addec 104992001-12-18 Dave Love <fx@gnu.org>
8727d588 10500
048addec
JD
10501 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
10502 language/georgian.el.
8727d588 10503
048addec 105042001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
cc63037e 10505
048addec
JD
10506 * Makefile.in (lisp, shortlisp): Synchronize with changes to
10507 lisp/Makefile.in:DONTCOMPILE.
cc63037e 10508
048addec 105092001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
cc63037e 10510
048addec
JD
10511 * xdisp.c (window_box_height): Do not return negative values.
10512 From Gerd Moellmann <gerd@gnu.org>.
cc63037e 10513
048addec 10514 * keyboard.c (head_table): Add missing braces around initializer.
cc63037e 10515
048addec 10516 * term.c (keys): Likewise.
deece6f5 10517
048addec 10518 * xfns.c (x_frame_parms, visual_classes): Likewise.
deece6f5 10519
048addec 105202001-12-17 Sam Steingold <sds@gnu.org>
1b944d9c 10521
048addec
JD
10522 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
10523 patch (COMPOSING_P, not COMPOSING).
28ff4293 10524
048addec 105252001-12-17 Richard M. Stallman <rms@gnu.org>
a395ef6a 10526
048addec 10527 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
a395ef6a 10528
048addec
JD
10529 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
10530 before calling decode_coding.
9b46de40 10531
048addec 10532 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
9b46de40 10533
048addec
JD
10534 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
10535 instead of only for COMPOSITION_DISABLED.
9b46de40 10536
048addec 105372001-12-16 Richard M. Stallman <rms@gnu.org>
aff37336 10538
048addec 10539 * alloc.c (pure_alloc): After overflow, allocate just a small block.
aff37336 10540
048addec 10541 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
b9937f07 10542
048addec
JD
10543 * buffer.h (struct buffer): New field `display_error_modiff'.
10544 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
b9937f07 10545
048addec 10546 * window.c (Frecenter): Clear display_error_modiff field.
2cd23960 10547
048addec
JD
10548 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
10549 Call redisplay_window, but not if display_error_modiff field says no.
10550 (redisplay_window_error): New function.
10551 (displayed_buffer): New variable.
10552 (redisplay_internal, redisplay_windows): Call the new functions
10553 instead of redisplay_window directly.
2cd23960 10554
048addec 105552001-12-15 Richard M. Stallman <rms@gnu.org>
2cd23960 10556
048addec 10557 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
2cd23960 10558
048addec 105592001-12-14 Andrew Innes <andrewi@gnu.org>
a4184c1c 10560
048addec
JD
10561 * makefile.w32-in (EMACSLOADPATH): Define.
10562 ($(EMACS)): Run `list-load-path-shadows' after dumping emacs.
10563 (bootstrap-temacs): Remove dependency on bootstrap-clean.
a4184c1c 10564
048addec 105652001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
f6fa0866 10566
048addec
JD
10567 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
10568 parameter have a numeric value all the time.
f6fa0866 10569
048addec 10570 * w32fns.c (x_report_frame_params): Likewise.
f4ca4b00 10571
048addec 105722001-12-12 Richard M. Stallman <rms@gnu.org>
f4ca4b00 10573
048addec 10574 * fileio.c (Fwrite_region): Doc fix.
f4e25f94 10575
048addec
JD
10576 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
10577 (redisplay_internal): Call clear_image_cache only for window terminals.
f4e25f94 10578
048addec 105792001-12-12 Gerd Moellmann <gerd@gnu.org>
91c153e2 10580
048addec
JD
10581 * xdisp.c (move_it_vertically_backward): Change heuristic
10582 for the case that we didn't move far enough initially.
91c153e2 10583
048addec
JD
10584 * window.c (Frecenter): Simplify computation in the case of window
10585 system frames and ARG < 0; use window_box_height.
65b7d3e7 10586
048addec 105872001-12-11 Richard M. Stallman <rms@gnu.org>
65b7d3e7 10588
048addec
JD
10589 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
10590 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
6b5f6311 10591
048addec 105922001-12-11 Andrew Innes <andrewi@gnu.org>
6b5f6311 10593
048addec
JD
10594 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
10595 arg is negative.
be676094 10596
048addec 105972001-12-11 Richard M. Stallman <rms@gnu.org>
be676094 10598
048addec
JD
10599 * m/hp800.h: Split the __hpux conditional into the parts
10600 that are right for GNU/Linux too and the parts that are not.
10601 Use the former if GNU_LINUX.
10602 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
032a857d 10603
048addec 10604 * s/gnu-linux.h (GNU_LINUX): Defined.
032a857d 10605
048addec 106062001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
032a857d 10607
048addec
JD
10608 * macros.c, msdos.c, w16select.c: Change doc-string comments to
10609 `new style' [w/`doc:' keyword].
032a857d 10610
048addec 106112001-12-10 Jason Rumney <jasonr@gnu.org>
b6270150 10612
048addec
JD
10613 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
10614 before using.
b6270150 10615
048addec 106162001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
792e5cbd 10617
048addec
JD
10618 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
10619 keyword].
98cbb9fa 10620
048addec 106212001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
98cbb9fa 10622
048addec 10623 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
98cbb9fa 10624
048addec 10625 * s/hpux10.h (srand48): Don't undefine.
98cbb9fa 10626
048addec 106272001-12-09 Jason Rumney <jasonr@gnu.org>
792e5cbd 10628
048addec
JD
10629 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
10630 Add comment to explain where the struct came from.
10631 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
10632 (add_menu_item): Process pop-up menus first to avoid memory leak.
10633 (add_menu_item, w32_menu_display_help): Use `help' field as
10634 Lisp_Object.
10635 (w32_free_submenu_strings): Only free owner-drawn strings.
fa336b91 10636
048addec 106372001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
fa336b91 10638
048addec 10639 * COPYING: Moved back.
fa336b91 10640
048addec
JD
10641 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
10642 Add parentheses around && within ||.
077907d4 10643
048addec 10644 * indent.c (compute_motion): Likewise.
aa2af83a 10645
048addec 10646 * intervals.c (merge_properties_sticky): Likewise.
60a653f1 10647
048addec
JD
10648 * coding.c (setup_coding_system, shrink_encoding_region)
10649 (Fdecode_sjis_char): Likewise.
60a653f1 10650
048addec 106512001-12-07 Andreas Schwab <schwab@suse.de>
60a653f1 10652
048addec
JD
10653 * xdisp.c (display_mode_element): Don't read past end of string if
10654 it ends with '%'.
60a653f1 10655
048addec
JD
10656 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
10657 can hold.
60a653f1 10658
048addec
JD
10659 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
10660 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
10661 type changed to Lisp_Object.
10662 (syms_of_data): DEFVAR_LISP them.
60a653f1 10663
048addec 106642001-12-07 Richard M. Stallman <rms@gnu.org>
60a653f1 10665
048addec
JD
10666 * callproc.c (init_callproc): Set Vdata_directory based on the source
10667 location whenever Emacs was run uninstalled.
60a653f1 10668
048addec 106692001-12-06 Paul Eggert <eggert@twinsun.com>
60a653f1 10670
048addec
JD
10671 * config.in (HAVE_WORKING_VFORK): New #undefs.
10672 * process.c (create_process):
10673 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
10674 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
10675 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
10676 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
10677 * m/intel386.h (HAVE_VFORK): Likewise.
10678 * m/mips-siemens.h (HAVE_VFORK): Likewise.
10679 * m/mips.h (HAVE_VFORK): Likewise.
10680 * s/freebsd.h (vfork): Remove #define.
10681 * s/lynxos.h (HAVE_VFORK): Remove #undef.
10682 * s/usg5-4-2.h: Fix comment about vfork.
60a653f1 10683
048addec 106842001-12-06 Richard M. Stallman <rms@gnu.org>
60a653f1 10685
048addec
JD
10686 * s/hpux10.h (random): Add undef.
10687 (HAVE_RANDOM): Define it just once.
60a653f1 10688
048addec 106892001-12-06 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 10690
048addec 10691 * eval.c: Undo last change: the standard syntax is not wanted.
60a653f1 10692
048addec 106932001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 10694
048addec
JD
10695 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
10696 scroll bars of the frame before deleting the frame itself. If the
10697 frame has a widget, delete the frame with XtDestroyWidget, and do
10698 not call XDestroyWindow before that.
60a653f1 10699
048addec 107002001-12-06 Kim F. Storm <storm@cua.dk>
60a653f1 10701
048addec 10702 * xfns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 10703
048addec 10704 * w32fns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 10705
048addec 107062001-12-05 Andrew Innes <andrewi@gnu.org>
60a653f1 10707
048addec
JD
10708 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
10709 excessively large.
60a653f1 10710
048addec
JD
10711 * insdel.c (make_gap_larger): New function.
10712 (make_gap_smaller): New function.
10713 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
10714 Call make_gap_smaller if arg is negative.
60a653f1 10715
048addec 107162001-12-04 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 10717
048addec
JD
10718 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
10719 Pass a dummy argument when calling interrupt_signal.
10720 (parse_menu_item): Mark disabled items before checking for empty def.
10721 (read_char_minibuf_menu_prompt): Make safety more visible.
10722 (read_key_sequence): Add a `first_unbound' variable.
10723 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
10724 unbound prefix as soon as we can detect it.
60a653f1 10725
048addec
JD
10726 * doc.c (Fsnarf_documentation): Add prototype.
10727 (get_doc_string): Handle negative arguments.
10728 (Fdocumentation): Use AREF and ASIZE.
10729 Move the calls to get_doc_string to a single place.
10730 Don't confuse an interactive-spec for a docstring reference.
10731 (Fdocumentation_property): Take advantage of the fact that
10732 get_doc_string now ignores the sign of the docstring position.
60a653f1 10733
048addec 10734 * eval.c: Use standard syntax for usage in docstrings.
60a653f1 10735
048addec 107362001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 10737
048addec 10738 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief` an option.
60a653f1 10739
048addec 107402001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 10741
048addec
JD
10742 * xterm.c (x_draw_image_relief): Use predefined macro instead of
10743 constant when the value of `tool_bar_button_relief' is negative.
60a653f1 10744
048addec 107452001-12-02 Richard M. Stallman <rms@gnu.org>
60a653f1 10746
048addec
JD
10747 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
10748 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
60a653f1 10749
048addec 10750 * fileio.c (read_non_regular): Delete Fsignal call.
60a653f1 10751
048addec 107522001-12-01 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 10753
048addec 10754 * lisp.h (run_hook_list_with_args): Undo last change.
60a653f1 10755
048addec 107562001-12-01 Gerd Moellmann <gerd@gnu.org>
60a653f1 10757
048addec 10758 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
60a653f1 10759
048addec 107602001-12-01 Jason Rumney <jasonr@gnu.org>
60a653f1 10761
048addec 10762 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
60a653f1 10763
048addec
JD
10764 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
10765 [!WM_MOUSELEAVE]: Define.
60a653f1 10766
048addec
JD
10767 * w32menu.c (current_popup_menu, get_menu_item_info):
10768 (set_menu_item_info): New vars.
10769 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
10770 (w32_menu_show): Set current_popup_menu.
10771 (add_menu_item): Allocate new strings for owner-drawn menu items
10772 and help strings.
10773 Use owner-draw for disabled menu items again.
10774 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
10775 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
60a653f1 10776
048addec
JD
10777 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
10778 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
10779 <WM_EXITMENULOOP>: Free menu strings.
10780 <WM_MOUSELEAVE>: Stop tracking mouse.
10781 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
60a653f1 10782
048addec
JD
10783 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
10784 and mouse face.
60a653f1 10785
048addec 107862001-12-01 Kim F. Storm <storm@cua.dk>
60a653f1 10787
048addec
JD
10788 The following changes add left-fringe and right-fringe
10789 frame parameters to adjust fringe widths, or remove one or
10790 both fringes.
60a653f1 10791
048addec
JD
10792 * frame.h (struct frame): Remove trunc_area_pixel_width and
10793 trunc_area_cols fields.
10794 (Qleft_fringe, Qright_fringe): Declare.
10795 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
60a653f1 10796
048addec
JD
10797 * frame.c (Qleft_fringe, Qright_fringe): New vars.
10798 (syms_of_frame): Initialize them.
60a653f1 10799
048addec
JD
10800 * window.c (coordinates_in_window): Handle separate left and right
10801 fringe widths.
60a653f1 10802
048addec
JD
10803 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
10804 and fringe_cols fields.
10805 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
10806 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
10807 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
10808 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
10809 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
10810 (x_compute_fringe_widths): Add prototype.
60a653f1 10811
048addec
JD
10812 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
10813 fill fringe evenly with small dashes.
10814 (x_draw_fringe_bitmap): Clear background if necessary. Align and
10815 clip the new ZV bitmap to avoid jitter between rows.
10816 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
10817 background. Don't draw fringe bitmaps if fringe width is zero.
10818 (x_compute_fringe_widths): New function.
10819 (x_new_font, x_set_window_size_1): Use it.
60a653f1 10820
048addec
JD
10821 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
10822 (x_set_frame_parameters): Process `font' parameter before other
10823 parameters as fringe widths depend on it.
10824 (x_set_fringe_width): New function.
10825 (x_figure_window_size): Use x_compute_fringe_widths.
10826 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
10827 parameters.
60a653f1 10828
048addec
JD
10829 * widget.c (set_frame_size): Use x_compute_fringe_widths.
10830 (EmacsFrameSetCharSize): Ditto.
60a653f1 10831
048addec
JD
10832 * w32term.h: Merged changes from xterm.h.
10833 * w32term.c: Merged changes from xterm.c.
10834 * w32fns.c: Merged changes from xfns.c.
60a653f1 10835
048addec 108362001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 10837
048addec 10838 * COPYING: Removed.
60a653f1 10839
048addec 108402001-11-29 Dave Love <fx@gnu.org>
60a653f1 10841
048addec
JD
10842 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
10843 extra extra slot.
10844 (detect_coding_mask): Fix call of detect_coding_iso2022.
60a653f1 10845
048addec 108462001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 10847
048addec
JD
10848 * fileio.c (file-name-coding-system)
10849 (default-file-name-coding-system): Doc fix (links to referenced
10850 variables added).
60a653f1 10851
048addec 108522001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 10853
048addec
JD
10854 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
10855 Add dummy uses of gcproN variables.
60a653f1 10856
048addec
JD
10857 * category.c (describe_category, describe_category_1)
10858 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
10859 (syms_of_category): Don't defsubr Sdescribe_categories.
60a653f1 10860
048addec 108612001-11-28 Richard M. Stallman <rms@gnu.org>
60a653f1 10862
048addec 10863 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
60a653f1 10864
048addec
JD
10865 * Makefile.in (lispdir): New variable, referring to build dir.
10866 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
60a653f1 10867
048addec 108682001-11-28 Andrew Innes <andrewi@gnu.org>
60a653f1 10869
048addec
JD
10870 * w32menu.c (w32_menu_display_help): Actually add the new argument
10871 OWNER.
60a653f1 10872
048addec 108732001-11-28 Jason Rumney <jasonr@gnu.org>
60a653f1 10874
048addec
JD
10875 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
10876 menu items. From David Ponce <dponce@wanadoo.fr>.
10877 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
10878 conditionally.
10879 (w32_menu_display_help): New argument OWNER. Rewritten to store a
10880 help event in the owner frame's keyboard buffer.
60a653f1 10881
048addec
JD
10882 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
10883 (Fx_show_tip): Don't subtract last width from row width.
10884
10885 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
10886 (w32_read_socket): Use EQ to compare frames.
60a653f1 10887
048addec 108882001-11-28 Gerd Moellmann <gerd@gnu.org>
60a653f1 10889
048addec
JD
10890 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
10891 OVERLAPS_P.
60a653f1 10892
048addec 108932001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 10894
048addec
JD
10895 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
10896 `gcpro3' and `gcpro4'.
60a653f1 10897
048addec 10898 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
60a653f1 10899
048addec 109002001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 10901
048addec 10902 * ccl.c: Use AREF and ASIZE.
60a653f1 10903
048addec 109042001-11-27 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 10905
048addec
JD
10906 * lisp.h (run_hook_list_with_args): Remove.
10907 (LIST_END_P): Fix call to wrong_type_argument.
10908 (make_fixnum_or_float): Use EMACS_INT rather than int.
60a653f1 10909
048addec 109102001-11-26 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 10911
048addec
JD
10912 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
10913 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
60a653f1 10914
048addec
JD
10915 * eval.c: Use AREF and ASIZE.
10916 (Ffetch_bytecode): Add the file name to the error message.
60a653f1 10917
048addec
JD
10918 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
10919 which match the end of the file-name.
10920 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
10921 is not a valid env var, but leave it as is instead.
60a653f1 10922
048addec
JD
10923 * keymap.c (access_keymap): Handle t bindings like nil bindings.
10924 Make nil bindings in char-tables transparent.
10925 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
60a653f1 10926
048addec 109272001-11-26 Richard M. Stallman <rms@gnu.org>
60a653f1 10928
048addec
JD
10929 * textprop.c (set_text_properties_1): Allow START, END in either order.
10930 Do nothing if range is empty.
60a653f1 10931
048addec 10932 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
60a653f1 10933
048addec
JD
10934 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
10935 (clean): Not here.
60a653f1 10936
048addec 109372001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 10938
048addec
JD
10939 * textprop.c (set_text_properties_1): Clearly mark that the
10940 interval should not be empty.
60a653f1 10941
048addec
JD
10942 * intervals.c (graft_intervals_into_buffer):
10943 Don't call set_text_properties_1 on an empty interval.
60a653f1 10944
048addec 109452001-11-25 Richard M. Stallman <rms@gnu.org>
60a653f1 10946
048addec 10947 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
60a653f1 10948
048addec
JD
10949 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
10950 don't lose the data in it.
60a653f1 10951
048addec 109522001-11-25 Juanma Barranquero <lektu@terra.es>
60a653f1 10953
048addec 10954 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
60a653f1 10955
048addec 10956 * buffer.c (Fkill_buffer): Use Frun_hooks, not Vrun_hooks.
60a653f1 10957
048addec 10958 * print.c (temp_output_buffer_setup): Use Frun_hooks, not Vrun_hooks.
60a653f1 10959
048addec 109602001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 10961
048addec 10962 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
60a653f1 10963
048addec 109642001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 10965
048addec
JD
10966 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
10967 Niemitalo <kon@iki.fi>.
60a653f1 10968
048addec 109692001-11-25 Jason Rumney <jasonr@gnu.org>
60a653f1 10970
048addec 10971 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
60a653f1 10972
048addec
JD
10973 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
10974 (Fx_show_tip): Block input during frame creation.
10975 (Fx_show_tip, Fx_hide_tip): Enable.
60a653f1 10976
048addec 109772001-11-24 Richard M. Stallman <rms@gnu.org>
60a653f1 10978
048addec
JD
10979 * lread.c (Fload): Detect recursive load error for more than 3
10980 nestings of the same file.
10981 (Vrecursive_load_depth_limit): Variable deleted.
10982 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
60a653f1 10983
048addec 109842001-11-24 Jason Rumney <jasonr@gnu.org>
60a653f1 10985
048addec
JD
10986 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
10987 mouse position if either left or top is not specified.
60a653f1 10988
048addec
JD
10989 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
10990 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
10991 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
10992 (my_create_tip_window): Assign tip_window.
10993 (x_create_tip_frame): Use same defaults as X.
10994 (compute_tip_xy): Remove unused variable. Use full screen width.
10995 (Fx_show_tip): Do not double height. Call ShowWindow directly.
60a653f1 10996
048addec
JD
10997 * w32term.c (x_after_update_window_line): Doc fix.
10998 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
10999 frames.
11000 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
60a653f1 11001
048addec
JD
11002 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
11003 for all Windowed systems.
60a653f1 11004
048addec 110052001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 11006
048addec
JD
11007 * msdos.c (IT_clear_screen): If the frame's faces are not yet
11008 realized, use the initial screen colors to clear the screen.
60a653f1 11009
048addec 110102001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 11011
048addec
JD
11012 * textprop.c (Fset_text_properties): Remove unused variables
11013 `unchanged', `prev_changed', `s' and `len'.
60a653f1 11014
048addec
JD
11015 * search.c (Freplace_match): Remove unused variable `inslen'.
11016
11017 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
11018
110192001-11-22 Jason Rumney <jasonr@gnu.org>
11020
11021 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
11022 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
11023 (my_create_tip_window): New function.
11024 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
11025 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
11026
110272001-11-20 Jason Rumney <jasonr@gnu.org>
11028
11029 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
11030 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
11031
11032 * w32fns.c (Vw32_system_coding_system): Remove.
11033 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
11034
110352001-11-19 Stefan Monnier <monnier@cs.yale.edu>
11036
11037 * fileio.c (Fwrite_region): Move choose_write_coding_system to
11038 after build_annotations.
11039
11040 * syntax.c (describe_syntax): Add dummy arg.
11041 (describe_syntax_1): Update call to describe_vector.
11042
11043 * category.c (describe_category): Add dummy arg.
11044 (describe_category_1): Update call to describe_vector.
11045
11046 * keymap.c (Fdescribe_vector): Add `describer' parameter.
11047 (describe_command, describe_translation): Add dummy second param.
11048 (describe_map): Call elt_describer with two arguments.
11049 (describe_vector_princ): Add `fun' parameter.
11050 Call it instead of the hardcoded `princ'.
11051 (describe_vector): Add arg `args'.
11052 Pass it as a new second argument to elt_describer.
60a653f1 11053
048addec 11054 * keymap.h (describe_vector): Update prototype.
60a653f1 11055
048addec
JD
11056 * frame.c: Don't include keymap.h any more.
11057 (keys_of_frame): Remove.
60a653f1 11058
048addec 11059 * lisp.h (keys_of_frame): Remove declaration.
60a653f1 11060
048addec 11061 * emacs.c (main): Don't call `keys_of_frame' any more.
60a653f1 11062
048addec 110632001-11-14 Andreas Schwab <schwab@suse.de>
60a653f1 11064
048addec
JD
11065 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
11066 if defined, 0 otherwise.
11067 (MAP_FAILED): Define if not defined and use it to test mmap failure.
11068 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
60a653f1 11069
048addec 110702001-11-19 Richard M. Stallman <rms@gnu.org>
60a653f1 11071
048addec 11072 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
60a653f1 11073
048addec 110742001-11-18 Jason Rumney <jasonr@gnu.org>
60a653f1 11075
048addec
JD
11076 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
11077 (x_draw_bar_cursor): If the background color of the glyph under
11078 the cursor equals the frame's cursor color, use the glyph's
11079 foreground color for drawing the bar cursor.
11080 (x_after_update_window_line): Clear internal border in different
11081 circumstances.
11082 (w32_set_vertical_scroll_bar): Check for width and height > 0.
11083 (w32_draw_relief_rect): Correct relief by 1 pixel.
11084 (x_set_glyph_string_background_width):
11085 Set extends_to_end_of_line_p if the row's fill_line_p is set and
11086 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
11087 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
11088 if cursor_in_non_selected_windows is false.
11089 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
11090 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
11091 Notice if cursor gets overwritten.
11092 (notice_overwritten_cursor): Renamed from
11093 note_overwritten_text_cursor. Rewritten to take glyph widths
11094 into account, and to take X positions as parameters.
11095 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
11096 around call to x_draw_glyphs.
11097 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
11098 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
11099 color to use for image glyph reliefs.
11100 (x_draw_image_relief): Accept zero tool_bar_button_relief.
11101 (glyph_rect): Remove unused variable `area'.
60a653f1 11102
048addec
JD
11103 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
11104 some items.
11105 (x_set_internal_border_width): Set frame garbaged when window
11106 doesn't exist yet.
11107 (Fx_create_frame): Accept zero tool_bar_button_relief.
11108 (x_clear_image_1, four_corners_best, image_background)
11109 (image_background_transparent): New functions.
11110 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
11111 (gs_format): Add `:background' entry.
11112 (lookup_image): Set IMG's background color if specified.
11113 (pbm_load, xbm_load_image, png_load): Set IMG's background field
11114 when appropriate.
11115 (x_clear_image_1): Reset `background_valid' and
11116 `background_transparent_valid' fields.
11117 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
11118 calculating it here. Set IMG's background_transparent field.
11119 (enum xpm_keyword_index): Add XPM_BACKGROUND.
11120 (enum png_keyword_index): Add PNG_BACKGROUND.
11121 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
11122 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
11123 (enum gif_keyword_index): Add GIF_BACKGROUND.
11124 (enum gs_keyword_index): Add GS_BACKGROUND.
11125 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
11126 Pre-calculate image background color where necessary.
11127 (x_create_x_image_and_pixmap, xbm_load, gs_load):
11128 Use display info's n_cbits entry for screen depth.
11129 (Fx_show_tip): Remove unused variables `buffer', `top',
11130 `left', `max_width' and `max_height'.
60a653f1 11131
048addec 11132 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
60a653f1 11133
048addec 111342001-11-18 Gerd Moellmann <gerd@gnu.org>
60a653f1 11135
048addec 11136 * puresize.h (BASE_PURESIZE): Increase to 750000.
60a653f1 11137
048addec 111382001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 11139
048addec 11140 * frame.c (Fframe_live_p): Doc fix.
60a653f1 11141
048addec 111422001-11-18 Richard M. Stallman <rms@gnu.org>
60a653f1 11143
048addec
JD
11144 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
11145 (message_dolog_marker3): New static variables hold three markers.
11146 (syms_of_xdisp): Initialize and staticpro them.
11147 (message_dolog): Use message_dolog_marker1..3 instead of
11148 allocating markers each time. Unchain them when done.
60a653f1 11149
048addec 111502001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 11151
048addec 11152 * doc.c (Fsnarf_documentation): Doc fix.
60a653f1 11153
048addec 111542001-11-17 Andreas Schwab <schwab@suse.de>
60a653f1 11155
048addec 11156 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
60a653f1 11157
048addec 111582001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 11159
048addec 11160 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
60a653f1 11161
048addec 111622001-11-17 Jason Rumney <jasonr@gnu.org>
60a653f1 11163
048addec 11164 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
60a653f1 11165
048addec 111662001-11-17 Gerd Moellmann <gerd@gnu.org>
60a653f1 11167
048addec
JD
11168 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
11169 with invalid position.
60a653f1 11170
048addec 111712001-11-16 Richard M. Stallman <rms@gnu.org>
60a653f1 11172
048addec 11173 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
60a653f1 11174
048addec
JD
11175 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
11176 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
11177 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
60a653f1 11178
048addec 11179 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
60a653f1 11180
048addec 111812001-11-16 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11182
048addec
JD
11183 * fileio.c (build_annotations): Split off the tail.
11184 (build_annotations_2): New fun. Extracted from build_annotations.
11185 (Fwrite_region): Split the call to build_annotations into two
11186 calls to build_annotations and build_annotations_2.
077907d4 11187
048addec 111882001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
1756e2fb 11189
048addec
JD
11190 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
11191 clear_waiting_for_input with argument.
1756e2fb 11192
048addec 11193 * xterm.h (x_update_cursor): Remove duplicated prototype.
06e8f738 11194
048addec 11195 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
06e8f738 11196
048addec 11197 * xterm.c (waiting_for_input): Remove unnecessary declaration.
fa336b91 11198
048addec 11199 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
fa336b91 11200
048addec 112012001-11-16 Stefan Monnier <monnier@cs.yale.edu>
fa336b91 11202
048addec
JD
11203 * fileio.c (choose_write_coding_system): New fun, extracted
11204 from Fwrite_region.
11205 (Fwrite_region): Use it.
fa336b91 11206
048addec
JD
11207 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
11208 (funcall_lambda, run_hook_with_args): Make static and add prototype.
11209 (ml_apply, find_handler_clause): Add prototype.
fa336b91 11210
048addec 112112001-11-16 Eli Zaretskii <eliz@gnu.org>
fa336b91 11212
048addec 11213 * config.in: Add #undef HAVE_COFF_H.
fa336b91 11214
048addec
JD
11215 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
11216 Required for ISC 4.1.
fa336b91 11217
048addec 112182001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
fa336b91 11219
048addec
JD
11220 * syswait.h: (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
11221 Andrew Wiseman <a.wiseman@btclick.com>.
fa336b91 11222
048addec 112232001-11-16 Kim F. Storm <storm@cua.dk>
fa336b91 11224
048addec
JD
11225 The following changes are made to clean up the various internal
11226 references to the fringes to actually use the term `fringe' for
11227 them. Previously, they were called `flags areas', `bitmap areas',
11228 `left/right side of windows', or implicitly as `flags' or
11229 `bitmaps':
fa336b91 11230
048addec
JD
11231 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
11232 Comments fixed. Use renamed symbols.
06e8f738 11233
048addec 11234 * dispnew.c: Comment fix. Use renamed symbols.
06e8f738 11235
048addec
JD
11236 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
11237 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
11238 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
9ce647f4 11239
048addec 11240 * msdos.c: Comment fix.
9ce647f4 11241
048addec 11242 * w32fns.c: Use renamed symbols.
9b784ab8 11243
048addec
JD
11244 * w32term.c: Comment fixes. Use renamed symbols.
11245 (fringe_bitmap_type): Renamed from bitmap_type.
11246 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
11247 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
11248 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
9f7e52b4 11249
048addec
JD
11250 * w32term.h: Comment fixes. Use renamed symbols.
11251 (fringes_extra): Renamed from flags_areas_extra.
11252 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
11253 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
11254 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
11255 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
11256 (FRAME_X_LEFT_FRINGE_WIDTH):
11257 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
11258 (FRAME_X_RIGHT_FRINGE_WIDTH):
11259 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
9f7e52b4 11260
048addec 11261 * widget.c: Use renamed symbols.
9f7e52b4 11262
048addec
JD
11263 * window.c: Comment fixes. Use renamed symbols.
11264 (coordinates-in-window-p): Doc fix.
fa336b91 11265
048addec 11266 * xdisp.c: Comment fixes. Use renamed symbols.
34e5d0af 11267
048addec 11268 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
9b784ab8 11269
048addec 11270 * xfns.c: Use renamed symbols.
89512fcd 11271
048addec
JD
11272 * xterm.c: Comment fixes. Use renamed symbols.
11273 (fringe_bitmap_type): Renamed from bitmap_type.
11274 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
11275 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
11276 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
89512fcd 11277
048addec
JD
11278 * xterm.h: Comment fixes. Use renamed symbols.
11279 (fringes_extra): Renamed from flags_areas_extra.
11280 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
11281 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
11282 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
11283 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
11284 (FRAME_X_LEFT_FRINGE_WIDTH):
11285 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
11286 (FRAME_X_RIGHT_FRINGE_WIDTH):
11287 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
11288
112892001-11-15 Jason Rumney <jasonr@gnu.org>
11290
11291 * w32menu.c (add-menu-item): Make help_echo and radio buttons
11292 work for most menu items. From David Ponce
11293 <david.ponce@wanadoo.fr>.
11294
112952001-11-15 Gerd Moellmann <gerd@gnu.org>
11296
11297 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
11298 Some x_set_* function expect to be called even if old and new
11299 value are equal.
11300
11301 * xdisp.c (build_desired_tool_bar_string): Accept zero
11302 tool_bar_button_relief.
11303
11304 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
11305
11306 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
11307
11308 * xterm.c (x_draw_bar_cursor): If the background color of the
11309 glyph under the cursor equals the frame's cursor color, use
11310 the glyph's foreground color for drawing the bar cursor.
11311
11312 * dispnew.c (direct_output_forward_char): Fix character/byte
11313 position comparison.
7d18891d 11314
048addec 113152001-11-15 Miles Bader <miles@gnu.org>
d2936d21 11316
048addec
JD
11317 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
11318 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
11319 Update arguments to find_field.
11320 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
11321 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
11322 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
11323 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
7d18891d 11324
048addec 113252001-11-14 Richard M. Stallman <rms@gnu.org>
7d18891d 11326
048addec 11327 * editfns.c (Fpropertize): Allow call with 1 arg.
7d18891d 11328
048addec
JD
11329 * dispextern.h (image_background, image_background_transparent):
11330 Conditionalize on HAVE_X_WINDOWS.
7d18891d 11331
048addec 113322001-11-13 Richard M. Stallman <rms@gnu.org>
7d18891d 11333
048addec 11334 * print.c (Fprin1_to_string): Doc fix.
7d18891d 11335
048addec 11336 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
7d18891d 11337
048addec 11338 * floatfns.c (Fceiling, Ffloor): Doc fixes.
7d18891d 11339
048addec 11340 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
7d18891d 11341
048addec 11342 * fileio.c (Ffile_accessible_directory_p): Doc fix.
7d18891d 11343
048addec 11344 * eval.c (syms_of_eval): Doc fix.
7d18891d 11345
048addec 11346 * coding.c (syms_of_coding): Doc fix.
7d18891d 11347
048addec 11348 * doc.c (Fsnarf_documentation): Doc fix.
7d18891d 11349
048addec 11350 * dispnew.c (syms_of_display): Doc fix.
9474c847 11351
048addec 11352 * category.c (Fget_unused_category): Doc fix.
9474c847 11353
048addec 11354 * buffer.c (syms_of_buffer): Doc fixes.
e3059a5d 11355
048addec 113562001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
e3059a5d 11357
048addec 11358 * print.c (prin1, print): Doc fix.
e3059a5d 11359
048addec 113602001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
b3700ae7 11361
048addec
JD
11362 * fontset.h: Remove declarations of variables
11363 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
b3700ae7 11364
048addec
JD
11365 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
11366 `Vclip_large_size_font'.
eae936e2 11367
048addec 113682001-11-13 Jason Rumney <jasonr@gnu.org>
4bb962be 11369
048addec 11370 * w32fns.c: Doc fix.
ddb67bdc 11371
048addec 113722001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3467c402 11373
048addec 11374 * xfaces.c (Fface_attributes_as_vector): Doc fix.
3467c402 11375
048addec 11376 * fns.c: Doc fix.
6e1b91d7 11377
048addec 11378 * emacs.c: Doc fix.
1c1d3d69 11379
048addec 11380 * coding.c: Doc fix.
1c1d3d69 11381
048addec
JD
11382 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
11383 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
11384 `new style' [w/`doc:' keyword].
b6f4c7ba 11385
048addec 113862001-11-12 Richard M. Stallman <rms@gnu.org>
b6f4c7ba 11387
048addec
JD
11388 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
11389 LeaveNotify events. Only FocusIn and FocusOut do that now.
11390 (x_display_and_set_cursor): Do display hollow cursors in active
11391 minibuffer windows when they are not selected.
b6f4c7ba 11392
048addec 113932001-11-12 Jason Rumney <jasonr@gnu.org>
a89f435d 11394
048addec
JD
11395 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
11396 * w32term.c: Change doc-string comments to `new style'.
11397 [w/`doc:' keyword]. Doc fixes.
a89f435d 11398
048addec
JD
11399 * w32fns.c: Don't define max.
11400 (Fx_open_connection): Only execute once.
a4cd0cd7 11401
048addec 114022001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
eafb659a 11403
048addec
JD
11404 * ccl.c: Change macros to use do-while block instead of if-else.
11405 Use braces to follow GNU Coding Standards.
eafb659a 11406
048addec 114072001-11-11 Richard M. Stallman <rms@gnu.org>
a4cd0cd7 11408
048addec 11409 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
a4cd0cd7 11410
048addec 11411 * lread.c (read_escape): Use end_of_file_error for reporting eof.
a4cd0cd7 11412
048addec
JD
11413 * insdel.c (replace_range): Use adjust_markers_for_replace
11414 instead of adjust_markers_for_delete and adjust_markers_for_insert.
a4cd0cd7 11415
048addec 11416 * intervals.h: Declare set_text_properties and set_text_properties_1.
a4cd0cd7 11417
048addec
JD
11418 * textprop.c (set_text_properties_1): New subroutine
11419 broken out of set_text_properties.
11420 (set_text_properties): Use set_text_properties_1.
91823618 11421
048addec
JD
11422 * intervals.c (graft_intervals_into_buffer):
11423 Use set_text_properties_1 to clear out properties.
91823618 11424
048addec
JD
11425 * search.c (Freplace_match): Use replace_range to insert
11426 and delete. Don't request property inheritance from
11427 surrounding text.
86928dfb 11428
048addec 114292001-11-10 Jason Rumney <jasonr@gnu.org>
86928dfb 11430
048addec
JD
11431 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
11432 vertical fonts. Allow them if face name is explicitly specified.
11433 Do not give up if we find a font that cannot be converted to an xlfd.
40ef1eda 11434
048addec 114352001-11-10 Gerd Moellmann <gerd@gnu.org>
ab8469eb 11436
048addec
JD
11437 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
11438 instead of malloc/free.
a78e0303 11439
048addec 114402001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
40ef1eda 11441
048addec
JD
11442 * xfaces.c (merge_face_vectors): Use braces to follow GNU
11443 Coding Standards.
11444 (Finternal_set_lisp_face_attribute): Likewise.
fabf4a91 11445
048addec 11446 * buffer.c (Fbury_buffer): Likewise.
0c99b139 11447
048addec 11448 * indent.c (current_column_1): Remove unused variable `prev_col'.
0c99b139 11449
048addec
JD
11450 * coding.c (encode_coding): Use precomputed value of `src'.
11451 (encode_coding): Remove unused variable `src_end'.
11452 (code_convert_region): Remove unused variables `count'.
830ddd77 11453
048addec 114542001-11-07 Jason Rumney <jasonr@gnu.org>
830ddd77 11455
048addec
JD
11456 * w32term.c (x_display_and_set_cursor): Do not move system caret
11457 if cursor_glyph is NULL.
55c6d645 11458
048addec 114592001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
55c6d645 11460
048addec 11461 * keymap.c (access_keymap): Fix compilation error.
5de38842 11462
048addec 114632001-11-07 Miles Bader <miles@gnu.org>
7a4564a4 11464
048addec 11465 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
5de38842 11466
048addec 114672001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4fa23df5 11468
048addec
JD
11469 * intervals.c (graft_intervals_into_buffer):
11470 Remove #ifdef'd-out code.
11471 (graft_intervals_into_buffer): Remove unused variable `middle'.
4fa23df5 11472
048addec
JD
11473 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
11474 code (eval-current-buffer).
11475 Change doc-string comments to `new style' [w/`doc:' keyword].
7a6a97d7 11476
048addec 114772001-11-06 Richard M. Stallman <rms@gnu.org>
c191d13c 11478
048addec 11479 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
7a6a97d7 11480
048addec 114812001-11-06 Stefan Monnier <monnier@cs.yale.edu>
44dc78e0 11482
048addec 11483 * lread.c (read1): Fix behavior with nested backquoting.
44dc78e0 11484
048addec
JD
11485 * keyboard.c (make_lispy_event): Check integerness and fix
11486 Lisp_Object/int mixup.
17893c65 11487
048addec 114882001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4d994a79 11489
048addec 11490 * fns.c (copy_hash_table): Remove unused variable `v'.
d5360cc7 11491
048addec
JD
11492 * fontset.c (fontset_font_pattern): Remove unused variable
11493 `family_registry'.
d5360cc7 11494
048addec 11495 * indent.c (current_column_1): Remove unused variable `prev_col'.
d5360cc7 11496
048addec 114972001-11-05 Richard M. Stallman <rms@gnu.org>
96238a5a 11498
048addec 11499 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
96238a5a 11500
048addec
JD
11501 * buffer.c (Fkill_buffer): Don't delete auto save file
11502 if buffer is modified.
d9d54213 11503
048addec 115042001-11-05 Andrew Innes <andrewi@gnu.org>
d9d54213 11505
048addec
JD
11506 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
11507 CHECK_NUMBER_CDR.
b116830b 11508
048addec 115092001-11-05 Richard M. Stallman <rms@gnu.org>
b116830b 11510
048addec 11511 * unexelf.c (unexec): Minor changes; clean up comments.
3297e2a1 11512
048addec 115132001-11-05 Sam Steingold <sds@gnu.org>
3297e2a1 11514
048addec 11515 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
6fb8339c 11516
048addec 115172001-11-05 Andreas Schwab <schwab@suse.de>
6fb8339c 11518
048addec 11519 * sound.c (sound_perror): Save errno from being clobbered.
7dd73b78 11520
048addec 115212001-11-05 Dale Hagglund <rdh@yottayotta.com>
7dd73b78 11522
048addec
JD
11523 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
11524 the program image directly.
982f6c7e 11525
048addec 115262001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d31053f9 11527
048addec 11528 * buffer.h (Fbuffer_local_value): Add prototype.
d31053f9 11529
048addec 115302001-11-04 Richard M. Stallman <rms@gnu.org>
d31053f9 11531
048addec
JD
11532 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
11533 and CHECK_BUFFER.
d31053f9 11534
048addec
JD
11535 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
11536 (record_char): Likewise.
d31053f9 11537
048addec
JD
11538 * keyboard.c (make_lispy_event): Don't insist a drag event must
11539 move to a different buffer position. Instead, check for moving at
11540 least double_click_fuzz.
982f6c7e 11541
048addec 11542 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
830047fd 11543
048addec 11544 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
b116830b 11545
048addec
JD
11546 * indent.c (current_column_1, Fmove_to_column): Separate the code
11547 for display-table glyphs from the code for buffer text, to fix
11548 bugs in the former.
830047fd 11549
048addec 115502001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
b116830b 11551
048addec
JD
11552 * buffer.c (Fbuffer_local_value): New function.
11553 (syms_of_buffer): Defsubr it.
2df5238c 11554
048addec
JD
11555 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
11556 value of `cursor-in-non-selected-windows'.
4e397688 11557
048addec
JD
11558 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
11559 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
11560 (syms_of_xdisp): Initialize it.
48b0f3ae 11561
048addec 115622001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2df5238c 11563
048addec 11564 * xfns.c (Fx_create_frame): Doc fix.
3ecaf7e5 11565
048addec
JD
11566 * coding.c: Change doc-string comments to `new style' [w/`doc:'
11567 keyword].
3ecaf7e5 11568
048addec
JD
11569 * eval.c (top_level_value, top_level_set): Remove commented and
11570 #ifdef'd-out code.
11571 (Fdefvar): Fix usage in doc-string.
3ecaf7e5 11572
048addec 115732001-11-03 Richard M. Stallman <rms@gnu.org>
3ecaf7e5 11574
048addec 11575 * xfns.c: Include unistd.h, if it exists.
8db2e33b 11576
048addec 11577 * editfns.c: Move the include of ctype.h after unistd.h.
8db2e33b 11578
048addec 11579 * gmalloc.c: Test BROKEN_PROTOTYPES.
aed29b97 11580
048addec 115812001-11-03 Ken Raeburn <raeburn@gnu.org>
aed29b97 11582
048addec
JD
11583 * lisp.h (CHECK_STRING_CAR): New macro.
11584 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
11585 treating XCAR and XCDR as lvalues.
11586 (openp): Use CHECK_STRING_CAR.
11587 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
aed29b97 11588
048addec 115892001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
6cb16f95 11590
048addec
JD
11591 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
11592 (SIGMASKTYPE): Define.
1b1acc13 11593
048addec 11594 * syssignal.h (sigunblock): Don't define if already defined.
020f9b38 11595
048addec 115962001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
020f9b38 11597
048addec
JD
11598 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
11599 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
11600 Fix typos in comments.
6cb16f95 11601
048addec
JD
11602 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
11603 and #ifdef'd-out code.
11604 Fix and reindent comments.
6cb16f95 11605
048addec 11606 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
6cb16f95 11607
048addec
JD
11608 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
11609 argument `i' in macros.
6cb16f95 11610
048addec
JD
11611 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
11612 `i' in macros.
7e9d3c2f 11613
048addec
JD
11614 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
11615 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
11616 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
11617 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
11618 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
11619 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
11620 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
11621 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
11622 in macros.
7e9d3c2f 11623
048addec
JD
11624 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
11625 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
11626 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
11627 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
11628 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
11629 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
11630 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
11631 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
11632 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
11633 (remove unused second argument).
7e9d3c2f 11634
048addec 116352001-11-02 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 11636
048addec
JD
11637 * syntax.c (describe_syntax): New wrapper.
11638 (Finternal_describe_syntax_value): Rename from describe_syntax.
11639 Don't insert space at front and \n at the end.
11640 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
e6bff182 11641
048addec
JD
11642 * regex.c (re_wctype): Try to fix some warnings.
11643 (regcomp, regexec): Don't forget the __restrict.
9ba48103 11644
048addec 116452001-11-02 Richard M. Stallman <rms@gnu.org>
9ba48103 11646
048addec 11647 * textprop.c (Fget_char_property): Doc fix.
9ba48103 11648
048addec 116492001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9ba48103 11650
048addec 11651 * process.c (Fstart_process): Add usage to doc-string.
c22e59e1 11652
048addec 11653 * data.c (Fsetq_default): Ditto.
c22e59e1 11654
048addec 11655 * callint.c (Finteractive): Ditto.
9271ed2c 11656
048addec 116572001-11-01 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 11658
048addec
JD
11659 * macros.c: Don't include keymap.h any more.
11660
116612001-11-01 Richard M. Stallman <rms@gnu.org>
11662
11663 * data.c (Fmake_local_variable): Doc fix.
11664
11665 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
11666 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
e6bff182 11667
048addec 11668 * keymap.c (Fdescribe_buffer_bindings): Print character property
9271ed2c
RS
11669 bindings along with or instead of the buffer local map.
11670 Make the overriding maps override what they should.
11671
f00691a3 116722001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8b8bd9c6
PJ
11673
11674 * window.c (grow_mini_window): Fix typo in comment.
11675
27188d11
GM
116762001-11-01 Gerd Moellmann <gerd@gnu.org>
11677
7b49b9d2
GM
11678 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
11679 (XTset_vertical_scroll_bar): Likewise.
11680
43f7c3ea
GM
11681 * xfns.c (x_build_heuristic_mask): Use four_corners_best
11682 instead of IMAGE_BACKGROUND.
c22e59e1 11683
b350c2e5
GM
11684 * xfns.c (four_corners_best): Reindent.
11685
c22e59e1 11686 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
27188d11
GM
11687 Handle :box so that it is possible to specify sexprs.
11688
bf00d461
EZ
116892001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
11690
11691 * s/hpux11.h: New file.
11692
f00691a3 116932001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e10df59 11694
2b209b97
PJ
11695 * emacs.c (USAGE1): Show command line option --no-window-system
11696 instead of --no-windows in usage.
11697 (standard_args): Rename --no-windows to --no-window-system.
11698 (bug_reporting_address): Follow Emacs coding conventions.
11699
9dbc9081
PJ
11700 * eval.c (Fcommandp): Doc fix.
11701 Change doc-string comments to `new style' [w/`doc:' keyword].
11702
4e10df59
PJ
11703 * frame.c (Fframe_live_p): Doc fix.
11704
11705 * buffer.c (selective-display-ellipses): Doc fix.
11706
dd387b25
GM
117072001-10-31 Gerd Moellmann <gerd@gnu.org>
11708
fe957e65
GM
11709 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
11710
dd387b25
GM
11711 * xfaces.c (realize_x_face): If C is not a single-byte character,
11712 set the face's colors_copied_bitwise_p instead of the defaulted_p
11713 members which have a different meaning.
11714 (free_face_colors): Do nothing for a face whose colors have been
11715 copied bitwise.
11716
c22e59e1 11717 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
dd387b25 11718
f00691a3 117192001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2e1280f8 11720
687784e8
PJ
11721 * marker.c, mocklisp.c: Change doc-string comments to `new style'
11722 [w/`doc:' keyword].
2e1280f8 11723
b9d9a9b9
GM
117242001-10-31 Gerd Moellmann <gerd@gnu.org>
11725
11726 * fns.c (require_unwind): Return Lisp_Object.
11727
f00691a3 117282001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
48400103 11729
fa1361cb
PJ
11730 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
11731 (last-input-char): Revert doc-string to be the same as the
11732 doc-string of `last-input-event'.
11733
6c465a15 11734 * xdisp.c: Fix typos in comments.
48400103 11735
eafa3196
GM
117362001-10-31 Gerd Moellmann <gerd@gnu.org>
11737
11738 * window.c (grow_mini_window): Handle case that the root
11739 window is already smaller than the nominal mininum height.
11740
747d3f2a
SM
117412001-10-30 Stefan Monnier <monnier@cs.yale.edu>
11742
bf9bb76f
SM
11743 * emacs.c (main): Don't call keys_of_macros any more.
11744
11745 * lisp.h (keys_of_macros): Remove.
11746
11747 * macros.c (keys_of_macros): Remove.
11748
747d3f2a
SM
11749 * xfaces.c (Fface_attribute_relative_p): Declare args.
11750
5e905a57
JR
117512001-10-30 Jason Rumney <jasonr@gnu.org>
11752
11753 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
11754 (enum_font_cb2): Ignore fonts with vertical orientation.
11755
3a426197
RS
117562001-10-30 Richard M. Stallman <rms@gnu.org>
11757
11758 * keyboard.c (Finput_pending_p): Doc fix.
11759
a742d646
GM
117602001-10-30 Gerd Moellmann <gerd@gnu.org>
11761
259cf6bc
GM
11762 * xterm.c (x_after_update_window_line): Don't run the code
11763 clearing in borders for rows whose visible height is 0.
11764
3f99f948
GM
11765 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
11766 resized_p flag is set. If not set, use the much less flickering
11767 method previously used.
11768
11769 * dispnew.c (change_frame_size_1): Set frame's resized_p.
11770
11771 * frame.h (struct frame) <resized_p>: New member.
11772
b4a3be43
GM
11773 * lread.c (to_multibyte): Ensure read_buffer is at least twice
11774 as large as the number of bytes to convert.
747d3f2a 11775
a742d646
GM
11776 * lread.c (to_multibyte): New function.
11777 (read1): Use it.
11778
cacbb9e9
EZ
117792001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
11780
11781 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
11782
99cb6b2f
GM
117832001-10-30 Gerd Moellmann <gerd@gnu.org>
11784
327f42ee 11785 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
747d3f2a
SM
11786 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
11787 if the row's fill_line_p is set and drawing the last glyph with
11788 DRAW_IMAGE_{RAISED,SUNKEN}.
327f42ee 11789
99cb6b2f
GM
11790 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
11791
8e8223e2
SM
117922001-10-29 Stefan Monnier <monnier@cs.yale.edu>
11793
11794 * xmenu.c: Include coding.h and charset.h.
11795 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
11796 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
11797 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
11798 Explicitly set wv->help. Use `TRUE' rather than `True'.
11799 (menu_help_callback): Use empty_string.
11800
11801 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
11802 (Fx_popup_dialog): Explicitly init f.
11803 (w32_menu_display_help): Use empty_string.
11804
4d083a8f
RS
118052001-10-29 Richard M. Stallman <rms@gnu.org>
11806
b2304472
RS
11807 * fns.c (Frequire): Detect recursive try to require the same
11808 feature 3 or more levels deep, and get error.
11809 (require_unwind): New subroutine.
11810 (require_nesting_list): New variable.
11811 (syms_of_fns): Init and staticpro it.
11812
4d083a8f
RS
11813 * print.c (print_object): Clarify indication of insertion type.
11814
2fe41216
EZ
118152001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
11816
90480000
EZ
11817 * coding.c (syms_of_coding): Document that locale-coding-system is
11818 used for decoding input on X.
11819
2fe41216
EZ
11820 * window.c (Fscroll_left, Fscroll_right): Doc fix.
11821
f00691a3 118222001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
74e79967
PJ
11823
11824 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
11825 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
11826
60ebcfe8
GM
118272001-10-29 Gerd Moellmann <gerd@gnu.org>
11828
9a7bdceb
GM
11829 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
11830 use NO_CURSOR if cursor_in_non_selected_windows is false.
11831
3f08fcd2
GM
11832 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
11833 the slant attribute if FRAME is t.
11834
0ccfdad2
GM
11835 * xfns.c (x_set_internal_border_width): Set frame garbaged
11836 when X window doesn't exist yet.
11837
ef253080
GM
11838 * xterm.c (x_after_update_window_line): Clear internal border
11839 in different circumstances.
b116830b 11840
60ebcfe8
GM
11841 * xterm.c (XTread_socket) <KeyPress>: Don't use
11842 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
11843 <handa@etl.go.jp>.
11844
73d25f9c
EZ
118452001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
11846
11847 * m/ibms390.h: New file. From Adam Thornton
11848 <athornton@sinenomine.net>.
11849
cac1daf0
GM
118502001-10-28 Gerd Moellmann <gerd@gnu.org>
11851
053b3256 11852 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
b116830b 11853
cac1daf0
GM
11854 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
11855 a loop counter.
11856
f00691a3 118572001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13b1a09c 11858
186486eb
PJ
11859 * emacs.c: Use argv[0] instead of emacs when -t was specified.
11860
4707d2d0
PJ
11861 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
11862 keyword].
11863 Fix typos in comments.
b116830b 11864
d883731c
PJ
11865 * emacs.c (bug_reporting_address): New function.
11866 Use it when displaying usage message.
11867
04012254
PJ
11868 * minibuf.c (read_minibuf): Remove unused external declaration of
11869 variable `Qread_only'.
11870
13b1a09c
PJ
11871 * keymap.c (access_keymap): Remove unused variable `charset'.
11872
5bbf4378
MB
118732001-10-28 Miles Bader <miles@gnu.org>
11874
11875 * xfaces.c (merge_face_heights): Handle TO being relative as well.
11876 Remove #ifdef'd-out code.
11877 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
11878 (syms_of_xfaces): Initialize them.
11879
1ce1e4ee
JR
118802001-10-27 Jason Rumney <jasonr@gnu.org>
11881
11882 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
11883 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
11884 position using the system caret.
11885
11886 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
11887 (w32_system_caret_height, w32_system_caret_x)
11888 (w32_system_caret_y): New variables for tracking system caret.
11889 (w32_initialize): Initialize them.
c2d53558 11890 (x_display_and_set_cursor): Make system caret follow the active cursor.
1ce1e4ee 11891
c2d53558
SM
11892 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
11893 New messages types.
1ce1e4ee
JR
11894
11895 * w32term.c (note_mouse_highlight): Clear old help_echo.
11896
f00691a3 118972001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e30ce42 11898
bb4600a4
PJ
11899 * xterm.c: Fix typo in a comment.
11900
7db35a48
PJ
11901 * emacs.c: Fix typos in comments.
11902 Remove unnecessary spaces.
11903 Change doc-string comments to `new style' [w/`doc:' keyword].
11904 (USAGE2): Fix typos in usage string.
11905
a7248e4f
PJ
11906 * xterm.c: Fix typo in a comment.
11907
4e30ce42
PJ
11908 * lisp.h: (gdb_lisp_params): Remove code in #if 0 which is now in
11909 emacs.c.
11910
62725a92
GM
119112001-10-27 Gerd Moellmann <gerd@gnu.org>
11912
798dbe1f 11913 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
c2d53558 11914 instead of 1/2 line_height in the heuristic for skipping
798dbe1f
GM
11915 farther backward when target_y was not reached.
11916
62725a92
GM
11917 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
11918 Display errno only if non-zero.
11919 (sound_warning): New function.
11920 (vox_configure): Don't treat failing to set sample rate as error.
11921 (various places): Improve error messages.
11922
d4e34d24
EZ
119232001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
11924
944e6f60
EZ
11925 * fileio.c (Faccess_file): Run the argument filename through
11926 Fexpand_file_name, before using it.
11927
d4e34d24
EZ
11928 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
11929 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
11930
38d2af0c
GM
119312001-10-26 Gerd Moellmann <gerd@gnu.org>
11932
da80a8d5
GM
11933 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
11934
38d2af0c
GM
11935 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
11936 Fix clearing in the case of scroll bars on the right.
c2d53558 11937
45de4a6f 119382001-10-26 Juanma Barranquero <lektu@terra.es>
56f508dd
EZ
11939
11940 * w32gui.h (XImage): Add a dummy typedef.
11941
fbd5ceb2
GM
119422001-10-26 Gerd Moellmann <gerd@gnu.org>
11943
c2d53558 11944 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
fbd5ceb2 11945
b23236fb
EZ
119462001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
11947
11948 * frame.c (Fframe_parameter): Fix last change.
11949
5d991fc4
EZ
11950 * fileio.c: Revert last change (which removed old commented-out
11951 version of expand-file-name). Add a comment that explains why
11952 this old version should not be removed.
11953
879eadc3
GM
119542001-10-25 Gerd Moellmann <gerd@gnu.org>
11955
75700ff2
GM
11956 * frame.c (Fframe_parameter): Fix a bug whereby some
11957 ``artificial'' frame parameters, like `minibuffer' were not
11958 obtained by calling Fframe_parameters.
11959
dfe92a6a
GM
11960 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
11961 cursor differently.
11962
879eadc3
GM
11963 * xdisp.c (move_it_vertically_backward): Compute line height
11964 differently. Add heuristic to try to be more compatible to 20.x.
11965
e1010ebe
SM
119662001-10-25 Stefan Monnier <monnier@cs.yale.edu>
11967
d73a471b
SM
11968 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
11969
d6da5a06
GM
11970 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
11971 boolean.
e1010ebe 11972
f66bd220
MB
119732001-10-25 Miles Bader <miles@gnu.org>
11974
11975 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
11976 BG is a pointer to a structure, not a structure.
11977 (gif_format, png_format): Add missing commas.
11978
d436d538
RS
119792001-10-24 Richard M. Stallman <rms@gnu.org>
11980
11981 * xfaces.c (Fface_attributes_as_vector): New function.
c2d53558 11982 (syms_of_xfaces): Defsubr it.
d436d538 11983
f00691a3 119842001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
075c507b
PJ
11985
11986 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
11987 variable `area'.
11988
f00691a3 119892001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d492b584 11990
c2d53558 11991 * search.c (scan_newline): Remove unused variable `selective_display'.
d492b584 11992
e2a57b34
MB
119932001-10-25 Miles Bader <miles@gnu.org>
11994
11995 * dispextern.h (struct image): Add `background',
11996 `background_valid', and `background_transparent' fields.
11997 (image_background, image_background_transparent): New declarations.
11998 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
11999 * xfns.c (image_background, image_background_transparent)
12000 (four_corners_best): New functions.
c2d53558 12001 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
e2a57b34
MB
12002 (gs_format): Add `:background' entry.
12003 (lookup_image): Set IMG's background color if specified.
12004 (pbm_load, xbm_load_image, png_load): Set IMG's background field
12005 when appropriate.
12006 (x_clear_image_1): Reset `background_valid' and
12007 `background_transparent_valid' fields.
12008 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
12009 calculating it here. Set IMG's background_transparent field.
12010 (enum xpm_keyword_index): Add XPM_BACKGROUND.
12011 (enum png_keyword_index): Add PNG_BACKGROUND.
12012 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
12013 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
12014 (enum gif_keyword_index): Add GIF_BACKGROUND.
12015 (enum gs_keyword_index): Add GS_BACKGROUND.
c2d53558 12016 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
e2a57b34
MB
12017 Pre-calculate image background color where necessary.
12018 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
12019 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
12020 color to use for image glyph reliefs.
12021
b547b6e8
GM
120222001-10-24 Gerd Moellmann <gerd@gnu.org>
12023
d9e3b8c6
GM
12024 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
12025 in full-width rows.
c2d53558 12026
b547b6e8
GM
12027 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
12028 Fix clearing of area not covered by scroll bar.
12029
f00691a3 120302001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2beb36f9
PJ
12031
12032 * xterm.c: (x_insert_glyphs): Remove unused variables `real_end'
12033 and `real_start'.
c2d53558 12034 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
2beb36f9
PJ
12035 (glyph_rect): Remove unused variable `area'.
12036
76cb5e06
GM
120372001-10-24 Gerd Moellmann <gerd@gnu.org>
12038
bdbdebff 12039 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
c2d53558
SM
12040
12041 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
12042 (row_containing_pos): Take additional argument DY.
12043 Treat rows ending in middle of char differently.
62e33982
GM
12044 (display_line): Handle tabs on window systems differently.
12045
12046 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
12047 with additional argument.
12048
12049 * dispextern.h (row_containing_pos): Adjust prototype.
12050
76cb5e06
GM
12051 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
12052 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
12053 (try_window_id, try_window_reusing_current_matrix)
12054 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
6c465a15 12055 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
76cb5e06 12056
f00691a3 120572001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
996fee11 12058
c9e60620
PJ
12059 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
12060 gnuemacs).
12061 (HAVE_BOXES): Fix typo in comment.
12062 (push_menu_pane): Fix typo in comment.
12063
3b552d56
PJ
12064 * xdisp.c: (display_prop_string_p): Remove unused local declaration
12065 of `Qwhen'.
12066 (single_display_prop_string_p): Remove unused local declarations
12067 of `Qwhen' and `Qmargin'.
12068 (string_buffer_position): Remove unused variable `around'.
12069 (store_frame_title): Remove unused variable `width'.
12070
15c565ac
PJ
12071 * window.c: Don't define max.
12072 (coordinates_in_window): Remove unused variable `uy'.
12073
a8818eb9
PJ
12074 * widget.c: Don't define max.
12075
996fee11
PJ
12076 * process.c: Don't define max.
12077 (create_process): Remove unused variable `buffer'.
12078
496e1a5b
GM
120792001-10-23 Gerd Moellmann <gerd@gnu.org>
12080
c2d53558 12081 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
496e1a5b 12082
5905ae8b
EZ
120832001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
12084
12085 * xfaces.c (Finternal_set_lisp_face_attribute)
12086 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
12087 frame is on a windowed display.
12088
24db49fb
GM
120892001-10-23 Gerd Moellmann <gerd@gnu.org>
12090
c2d53558
SM
12091 * dispnew.c (sync_window_with_frame_matrix_rows):
12092 Fix handling of windows which aren't full-width, fix handling
c51488cd
GM
12093 of marginal areas.
12094
c2d53558 12095 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
24db49fb 12096
f0487f05
EZ
120972001-10-23 Andreas Schwab <schwab@suse.de>
12098
12099 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
12100 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
12101
f0a48a01
GM
121022001-10-23 Gerd Moellmann <gerd@gnu.org>
12103
c2d53558 12104 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
f0a48a01
GM
12105 REAL_END. Notice if cursor gets overwritten.
12106 (notice_overwritten_cursor): Take X positions as parameters.
12107 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
12108 around call to x_draw_glyphs.
12109
f00691a3 121102001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
a50a10a0 12111
fc11dff0
PJ
12112 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
12113 instead of C) and usage.
a50a10a0 12114
fc11dff0
PJ
12115 * editfns.c (char-to-string): Fix argument names (use CHAR instead
12116 of C) and usage.
a50a10a0
PJ
12117
12118 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
12119 `left', `max_width' and `max_height'.
12120
8738febd
GM
121212001-10-23 Gerd Moellmann <gerd@gnu.org>
12122
12123 * xdisp.c (display_line): For a tab continued to the next line,
12124 set row's ends_in_middle_of_char_p.
12125
653c329b
GM
121262001-10-22 Gerd Moellmann <gerd@gnu.org>
12127
12128 * xdisp.c (display_line): Fix computation of continuation lines
12129 width for TABs.
12130
f00691a3 121312001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
f958c5ac 12132
7ba51063
PJ
12133 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
12134 `Qlaplace'.
12135
f958c5ac
PJ
12136 * fileio.c: Remove unused code.
12137
eb360291
MB
121382001-10-22 Miles Bader <miles@gnu.org>
12139
12140 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
12141 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
12142 Remove `DOC_STRINGS_IN_COMMENTS' cases.
12143
98515cf0
JR
121442001-10-21 Jason Rumney <jasonr@gnu.org>
12145
12146 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
12147
93026d88
EZ
121482001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
12149
12150 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
12151 (Finsert_string): Avoid the multi-line string literals warning.
12152
c9a95b79
MB
121532001-10-22 Miles Bader <miles@gnu.org>
12154
12155 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
12156 (Fdocumentation): Don't use it.
12157 (syms_of_doc): Don't initialize it.
12158
12159 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
12160 * print.c (Fwith_output_to_temp_buffer): Likewise.
12161 * window.c (Fsave_window_excursion): Likewise.
c2d53558 12162 * editfns.c (Fsave_excursion, Fsave_current_buffer)
c9a95b79 12163 (Fsave_restriction): Likewise.
c2d53558
SM
12164 * eval.c (Frun_hooks, Frun_hook_with_args)
12165 (Frun_hook_with_args_until_failure)
12166 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
12167 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
12168 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
c9a95b79
MB
12169 (Funwind_protect, Fcondition_case): Likewise.
12170 * coding.c (Ffind_operation_coding_system): Likewise.
12171 * keyboard.c (Ftrack_mouse): Likewise.
12172
a3b10252
MB
121732001-10-21 Miles Bader <miles@gnu.org>
12174
c2d53558 12175 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
a3b10252
MB
12176 (Fmake_hash_table): Add usage: string to doc string.
12177 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
c2d53558 12178 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
a3b10252
MB
12179 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
12180 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
12181 (Fml_prefix_argument_loop): Likewise.
12182
f00691a3 121832001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c6f73eec 12184
c2d53558 12185 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
888ebd13 12186
c6f73eec
PJ
12187 * sysdep.c (init_sys_modes): Change doc-string comments to `new
12188 style' [w/`doc:' keyword].
12189
12190 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
12191 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
12192 comments to `new style' [w/`doc:' keyword].
12193
3cf3436e
JR
121942001-10-21 Jason Rumney <jasonr@gnu.org>
12195
12196 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
12197
c169b8f1
JR
12198 * w32term.c (remember_mouse_glyph): New function.
12199 (w32_mouse_position): Use it.
12200 (note_mouse_movement): If the mouse moved off the glyph, remember
12201 its new position.
c2d53558 12202
4fdd691b
JR
12203 * w32term.h (struct w32_output): Correct spelling of x_compatible.
12204 (w32_display_info): Add mouse_face_overlay.
12205
c169b8f1
JR
12206 * w32term.c (notice_overwritten_cursor): Renamed from
12207 note_overwritten_text_cursor. Rewritten to take glyph widths into
12208 account.
12209 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
12210 (fast_find_string_pos): New function.
12211 (fast_find_position): Return the correct vpos. Add parameter
12212 STOP. In the final row, stop before glyphs having STOP as object.
12213 Don't consider glyphs that are not from a buffer.
12214 (fast_find_position) [0]: Add a presumably more correct version
12215 for after 21.1.
12216 (expose_window_tree, expose_frame): Don't compute intersections here.
12217 (expose_window): Do it here instead.
12218 (expose_window_tree, expose_window, expose_line): Return 1 when
12219 overwriting mouse-face.
12220 (expose_window): If W is the window currently being updated, mark
12221 the frame garbaged.
12222 (expose_frame): If mouse-face was overwritten, redo it.
12223 (x_use_underline_position_properties): New variable.
12224 (syms_of_xterm): DEFVAR_BOOL it.
12225 (x_draw_glyph_string): Add comment to use it in future.
12226 (x_draw_glyph_string): Restore clipping after drawing box.
12227 Fix a computation of the underline position.
12228 (w32_get_glyph_string_clip_rect): Minor cleanup.
12229 (x_fill_stretch_glyph_string): Remove an assertion.
12230 (x_produce_glyphs): Don't convert multibyte characters
12231 to unibyte characters in unibyte buffers.
12232 (cursor_in_mouse_face_p): New function.
12233 (x_draw_stretch_glyph_string): Use it to choose a different GC
12234 when drawing a cursor within highlighted text. Don't draw
12235 background again if it has already been drawn.
12236 (x_draw_glyph_string_box): Don't draw a full-width
12237 box just because the glyph row's full_width_p flag is set.
12238 (x_draw_glyphs): Fix computation of rightmost x for
12239 full-width rows.
12240 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
12241 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
12242 change bottom shadow accordingly. Some cleanup.
12243 (x_update_window_end): Handle overwritten mouse face
12244 also for tool bar windows.
12245 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
12246 DRAW is DRAW_IMAGE_RAISED.
12247 (clear_mouse_face): Return 1 if text with mouse face was
2c568af5
SM
12248 actually redrawn. Make the function static.
12249 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
c169b8f1
JR
12250 optimize away highlighting if we pass over that same overlay again.
12251 (note_mouse_highlight): Call mouse_face_overlay_overlaps
12252 to detect a case where we have to highlight a different region
12253 despite not having left the currently highlighted region.
12254 Set mouse_face_overlay in the x_display_info. Avoid changing the
12255 mouse pointer shape when show_mouse_face has already done it, or
12256 there is no need. Handle mouse-face and help-echo in strings.
12257 (glyph_rect): New function.
12258 (w32_mouse_position): Use it to raise the threshold for mouse
12259 movement event generation.
12260 (w32_initialize_display_info): Initialize the x_display_info's
12261 mouse_face_overlay.
12262 (w32_set_vertical_scroll_bar): Don't clear a zero height
12263 or width area.
12264 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
12265 a widget to zero height.
12266
3cf3436e 12267 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
4fdd691b 12268 Protect unibyte strings created by replacing their multibyte
3cf3436e
JR
12269 equivalents in menu_items.
12270 (w32_menu_show): Don't overwrite an item's name with its key
12271 description in case the description is a multibyte string.
12272 (single_submenu): Some cleanup.
12273
12274 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
12275 (postprocess_image): New function.
12276 (lookup_image): Call it for all image types except PostScript.
12277 (x_kill_gs_process): Call postprocess_image.
12278 (tiff_error_handler, tiff_warning_handler): New functions.
12279 (tiff_load): Install them as handlers.
12280 (x_kill_gs_process): Recognize if someone has cleared the image
12281 cache under us.
12282 (valid_image_p): Protect better against invalid image
12283 specifications. Previous code could signal an error.
12284 (Fx_hide_tip, Fshow_tip): Doc fix.
12285 (Fv_max_tooltip_size): New variable.
12286 (syns_of_xfns): DEFVAR_LISP it.
12287 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
12288 window buffer to *tip* right after creating the frame. Set frame's
12289 window_width. Use a maximum tooltip size specified by
12290 Vx_max_tooltip_size, if that has valid contents.
12291 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
12292 Make sure the tooltip is completely visible.
12293 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
12294 (Fx_create_frame): Adjust the frame's height for presence
12295 of the tool bar before calling x_figure_window_size.
12296 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
12297 when the window gets smaller.
12298 (x_set_foreground_color): Set frame's cursor_pixel.
12299 (x_set_foreground_color, x_set_background_color): Cleaned up.
12300 (x_set_font): Handle case of x_new_fontset returning the same name
12301 as before, although there was a change in fontsets.
12302
386ca361
MB
123032001-10-21 Miles Bader <miles@gnu.org>
12304
c2d53558 12305 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
386ca361
MB
12306 (Flogxor): Add usage: string to doc string.
12307 * charset.c (Fstring): Likewise.
12308 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
12309 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
12310
f00691a3 123112001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14ff1ee0 12312
03be2694
PJ
12313 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
12314
12315 * alloc.c: Reindent DEFUNs with doc: keywords.
12316
12317 * abbrev.c (Finsert_abbrev_table_description): Reindent.
12318
14ff1ee0
PJ
12319 * frame.c: Change doc-string comments to `new style' [w/`doc:'
12320 keyword].
12321
2f147815 12322See ChangeLog.9 for earlier changes.
6922b018
KH
12323
12324;; Local Variables:
49b3bd82 12325;; coding: iso-2022-7bit
6922b018 12326;; End:
2a34a036 12327
2f147815 12328 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
2a34a036
GM
12329 Copying and distribution of this file, with or without modification,
12330 are permitted provided the copyright notice and this notice are preserved.
ab5796a9
MB
12331
12332;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4