(Changing Files): Fix argname.
[bpt/emacs.git] / src / ChangeLog
CommitLineData
4e039f3f
EZ
12004-02-16 Jesper Harder <harder@ifa.au.dk> (tiny change)
2
3 * cmds.c (Fend_of_line): Doc fix.
4
7b5368c1
EZ
52004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
6
7 * keyboard.c (prev_read): New static variable.
8 (read_avail_input): Use it to zero out only those slots in buf[]
9 that were used last time we were called.
10
ca4bc494
EZ
112004-02-16 Eli Zaretskii <eliz@elta.co.il>
12
13 * Makefile.in (obj): Move fringe.o from here...
14 (XOBJ, MAC_OBJ): ...to here.
15
159c348e
SE
162004-02-16 Stephen Eglen <stephen@gnu.org>
17
18 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
19
d2f14999
SM
202004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
21
22 * data.c (Fbyteorder):
23 * fringe.c (Fdefine_fringe_bitmap):
24 * xdisp.c (handle_single_display_prop):
25 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
26
8d50508a
JR
272004-02-16 Jason Rumney <jasonr@gnu.org>
28
29 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
30
dd4497dc
ST
312004-02-15 Steven Tamm <steventamm@mac.com>
32
33 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
34 controlling emulation of a three button mouse with option and
35 command keys.
36 (Qreverse, mac_get_enumlated_btn): Handle the emulation
37 (mac_event_to_emacs_modifiers, XTread_socket): Ditto
38
c9159cb3
KS
392004-02-15 Kim F. Storm <storm@cua.dk>
40
2cc52658
KS
41 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
42
c9159cb3
KS
43 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
44 Perform byte-swapping.
45
12fde2dc
KS
462004-02-14 Kim F. Storm <storm@cua.dk>
47
48 * dispextern.h (struct draw_fringe_bitmap_params): Change member
49 bits from char to short to facilitate wider bitmaps.
50 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
51 member.
52
53 * fringe.c (struct fringe_bitmap): Change member bits from char to
54 short to facilitate 16 bits wide bitmaps. Modify all standard
55 bitmaps accordingly.
56 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
57 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
58 (draw_fringe_bitmap): Ditto.
59 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
60 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
61 handle up to 16 bits wide bitmaps.
62 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
f21a7192 63 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
12fde2dc
KS
64
65 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
66 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
67 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
68
69 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
70 so it is no longer necessary to expand them here.
71
72 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
73
9d7271e8
KS
742004-02-12 Kim F. Storm <storm@cua.dk>
75
76 * window.c (Fwindow_fringes): Doc fix.
77
706c1e4f
JD
782004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
79
80 * xselect.c (x_get_foreign_selection): Add new optional parameter
81 time_stamp.
82 (Fx_get_selection_internal): Ditto, pass time_stamp to
83 x_get_foreign_selection.
84
85 * data.c (Fbyteorder): New function.
86
c2d12b5d
JD
872004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
88
89 * atimer.c: Move include stdio.h to same place as in other files.
90
91 * region-cache.c: Ditto.
92
93 * sysdep.c: Ditto.
94
95 * xfaces.c: Ditto.
96
4c1947b9
SS
972004-02-09 Sam Steingold <sds@gnu.org>
98
99 * w32term.c (w32_draw_fringe_bitmap): Fixed a typo in the last patch.
100
82722af3
KS
1012004-02-09 Kim F. Storm <storm@cua.dk>
102
103 * fringe.c: New file. Move original fringe related declarations
104 and code from dispextern.h and xdisp.c here.
105 Rework code to support user defined fringe bitmaps, redefining
106 standard bitmaps, ability to overlay user defined bitmap with
107 overlay arrow bitmap, and add faces to bitmaps.
108 (Voverflow_newline_into_fringe): Declare here.
109 (enum fringe_bitmap_align): New enum.
110 (..._bits): All bitmaps are now defined without bitswapping; that
111 is now done in init_fringe_once (if necessary).
112 (standard_bitmaps): New array with specifications for the
113 standard fringe bitmaps.
114 (fringe_faces): New array.
115 (valid_fringe_bitmap_id_p): New function.
116 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
117 (draw_fringe_bitmap): New function which draws fringe bitmap,
118 possibly overlaying bitmap with cursor in right fringe or the
119 overlay arrow in the left fringe.
120 (update_window_fringes): Do not handle overlay arrow here.
121 Compare and copy fringe bitmap faces.
122 (init_fringe_bitmap): New function.
123 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
124 define and destroy user defined fringe bitmaps.
125 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
126 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
127 (syms_of_fringe): New function. Defsubr new DEFUNs.
128 DEFVAR_LISP Voverflow_newline_into_fringe.
129 (init_fringe_once, init_fringe): New functions.
130 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
4c1947b9 131
82722af3
KS
132 * Makefile.in (obj): Add fringe.o.
133 (fringe.o): New dependencies.
134
135 * dispextern.h (FRINGE_ID_BITS): New definition for number of
136 bits allocated to hold a fringe number. Increase number of bits
137 from 4 to 8 to allow user defined fringe bitmaps.
138 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
139 left_user_fringe_face_id, right_user_fringe_bitmap,
140 right_user_fringe_face_id.
141 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
142 Move to new file fringe.c.
143 (MAX_FRINGE_BITMAPS): Define here.
144 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
145 and overlay_p. Change member which to int.
146 (struct redisplay_interface): New members define_fringe_bitmap
147 and destroy_fringe_bitmap.
148 (valid_fringe_bitmap_id_p): Add prototype.
149 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
150
151 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
152 arrows.
153 (update_frame): Do flush_display if force_flush_display_p to
154 ensure display (specifically fringes) are updated in a timely
155 manner when resizing the frame by dragging the mouse.
156 (update_window_line): Update row if overlay arrow changed.
157 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
158 or overlay arrow changed.
159
160 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
161 syms_of_fringe, and init_fringe.
162
163 * frame.h (struct frame): New member force_flush_display_p.
164
165 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
166 Add prototypes.
167
a3993cc8
KS
168 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
169 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
170 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
171 Use cursor color for displaying cursor in fringe.
82722af3
KS
172 (x_redisplay_interface): Add null handlers for
173 define_fringe_bitmap and destroy_fringe_bitmap functions.
174
175 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
176 xterm.c to handle overlayed fringe bitmaps and to use cursor color
177 for displaying cursor in fringe.
178 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
179 specific functions to define and destroy fringe bitmaps in fringe_bmp.
180 (w32_redisplay_interface): Add them to redisplay_interface.
181 (w32_term_init): Call w32_init_fringe instead of explicitly
182 defining fringe bitmaps in fringe_bmp array.
183 (x_delete_display): Call w32_reset_fringes instead of explicitly
184 destroying fringe bitmaps in fringe_bmp array.
185
186 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
187 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
188 (continued_bits, continuation_bits, ov_bits, first_line_bits)
189 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
190 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
191 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
192 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
193 Move fringe handling vars and code to new file fringe.c.
194 (handle_display_prop): Handle left-fringe and right-fringe
195 display properties; store user fringe bitmaps in iterator.
196 (move_it_in_display_line_to): Handle cursor in fringe at eob.
197 (clear_garbaged_frames): Set force_flush_display_p if resized.
198 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
199 (display_line): Handle cursor in fringe at eob.
200 (display_line): Set row user fringe bitmaps from iterator.
201
202 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
203 Use cursor color for displaying cursor in fringe.
204 (x_redisplay_interface): Add null handlers for
205 define_fringe_bitmap and destroy_fringe_bitmap functions.
206
030400eb
JD
2072004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
208
209 * macfns.c (Fx_change_window_property): Make doc string and
210 parameters same as for X version.
211
212 * w32fns.c (Fx_change_window_property): Ditto.
213
3af55251
KS
2142004-02-07 Kim F. Storm <storm@cua.dk>
215
ec110e9e
KS
216 * xdisp.c (hscroll_window_tree): Position cursor near to right
217 margin in hscrolled window when jumping to end of line (rather
218 than centering cursor).
219
3af55251
KS
220 * process.c (wait_reading_process_input): Don't do adaptive read
221 buffering if waiting for a specific process.
222
b0c138ce
LT
2232004-02-05 Luc Teirlinck <teirllm@auburn.edu>
224
225 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
226 (Fread_minibuffer, Feval_minibuffer)
227 (Fread_string, Fread_no_blanks_input)
228 (Fcompleting_read): Doc fixes.
229 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
230 completion-regexp-list. Define Qcase_fold_search and staticpro it.
231 (read_minibuf): Fix initial comment.
232 (Ftry_completion, Fall_completions, Ftest_completion): Bind
233 case-fold-serach to the value of completion-ignore-case when
234 checking completion-regexp-list.
235 (Fdisplay_completion_list): Make it handle arguments that are
236 symbols. Doc fix.
237
9676f5ad 2382004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
64d1e373 239
9676f5ad 240 * xterm.h: Add declaration of free_frame_menubar.
64d1e373 241
9676f5ad
JD
242 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
243 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
b0c138ce 244 (Fx_change_window_property): Add declaration of parameters type and
9676f5ad 245 format. Remove unused variable cons.
5b698285
JD
246
247 * xselect.c: Include stdio,h.
248
fc1d15f6
KH
2492004-02-05 Kenichi Handa <handa@m17n.org>
250
ebaff4af
KH
251 * fns.c (Fset_char_table_range): Fix previous change.
252
fc1d15f6
KH
253 * buffer.c (Fset_buffer_multibyte): Fix docstring.
254
9676f5ad
JD
2552004-02-04 Luc Teirlinck <teirllm@auburn.edu>
256
257 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
258
da75761f
SM
2592004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
260
261 * keymap.c (Vmouse_events): Rename from Vmenu_events.
262 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
263
13c5d120
KH
2642004-02-04 Kenichi Handa <handa@m17n.org>
265
266 * fns.c (Fset_char_table_range): Handle charsets ascii,
267 eight-bit-control, and eight-bit-graphic correctly.
268
2883d842
JR
2692004-02-03 Jason Rumney <jasonr@gnu.org>
270
271 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
272
273 * w32fns.c (x_to_w32_font): Likewise.
274
69eff41f
JD
2752004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
276
277 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
278 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
279
280 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
281 ClientMessages.
282
283 * xselect.c: Include termhooks.h and X11/Xproto.h
284 (x_check_property_data, x_fill_property_data)
285 (x_property_data_to_lisp, mouse_position_for_drop)
286 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
da75761f 287 (Fx_send_client_event): Move here from xfns.c.
69eff41f
JD
288 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
289
da75761f 290 * xfns.c (x-send-client-message): Move to xselect.c
69eff41f
JD
291 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
292 OUTER_P.
293 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
294 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
295 if vector_ret_p is true.
296 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
69eff41f 297
dcdbbb5d
EZ
2982004-02-02 Eli Zaretskii <eliz@elta.co.il>
299
300 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
301 basename of FILE relative to it, not FILE itself.
302
09721b31
KH
3032004-02-02 Kenichi Handa <handa@m17n.org>
304
305 * coding.c (coding_restore_composition): Check invalid
306 composition data more rigidly.
307
eb996101
LT
3082004-01-30 Luc Teirlinck <teirllm@auburn.edu>
309
310 * fileio.c (Fread_file_name_internal): Correctly handle the case
311 where insert-default-directory is nil.
312 (Fread_file_name): Always return an empty string if the user exits
313 with an empty minibuffer. Adapt the docstring accordingly.
314 (syms_of_fileio): Adapt the docstring of insert-default-directory
315 to the change in Fread_file_name.
316
a0367d42
EZ
3172004-01-29 Eli Zaretskii <eliz@elta.co.il>
318
319 * alloca.c [!alloca]: Fix the prototype for xfree.
320
13f52ed8
KH
3212004-01-29 Kenichi Handa <handa@m17n.org>
322
323 * fns.c (string_char_to_byte): Optimize for ASCII only string.
324 (string_byte_to_char): Likewise.
325
d57625a0
JR
3262004-01-28 Peter Runestig <peter@runestig.com>
327
328 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
329
911c78b4
ST
3302004-01-27 Steven Tamm <steventamm@mac.com>
331
332 * unexmacosx.c (unexec_copy): Do not copy more than was
333 requested to prevent overwriting during unexec.
334
eb37b8fd
JD
3352004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
336
ce38070a
JD
337 * process.c (sigchld_handler): Add comment about not calling malloc.
338
eb37b8fd
JD
339 * process.h: Add extern to synch_process_termsig.
340
21a3e657
ST
3412004-01-27 Steven Tamm <steventamm@mac.com>
342
da75761f
SM
343 * macterm.c (make_mac_frame, make_mac_terminal_frame):
344 Move setting of scroll bars from make_mac_frame to
345 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
21a3e657 346
d62a265d
RS
3472004-01-26 Richard M. Stallman <rms@gnu.org>
348
349 * search.c (Freplace_match): Handle nonexistent
350 back-references properly.
351
3522004-01-03 Richard M. Stallman <rms@gnu.org>
353
354 * window.c (decode_any_window): New function.
355 (Fwindow_height, Fwindow_width, Fwindow_edges)
356 (Fwindow_pixel_edges, Fwindow_inside_edges)
357 (Fwindow_inside_pixel_edges): Use decode_any_window.
358
ff236419
JD
3592004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
360
361 * process.h: synch_process_termsig new variable.
362
363 * callproc.c: Define synch_process_termsig.
364 (Fcall_process): Initiate synch_process_termsig to zero and
365 check if non-zero and get signal name after subprocess has ended.
366
367 * process.c (sigchld_handler): Set synch_process_termsig
368 if terminated by a signal. synch_process_death setting removed.
369
370 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
371
41b867ea
AS
3722004-01-26 Andreas Schwab <schwab@suse.de>
373
374 * print.c (print_preprocess): Declare size as EMACS_INT to not
375 lose bits.
376 (print_object): Likewise.
377 * alloc.c (Fpurecopy): Likewise.
378
a08084ff
LT
3792004-01-25 Luc Teirlinck <teirllm@auburn.edu>
380
381 * window.c (Fwindow_minibuffer_p): Doc fix.
382
b19ac475
JY
3832004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
384
385 * editfns.c (Fformat): Make both passes accept the same set of flags.
386
fe905025
KH
3872004-01-23 Kenichi Handa <handa@m17n.org>
388
389 * fns.c (Fmd5): If OBJECT is a buffer different from the current
390 one, set buffer to OBJECT temporarily.
391
438fc6c0
SM
3922004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
393
455316e2
SM
394 * keyboard.c (kbd_buffer_gcpro): Remove.
395 (kbd_buffer_store_event, clear_event, Fdiscard_input)
396 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
397 Don't initialize and/or maintain the variable any more. It was made
398 redundant by my commit of 2003-06-15.
399
438fc6c0
SM
400 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
401
5335a4ee
JD
4022004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
403
404 * lisp.h: Add undef DECL_ALIGN.
405
dcdaeebc
SM
4062004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
407
408 * process.c (wait_reading_process_input) [SYNC_INPUT]:
409 Check interrupt_input_pending explicitly.
410
411 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
412
413 * keyboard.c (handle_async_input): New fun,
414 extracted from input_available_signal.
415 (input_available_signal, reinvoke_input_signal): Use it.
416
9076a823
SM
4172004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
418
d7107586
SM
419 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
420
421 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
422 manipulation macros for when tags are in the lower bits.
423 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
424 (DECL_ALIGN): New macro.
425 (DEFUN): Use it.
426
427 * lisp.h [ENABLE_CHECKING]: Don't force union type.
428
429 * s/darwin.h (__attribute__): Remove outdated workaround.
430
431 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
432
433 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
434 Don't check range of malloc address.
435 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
436
9076a823
SM
437 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
438
439 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
440
ba029065
KH
4412004-01-19 Kenichi Handa <handa@m17n.org>
442
443 * fontset.c (fontset_font_pattern): Fix previous change.
444
7af0e8d7
MB
4452004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
446
447 * xdisp.c (Voverflow_newline_into_fringe)
448 (move_it_in_display_line_to, redisplay_internal)
449 (update_window_fringes, redisplay_window, display_line, window):
450 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
451 that it compiles without a window-system.
452 * dispnew.c (direct_output_for_insert, update_window): Likewise.
453
77a9cf69
KS
4542004-01-16 Kim F. Storm <storm@cua.dk>
455
456 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
457
458 * buffer.c (init_buffer_once): Set buffer_defaults and
459 buffer_local_flags for indicate_buffer_boundaries.
460 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
461 default- variable for it.
462
463 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
464 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
d7107586 465 New members exact_window_width_line_p and cursor_in_fringe_p for
77a9cf69
KS
466 overflowing newlines into right fringe.
467 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
468 and indicate_bottom_line_p for buffer boundaries and scrolling.
469 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
470 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
471 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
472 and HOLLOW_SQUARE_BITMAP.
473 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
474 Add prototypes.
475
476 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
477 instead of related indicator fields.
478 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
479 (direct_output_for_insert): Handle exact width lines like
480 contined lines. Call update_window_fringes.
481 (update_window): Call update_window_fringes.
482 (scrolling_window): Don't skip desired rows with changed bitmaps.
483 Check if fringe bitmaps changes when assigning scrolled rows.
484
485 * xdisp.c (Voverflow_newline_into_fringe): New variable.
486 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
487 (move_it_in_display_line_to): Overflow newline into fringe for
488 rows that are exactly as wide as the window.
489 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
490 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
491 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
492 (fringe_bitmaps): Add new bitmaps.
493 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
494 Select proper bitmap for cursor in fringe when appropriate.
495 Handle alignment of bitmap to top or bottom of row.
496 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
497 done by update_window_fringes.
498 (update_window_fringes, draw_window_fringes): New functions.
499 (redisplay_internal): Call update_window_fringes in case only
500 cursor row is updated.
501 (redisplay_window): Call update_window_fringes.
502 Explicitly call draw_window_fringes if redisplay was done using
503 the current matrix or the overlay arrow is in the window.
504 (try_window_reusing_current_matrix): Mark scrolled rows for
505 fringe update (to update buffer-boundaries / scrolling icons).
506 (find_last_unchanged_at_beg_row): Handle exact width lines line
507 continued lines.
508 (display_line): Overflow newline into fringe for rows that are
509 exactly as wide as the window. Don't append space for newline
d7107586 510 in this case.
77a9cf69
KS
511 (notice_overwritten_cursor): Explicitly clear cursor bitmap
512 in fringe as if it had been overwritten.
513 (erase_phys_cursor): Erase cursor bitmap in fringe.
d7107586 514 (syms_of_xdisp): Mark show-trailing-whitespace and
77a9cf69
KS
515 void-text-area-pointer as user options.
516 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
d7107586 517
77a9cf69
KS
518 * xterm.c (x_update_window_end): Call draw_window_fringes.
519 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
520 in row instead of actually drawing fringe bitmaps.
521 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
522 (x_draw_window_cursor): Draw cursor in fringe.
523
524 * w32term.c (x_update_window_end): Call draw_window_fringes.
525 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
526 in row instead of actually drawing fringe bitmaps.
527 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
528 (w32_draw_window_cursor): Draw cursor in fringe.
529
530 * macterm.c (x_update_window_end): Call draw_window_fringes.
531 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
532 in row instead of actually drawing fringe bitmaps.
533 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
534 (mac_draw_window_cursor): Draw cursor in fringe.
535
a633a954
JD
5362004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
537
538 * xterm.c (handle_one_xevent): Don't handle characters that are part
539 of an old style (XLookupString) compose sequence.
540
80460525
KH
5412004-01-15 Kenichi Handa <handa@m17n.org>
542
543 * search.c (Freplace_match): Use make_multibyte_string or
544 make_unibyte_string according to the buffer multibyteness.
545
7fc34f85
SM
5462004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
547
548 * alloc.c (struct interval_block, struct string_block)
549 (struct symbol_block, struct marker_block, live_string_p)
550 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
551 Better preserve alignment for objects in blocks.
552 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
553
554 * lread.c (defvar_per_buffer): Remove dead declaration.
555
556 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
557 space size.
558
66070bd1
JD
5592004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
560
561 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
562 if a key press should pop down. Only pop down if a key is pressed
563 outside the menu/dialog.
564 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
565 popup_get_selection.
566 (create_and_show_dialog): Pass 1 for down_on_keypress to
567 popup_get_selection.
568
de7515d6
JD
5692004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
570
571 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
572 BLOCK/UNBLOCK_INPUT.
573
160b1b50
JD
5742004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
575
576 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
577 specified.
578
3a9f36e6
KH
5792004-01-08 Kenichi Handa <handa@m17n.org>
580
581 * editfns.c (Fformat): Fix '&' to '&&'.
582
3803eb32
AS
5832004-01-08 Andreas Schwab <schwab@suse.de>
584
585 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
586 size if PSEUDOVECTOR_FLAG is set.
587
9da88f37
KH
5882004-01-07 Kenichi Handa <handa@m17n.org>
589
74ac5074
KH
590 * charset.c (Fdeclare_equiv_charset): Fix docstring.
591
9da88f37
KH
592 * fontset.c (fontset_ref_via_base): Fix previous change.
593
05faee07
KS
5942004-01-07 Kim F. Storm <storm@cua.dk>
595
596 * process.c (read_process_output): Only activate adaptive
597 buffering if we read less than 256 bytes at a time.
598
634910c8
KS
5992004-01-06 Kim F. Storm <storm@cua.dk>
600
601 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
602 object and image object. Return glyph width and height.
603 (mode_line_string, marginal_area_string): Ditto.
604
605 * dispextern.h (buffer_posn_from_coords, mode_line_string)
606 (marginal_area_string): Fix prototypes.
607
608 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
609 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
610 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
611
612 * keyboard.c (make_lispy_position): Use modified mode_line_string,
613 buffer_posn_from_coords, and marginal_area_string functions to
614 include both string object and image object in the lispy position.
615 Also add actual glyph width and height to position.
616 (read_key_sequence): Use real buffer position from mouse
617 event to find keymap property even when click is in marginal area.
618
619 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
620 mode_line_string and marginal_area_string functions to handle
621 both string object and image object properties.
d7107586 622
57951c2e
AS
6232004-01-06 Andreas Schwab <schwab@suse.de>
624
625 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
626 character.
627
181e6a61
AS
6282004-01-02 Andreas Schwab <schwab@suse.de>
629
d7107586
SM
630 * macterm.c (emacs_options, x_initialized, same_x_server):
631 Remove unused (and duplicated) definitions.
181e6a61 632
31e0fbdd
KS
6332004-01-02 Kim F. Storm <storm@cua.dk>
634
635 * process.h (struct Lisp_Process): New members for adaptive read
636 buffering: adaptive_read_buffering, read_output_delay, and
637 read_output_skip.
638
639 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
640 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
641 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
642 (process_output_delay_count, process_output_skip): New vars.
643 (Vprocess_adaptive_read_buffering): New variable.
644 (make_process): Initialize adaptive read buffering members.
645 (Fstart_process): Set adaptive_read_buffering member.
646 (deactivate_process): Cleanup adaptive read buffering.
647 (wait_reading_process_input): Temporarily omit delayed
648 subprocesses from the set of file descriptors to read from;
649 adjust the select timeout if we skipped any subprocesses.
650 (read_process_output): Increase adaptive read buffering delay if
651 we read less than a full buffer; reduce delay when we read a
652 full buffer.
653 (send_process): Simplify using local Lisp_Process var.
654 Reset adaptive read buffering delay after write.
655 (init_process): Initialize process_output_delay_count and
656 process_output_skip.
657 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
658
68c6a789
JR
6592004-01-01 Jason Rumney <jasonr@gnu.org>
660
d7107586 661 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
68c6a789 662
3f70fe82
LT
6632003-12-30 Luc Teirlinck <teirllm@auburn.edu>
664
665 * print.c (Ferror_message_string): Add hyperlink in the docstring
666 to the definition of `signal' in the Elisp manual.
667 * eval.c (Fsignal): Ditto.
668
c2be49ed
EZ
6692003-12-29 James Clark <jjc@jclark.com> (tiny change)
670
671 * fns.c (internal_equal): Return t for two NaN arguments.
672
7abd90ea
RS
6732003-12-29 Richard M. Stallman <rms@gnu.org>
674
675 * data.c (store_symval_forwarding): Handle setting
676 default-fill-column, etc., by changing the value in
677 buffers that use the default.
678
679 * minibuf.c (Fset_minibuffer_window): Doc fix.
680
681 * fileio.c (choose_write_coding_system): Ignore auto_saving
682 if using the visited file for auto saves.
683 (Fwrite_region): Don't update SAVE_MODIFF
684 if auto-saving in visited file.
685
3e7cfcdc
KH
6862003-12-29 Kenichi Handa <handa@m17n.org>
687
688 * dispextern.h (face_font_available_p): Extern it.
689
690 * fontset.c (Voverriding_fontspec_alist): New variable.
691 (lookup_overriding_fontspec): New function.
d7107586 692 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
3e7cfcdc
KH
693 (fontset_font_pattern): Likewise.
694 (regulalize_fontname): New function.
695 (Fset_fontset_font): Call regulalize_fontname.
696 (Fset_overriding_fontspec_internal): New function.
d7107586
SM
697 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
698 Defsubr Sset_overriding_fontspec_internal.
3e7cfcdc
KH
699
700 * xfaces.c (face_font_available_p): New function.
701
7abd90ea
RS
7022003-12-28 Richard M. Stallman <rms@gnu.org>
703
704 * buffer.c (Fother_buffer): Don't crash if BUF is nil
705 or if its name is nil.
706
707 * buffer.c (Fkill_buffer): Don't delete auto-save file
708 if it's the same as the visited file.
709
de1d1a40
LT
7102003-12-28 Luc Teirlinck <teirllm@auburn.edu>
711
712 * coding.c (Fcheck_coding_system): Doc fix.
713
204fb75e
KS
7142003-12-28 Kim F. Storm <storm@cua.dk>
715
716 * Makefile.in (eval.o): Depend on dispextern.h.
717
718 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
719 image glyph using image's ascent.
720 (mode_line_string): Return image glyph as object clicked on.
721 Adjust y0 for image glyph using image's ascent.
722
723 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
724 (struct glyph): New members, ascent and descent. Used to save
725 this glyph's ascent and descent, instead of having.
726 (struct glyph): Declare member face_id using FACE_ID_BITS.
727 (find_hot_spot): Add prototype.
728
729 * keyboard.c (Qimage): Remove extern (now in lisp.h).
730 (QCmap): Declare extern.
731 (make_lispy_position): When position is inside image hot-spot,
732 use hot-spot element's id as posn element.
733
734 * lisp.h (IMAGEP): New macro to test for image object type.
735 (Qimage): Declare extern.
736
737 * macfns.c (Qimage): Remove extern (now in lisp.h).
738 (valid_image_p, parse_image_spec): Use IMAGEP macro.
739
740 * macterm.c (Qface, Qmouse_face): Remove unused externs.
741
742 * w32fns.c (Qimage): Remove extern (now in lisp.h).
743 (valid_image_p, parse_image_spec): Use IMAGEP macro.
744
745 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
746
747 * w32term.c (Qface, Qmouse_face): Remove unused externs.
748
749 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
750 pointer types.
751 (Qrelative_width, Qalign_to): Remove unused variables.
752 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
753 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
754 image maps.
d7107586 755 (x_y_to_hpos_vpos): Return glyph relative coordinates through
204fb75e
KS
756 new dx and dy args.
757 Remove buffer_only_p arg (always 0). Simplify code accordingly.
758 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
759 than row's ascent and height, to get sensible height on tall rows.
760 (build_desired_tool_bar_string): Remove Qimage extern.
761 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
762 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
763 image glyph is alone on the last line.
764 (append_glyph, append_composite_glyph, produce_image_glyph)
d7107586 765 (append_stretch_glyph): Set glyph's ascent and descent.
204fb75e 766 (on_hot_spot_p): New function to check if position is inside an
d7107586 767 rectangular, circular, or polygon-shaped image hot-spot,
204fb75e
KS
768 (find_hot_spot): New function to search for image hot-spot.
769 (Flookup_image_map): New defun to search for image hot-spot.
770 (define_frame_cursor1): New aux function to determine frame pointer.
771 (note_mode_line_or_margin_highlight, note_mouse_highlight):
772 Handle `pointer' text property and :pointer image property to
773 control frame pointer shape. Detect image hot-spots for pointer
774 and help_echo properties. Use define_frame_cursor1.
775 (note_mouse_highlight): Use Vvoid_text_area_pointer.
776 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
777 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
778
779 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
780
781 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
782 (Qimage): Remove extern (now in lisp.h).
783 (valid_image_p, parse_image_spec): Use IMAGEP macro.
784
785 * xmenu.c (show_help_event): Remove unused code.
786
787 * xterm.c (Qface, Qmouse_face): Remove unused externs.
788 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
789 row's ascent and descent, to get a sensible height on tall rows.
790
fc052137
LT
7912003-12-25 Luc Teirlinck <teirllm@auburn.edu>
792
793 * minibuf.c (Fcompleting_read): Undo previous change.
794
b9148500
LH
7952003-12-25 Lars Hansen <larsh@math.ku.dk>
796
797 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
798 Arguments GCPRO'ed in call to file name handler.
799
56ffd194
TTN
8002003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
801
802 * termcap.c (tgetst1): Scan for "%pN"; if all
803 N are continuous in [1,9], remove all "%pN".
804
5202d23d
JD
8052003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
806
f26fab36
JD
807 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
808
5202d23d
JD
809 * xfaces.c (lface_fully_specified_p): Take into account that
810 MAC OS always have unspecified stipple.
811
8babaa59
TTN
8122003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
813
814 * tparam.c (tparam1): Add handling for `%pN', which
815 means use param N for the next substitution.
816
2d176448
TTN
8172003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
818
819 * xfaces.c (Fcolor_gray_p): Fix omission bug:
820 In case `frame' is nil, consult the selected frame.
821 (Fcolor_supported_p): Likewise.
822
adb0708c
LT
8232003-12-23 Luc Teirlinck <teirllm@auburn.edu>
824
000eeb15
LT
825 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
826 Doc fixes.
0dc72b11
LT
827
828 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
829 and an integer. Adapt the introductory comment accordingly.
adb0708c
LT
830 (Fread_from_minibuffer): Delete code moved into read_minibuf.
831 Doc fix.
832 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
833 read_minibuf.
834 (Fcompleting_read): Delete code moved into read_minibuf.
d7107586 835 (Ftest_completion): Make it handle obarrays and hash tables correctly.
adb0708c 836
2e4d132b
KH
8372003-12-03 Kenichi Handa <handa@m17n.org>
838
839 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
840 encoding sequence.
841
3999c705
KH
8422003-12-01 Kenichi Handa <handa@m17n.org>
843
844 * composite.c (syms_of_composite): Don't make the compostion hash
845 table week.
846
d344ecbb
LT
8472003-11-30 Luc Teirlinck <teirllm@auburn.edu>
848
849 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
850 * textprop.c (Fget_char_property_and_overlay): New function.
851 (syms_of_textprop): Defsubr it.
852
03d6484e
JD
8532003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
854
019b1f0e
JD
855 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
856 to compile on terminal configuration.
857
03d6484e
JD
858 * fileio.c (Fread_file_name): Check use_file_dialog also before
859 calling Fx_file_dialog.
860
861 * fns.c: use_file_dialog: New variable.
862 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
863
442d3fd0
KS
8642003-11-29 Kim F. Storm <storm@cua.dk>
865
866 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
867 (syms_of_msdos): Don't intern and staticpro them.
868
0f6a07a8
KS
8692003-11-27 Kim F. Storm <storm@cua.dk>
870
871 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
872 coordinates relative to glyph at posn. If glyph is an image,
873 return that as object at posn. Callers changed.
874 (mode_line_string, marginal_area_string): Calculate and return
875 pixel coordinates relative to glyph. Callers changed.
876
877 * dispextern.h (buffer_posn_from_coords, mode_line_string)
878 (marginal_area_string): Fix prototypes.
879 (window_box_left_offset, window_box_right_offset): Add prototypes.
880
881 * frame.h (get_specified_cursor_type, get_window_cursor_type):
882 Remove prototypes.
883
884 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
885
886 * keyboard.c (make_lispy_position): Add x and y coordinates
887 relative to the current glyph as 7th element of position.
888 If glyph is an image, return it in the object element.
889 (read_key_sequence): Skip checks for keymap property in cases
890 where POSN_STRING is not a string (e.g. an image).
891
892 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
893 (Vshow_text_cursor_in_void): New variable.
894 (glyph_to_pixel_coords): Don't use negative hpos.
895 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
896 (append_stretch_glyph): Change ascent arg to be actual value
897 in pixels rather than ratio to height. Callers changed.
898 (calc_pixel_width_or_height): New aux function, implementing
899 pixel based artihmetic for glyph widths and heights.
900 (produce_stretch_glyph): Use calc_pixel_width_or_height for
901 :width, :height, :align-to, and :ascent, thus allowing these to
902 be specified in pixels as well as multiples of characters.
903 Don't produce stretch glyphs with zero width or height.
904 (get_specified_cursor_type): Declare static.
905 (get_window_cursor_type): Declare static. Add glyph arg to be
906 able to know when cursor is on an image; always substitute
907 hollow-box cursor for filled-box cursor on images, to avoid
908 negative images and flicker when blinking the cursor.
909 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
910 (note_mode_line_or_margin_highlight): Use non-text cursor rather
911 than vertical scroll-bar cursor in display margins.
912 (note_mouse_highlight): Use non-text cursor rather than text
913 cursor in fringes and over images in the text area.
914 Use non-text cursor when mouse pointer is outside editable text,
915 i.e. in the void after end-of-line or end-of-buffer; this was
916 already done for W32, but is now standard for all systems --
917 user can toggle show-text-cursor-in-void to get old behaviour.
918 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
919 Vdisplay_pixels_per_inch.
920
00498bfc
AS
9212003-11-25 Andreas Schwab <schwab@suse.de>
922
923 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
924 EMACS_INT to not lose bits.
925 (Ffillarray): Don't set bits beyond the size of a bool vector.
926
edaa824d
KS
9272003-11-25 Kim F. Storm <storm@cua.dk>
928
929 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
930 define this defun on systems that cannot use stderr as lvalue.
931
74d6f539
GM
9322003-11-24 Gerd Moellmann <gerd@gnu.org>
933
934 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
935 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
936 ld's default is incompatible with unexec.
937
6a1ff3ba
KS
9382003-11-23 Kim F. Storm <storm@cua.dk>
939
63dc7c6b
KS
940 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
941 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
942 (Fforce_window_update): New defun.
943 (syms_of_window): Defsubr it.
944 (Fset_window_margins, Fset_window_fringes): Doc fix.
945
6a1ff3ba
KS
946 * print.c (Fredirect_debugging_output): New defun.
947 (syms_of_print): Defsubr it.
948
aef109b7
LT
9492003-11-22 Luc Teirlinck <teirllm@auburn.edu>
950
951 * fns.c (Fset_char_table_parent): Doc fix.
952
6a1ff3ba 9532003-11-22 Kim F. Storm <storm@cua.dk>
63ccbe21
KS
954
955 * dispnew.c (buffer_posn_from_coords): Return actual row/column
956 for glyph clicked on, rather than (unused) pixel positions.
957 (mode_line_string, marginal_area_string): Change X and Y args to
958 pointers for returning actual row/column for glyph clicked on.
959 Simplify and optimize loops.
960
aef109b7
LT
961 * dispextern.h (mode_line_string, marginal_area_string):
962 Update prototypes.
63ccbe21
KS
963
964 * keyboard.c (make_lispy_position): New function for generating
965 mouse click positions from frame and pixel coordinates.
966 Enhanced to return buffer position and actual row/column for
967 events outside the text area using updated mode_line_string and
968 marginal_area_string functions.
969 Return left-fringe and right-fringe clicks as such, rather than
970 clicks in text area.
971 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
972 pixel_to_glyph_coords, as we never use the results.
973 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
974 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
975 Eliminate unused code in WHEEL_EVENT handling.
976 (make_lispy_movement): Use make_lispy_position.
977
978 * window.c (coordinates_in_window): Remove redundant tests.
979 Fix returned X pixel value for left-margin.
980
981 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
982 mode_line_string and marginal_area_string parameters.
983
930a9995
LH
9842003-11-22 Lars Hansen <larsh@math.ku.dk>
985
d7107586
SM
986 * w32.c (struct the_group, getgrgid): Add.
987 * mac.c (struct my_group, getgrgid): Add.
aef109b7 988
3dbf3426
LT
9892003-11-21 Luc Teirlinck <teirllm@auburn.edu>
990
991 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
992
cae8ddbb 9932003-11-21 Lars Hansen <larsh@math.ku.dk>
ded4064f 994
d7107586
SM
995 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
996 include in call to file name handler. Optionally translate numeric
997 UID and GID to strings. Update docstring.
998 (directory_files_internal): Add parameter ID-FORMAT.
999 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
1000 include in call to file name handler and call to
1001 directory_files_internal. Update Docstring.
1002 (Fdirectory_files): Add dummy parameter in call to
1003 directory_files_internal.
1004 * lisp.h (Qinteger): Add.
1005 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
1006 (Ffile_attributes): Add parameter.
1007 * data.c (Qinteger): Export.
cae8ddbb 1008
2550b848
LT
10092003-11-21 Luc Teirlinck <teirllm@auburn.edu>
1010
3dbf3426 1011 * fns.c (Freverse, Fnreverse): Doc fixes.
2550b848 1012
88380018
KS
10132003-11-19 Kim F. Storm <storm@cua.dk>
1014
1015 * xdisp.c (init_iterator): Initialize it->start to position
1016 before reseating (in case start position is invisible).
1017 (init_to_row_start): Set it->start to row-start.
1018 (redisplay_window): Accept optional_new_start if start position
1019 is invisible (in which case IT_CHARPOS overshoots PT).
1020 (display_line): Setup row->start from it->start (rather than
1021 it->current which is wrong if first char on line is invisible).
1022 When done, reseat it->start to it->current (= start of next row).
1023 (expose_area): Fix exposure of text area when first char (e.g. TAB)
1024 is only partially visible.
1025
1026 * dispextern.h (struct it): New member start.
1027
854c1a59
SM
10282003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
1029
455316e2
SM
1030 * alloc.c (make_float, Fcons): Clear the markbit at init time.
1031 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
1032 of block_index outside of the macro call.
1033 (Fgarbage_collect): Remove null code.
1034
1035 * m/amdx86-64.h: Don't redefine XPNTR.
1036
854c1a59
SM
1037 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
1038 of VALMASK.
1039
1040 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
1041 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
1042 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
1043
1044 * lisp.h (VALMASK): Only define for non-union type.
1045 (MARKBIT): Remove.
1046 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
1047 (XTYPE): Define unconditionally.
1048 (XSETTYPE): Remove one more remnant.
1049 (EQ): Define differently for the union and non-union cases.
1050 (INTMASK): New bit mask.
1051 (struct Lisp_Marker): Move down to prepare for upcoming patch.
1052 (GC_EQ): Delegate to EQ.
1053
1054 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
1055
a0c6ef2d
JD
10562003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1057
1058 * xterm.c (x_window_to_scroll_bar): Move check of display to
1059 where window_id is compared.
1060
859492c4
KS
10612003-11-17 Kim F. Storm <storm@cua.dk>
1062
1063 * dispextern.h (struct it): New member first_vpos.
1064
1065 * xdisp.c (start_display): Set it->first_vpos.
1066 (try_window_id): Use first_vpos to start display in first _text_
1067 line if no reusable lines at start of window with header line.
1068
810f2256
JD
10692003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1070
7c402969 1071 * w32fns.c (XPutPixel):
854c1a59
SM
1072 * w32bdf.c (w32_init_bdf_font):
1073 * sunfns.c (sel_read):
1074 * process.c (Fmake_network_process):
1075 * frame.c (store_frame_param):
1076 * fontset.c (Fset_fontset_font):
1077 * emacs.c (shut_down_emacs):
7c402969
JD
1078 * ccl.c (ccl_driver): Remove period at end of error message.
1079
a32e9bfd
JD
1080 * config.in: Regenerate.
1081
810f2256
JD
1082 * xfns.c (x_window_to_frame, x_any_window_to_frame)
1083 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
1084 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
1085 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
1086 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
1087
1088 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
1089
1090 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
1091 (XTmouse_position, handle_one_xevent): Pass Display* to
1092 x_window_to_scroll_bar.
1093 (x_window_to_scroll_bar): Take a Display* argument.
1094 Check that display for frame is equal to Display* argument.
854c1a59 1095 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
810f2256
JD
1096 x_display_info_for_display instead. Use Display in xev instead
1097 of GDK_DISPLAY.
1098 (x_dispatch_event): Call x_display_info_for_display.
1099 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
1100 (x_connection_closed): Call xg_display_close for GTK.
1101 (x_term_init): Call xg_display_open for additional displays.
1102 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
1103 for GTK.
1104
1105 * xmenu.c (single_menu_item, mouse_position_for_popup)
1106 (x_activate_menubar): Formatting adjustments.
1107
1108 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
1109 adjustments.
1110
1111 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
1112 (xg_display_close, xg_create_default_cursor)
1113 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
1114 handling.
854c1a59
SM
1115 (xg_left_ptr_cursor): Remove.
1116 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
810f2256
JD
1117 cursor here.
1118 (xg_win_to_widget): Take Display* argument, call
1119 gdk_xid_table_lookup_for_display.
1120 (xg_create_frame_widgets, xg_get_file_name, create_menus)
1121 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
1122 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
1123 in FRAME_X_DISPLAY_INFO.
1124 (xg_get_scroll_id_for_window): Take Display* argument.
1125 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
854c1a59 1126 (xg_initialize): Remove xg_left_ptr_cursor.
810f2256
JD
1127
1128 * gtkutil.h: xg_get_scroll_id_for_window, xg_win_to_widget takes
1129 Display* argument also. Declare xg_display_open,
1130 xg_display_close, xg_create_default_cursor.
1131
0b03cc78
JD
11322003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1133
1134 * xterm.c (x_detect_focus_change): Do not change focus frame for
1135 Enter/LeaveNotify if the current focus frame has explicit focus.
1136
77e688fa
KS
11372003-11-14 Kim F. Storm <storm@cua.dk>
1138
1139 * dispnew.c (update_text_area): Fix redisplay error when hscroll
1140 is active and first glyph is only partially visible.
854c1a59 1141
dd429b03
KH
11422003-11-13 Kenichi Handa <handa@m17n.org>
1143
1144 * xdisp.c (select_frame_for_redisplay): New function.
1145 (redisplay_internal): Record also selected_frame for
1146 unwind_redisplay. Call select_frame_for_redisplay before
1147 redrawing each frame.
1148 (unwind_redisplay): Argument changed to a cons.
1149
6d9266f4
LT
11502003-11-12 Luc Teirlinck <teirllm@auburn.edu>
1151
1152 * fns.c (Fstring_to_multibyte): Doc fix.
1153
80060eb3
KH
11542003-11-11 Kenichi Handa <handa@m17n.org>
1155
1156 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
1157
74305183
JD
11582003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1159
1160 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
1161 program specified positions.
1162
cfda993e
JD
11632003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1164
1165 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
1166
df211069
KH
11672003-11-08 Kenichi Handa <handa@m17n.org>
1168
1169 * Makefile.in (lisp): Add kannada.el.
1170 (shortlisp): Likewise.
1171
4307d534
KH
11722003-11-07 Kenichi Handa <handa@m17n.org>
1173
854c1a59
SM
1174 * coding.c (coding_allocate_composition_data):
1175 Reset coding->composing to COMPOSITION_NO.
4307d534
KH
1176 (coding_restore_composition): Detect invalid composition data.
1177 Give Fstring and Fvector a Lispy integer, not C int.
1178
854c1a59
SM
11792003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
1180
1181 * floatfns.c (Flogb): Don't use VALMASK.
1182
1183 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
1184 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
1185
1186 * lisp.h (XINT): Move the cast to clarify what is going on.
1187 (GCTYPEMASK, XSETTYPE): Remove.
1188 (XGCTYPE): Make it an alias of XTYPE.
1189
d04103a1
JD
11902003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1191
1192 * xterm.c (x_term_init): Fix formatting.
1193
da18b5ac
JD
11942003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1195
1196 * gtkutil.h: Declare xg_have_tear_offs, remove xg_keep_popup
1197 and xg_did_tearoff.
1198
1199 * gtkutil.c: Remove variable xg_did_tearoff.
1200 (xg_have_tear_offs): New function.
1201 (tearoff_remove): Just decrease xg_detached_menus.
1202 (tearoff_activate): Increase xg_detached_menus and call
1203 tearoff_remove when tearoff is removed.
854c1a59 1204 (xg_keep_popup): Remove function.
da18b5ac
JD
1205 (create_menus): Give add_tearoff_p as argument to recursive
1206 call to create_menus.
1207 (xg_create_widget): Use variables instead of multiple
1208 strcmp. Tell create_menus to create tear off only for
1209 menu bar menus.
1210 (xg_update_menubar): Change title for a detached menu also.
1211 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
1212 of deep_p.
1213 (xg_initialize): Initialize xg_detached_menus, remove
1214 initialization of xg_did_tearoff.
1215
1216 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
1217 xg_have_tear_offs returns non-zero.
1218 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
1219 call to xg_keep_popup.
1220
64d4923e
AC
12212003-11-01 Andrew Choi <akochoi@shaw.ca>
1222
1223 * macterm.c (XTread_socket): Handle menubar selection and grow
1224 window only for mouseDown events.
854c1a59 1225
6cc8bc07
JD
12262003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1227
1228 * xterm.c (x_term_init): For GTK part, increase x_initialized
1229 to check for more than one display. Use error instead of return 0.
1230
043131c4
AC
12312003-10-31 Andrew Choi <akochoi@shaw.ca>
1232
854c1a59 1233 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
043131c4
AC
1234 (copy_dysymtab): Call it.
1235
bdda99a1
LT
12362003-10-31 Luc Teirlinck <teirllm@auburn.edu>
1237
1238 * eval.c (Fdefvaralias): Doc fix.
1239
800f42ff 12402003-10-26 Luc Teirlinck <teirllm@auburn.edu>
0d11571e
LT
1241
1242 * data.c (Fsetplist): Doc fix.
1243
ef35b389
LK
12442003-10-14 Lute Kamstra <lute@gnu.org>
1245
1246 * window.c (Fset_window_fringes): Clarify docstring.
07107abc 1247
ef35b389 12482003-10-14 Kim F. Storm <storm@cua.dk>
854c1a59 1249
07107abc
KS
1250 * window.c (Fset_window_margins): Simplify arg checking.
1251
f7005886
RS
12522003-10-13 Richard M. Stallman <rms@gnu.org>
1253
1254 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
1255 (print_partial_compiled_pattern): Replace assert with a printout.
1256 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
1257
1258 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
1259
1260 * window.c (Fset_window_margins): Allow only integers as args.
1261 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
1262 Doc fixes.
1263
9c0c2af5
LK
12642003-10-13 Lute Kamstra <lute@gnu.org>
1265
1266 * window.c (Fset_window_fringes): Elaborate docstring.
1267
3f080e4e
AC
12682003-10-12 Andrew Choi <akochoi@shaw.ca>
1269
854c1a59 1270 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
a4887377 1271
3f080e4e
AC
1272 * s/darwin.h (GC_MARK_STACK): Define.
1273
0aa513ed
JD
12742003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1275
1276 * window.c (shrink_windows): New function.
1277 (size_window): Call shrink_windows to calculate window sizes when
1278 shrinking frame with more than one window.
1279
6aa8858a
KS
12802003-10-12 Kim F. Storm <storm@cua.dk>
1281
1282 * xdisp.c (compute_fringe_widths): Doc fix.
1283
c2164d91
KH
12842003-10-08 Kenichi Handa <handa@m17n.org>
1285
854c1a59 1286 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
c2164d91 1287
f82ac129
KH
12882003-10-07 Kenichi Handa <handa@m17n.org>
1289
1290 * coding.c (Qcoding_system_define_form): New variable.
1291 (syms_of_coding): Intern and staticpro it.
1292 (Fcheck_coding_system): Try to autoload the definition of
1293 CODING-SYSTEM.
1294
9296c947
LT
12952003-10-05 Luc Teirlinck <teirllm@auburn.edu>
1296
1297 * fns.c (Frequire): Doc fix.
1298
c1f0671a
JD
12992003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1300
3d8c3826
JD
1301 * xfns.c (Fx_send_client_event): New function as a base for
1302 manipulating extended window manager hints.
6dc15d98 1303 (Fx_send_client_event): Remove unused variable s.
3d8c3826 1304
068ae0fd
JD
1305 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
1306 that function is removed.
1307
1308 * xterm.c (x_set_offset): Use move_offset_left/top instead of
1309 x/y_pixels_outer_diff.
1310 (x_check_expected_move): Calculate move_offset_left/top.
1311
1312 * xterm.h (struct x_output): New members: move_offset_top/left.
1313
854c1a59 1314 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
068ae0fd
JD
1315 call x_set_offset directly.
1316
1317 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
1318
96f09305
JD
1319 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
1320
1321 * xterm.c (x_delete_display): Free font names and font_encoder
1322 in dpyinfo->font_table.
1323
854c1a59
SM
1324 * xfns.c (Fx_close_connection): Only call XFreeFont here.
1325 Move xfree of font names to x_delete_display.
96f09305 1326
c1f0671a
JD
1327 * xterm.h (struct x_display_info): New member, wm_type.
1328 (struct x_output): New members, expected_top/left and
1329 check_expected_move.
1330
1331 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
1332 is received.
854c1a59
SM
1333 (handle_one_xevent): Rename x_check_expected_move from
1334 x_check_fullscreen_move.
c1f0671a
JD
1335 (x_set_offset): Only add WM decoration sizes to modified_top/left
1336 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
854c1a59 1337 (x_check_expected_move): Rename from x_check_fullscreen_move.
c1f0671a
JD
1338 Removed fullscreen specific code. Use check_expected_move,
1339 expected_left/top instead. Also, set wm_type.
1340 (x_term_init): Initialize wm_type to unknown.
1341
1342 * frame.c (x_fullscreen_move): Remove addition of WM decoration
1343 sizes to move_x/y.
1344
be2fdba9
KH
13452003-10-03 Kenichi Handa <handa@m17n.org>
1346
1347 * macterm.c (x_load_font): Clear all members of FONTP before start
1348 filling them.
1349
13502003-10-02 Kenichi Handa <handa@m17n.org>
1351
1352 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
1353 before calling find_ccl_program_func. Call find_ccl_program_func
1354 only when fontp->font_encoder is not NULL.
1355
1356 * xterm.c (x_load_font): Clear all members of FONTP before start
1357 filling them.
1358
26a6e439
JPW
13592003-10-03 John Paul Wallington <jpw@gnu.org>
1360
1361 * keymap.c (map_keymap): Don't abort when binding is a vector.
1362
0d4c2dc2
JR
13632003-10-02 Jason Rumney <jasonr@gnu.org>
1364
854c1a59
SM
1365 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
1366 Sync dependencies with Makefile.in.
a63cf46f
JR
1367 (alloca.o): Remove.
1368
0d4c2dc2
JR
1369 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
1370 filling them.
1371
1372 * w32bdf.c (w32_load_bdf_font): Likewise.
1373
ab8f7d5c
RS
13742003-09-30 Richard M. Stallman <rms@gnu.org>
1375
1376 * term.c (set_tty_color_mode): Calculate current_mode_spec
1377 regardless of value of VAL.
1378
854c1a59 1379 * intervals.c (graft_intervals_into_buffer):
ab8f7d5c
RS
1380 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
1381 Handle over_used when splitting UNDER.
1382
13832003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1384
1385 * regex.c (regex_compile): Free the stack when returning from function.
1386
3413f972
KH
13872003-09-28 Kenichi Handa <handa@m17n.org>
1388
1389 * fontset.c (Finternal_char_font): Change return value to
1390 cons (FONT-NAME . GLYPH-CODE).
1391
40409f05
EZ
13922003-09-28 Eli Zaretskii <eliz@elta.co.il>
1393
1394 * term.c (tty_setup_colors): Treat any negative argument as -1.
1395
f98ddc99
KH
13962003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
1397
1398 * process.c (send_process): Delete unused temp_buf.
1399
66c8f1a8
DL
14002003-09-26 Dave Love <fx@gnu.org>
1401
1402 * xterm.c (x_bitmap_mask): Declare.
1403
ca716c26
DL
14042003-09-25 Dave Love <fx@gnu.org>
1405
1406 * Makefile.in (fns.o): Depend on md5.h.
1407
fbe57420
KS
14082003-09-25 Kim F. Storm <storm@cua.dk>
1409
1410 * window.c (set_window_buffer): Fix redisplay problems when
1411 switching between buffers with different display margin widths.
1412
ef6ae4ff
KS
14132003-09-23 Kim F. Storm <storm@cua.dk>
1414
1415 * process.c (set_socket_option): Fix :bindtodevice option.
1416 (Fset_network_process_option): Update process contact list when
1417 setting option succeeds.
1418 (Fmake_network_process): Doc fix.
1419
68e03c1c
DL
14202003-09-23 Dave Love <fx@gnu.org>
1421
7146d1c1 1422 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
68e03c1c 1423
2f809aae
EZ
14242003-09-22 Eli Zaretskii <eliz@elta.co.il>
1425
1426 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
1427 color mode is an integer number (it could be -1).
1428
8fe7d8c8
RS
14292003-09-22 Richard M. Stallman <rms@gnu.org>
1430
1431 * intervals.c (graft_intervals_into_buffer): Correct the main loop
1432 in the case where OVER is longer than UNDER.
1433
2f71b5ea
MY
14342003-09-22 Masatake YAMATO <jet@gyve.org>
1435
7146d1c1 1436 * window.c (Fset_window_scroll_bars): Validate the value of
2f71b5ea 1437 `vertical_type'.
7146d1c1 1438
0c4da023
KS
14392003-09-21 Kim F. Storm <storm@cua.dk>
1440
1441 * frame.c (Vdefault_frame_scroll_bars): New variable.
1442 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
1443 (syms_of_frame): DEFVAR_LISP it, and initialize according to
1444 window-system default scroll bar position.
1445
b648413b
KS
1446 * window.c (Fwindow_scroll_bars): Doc fix.
1447
8f5b9e34
JD
14482003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1449
854c1a59 1450 * xterm.c (x_set_offset): Take window manager decorations into account.
8f5b9e34 1451
b0f23edf
RS
14522003-09-19 Richard M. Stallman <rms@gnu.org>
1453
1454 * atimer.h: Don't include lisp.h.
1455 (P_): Define it here (as well as elsewhere).
1456
1457 * print.c (Fprin1_to_string): Move the PRINTPREPARE
1458 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
1459
1460 * data.c (Fvariable_binding_locus): New function.
1461 (syms_of_data): defsubr it.
1462 (Flocal_variable_p): Delete duplicate call to indirect_variable.
1463
e1283999
DL
14642003-09-18 Dave Love <fx@gnu.org>
1465
ad5f3636
DL
1466 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
1467
e1283999
DL
1468 * process.c (Fnetwork_interface_info): Fix type error.
1469 (Fnetwork_interface_list): Doc fix.
1470 (read_process_output, read_process_output): Delete unused var.
1471
b8c7fd71
KS
14722003-09-17 Kim F. Storm <storm@cua.dk>
1473
1474 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
1475 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
1476 (Fnetwork_interface_info): Check that ifreq struct has required
1477 fields before accessing them; this requires that those fields are
1478 defined as macros, which may be too restrictive on some platforms,
1479 but it is better than failing on other platforms.
1480 (syms_of_process): Only defsubr above fns when included.
1481
11e0a411
DL
14822003-09-17 Dave Love <fx@gnu.org>
1483
1484 * unexalpha.c: Don't include varargs.h.
1485
e9c50801
KS
14862003-09-17 Kim F. Storm <storm@cua.dk>
1487
1488 * process.c (Fset_process_sentinel): Add sentinel to childp plist
1489 for network process.
1490 (socket_options): Add `:' prefix to option names. Add optbit field.
1491 (set_socket_option): Remove no_error arg and special handling of s < 0.
1492 Return 1<<optbit for known option, 0 for unknown.
1493 Do not interpret 0 as false for boolean option (only nil).
1494 Pass failed option and value to report_file_error.
7146d1c1 1495 (Fset_network_process_options): Replace by Fset_network_process_option.
e9c50801
KS
1496 (Fset_network_process_option): New function to set just one option.
1497 (Fmake_network_process): Allow :coding arg to be a cons.
1498 Allow :server arg to be an integer specifying backlog size.
1499 Remove :options arg, and allow options to be specified directly
1500 as :KEY, VALUE pairs. Parse these options before binding socket.
1501 As before, :reuseaddr t is default for a server process, but this
1502 can now be disabled by specifying :reuseaddr nil.
1503 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
1504 (init_process): Availability of network options is now checked with
1505 simpler syntax (featurep 'make-network-process :OPTION); use loop to
1506 setup features.
1507 (syms_of_process): Fix defsubr's for the replaced functions.
1508
a0fc3644
DL
15092003-09-16 Dave Love <fx@gnu.org>
1510
1511 * Makefile.in: Depend on coding.h.
1512
6df2a645
KS
15132003-09-14 Kim F. Storm <storm@cua.dk>
1514
1515 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
1516 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
1517 (syms_of_process): Defsubr them.
1518
1519 * config.in: Regenerate.
7146d1c1
SM
1520
15212003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
1522
1523 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
1524 * m/news-r6.h (XUNMARK): Remove.
1525 * m/mips.h (XUNMARK): Remove.
1526 * m/mips-siemens.h (XUNMARK): Remove.
1527 * m/iris4d.h (XUNMARK): Remove.
1528 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
1529
0930c1a1
SM
15302003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
1531
31003b9e
SM
1532 * lisp.h (VALBITS): Don't remove 1 for the markbit.
1533 (union Lisp_Object): Use unsigned int for types. Remove markbit.
1534 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
1535 (XTYPE): Use unsigned right-shift.
1536 (XMARKBIT, XMARK, XUNMARK): Remove.
1537
0930c1a1
SM
1538 * alloc.c (init_intervals, init_symbol, init_marker):
1539 Don't preallocate anything.
1540 (Fgarbage_collect, mark_object): Ignore the markbit.
1541
1542 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
1543
19bb0fcd 15442003-09-08 Lute Kamstra <lute@gnu.org>
5df034de
LK
1545
1546 * xdisp.c (pint2hrstr): New function.
1547 (decode_mode_spec): Add `%i' and `%I' specs.
1548 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
1549 for `mode-line-format'.
1550
03bb6a06
AS
15512003-09-07 Andreas Schwab <schwab@suse.de>
1552
1553 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
1554 avoid warning.
1555
2063d89c
EZ
15562003-09-07 Eli Zaretskii <eliz@elta.co.il>
1557
0930c1a1 1558 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
2063d89c 1559
ed159bbf
KS
15602003-09-03 Kim F. Storm <storm@cua.dk>
1561
1562 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
1563 change (superseded by 2002-08-30 change); the default blink-off
1564 cursor is now again "no cursor".
1565
fe64a394
JR
15662003-09-01 Jason Rumney <jasonr@gnu.org>
1567
1568 * makefile.w32-in (alloca.o): Remove.
1569 (coding.o): Depend on intervals.h
1570 (emacs.o, bytecode.o): Depend on window.h
1571
c0175e24
DL
15722003-09-01 Dave Love <fx@gnu.org>
1573
1574 * Makefile.in (alloca.o): Remove commands.
1575 (coding.o): Depend on intervals.h composite.h window.h.
1576 (emacs.o): Depend on window.h keyboard.h keymap.h.
1577 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
1578 (bytecode.o): Depend on window.h.
1579
a24d4cb2
JR
15802003-08-31 Jason Rumney <jasonr@gnu.org>
1581
4bc2315e
JR
1582 * w32term.c (w32_per_char_metric): Allow cached metrics to be
1583 returned even when font_type is unknown.
1584
a24d4cb2
JR
1585 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
1586
9d35adc7
JD
15872003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1588
1589 * xterm.c (x_term_init): Initialize new fields in x_display_info.
1590
1591 * xterm.h (struct x_display_info): Add red/green/blue_bits and
1592 *_offset.
1593
1594 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
1595 calculate pixel value.
1596
6f68b035
GM
15972003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
1598
0930c1a1
SM
1599 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
1600 Don't tell redisplay display is accurate when it's actually been
1601 paused for pending input.
6f68b035 1602
4828b4d7
RS
16032003-08-29 Richard M. Stallman <rms@gnu.org>
1604
1605 * dispnew.c (adjust_glyph_matrix): Call window_box
1606 whenever W is nonzero.
1607
1608 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
1609 (Fkill_local_variable, Fmake_variable_frame_local)
0930c1a1 1610 (Flocal_variable_p, Flocal_variable_if_set_p):
4828b4d7
RS
1611 Use indirect_variable to trace thru variable aliases.
1612
1613 * config.in: Updated.
1614
1615 * callint.c (Fcall_interactively): Save and restore
1616 Vthis_command, Vthis_original_command, real_this_command,
1617 and current_kboard->Vlast_command.
1618
1619 * abbrev.c (Fexpand_abbrev): Insert before deleting.
1620
e019878d
GM
16212003-08-29 Gerd Moellmann <gerd@gnu.org>
1622
1623 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
1624
85478bc6
KH
16252003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
1626
0930c1a1 1627 * coding.c (decode_coding_iso2022): Initialize local variable c2.
85478bc6
KH
1628 (decode_coding_sjis_big5): Likewise.
1629
07ce82d3
JR
16302003-08-27 Jason Rumney <jasonr@gnu.org>
1631
d3703de3
JR
1632 * w32.c (sys_pipe): Protect against file descriptor overflow.
1633
ee4a01d1
JR
1634 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
1635
07ce82d3
JR
1636 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
1637
72d19c66
LK
16382003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
1639
1640 * xfns.c (Vgtk_version_string): New variable.
1641 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
1642
5459e42a
EZ
16432003-08-24 Eli Zaretskii <eliz@elta.co.il>
1644
0930c1a1 1645 * term.c (term_init): Remove `const' from buffer_size's declaration.
3d8714e7 1646
5459e42a
EZ
1647 * Makefile.in (msdos.o): Depend on intervals.h.
1648
0930c1a1 1649 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
5459e42a 1650
231d6cfb
JD
16512003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1652
1653 * xterm.h (struct x_display_info): New fields: client_leader_window
1654 and Xatom_wm_client_leader.
1655
1656 * xterm.c (x_initialize): Move call to x_session_initialize to ...
1657 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
1658
1659 * xsmfns.c (create_client_leader_window): New function.
1660 (x_session_initialize): Call create_client_leader_window, take
1661 dpyinfo as argument.
1662
1663 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
1664
1665 * Makefile.in (xsmfns.o): Add more depenedencies.
1666
afa88464
DL
16672003-08-21 Dave Love <fx@gnu.org>
1668
1669 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
1670
f730033e
KH
16712003-08-21 Kenichi Handa <handa@m17n.org>
1672
1673 * term.c (term_init): Fix previous change; don't rely on the
1674 length of `buffer' if TERMINFO is defined.
1675
6dca786c
DL
16762003-08-20 Dave Love <fx@gnu.org>
1677
1678 * atimer.h: Include lisp.h.
1679
1680 * lisp.h (EMACS_LISP_H): New.
1681 (popup_activated_flag): Don't declare.
1682
1683 * alloca.c: Some merging with gnulib. Change logic and doc
1684 concerning (x)malloc/(x)free -- no longer Emacs-specific.
1685 [DO_BLOCK_INPUT]: Don't include lisp.h.
1686 (xmalloc, xfree): Declare.
1687 (malloc): Don't declare.
1688
0930c1a1 1689 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
6dca786c
DL
1690 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
1691 atimer.h, blockinput.h.
1692
1693 * alloc.c (lisp_align_malloc): Change type of `aligned'.
1694
1695 * alloca.s: Removed.
1696
3a06a6d9
RS
16972003-08-19 Gerd Moellmann <gerd@gnu.org>
1698
1699 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
1700 use -lncurses.
1701
1702 * term.c (term_init): Use a buffer of size 4096 for tgetent since
1703 FreeBSD returns something longer than 2044. Abort if the end of
1704 the buffer is overwritten.
1705
27eeee55
MB
17062003-08-19 Miles Bader <miles@gnu.org>
1707
1708 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
1709
2f297815
GM
17102003-08-19 Gerd Moellmann <gerd@gnu.org>
1711
f4446bbf
GM
1712 * alloc.c (lisp_align_malloc): Check for memory full when
1713 allocating ablocks, which also avoids freeing a pointer into an
1714 ablocks structure.
1715
1716 * puresize.h (BASE_PURESIZE): Increase to 1100000.
1717
0930c1a1 1718 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
2f297815 1719
0e7d7aae
RS
17202003-08-16 Richard M. Stallman <rms@gnu.org>
1721
1722 * editfns.c (Fencode_time): Doc fix.
1723
17242003-08-16 David Ponce <david@dponce.com>
1725
1726 * fileio.c (Fwrite_region): Fix conditional expression to issue
1727 the right message.
1728
17292003-08-16 Juri Linkov <juri@jurta.org> (tiny change)
1730
1731 * syntax.c (Fforward_word): Argument changed to optional.
0930c1a1 1732 Set default value to 1.
0e7d7aae 1733
5d551295
KH
17342003-08-15 Kenichi Handa <handa@m17n.org>
1735
1736 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
1737 what autoscaled.
1738 (best_matching_font): Once we find a better scalable font, set
1739 non_scalable_has_exact_height_p to 1.
1740 (try_font_list): Call try_alternative_families to try any family
1741 with the given registry.
1742
1661e56b
AS
17432003-08-09 Andreas Schwab <schwab@suse.de>
1744
f29181dc
AS
1745 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
1746
1661e56b
AS
1747 * print.c (print_string): Fix printing of multibyte string with
1748 nontrivial printcharfun.
1749
465aa50a
JD
17502003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1751
1752 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
1753
1754 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
1755
e430e5ba
KH
17562003-07-31 Kenichi Handa <handa@m17n.org>
1757
1758 * process.c (read_process_output): Return the actually read bytes
1759 instead of the result of decoding.
1760
97e7188e
KH
17612003-07-31 Kenichi Handa <handa@m17n.org>
1762
1763 * xterm.h (struct x_bitmap_record): New member have_mask.
1764
1765 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
1766 to 0.
1767 (x_create_bitmap_from_file): Likewise.
1768 (x_destroy_bitmap): Check have_mask member before freeing a mask.
1769 (x_destroy_all_bitmaps): Likewise.
1770 (x_create_bitmap_mask): Set have_mask member to 1.
1771
b53094d6
RS
17722003-07-30 Richard M. Stallman <rms@gnu.org>
1773
1774 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
1775
631f2082
JD
17762003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1777
1778 * gtkutil.c (xg_mark_data): Update calls to mark_object.
1779
c855f2ca
RS
17802003-07-29 Richard M. Stallman <rms@gnu.org>
1781
1782 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
1783 Conditionalize XIM code on HAVE_XIM.
1784
1785 * fns.c (Fclear_string): New function.
1786 (syms_of_fns): defsubr it.
1787
17e6d491
KH
17882003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> (tiny change)
1789
0930c1a1 1790 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
17e6d491 1791
29ea8ae9
SM
17922003-07-22 Stefan Monnier <monnier@cs.yale.edu>
1793
1794 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
1795
1796 * buffer.c (delete_all_overlays): New function.
1797 * buffer.h (delete_all_overlays): Declare.
1798 * coding.c (run_pre_post_conversion_on_str):
1799 * print.c (temp_output_buffer_setup):
1800 * fileio.c (Finsert_file_contents):
1801 * minibuf.c (get_minibuffer): Use it.
1802
1dd7ccf2
AC
18032003-07-22 Andrew Choi <akochoi@shaw.ca>
1804
1805 * unexmacosx.c (unexec_regions_sort_compare):
1806 (unexec_regions_merge): New functions. Sort and merge unexec
1807 regions before dumping them.
1808
f57bd967
DL
18092003-07-22 Dave Love <fx@gnu.org>
1810
1811 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
1812
7cdee936
SM
18132003-07-21 Stefan Monnier <monnier@cs.yale.edu>
1814
1815 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
1816 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
1817 MARKBIT as the gcmarkbit for strings.
1818
e50886d3
RS
18192003-07-21 Richard M. Stallman <rms@gnu.org>
1820
1821 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
1822
29ea8ae9 1823 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
e50886d3
RS
1824 (syms_of_fns): Corresponding change.
1825
1826 * alloc.c (syms_of_alloc): Doc fixes.
1827
18282003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
1829
1830 * s/netbsd.h: Use -Wl syntax.
1831
fdc39b59
RS
18322003-07-17 Richard M. Stallman <rms@gnu.org>
1833
1834 * xterm.c (xim_initialize): Redo 6/24 change.
1835
9c53385f
SM
18362003-07-15 Stefan Monnier <monnier@cs.yale.edu>
1837
1838 * buffer.c (copy_overlays): Use EMACS_INT for positions.
1839 (Fswitch_to_buffer): Don't signal an error when switching to the same
1840 buffer in a dedicated window.
1841
1842 * alloc.c: Use bitmaps for cons, as was done for floats.
1843 (init_float, init_cons): Let the normal code allocate the first block.
1844 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
1845 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
1846 New macros.
1847 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
1848 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
1849 (live_cons_p): Check the pointer is not past the `conses' array.
1850 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
1851 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
1852 (survives_gc_p): Use CONS_MARKED_P and simplify.
1853 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
1854
dde13196
PE
18552003-07-13 Paul Eggert <eggert@twinsun.com>
1856
1857 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
1858 puts it into BSS instead, at least on Solaris 8 and 9.
1859 This is a valid optimization, and it may occur on other platforms,
1860 so Emacs should not assume that initializing a static variable to
1861 zero puts it into data.
1862 * alloc.c (pure, staticvec):
1863 Initialize these arrays to nonzero, so that they're not
1864 put into BSS by that optimization.
1865
a801bc34
SM
18662003-07-13 Stefan Monnier <monnier@cs.yale.edu>
1867
1868 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
1869 (lisp_align_malloc): Use posix_memalign is available.
1870 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
1871 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
1872 for consistency. Update users.
1873
0c8b2afa
RS
18742003-07-13 Richard M. Stallman <rms@gnu.org>
1875
1876 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
1877
668c2ab0
JB
18782003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
1879
1880 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
1881 and use the Gtk+ function gtk_window_icon_from_file if available.
1882
1883 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
1884 handle mask of bitmaps.
1885 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
1886 mask property.
1887 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
1888
1889 * xterm.h (xg_set_icon): New function.
1890
800bebe3
RS
18912003-07-12 Paul Eggert <eggert@twinsun.com>
1892
1893 * unexelf.c (unexec): Consider a section to precede the .bss
1894 section if its addresses overlap that of .bss.
1895
69e38995
RS
18962003-07-12 Richard M. Stallman <rms@gnu.org>
1897
1898 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
1899
1900 * config.in (HAVE_CRTIN): Add #undef.
1901 (INLINE): Really inline only if OPTIMIZE is defined.
1902
1903 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
1904 END_FILES_1.
1905 (START_FILES_1, END_FILES_1): New macros (conditional).
a801bc34 1906 (LD_SWITCH_SYSTEM_TEMACS): Define.
69e38995
RS
1907
1908 * s/openbsd.h: Don't include bsd4-3.h.
a801bc34
SM
1909 (TERMINFO): Define.
1910 (LIBS_TERMCAP): Define.
1911 (LD_SWITCH_SYSTEM): Define (two definitions).
69e38995
RS
1912
1913 * xfns.c: Include libpng/png.h instead of png.h.
1914
f1d0c238
AS
19152003-07-11 Andreas Schwab <schwab@suse.de>
1916
1917 * buffer.c (modify_overlay): Update prototype.
1918 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
1919 Likewise.
1920
5f6bf5fe
SM
19212003-07-09 Stefan Monnier <monnier@cs.yale.edu>
1922
1923 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
1924 (struct interval): Move to intervals.h.
1925 (struct Lisp_Marker): Use EMACS_INT for position info.
1926 (forward_point): Remove prototype of defunct function.
1927 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
1928 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
1929 (syms_of_textprop, set_text_properties): Remove prototypes that are
1930 already in intervals.h.
1931
1932 * intervals.h (struct interval): Move from lisp.h.
1933 Use EMACS_INT for position and size info.
1934
1935 * coding.c: Include intervals.h for Fset_text_properties.
1936
1937 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
1938 position and length information.
1939
2765b457
SM
19402003-07-09 Stefan Monnier <monnier@cs.yale.edu>
1941
1942 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
1943 position and length information.
1944
2410d73a
SM
19452003-07-09 Stefan Monnier <monnier@cs.yale.edu>
1946
1947 Change overlays_after and overlays_before so the overlays themselves
1948 are linked into lists, rather than using cons cells. After all each
1949 Lisp_Misc already occupies 5 words, so we can add a `next' field to
1950 Lisp_Overlay for free and save up one cons cell per overlay (not
1951 to mention one indirection when traversing the list of overlay).
1952
1953 * lisp.h (struct Lisp_Overlay): New field `next'.
1954
1955 * buffer.h (struct buffer): Change overlays_before and overlays_after
1956 from Lisp lists of overlays to pointers to overlays.
1957
1958 * buffer.c (overlay_strings, recenter_overlay_lists):
1959 Fix typo in eassert in last commit.
1960 (unchain_overlay): New function.
1961 (add_overlay_mod_hooklist): Use AREF.
1962 (copy_overlays, reset_buffer, overlays_at, overlays_in)
1963 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
1964 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
1965 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
1966 (report_overlay_modification, evaporate_overlays, init_buffer_once):
1967 Adjust to new type of overlays_(before|after).
1968
1969 * alloc.c (mark_object): Mark the new `next' field of overlays.
1970 (mark_buffer): Manually mark the overlays_(after|before) fields.
1971
1972 * coding.c (run_pre_post_conversion_on_str):
1973 * editfns.c (overlays_around):
1974 * xdisp.c (load_overlay_strings):
1975 * fileio.c (Finsert_file_contents):
1976 * indent.c (current_column):
1977 * insdel.c (signal_before_change, signal_after_change):
1978 * intervals.c (set_point_both):
1979 * print.c (temp_output_buffer_setup): Use new type for
1980 overlays_(before|after).
1981
04812929
SM
19822003-07-08 Stefan Monnier <monnier@cs.yale.edu>
1983
1984 * buffer.c (report_overlay_modification): Don't run hooks while
1985 traversing the list of overlays.
1986
1987 * buffer.h (struct buffer): Use an int for overlay_center.
1988 (overlays_at, evaporate_overlays, recenter_overlay_lists)
1989 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
1990
1991 * buffer.c (reset_buffer, recenter_overlay_lists)
1992 (adjust_overlays_for_insert, adjust_overlays_for_delete)
1993 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
1994 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
1995 (overlays_at, evaporate_overlays, recenter_overlay_lists)
1996 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
1997
1998 * xdisp.c (fast_find_position): Remove unused var.
1999
2000 * cmds.c (Qexpand_abbrev): New sym.
2001 (syms_of_cmds): Initialize it.
2002 (internal_self_insert): Use it to call expand-abbrev.
2003
2e7ecf15
KS
20042003-07-09 Kim F. Storm <storm@cua.dk>
2005
2006 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if emacs
2007 was configured with --without-xim.
42f81f64 2008 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
2e7ecf15 2009
c6de56a0
RS
20102003-07-07 Richard M. Stallman <rms@gnu.org>
2011
2012 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
2013
2014 * alloc.c (Fgarbage_collect): Doc fix.
2015
b93fb365
KH
20162003-07-07 Nozomu Ando <nand@mac.com> (tiny change)
2017
2018 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
2019
bfe1a3f7
SM
20202003-07-06 Stefan Monnier <monnier@cs.yale.edu>
2021
04812929
SM
2022 * minibuf.c (read_minibuf): UNGCPRO before returning.
2023 (Ftry_completion, Fall_completions): Doc fix.
2024
bfe1a3f7
SM
2025 * alloc.c (live_float_p): Check that p is not past the `floats' array,
2026 now that `floats' is not the last element of the struct any more.
2027
ee79d1aa
JR
20282003-07-06 Jason Rumney <jasonr@gnu.org>
2029
2030 * w32term.h (ClipboardSequence_Proc): New type.
2031
2032 * w32fns.c (clipboard_sequence_fn): New variable.
2033 (globals_of_w32fns): Initialize it.
2034
2035 * w32select.c (last_clipboard_sequence_number): New variable.
2036 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
2037 number if possible.
2038
49723c04
SM
20392003-07-06 Stefan Monnier <monnier@cs.yale.edu>
2040
4698665f
SM
2041 * m/amdx86-64.h (MARKBIT):
2042 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
2043 MARKBIT and ARRAY_MARK_FLAG any more.
2044
2045 * m/hp800.h (XSETMARKBIT):
2046 * m/sr2k.h (XSETMARKBIT):
2047 * lisp.h (XSETMARKBIT): Remove unused macro.
2048
49723c04
SM
2049 * lisp.h (mark_object): Change prototype.
2050
2051 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
2052 (last_marked): Change accordingly.
2053 (mark_interval, mark_maybe_object, mark_maybe_pointer)
2054 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
2055 (mark_buffer): Update calls to mark_object.
2056
2057 * bytecode.c (mark_byte_stack):
2058 * fns.c (sweep_weak_table):
2059 * keyboard.c (mark_kboards): Update calls to mark_object.
2060
1d660eca
JR
20612003-07-06 Jason Rumney <jasonr@gnu.org>
2062
2063 * alloc.c (struct ablock): Only include padding when there is some.
2064
618b5ae4
SM
20652003-07-04 Stefan Monnier <monnier@cs.yale.edu>
2066
2067 * alloc.c (ALIGN): Add casts to simplify usage.
2068 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
2069 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
2070 (struct ablock, struct ablocks): New types.
2071 (free_ablock): New global var.
2072 (lisp_align_malloc, lisp_align_free): New functions.
2073 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
2074 (struct float_block): Reorder and add gcmarkbits.
2075 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
2076 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
2077 (init_float, make_float): Use lisp_align_malloc.
2078 (free_float, live_float_p): Don't use `type' any more.
2079 (make_float): Use FLOAT_UNMARK to access to mark bit.
2080 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
2081 Use FLOAT_MARKED_P to access the mark bit.
2082 (pure_alloc): Simplify use of ALIGN.
2083 (mark_object): Use FLOAT_MARK to access the mark bit.
2084 (gc_sweep): Use new macros to access the float's mark bit.
2085 (init_alloc_once): Init free_ablock.
2086
2087 * lisp.h (struct Lisp_Float): Remove unused field `type'.
2088
3ef06d12
SM
20892003-06-27 Stefan Monnier <monnier@cs.yale.edu>
2090
2091 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
2092 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
2093 (allocate_buffer): Move.
2094 (string_bytes): Don't mask markbit of `size_byte'.
2095 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
2096 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
2097 Use the `size' field of buffers (rather than the `name' field) for
2098 the mark bit, as is done for all other vectorlike objects.
2099 Use the new macros to access the mark bit of vectorlike objects.
2100
e81043aa
RS
21012003-06-26 Richard M. Stallman <rms@gnu.org>
2102
2103 * puresize.h (BASE_PURESIZE): Increment base size.
2104
2105 * xdisp.c (fast_find_position): Enable Gerd's new definition.
2106
2107 * xterm.c (xim_initialize): Undo previous change.
2108
2d0834cc
SM
21092003-06-26 Stefan Monnier <monnier@cs.yale.edu>
2110
2111 * alloc.c (survives_gc_p): Simplify.
2112
2113 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
2114
2115 * window.c (Fset_window_dedicated_p): Simplify.
2116 (display_buffer_1): Don't raise the win from which minibuf was entered.
2117 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
2118 (Fminibuffer_selected_window): Simplify.
2119
2120 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
2121
2122 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
2123 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
2124
2125 * insdel.c (check_markers, adjust_markers_for_delete)
2126 (adjust_markers_for_insert, adjust_markers_for_replace)
2127 (prepare_to_modify_buffer, RESTORE_VALUE):
2128 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
2129 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
2130 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
2131 * alloc.c (Fmake_marker, free_marker, gc_sweep):
2132 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
2133 * editfns.c (save_excursion_restore, transpose_markers):
2134 * window.c (delete_window):
2135 * xdisp.c (message_dolog): Update for new types.
2136
d54ae3d8
JD
21372003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2138
a5f696ac
JD
2139 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
2140 (realize_default_face): Use default_face_done_p for the force_p
2d0834cc 2141 argument to set_lface_from_font_name. Set default_face_done_p to one.
a5f696ac
JD
2142
2143 * frame.c (make_frame): Initialize default_face_done_p.
2144
2145 * frame.h (struct frame): Add default_face_done_p.
2146
d54ae3d8
JD
2147 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
2148 will be defined.
2149
2336fe58
SM
21502003-06-25 Stefan Monnier <monnier@cs.yale.edu>
2151
2152 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
2153 Initialize the new field `gcmarkbit'.
2154 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
2155 (mark_interval_tree): Don't mark the tree separately from the nodes.
2156 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
2157 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
2158 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
2159
2160 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
2161 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
2162 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
2163 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
2164 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
2165
bcea31c2
DL
21662003-06-24 Dave Love <fx@gnu.org>
2167
2168 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
2169
2170 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
2171 from gnulib.
2172
2601f59e
RS
21732003-06-21 Richard M. Stallman <rms@gnu.org>
2174
2175 * fileio.c (Fwrite_region): Alternate messages
2176 for append and partial write.
2177
2178 * keyboard.c (read_key_sequence): When converting upcase fn key to
2179 downcase, update fkey and keytran so `backspace' gets translated.
2180
2181 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
2182
2183 * process.c (wait_reading_process_input): Don't signal SIGIO
2184 in batch mode.
2185
b5d2c621
KH
21862003-06-17 Kenichi Handa <handa@m17n.org>
2187
2188 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
2189 composite.h.
2190
2191 * xselect.c: Don't include charset.h, coding.h, composite.h.
2192 (Qforeign_selection): New variable.
2193 (syms_of_xselect): Intern and static it.
2194 (selection_data_to_lisp_data): Return a unibyte string made from
2195 data with `foreign-selection' text property.
2196
6793bc63
SM
21972003-06-15 Stefan Monnier <monnier@cs.yale.edu>
2198
2199 * termhooks.h (EVENT_INIT): New macro.
2200
2201 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
2202
2203 * alloc.c (mark_kboards): Move to keyboard.c.
2204
2205 * keyboard.c (record_asynch_buffer_change, read_avail_input):
2206 * xterm.c (x_dispatch_event):
2207 * xmenu.c (find_and_call_menu_selection):
2208 * xdisp.c (handle_tool_bar_click):
2209 * w32menu.c (menubar_selection_callback):
2210 * sysdep.c (kbd_input_ast, read_input_waiting):
2211 * msdos.c (dos_rawgetc):
2212 * macterm.c (mac_check_for_quit_char):
2213 * macmenu.c (menubar_selection_callback):
2214 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
2215 data to kbd_buffer_store_event.
2216
b3ea810c
KS
22172003-06-15 Kim F. Storm <storm@cua.dk>
2218
2219 * xdisp.c (x_fix_overlapping_area): Always use area relative X
6793bc63 2220 to fix redisplay problem with tall characters (such as \e,AC\e(B).
b3ea810c 2221
b8f75eda
KG
22222003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
2223
2224 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
2225
ba92ce48
KH
22262003-06-12 Kenichi Handa <handa@m17n.org>
2227
2228 * fileio.c (Fwrite_region): Save and restore restriction.
2229
b80263be
DL
22302003-06-12 Dave Love <fx@gnu.org>
2231
2232 * alloca.c (alloca): Declare arg as size_t.
2233
6793bc63
SM
2234 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
2235 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
b80263be 2236
b23c0a83
DL
22372003-06-11 Dave Love <fx@gnu.org>
2238
2239 * search.c (shrink_regexp_cache): Use xrealloc.
2240 (syms_of_search): Use xmalloc.
2241
700e47c2
KS
22422003-06-10 Kim F. Storm <storm@cua.dk>
2243
2244 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
2245 Adjust phys_cursor.x to be relative to window box, rather than
2246 text area before checking -- to ensure cursor is redrawn when
2247 exposing window.
2248 Note: This also fixes a similar (older) bug if display margins
2249 are present.
2250
f11aa0b2
KH
22512003-06-06 Kenichi Handa <handa@m17n.org>
2252
2253 * coding.c (encoding_buffer_size): If coding->type is
2254 coding_type_ccl, double magnification on CRLF encoding.
2255
3d143690
JR
22562003-06-06 Jason Rumney <jasonr@gnu.org>
2257
2258 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
2259 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
2260
2261 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
2262 Mac too.
2263
f16205ca
DL
22642003-06-05 Dave Love <fx@gnu.org>
2265
b23c0a83
DL
2266 * strftime.c: Merge changes from gnulib.
2267
f16205ca
DL
2268 * mktime.c (__mktime_internal): Merge changes from gnulib
2269 involving year 69 and dst2.
2270
2271 Changes to merge with gnulib version and be consistent with the
2272 autoconf test:
2273
6793bc63
SM
2274 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
2275 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
f16205ca
DL
2276 [HAVE_LOCALE_H]: Include locale.h.
2277 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
2278
9b87a0bc
KS
22792003-06-05 Kim F. Storm <storm@cua.dk>
2280
2281 * window.c (coordinates_in_window): Convert X and Y to window
2282 relative coordinates inside mode-line and header-line parts.
2283 Convert X and Y to margin area relative coordinates inside left
2284 and right display margin parts.
2285
5a8a15ec
JR
22862003-06-05 Jason Rumney <jasonr@gnu.org>
2287
2288 * w32fns.c (add_system_logical_colors_to_map): New function.
2289 (Fx_open_connection): Use it.
2290
01ed8ff1
SM
22912003-06-04 Stefan Monnier <monnier@cs.yale.edu>
2292
2293 * process.c (allocate_pty): Revert part of the previous patch.
2294 (Faccept_process_output): Simplify.
2295
b427b65d
JR
22962003-06-04 Jason Rumney <jasonr@gnu.org>
2297
2298 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
2299
2300 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
2301 (lispy_mouse_wheel_names): Remove.
2302 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
2303 Always define drag_and_drop_syms.
2304
2305 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
2306 WHEEL_EVENT events.
2307
914a8c47
SM
23082003-06-03 Stefan Monnier <monnier@cs.yale.edu>
2309
01ed8ff1
SM
2310 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
2311
914a8c47
SM
2312 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
2313
adcb132c
JD
23142003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2315
2316 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
2317 menu item label.
2318
be781fa7
RS
23192003-06-03 Richard M. Stallman <rms@gnu.org>
2320
2321 * window.c (Fwindow_edges): Doc fix.
2322 (Fwindow_pixel_edges, Fwindow_inside_edges)
2323 (Fwindow_inside_pixel_edges): New functions.
2324 (syms_of_window): defsubr them.
2325
2326 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
2327 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
2328
914a8c47
SM
23292003-06-02 Stefan Monnier <monnier@cs.yale.edu>
2330
2331 * dispnew.c (Fsit_for): Don't lie about the number of args.
2332
5b07197a
DL
23332003-06-02 Dave Love <fx@gnu.org>
2334
2335 * callproc.c: Use HAVE_FCNTL_H, not USG5.
2336 (syms_of_callproc) <process-environment>: Doc fix.
2337
2338 * doc.c: Use HAVE_FCNTL_H, not USG5.
2339
2340 * xfaces.c (font_rescale_ratio): Fix for K&R.
2341
2342 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
2343
2344 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
2345
2346 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
2347
2348 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
2349 (xg_create_frame_widgets): Use ENCODE_UTF_8.
2350
d7107586 2351 * xterm.c (Qutf_8): Move to coding.c
5b07197a
DL
2352
2353 * xmenu.c (ENCODE_MENU_STRING): New.
2354 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
2355 Use it.
2356
2357 * coding.h (ENCODE_UTF_8): New.
2358 (Qutf_8): Declare.
2359
2360 * coding.c (Qutf_8): New.
2361 (syms_of_coding): Intern it.
2362
2363 * fns.c: Doc fixes.
2364
7335b336
KH
23652003-06-02 Kenichi Handa <handa@m17n.org>
2366
2367 * buffer.c (Fset_buffer_multibyte): Fix previous change.
2368
914a8c47
SM
23692003-06-01 Stefan Monnier <monnier@cs.yale.edu>
2370
2371 * lread.c (openp): Make sure STR is a string.
2372
9862c135
JR
23732003-06-01 David Ponce <david@dponce.com>
2374
2375 * termhooks.h (enum event_kind): Added new WHEEL_EVENT event.
2376 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
2377
2378 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
2379 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
2380 (discard_mouse_events): Discard WHEEL_EVENT events too.
2381 (lispy_wheel_names, wheel_syms): New.
2382 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
2383 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX
2384 defined.
914a8c47 2385 (make_lispy_event): Add WHEEL_EVENT handler.
9862c135
JR
2386
2387 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
2388 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
2389 WHEEL_EVENT events.
2390
f984e73e
JPW
23912003-05-31 John Paul Wallington <jpw@gnu.org>
2392
2393 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
2394 timer are in lisp/emacs-lisp.
2395
1efcd78f
KH
23962003-05-31 Kenichi Handa <handa@m17n.org>
2397
458c8af4
KH
2398 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
2399 region when a buffer is changed to unibyte.
2400
1efcd78f
KH
2401 * charset.h (VALID_LEADING_CODE_P): New macro.
2402 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
2403
778e2804
KH
2404 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
2405 is nonzero, accept multibyte form of eight-bit-control chars.
2406 (decode_composition_emacs_mule): Likewise.
2407 (decode_coding_emacs_mule): Likewise.
2408 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
2409 multibyte form of eight-bit-control chars.
2410
2411 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
2412 (Finsert_file_contents): If coding-system-for-read is bound to
2413 Qauto_save_coding, use the coding system emacs-mule with special
2414 setting for recovering a file.
2415 (choose_write_coding_system): On auto saving, use the coding
2416 system emacs-mule with special setting for auto saving.
2417 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
2418
034060e4
KH
24192003-05-30 Kenichi Handa <handa@m17n.org>
2420
2421 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
2422 properly before calling ccl_driver.
2423
778e2804 2424 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
034060e4
KH
2425
2426 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is
2427 nonzero.
2428 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
2429 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
2430
595f5aa5
GM
24312003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
2432
2433 * xfaces.c (realize_default_face): Do not abort if lface is
2434 non-existent - reverts change from 2003-05-19.
2435
103e0180
KH
24362003-05-29 Kenichi Handa <handa@m17n.org>
2437
2438 * coding.c (decode_coding_iso2022): Pay attention to the byte
2439 sequence of CTEXT extended segment, and retain those bytes as is.
2440
24412003-05-28 Kenichi Handa <handa@m17n.org>
2442
2443 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjusted for the name change
2444 of CODING_REPLACEMENT_CHARACTER.
2445 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
2446 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
2447 check this flag on encoding.
2448 (encode_coding_sjis_big5): Check
2449 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
2450 (Fset_terminal_coding_system_internal): Set
2451 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
2452 instead of setting CODING_FLAG_ISO_SAFE flag in
2453 terminal_coding.flags.
2454
2455 * coding.h (CODING_REPLACEMENT_CHARACTER): Renamed from
2456 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
2457 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
2458
ff6a3bfb 24592003-05-28 Richard M. Stallman <rms@gnu.org>
45f266dc 2460
ff6a3bfb
RS
2461 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
2462
2463 * eval.c (unbind_to): Move init of this_binding to separate statement.
45f266dc 2464
1963c428
KS
24652003-05-28 Kim F. Storm <storm@cua.dk>
2466
2467 * xdisp.c (expose_window): Fix error in calculation of
2468 window relative coordinates of area to redisplay.
2469
2b5d4601
JR
24702003-05-27 Jason Rumney <jasonr@gnu.org>
2471
2472 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
2473
1c64a4a2
JB
24742003-05-27 David Ponce <david@dponce.com>
2475
2476 Handle W32 mouse wheel events as mouse click events, like in X.
2477
2478 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
2479 MOUSE_WHEEL_EVENT anymore.
2480
2481 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
2482 Scrolling down/up the mouse wheel is respectively mapped to mouse
2483 button 4 and 5.
2484 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
2485 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
2486 WM_MOUSEWHEEL events.
2487
2d031b89
AS
24882003-05-27 Andreas Schwab <schwab@suse.de>
2489
20464fdf
AS
2490 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
2491
2d031b89
AS
2492 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
2493 partially visible line.
2494
2495 * alloc.c (Fgarbage_collect): Fix last change.
2496
97bc76d4
JPW
24972003-05-26 John Paul Wallington <jpw@gnu.org>
2498
2499 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
2500
56613f06
SM
25012003-05-25 Stefan Monnier <monnier@cs.yale.edu>
2502
2503 * window.c (Fset_window_buffer): Add type of `keep_margins'.
2504 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
2505
2506 * window.h (window_box_text_cols): Declare.
2507
2508 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
2509 (x_draw_vertical_border): Remove unused var `f'.
2510
2511 * xfaces.c (build_scalable_font_name): Remove `unused var
2512 pixel_size' warning.
2513
2514 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
2515
2516 * unexelf.c (unexec): Remove `unused var n' warning.
2517
2518 * strftime.c (my_strftime_localtime_r): Remove `defined but
2519 unused' warning.
2520
2521 * process.c (allocate_pty): Remove `unused var stb' and
2522 `cp might be used uninitialized' warnings.
2523
2524 * dispnew.c (mode_line_string): Remove unused var `f'.
2525
2526 * coding.c (find_safe_codings): Remove unused var `i'.
2527
2528 * bytecode.c (Fbyte_code): Remove `unused val' warning.
2529
2530 * buffer.c (Fkill_buffer): Remove unused var `list'.
2531
2532 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
2533
93421a1f
JD
25342003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2535
2536 * frame.c (make_frame): Condition want_fullscreen with
2537 HAVE_WINDOW_SYSTEM.
2538
c4b8aebc
JB
25392003-05-25 Juanma Barranquero <lektu@terra.es>
2540
2541 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
2542 (Fwindow_scroll_bars): Fix typo in docstring.
2543
0416870b
KS
25442003-05-24 Kim F. Storm <storm@cua.dk>
2545
2546 The following changes serve several purposes:
2547
2548 1) Swap the position of fringes and display margins in windows, i.e.
2549 the fringes are now displayed between the margins and the text area
2550 (by default).
2551
2552 2) Allow fringe and scroll bar parameters to be set per-buffer and
2553 per-window (like display margins). Such settings are now stored
2554 in window configurations, preserved when frames are resized, and
9018a88e 2555 copied when windows are split vertically or horizontally.
0416870b
KS
2556 Several bugs related to display margins have been fixed.
2557
2558 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
9018a88e 2559
0416870b
KS
2560 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
2561 rather than FRAME_WIDTH (FRAME_FONT (f)).
2562
2563 5) Introduce a consistent naming of variables, members and macros
2564 depending on whether their value is measured in pixels or in
2565 canonical columns/lines. Pixel dimensions are named *_width and
2566 *_height, while canonical columns/lines are named *_cols and
2567 *_lines. Pixel positions are named *_x and *_y, while column/line
2568 positions are named *_col and *_line.
2569
2570 6) Consolidate more of the X, W32, and MAC gui code by moving
2571 common data into struct frame, and generalize it for the non-gui
2572 case by using suitable defaults.
2573
2574 7) Cleanup and consolidate the macros controlling frame and window
2575 layout into frame.h and window.h, and generalize the use of the
2576 various window_box_* functions (enhanced to handle the new fringe
2577 position and the per-window fringe and scroll bar settings).
2578
2579 * frame.h (struct frame): Rename members height to text_lines,
2580 width to text_cols, window_height to total_lines, window_width to
2581 total_cols, new_height to new_text_lines, new_width to
2582 new_text_cols. All uses changed.
2583 (struct frame): New members which consolidate common members of
2584 x_output, w32_output, and mac_output structures: left_pos,
2585 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
2586 win_gravity, size_hint_flags, border_width, internal_border_width,
2587 line_height, fringe_cols, left_fringe_width, right_fringe_width,
2588 want_fullscreen. All uses changed.
2589 (struct frame): New member column_width contaning the canonical
2590 column width, analogue to line_height. All uses changed.
2591 (struct frame): Rename members scroll_bar_pixel_width to
2592 config_scroll_bar_width, and scroll_bar_cols to
2593 config_scroll_bar_cols. All uses changed.
2594 (struct frame): New member scroll_bar_actual_width which
2595 consolidates and renames the vertical_scroll_bar_extra member of
2596 x_output, w32_output, and mac_output structures. All uses changed.
2597 (FRAME_PIXEL_HEIGHT): Renamed from PIXEL_HEIGHT and moved
2598 from x/w32/macterm.h files. All uses changed. Also change code
2599 which referred to f->output_data...->pixel_height.
2600 (FRAME_PIXEL_WIDTH): Renamed from PIXEL_WIDTH and moved
2601 from x/w32/macterm.h files. All uses changed. Also change code
2602 which referred to f->output_data...->pixel_width.
2603 (FRAME_LINES): Renamed from FRAME_HEIGHT. All uses changed.
2604 Also change code which referred to f->height.
2605 (FRAME_COLS): Renamed from FRAME_WIDTH. All uses changed.
2606 Also change code which referred to f->width.
2607 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
2608 to update new_text_lines and new_text_cols members directly.
2609 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Renamed from
2610 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
2611 (FRAME_CONFIG_SCROLL_BAR_COLS): Renamed from
2612 FRAME_SCROLL_BAR_COLS. All uses changed.
2613 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
2614 Renamed from FRAME_LEFT_SCROLL_BAR_WIDTH and
2615 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
2616 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
2617 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
2618 (FRAME_TOTAL_COLS): Renamed from FRAME_WINDOW_WIDTH.
2619 (SET_FRAME_COLS): Renamed from SET_FRAME_WIDTH.
2620 (FRAME_TOTAL_COLS_ARG): Renamed from FRAME_WINDOW_WIDTH_ARG.
2621 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
2622 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
2623 (FRAME_LINE_HEIGHT): Renamed from CANON_Y_UNIT. Unconditionally
2624 return line_height member (it now has proper value also for
2625 non-window frames).
2626 (FRAME_COLUMN_WIDTH): Renamed from CANON_X_UNIT. Unconditionally
2627 return new column_width member (rather than the default font width).
2628 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
2629 (FRAME_RIGHT_FRINGE_WIDTH): Renamed from FRAME_X_... and moved
2630 from x/w32/macterm.h files. Unconditionally return corresponding
2631 member of frame structure (they now have proper values also for
2632 non-window frames).
2633 (FRAME_TOTAL_FRINGE_WIDTH): Renamed from FRAME_FRINGE_WIDTH.
2634 Calculate return value from left and right widths.
2635 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
2636 internal_border_width member (has proper value for non-window frame).
2637 (FRAME_PIXEL_X_FROM_CANON_X): Renamed from PIXEL_X_FROM_CANON_X.
2638 (FRAME_PIXEL_Y_FROM_CANON_Y): Renamed from PIXEL_Y_FROM_CANON_Y.
2639 (FRAME_CANON_X_FROM_PIXEL_X): Renamed from CANON_X_FROM_PIXEL_X.
2640 (FRAME_CANON_Y_FROM_PIXEL_Y): Renamed from CANON_Y_FROM_PIXEL_Y.
2641 (FRAME_LINE_TO_PIXEL_Y): Renamed from CHAR_TO_PIXEL_ROW,
2642 consolidated from xterm.h, macterm.h, and w32term.h.
2643 (FRAME_COL_TO_PIXEL_X): Renamed from CHAR_TO_PIXEL_COL,
2644 consolidated from xterm.h, macterm.h, and w32term.h.
2645 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Renamed from
2646 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
2647 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Renamed from
2648 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
2649 (FRAME_PIXEL_Y_TO_LINE): Renamed from PIXEL_TO_CHAR_ROW
2650 consolidated from x/mac/w32term.h.
2651 (FRAME_PIXEL_X_TO_COL): Renamed from PIXEL_TO_CHAR_COL
2652 consolidated from x/mac/w32term.h.
2653 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Renamed from
2654 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
2655 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Renamed from
2656 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
2657
2658 * window.h (struct window): Rename members left to left_col,
2659 top to top_line, height to total_lines, width to total_cols,
2660 left_margin_width to left_margin_cols, right_margin_width to
2661 right_margin_cols, orig_height to orig_total_lines, orig_top to
2662 orig_top_line. All uses changed.
2663 (struct window): New members left_fringe_width, right_fringe_width,
2664 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
2665 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
2666 New macros primarily used to simplify other macros.
2667 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
2668 referred to XINT (w->width).
2669 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
2670 referred to XINT (w->height).
2671 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
2672 referred to XINT (w->width) * canon_x_unit.
2673 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
2674 referred to XINT (w->height) * canon_y_unit.
2675 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
2676 referred to XINT (w->left).
2677 (WINDOW_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_EDGE. Change
2678 all uses and code that referred to XINT (w->left) + XINT (w->width).
2679 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
2680 referred to XINT (w->top).
2681 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
2682 referred to XINT (w->top) + XINT (w->height).
2683 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
2684 referred to XINT (w->left) * canon_x_unit.
2685 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
2686 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
2687 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
2688 referred to XINT (w->top) * canon_y_unit.
2689 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
2690 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
2691 (WINDOW_LEFTMOST_P): New macro.
2692 (WINDOW_BOX_LEFT_EDGE_COL): Renamed from WINDOW_LEFT_MARGIN.
2693 All uses changed.
2694 (WINDOW_BOX_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_MARGIN.
2695 All uses changed.
2696 (WINDOW_BOX_LEFT_EDGE_X): Renamed from
2697 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
2698 Do not exclude left fringe width.
2699 (WINDOW_BOX_RIGHT_EDGE_X): Renamed from
2700 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
2701 Do not exclude fringe widths.
2702 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
2703 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
2704 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
2705 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
2706 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
2707 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
2708 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
2709 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
2710 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
2711 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
2712 New macros. Change code which referenced corresponding
2713 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
2714 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
2715 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
2716 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
2717 allow per-window scroll-bar settings.
2718 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
2719 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
2720 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
2721 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
2722 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
2723 FRAME_SCROLL_BAR_WIDTH.
2724 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
9018a88e 2725 (WINDOW_SCROLL_BAR_AREA_X): New macros.
0416870b
KS
2726 (WINDOW_HEADER_LINE_HEIGHT): Renamed from
2727 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
2728 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Renamed from
2729 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
2730 (WINDOW_BOX_TEXT_HEIGHT): Renamed from
2731 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
2732 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
2733 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
2734 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Moved here from dispextern.h.
2735 (WINDOW_LEFT_MARGIN_WIDTH): Renamed from
2736 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
2737 (WINDOW_RIGHT_MARGIN_WIDTH): Renamed from
2738 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
2739 (window_from_coordinates): Update prototype.
2740 (Fset_window_buffer): Update EXFUN.
2741 (set_window_buffer): Update prototype.
9018a88e 2742
0416870b 2743 * dispextern.h (struct glyph_matrix): Rename members window_left_x
9018a88e 2744 to window_left_col, window_top_y to window_top_line. All uses
0416870b
KS
2745 changed.
2746 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
2747 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
2748 internal_border_width is now set to 0 for non-window frames.
2749 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
2750 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
2751 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
2752 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
2753 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
2754 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
2755 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
2756 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
2757 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
9018a88e 2758 Move to window.h and renamed [see window.h changes].
0416870b
KS
2759 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
2760 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
9018a88e
SM
2761 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
2762 Use WINDOW_TOTAL_LINES.
0416870b
KS
2763 (frame_update_line_height): Remove prototype.
2764
2765 * buffer.h (struct buffer): Rename members measured in columns:
2766 left_margin_width to left_margin_cols, right_margin_width to
2767 right_margin_cols. All uses changed.
2768 New members left_fringe_width, right_fringe_width,
2769 fringes_outside_margins for per-buffer fringe settings.
2770 New members scroll_bar_width and vertical_scroll_bar_type for
2771 per-buffer scroll bar settings.
2772
2773 * buffer.c (init_buffer_once): Set buffer_defaults and
2774 buffer_local_flags for new buffer-local variables
2775 left_fringe_width, right_fringe_width, fringes_outside_margins,
2776 scroll_bar_width, and vertical_scroll_bar_type.
2777 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
2778 default-* variables for them.
2779
2780 * dispnew.c: Make (many) trivial substitutions for renamed and
2781 new macros in dispextern.h, frame.h and window.h.
2782 (mode_line_string): No need to adjust width for mode lines, as it
2783 is already adjusted by the caller.
2784 (marginal_area_string): Handle fringes inside/outside margins.
9018a88e 2785
0416870b
KS
2786 * frame.c: Make (many) trivial substitutions for renamed and
2787 new macros in dispextern.h, frame.h and window.h.
2788 (make_frame): Initialize left_fringe_width, right_fringe_width,
2789 fringe_cols, scroll_bar_actual_width, border_width,
2790 internal_border_width, column_width, line_height, x_pixels_diff,
2791 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
2792 members with values suitable for a non-window frames.
2793
2794 * gtkutil.c: Make (many) trivial substitutions for renamed and
2795 new macros in dispextern.h, frame.h and window.h.
9018a88e 2796
0416870b
KS
2797 * indent.c: Make (few) trivial substitutions for renamed and
2798 new macros in dispextern.h, frame.h and window.h.
2799
2800 * keyboard.c: Make (many) trivial substitutions for renamed and
2801 new macros in dispextern.h, frame.h and window.h.
2802 (make_lispy_event): Use window positions returned from
2803 window_from_coordinates when constructing the lisp event for
2804 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
2805 (incorrect) values locally.
2806 (make_lispy_movement): Use window positions returned from
2807 window_from_coordinates when constructing the lisp event, rather
2808 than calculating (incorrect) values locally.
2809
2810 * scroll.c: Make (some) trivial substitutions for renamed and
2811 new macros in dispextern.h, frame.h and window.h.
2812
2813 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
2814 scroll-bars.
2815
2816 * sysdep.c: Make (few) trivial substitutions for renamed and
2817 new macros in dispextern.h, frame.h and window.h.
2818
2819 * term.c: Make (some) trivial substitutions for renamed and
2820 new macros in dispextern.h, frame.h and window.h.
2821
2822 * widget.c: Make (few) trivial substitutions for renamed and
2823 new macros in dispextern.h, frame.h and window.h.
2824
2825 * window.c: Make (many) trivial substitutions for renamed and
2826 new macros in dispextern.h, frame.h and window.h.
2827 (make_window): Initialize new members
2828 left_margin_cols, right_margin_cols, left_fringe_width,
2829 right_fringe_width, fringes_outside_margins, scroll_bar_width,
2830 and vertical_scroll_bar_type.
2831 (coordinates_in_window): Adapted to new fringe/margin positions
9018a88e 2832 and per-window fringes and scroll-bars.
0416870b 2833 Fix bug related to incorrectly adjusting coordinates by
9018a88e 2834 frame's internal_border_width (the effect normally negible since
0416870b
KS
2835 the internal_border_width is typically 0 or 1 pixel, but very
2836 noticeable for an internal_border_width of e.g. 25 pixels).
2837 Upon successful return (other than ON_NOTHING), the coordinates
2838 are now always properly converted to window relative for the
2839 given display element.
2840 (window_from_coordinates): Add new parameters wx and wy to
2841 return the window relative x and y position in the returned
2842 window and part. A null arg means, don't return the position.
2843 All callers changed.
2844 (adjust_window_margins): New function which may reduce the width
2845 of the display margins if a window's text area is too small after
2846 resizing or splitting windows.
2847 (size_window): Fix bug that did not account for display margin
2848 widths when checking the minimum width of a window; use
2849 adjust_window_margins.
2850 (set_window_buffer): Call Fset_window_fringes and
2851 Fset_window_scroll_bars to setup per-window elements.
2852 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
2853 existing display margin, fringe widths, and scroll bar settings
9018a88e
SM
2854 (e.g. after splitting a window or resizing the frame).
2855 All callers changed.
0416870b
KS
2856 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
2857 (Fsplit_window): Duplicate original window's display margin,
2858 fringe, and scroll-bar settings; then call Fset_window_buffer with
2859 KEEP_MARGINS non-nil. This fixes a bug which caused a split
2860 window to only preserve the display margins in one of the windows.
c4b8aebc 2861 When splitting horizontally, call adjust_window_margins on both
0416870b
KS
2862 windows to ensure that the text area of the new windows is non too
2863 narrow. This fixes a bug which could cause emacs to trap if the
2864 width of the split window was less than the width of the display
2865 margins.
9018a88e
SM
2866 (window_box_text_cols): Renamed from window_internal_width.
2867 All uses changed. Adapt to per-window fringes and scroll bars.
0416870b
KS
2868 Fix bug that caused vertical separator to be subtracted also on
2869 window frames. Fix another bug that did not reduce the returned
2870 value by the columns used for display margins.
2871 (window_scroll_line_based): Fix bug related to scrolling too much
2872 when display margins are present (implicitly fixed by the fix to
2873 window_box_text_cols).
2874 (scroll_left, scroll_right): Fix bug related to scrolling too far
2875 by default when display margins are present (implicitly fixed by
2876 the fix to window_box_text_cols).
2877 (struct saved_window): Rename members left to left_col, top to
2878 top_line, width to total_cols, height to total_lines, orig_top to
2879 orig_top_line, orig_height to orig_total_lines. All uses changed.
2880 New members left_margin_cols, right_margin_cols,
2881 left_fringe_width, right_fringe_width, fringes_outside_margins,
2882 scroll_bar_width, and vertical_scroll_bar_type for saving
2883 per-window display elements.
2884 (Fset_window_configuration): Restore display margins, fringes,
2885 and scroll bar settings. This fixes a bug which caused display
2886 margins to be discarded when saving and restoring a window
2887 configuration.
2888 (save_window_save): Save display margins, fringes, and scroll bar
2889 settings. This fixes a bug which caused display margins to be
2890 discarded when saving and restoring a window configuration.
2891 (Fset_window_margins): Do nothing if display margins are not
2892 really changed. Otherwise, call adjust_window_margins to ensure
2893 the text area doesn't get too narrow. This fixes a bug which
2894 could cause emacs to trap if setting display margins wider than
2895 the width of the window.
2896 (Fset_window_fringes): New defun to allow user to specifically set
2897 this window's fringe widths and position vs. display margins.
2898 (Fwindow_fringes): New defun to return window's actual fringe
2899 settings.
2900 (Fset_window_scroll_bars): New defun to allow user to specifically
2901 set this window's scroll bar width and position.
2902 (Fwindow_scroll_bars): New defun to return window's actual scroll
2903 bar settings.
2904 (compare_window_configurations): Also compare display margins,
2905 fringes, and scroll bar settings.
2906 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
2907
2908 * xdisp.c: Make (many) trivial substitutions for renamed and
2909 new macros in dispextern.h, frame.h and window.h.
2910 (window_box_width): Adapt to per-window fringes and scroll bars,
2911 and new fringe vs. display margin position. Note that returned
2912 value is no longer guaranteed to be a whole multiple of the frame
2913 column width, since per-window fringes may now be any width.
2914 (window_box_left_offset): New function like window_box_left, but
2915 value is relative to left border of window (rather than frame).
2916 (window_box_right_offset): New function like window_box_right,
2917 but value is relative to left border of window.
2918 (window_box_left): Adapt to per-window fringes and scroll bars,
2919 and new fringe vs. display margin position. Simplify by using
2920 WINDOW_LEFT_EDGE_X and window_box_left_offset.
2921 (window_box): Allow null args for unnecessary return values;
2922 change/simplify relevant callers.
2923 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
9018a88e
SM
2924 and new fringe vs. display margin position.
2925 Use window_box_left_offset and window_box_right_offset
0416870b 2926 (get_glyph_string_clip_rect): Adapt to per-window fringes and
9018a88e
SM
2927 scroll bars, and new fringe vs. display margin position.
2928 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
0416870b
KS
2929 (draw_fringe_bitmap): Rework to handle per-window fringes and new
2930 fringe vs. display margin position.
2931 (hscroll_window_tree): Use window_box_width instead of window_box.
2932 (redisplay_window): Adapt to per-window scroll bars.
2933 (draw_glyphs): Rework to handle per-window fringes and scroll
9018a88e
SM
2934 bars, and new fringe vs. display margin position.
2935 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
0416870b
KS
2936 (x_clear_end_of_line): Adapt to per-window fringes and scroll
2937 bars, and new fringe vs. display margin position. Fix bug which
2938 increased total width of full_width rows by width of scroll bars
2939 although window's total width already includes that.
2940 (x_fix_overlapping_area): Simplify using window_box_left_offset.
2941 (expose_area): Simplify using window_box_left_offset.
2942 (x_draw_vertical_border): Handle per-window scroll bar settings,
2943 mixing windows with left, right and no scroll bars.
2944
2945 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
2946 where it's used in x_list_fonts (for clarity).
2947 (frame_update_line_height): Remove unused function; functionality
2948 is now done directly when setting the default font in x_set_font.
2949
2950 * xfns.c: Make (many) trivial substitutions for renamed and
2951 new macros in dispextern.h, frame.h and window.h.
2952
2953 * xmenu.c: Make (some) trivial substitutions for renamed and
2954 new macros in dispextern.h, frame.h and window.h.
2955
2956 * xterm.h (struct x_output): Move members left_pos, top_pos,
2957 border_width, pixel_height, pixel_width, line_height,
2958 internal_border_width, vertical_scroll_bar_extra,
2959 left_fringe_width, right_fringe_width, fringe_cols,
2960 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
2961 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
2962 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
2963 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
2964 (PIXEL_WIDTH, PIXEL_HEIGHT)
2965 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
2966 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
2967 frame.h and renamed [see frame.h changes].
2968 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
2969 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
2970 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
2971 and renamed [see frame.h changes].
9018a88e 2972
0416870b
KS
2973 * xterm.c: Make (several) trivial substitutions for renamed and
2974 new macros in dispextern.h, frame.h and window.h.
2975 (x_draw_glyph_string_box): Adapt to per-window fringes and
2976 scroll-bars.
2977 (scroll_run): Adapt to new fringe position.
2978 (glyph_rect): Use window coordinates returned from
2979 window_from_coordinates rather than frame_to_window_pixel_xy.
2980 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
2981 scroll-bars.
2982 (handle_one_xevent): Simplify a USE_GTK conditional.
2983 (x_clip_to_row): Remove superfluous whole_line_p arg and code
2984 (fringes are now inside margins, i.e. always in the clipping area).
2985 All callers changed.
2986 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
2987 directly, then call compute_fringe_widths. Don't call
2988 frame_update_line_height.
2989
2990 * w32term.h (struct w32_output): Move members left_pos, top_pos,
2991 border_width, pixel_height, pixel_width, line_height,
2992 internal_border_width, vertical_scroll_bar_extra,
2993 left_fringe_width, right_fringe_width, fringe_cols,
2994 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
2995 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
2996 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
2997 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
2998 (PIXEL_WIDTH, PIXEL_HEIGHT)
2999 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
3000 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
3001 frame.h and renamed [see frame.h changes].
3002 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
3003 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
3004 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
3005 and renamed [see frame.h changes].
9018a88e 3006
0416870b
KS
3007 * w32term.c: Make (several) trivial substitutions for renamed and
3008 new macros in dispextern.h, frame.h and window.h.
3009 (x_draw_glyph_string_box): Adapt to per-window fringes and
3010 scroll-bars.
3011 (glyph_rect): Use window coordinates returned from
3012 window_from_coordinates rather than frame_to_window_pixel_xy.
3013 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
3014 scroll-bars.
3015 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
3016 (fringes are now inside margins, i.e. always in the clipping area).
3017 All callers changed.
3018 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
3019 directly, then call compute_fringe_widths. Don't call
3020 frame_update_line_height.
3021
3022 * w32console.c: Make (few) trivial substitutions for renamed and
3023 new macros in dispextern.h, frame.h and window.h.
3024
3025 * w32fns.c: Make (many) trivial substitutions for renamed and
3026 new macros in dispextern.h, frame.h and window.h.
3027
3028 * w32menu.c: Make (few) trivial substitutions for renamed and
3029 new macros in dispextern.h, frame.h and window.h.
3030
3031 * macterm.h (struct mac_output): Move members left_pos, top_pos,
3032 border_width, pixel_height, pixel_width, line_height,
3033 internal_border_width, vertical_scroll_bar_extra,
3034 left_fringe_width, right_fringe_width, fringe_cols,
3035 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
3036 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
3037 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
3038 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
3039 (PIXEL_WIDTH, PIXEL_HEIGHT)
3040 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
3041 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
3042 frame.h and renamed [see frame.h changes].
3043 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
3044 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
3045 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
3046 and renamed [see frame.h changes].
9018a88e 3047
0416870b
KS
3048 * macterm.c: Make (several) trivial substitutions for renamed and
3049 new macros in dispextern.h, frame.h and window.h.
3050 (x_draw_glyph_string_box): Adapt to per-window fringes and
3051 scroll-bars.
3052 (glyph_rect): Use window coordinates returned from
3053 window_from_coordinates rather than frame_to_window_pixel_xy.
3054 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
3055 scroll-bars.
3056 (x_clip_to_row): Remove superfluous whole_line_p arg and code
3057 (fringes are now inside margins, i.e. always in the clipping area).
3058 All callers changed.
3059 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
3060 directly, then call compute_fringe_widths. Don't call
3061 frame_update_line_height.
3062
3063 * macfns.c: Make (several) trivial substitutions for renamed and
3064 new macros in dispextern.h, frame.h and window.h.
9018a88e 3065 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
0416870b
KS
3066
3067 * macmenu.c: Make (few) trivial substitutions for renamed and
3068 new macros in dispextern.h, frame.h and window.h.
3069
3070 * msdos.h (struct x_output): Remove members left_pos, top_pos,
3071 and line_height, and use corresponding new members in struct
3072 frame. All uses changed.
3073 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
3074 superseeded by corresponding macros in frame.h.
3075
3076 * msdos.c: Make (several) trivial substitutions for renamed and
3077 new macros in dispextern.h, frame.h and window.h.
3078 (IT_note_mouse_highlight): Use updated window coordinates returned
9018a88e 3079 by window_from_coordinates, rather than adjusting them locally.
0416870b
KS
3080 (internal_terminal_init): No need to initialize line_height here;
3081 it now defaults to 1.
3082
9018a88e
SM
30832003-05-24 Stefan Monnier <monnier@cs.yale.edu>
3084
3085 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
3086 dropping `down' events.
3087
016bd3c0
AS
30882003-05-24 Andreas Schwab <schwab@suse.de>
3089
3090 * coding.c (find_safe_codings): Fix last change.
3091
4dacadcc
TTN
30922003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
3093
3094 * xfns.c (x_window): Fix typo from 2003-05-21 change.
3095
319830ce
SM
30962003-05-23 Stefan Monnier <monnier@cs.yale.edu>
3097
9018a88e
SM
3098 * xdisp.c (display_mode_element): Increase max depth.
3099 Simplify the error handling code. Use a different error string
3100 for the case where we hit the depth limit.
3101
319830ce
SM
3102 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
3103
3104 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
3105
31062003-05-21 Stefan Monnier <monnier@cs.yale.edu>
3107
3108 * intervals.c (get_local_map): Don't get char-property of previous
3109 point any more: get_pos_property already does it and better.
3110
c67de8ba
DL
31112003-05-21 Dave Love <fx@gnu.org>
3112
3113 [Merged from unicode branch.]
3114
3115 * xfns.c (x_window, x_window): Use use_xim.
3116
3117 * xterm.c (use_xim): Initialize.
3118 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
3119 (x_term_init): Maybe set use_xim.
3120
3121 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
3122
edd3ff1d
JR
31232003-05-21 Jason Rumney <jasonr@gnu.org>
3124
3125 * unexw32.c (_start): Remove _fmode initialization.
3126
3127 * emacs.c (main) [WINDOWSNT]: Move it here.
3128
463f55ee
DL
31292003-05-20 Dave Love <fx@gnu.org>
3130
3131 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
3132
af253914
RS
31332003-05-19 Richard M. Stallman <rms@gnu.org>
3134
3135 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
3136 as value for QCfont attribute.
3137 (realize_default_face): lface should already exist; crash if not.
3138 Specify 0 for FORCE_P when calling set_lface_from_font_name.
3139
3140 * frame.c (Fignore_event): Doc fix.
3141
1d211019
KH
31422003-05-19 Kenichi Handa <handa@m17n.org>
3143
3144 * coding.c (decode_coding_string): Handle post-read-conversion
3145 even if the coding doesn't require decoding.
3146
4dd68254
RS
31472003-05-18 Richard M. Stallman <rms@gnu.org>
3148
3149 * callproc.c (Fcall_process_region): Doc fix.
3150
14d87dc9
SM
31512003-05-17 Stefan Monnier <monnier@cs.yale.edu>
3152
deca5d96
SM
3153 * lread.c (Fload): Print a message if package is obsolete.
3154
14d87dc9
SM
3155 * window.c (Fselect_window): Add optional `norecord' arg.
3156 (select_window_1): Fold into Fselect_window.
3157 (select_window_norecord): New function.
3158 (temp_output_buffer_show): Use it. Preserve current buffer.
3159
3160 * window.h (Fselect_window): Update declaration.
3161
3162 * window.c (delete_window, Fother_window, Fset_window_configuration):
3163 * minibuf.c (read_minibuf):
3164 * macterm.c (x_new_focus_frame):
3165 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
3166 * callint.c (Fcall_interactively):
3167 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
3168
3169 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
3170
78f52183
DK
31712003-05-17 David Kastrup <dak@gnu.org>
3172
3173 * process.c (read_process_output): Back out change from 2003-03-09.
3174
14d87dc9
SM
31752003-05-17 Stefan Monnier <monnier@cs.yale.edu>
3176
3177 * editfns.c (get_pos_property): Don't assume that `object' = nil.
3178
3179 * textprop.c (text_property_stickiness): New arg `buffer'.
3180
3181 * intervals.h (text_property_stickiness): New arg `buffer'.
3182 (get_pos_property): Declare.
3183
3184 * intervals.c (get_local_map): Use get_pos_property, to obey
3185 stickiness and empty overlays.
3186 (create_root_interval, graft_intervals_into_buffer): Use BEG.
3187 (merge_properties, intervals_equal, merge_properties_sticky):
3188 Use XCAR, XCDR.
3189 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
3190
1fd1cc2f
RS
31912003-05-17 Richard M. Stallman <rms@gnu.org>
3192
4f9f637a
RS
3193 * minibuf.c (read_minibuf): If buffer is empty, record the default
3194 in the history.
3195 (Fminibuffer_complete_word): When deleting the overlap, take account
3196 of its real position.
3197
3198 * fns.c (map_char_table): Fix previous change.
3199
1fd1cc2f
RS
3200 * syntax.c (find_defun_start):
3201 When open_paren_in_column_0_is_defun_start,
3202 return beginning of buffer.
3203
3204 * lisp.h (map_char_table): Declare added arg.
3205
3206 * fns.c (map_char_table): New arg TABLE gets the master table.
3207 All calls changed.
3208 Process default and inheritance, resorting to Faref if necessary.
3209
3210 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
3211 (Faccessible_keymaps): Pass new arg to map_char_table.
3212
3213 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
3214
3215 * casetab.c (set_case_table): Pass new arg to map_char_table.
3216
3217 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
3218
3219 * lisp.h (specbinding_func): New typedef.
3220 (struct specbinding): Use specbinding_func, to put the `volatile'
3221 in the right place.
3222
3223 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
3224 to avoid GCC warning.
14d87dc9 3225
b4bd27c5
RS
32262003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org> (tiny change)
3227
14d87dc9 3228 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
b4bd27c5 3229
35fb885d
SM
32302003-05-15 Stefan Monnier <monnier@cs.yale.edu>
3231
3232 * keyboard.c (apply_modifiers): Don't fill the other cache.
3233
9a274fbd
SM
32342003-05-14 Stefan Monnier <monnier@cs.yale.edu>
3235
c55b5fad
SM
3236 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
3237
9a274fbd
SM
3238 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
3239 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
3240 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
3241 (Fset_window_configuration, Fcurrent_window_configuration)
3242 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
3243 (Fpos_visible_in_window_p, mark_window_cursors_off)
3244 (window_internal_height, window_internal_width, Frecenter)
3245 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
3246 (replace_buffer_in_all_windows, init_window_once, init_window)
3247 (syms_of_window, keys_of_window): Move from lisp.h.
3248 * lisp.h: Move window.c declarations to window.h.
3249
3250 * bytecode.c: Include window.h.
3251 * emacs.c: Include window.h.
3252
14d87dc9 3253 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
9a274fbd
SM
3254 (keyremap): Add `parent' field.
3255 (keyremap_step): Use it. Remove `parent' argument.
3256 (read_key_sequence): Setup and use the new `parent' field.
3257
fd93e331
SM
32582003-05-11 Stefan Monnier <monnier@cs.yale.edu>
3259
3260 * keyboard.c (adjust_point_for_property): Ensure termination.
3261
1c4001a1
SM
32622003-05-10 Stefan Monnier <monnier@cs.yale.edu>
3263
3264 * keyboard.c (follow_key): Remove dead variable `did_meta'.
3265 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
3266 duplicated handling of function-key-map and key-translation-map
3267 in read_key_sequence.
3268 (read_key_sequence): Use them.
3269
3270 * keyboard.c (adjust_point_for_property): Try harder to move point
3271 to the non-sticky end of an invisible property.
3272
3273 * xdisp.c (single_display_prop_intangible_p): Make `space' display
3274 property intangible as well.
3275
780379b1
AS
32762003-05-10 Andreas Schwab <schwab@suse.de>
3277
3278 * xmenu.c (single_menu_item): Change last parameter to void* to
3279 avoid warning.
3280
ca2de342
RS
32812003-05-09 Richard M. Stallman <rms@gnu.org>
3282
3283 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
3284 Bind Qinhibit_modification_hooks to t so there will be no GC.
3285 Rename local `tem' to `save_deactivate_mark'.
3286
3287 * eval.c (specpdl_ptr): Declare volatile.
3288 (unbind_to): Copy the whole binding and decrement specpdl_ptr
3289 before doing the work of unbinding it.
3290
3291 * lisp.h (struct specbinding): Declare elements volatile.
3292 (specpdl_ptr): Declare volatile.
3293
3294 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
3295
3296 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
3297 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
3298
347003be
DL
32992003-05-08 Dave Love <fx@gnu.org>
3300
3301 * coding.c (Vlast_coding_system_used): Doc fix.
3302
5adcec23
JR
33032003-05-07 Jason Rumney <jasonr@gnu.org>
3304
3305 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
3306 when system does not support them.
3307
5fe3b8a4
SM
33082003-05-05 Stefan Monnier <monnier@cs.yale.edu>
3309
3310 * fileio.c (Qwrite_region_annotate_functions): New var.
3311 (build_annotations): Use it to process the global part of the hook.
3312 (syms_of_fileio): Init and staticpro it.
3313
3314 * keyboard.c (safe_run_hooks_error): Display a message instead of
3315 silently ignoring the error.
3316
33172003-05-03 Stefan Monnier <monnier@cs.yale.edu>
3318
3319 * keyboard.c (input_available_signal): Mark static.
3320 (menu_bar_items): Use map_keymap.
3321 (menu_bar_one_keymap): Remove.
3322 (menu_bar_item): Adjust arglist (for use in map_keymap).
3323 Properly hide a second binding when not both are keymaps.
3324
3325 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
3326 (single_keymap_panes): Use it and map_keymap.
3327 (single_menu_item): Use skp as well.
3328
3329 * keymap.h (map_keymap_function_t): New type.
3330 (map_keymap): Declare.
3331
3332 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
3333 (map_keymap_call, Fmap_keymap): New functions.
3334 (syms_of_keymap): Defsubr map-keymap.
3335
4b1b4443
JD
33362003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3337
3338 * gtkutil.c (create_dialog, make_widget_for_menu_item)
3339 (make_menu_item, create_menus, xg_update_menu_item): Don't call
3340 ..._with_mnemonic functions for menu items.
3341
1f816871
KH
33422003-05-01 Kenichi Handa <handa@m17n.org>
3343
3344 * coding.c (coding_system_accept_latin_extra_p): Delete this
3345 function.
3346 (find_safe_codings): Pay attention to
3347 the property tranlsation-table-for-encode of each codings.
3348 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
3349
5ed6ba5b
SM
33502003-05-01 Stefan Monnier <monnier@cs.yale.edu>
3351
3352 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
3353
32c06229
SM
33542003-04-30 Stefan Monnier <monnier@cs.yale.edu>
3355
3356 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
3357
3358 * lisp.h (CHECK): Wrap args in parenthesis.
3359 (specbind): Fix doc: symbol = Qnil is not supported any more.
3360
3361 * bytecode.c (Fbyte_code) <unwind-protect>:
3362 Use Fprogn rather than 0 and Qnil.
3363
3364 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
3365 `double', and `triple' modifiers as well.
3366
ed3c3314
RS
33672003-04-30 Richard M. Stallman <rms@gnu.org>
3368
3369 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
3370
3371 * alloc.c (abort_on_gc): New variable.
3372 (Fgarbage_collect): Abort if abort_on_gc is set.
3373
3374 * lisp.h (abort_on_gc): Add decl.
3375
3376 * eval.c (Fsignal): Clear abort_on_gc.
3377
3378 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
32c06229 3379 Reinit FORMAT_START and END before second scan.
ed3c3314
RS
3380
3381 * xdisp.c (move_it_vertically_backward): Do the final big else
3382 even if nlines is 0.
3383
3384 * xdisp.c (redisplay_internal): Finish the per-frame loop
3385 even if redisplay is suspended by input.
3386
0b325c12
AC
33872003-04-24 Andrew Choi <akochoi@shaw.ca>
3388
3389 * macterm.c (x_list_fonts): Return all fonts that match if
3390 maxnames = -1.
3391
4e837cd0
KH
33922003-04-25 Kenichi Handa <handa@m17n.org>
3393
3394 * syntax.c (skip_chars): Fix previous change.
3395
9af7511a
KH
33962003-04-24 Kenichi Handa <handa@m17n.org>
3397
3398 * syntax.c (skip_chars): Make the code faster by using the common
3399 technique of *p, *stop, and *endp.
3400
e3b2c21f
JD
34012003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3402
3403 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
32c06229 3404 tool_bar_items so GTK tool bar expose callback does not access items
e3b2c21f
JD
3405 being updated.
3406
32c06229
SM
34072003-04-19 Stefan Monnier <monnier@cs.yale.edu>
3408
3409 * eval.c (Fapply): Undo last change and add a comment about why.
3410
c6464167
MB
34112003-04-18 Miles Bader <miles@gnu.org>
3412
3413 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
3414 pickier PARSE_MULTIBYTE_SEQ.
3415
e509f168
SM
34162003-04-17 Stefan Monnier <monnier@cs.yale.edu>
3417
3418 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
3419 Use XCDR, XCAR, CONSP.
3420 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
3421 (Fapply): Remove unnecessary GCPRO.
3422
3423 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
3424
3425 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
3426
3427 * buffer.h: Don't hardcode BEG==1.
3428
3429 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
3430
5ceea398
RS
34312003-04-16 Richard M. Stallman <rms@gnu.org>
3432
3433 * xdisp.c (try_window, try_window_reusing_current_matrix):
3434 When at end of window, set window_end_pos to Z-ZV.
3435
3436 * buffer.c (Foverlay_recenter): Doc fix.
3437
e509f168
SM
34382003-04-14 Stefan Monnier <monnier@cs.yale.edu>
3439
3440 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
3441
d243e605
AC
34422003-04-14 Andrew Choi <akochoi@shaw.ca>
3443
3444 * macterm.c (mac_check_for_quit_char): Don't check more often than
3445 once a second.
3446
6901b111
SM
34472003-04-11 Stefan Monnier <monnier@cs.yale.edu>
3448
3449 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
3450 specially, so that they can't hide an implicit switch-frame event.
3451 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
3452 (head_table): Use switch-frame as event_kind for select-window.
3453 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
3454
3455 * editfns.c (Fformat): Lisp_Object/int mixup.
3456 (format2): Remove unused var numargs.
3457
e301806f 34582003-04-11 Kenichi Handa <handa@m17n.org>
aa95b710 3459
6901b111 3460 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
aa95b710
KH
3461 (Qafter_insert_file_set_coding): New variable.
3462 (syms_of_fileio): Initialize and staticpro it. Delete declaration
3463 for after-insert-file-adjust-coding-function.
3464 (Finsert_file_contents): Call Qafter_insert_file_set_coding
3465 instead of Vafter_insert_file_adjust_coding_function.
3466
38914424
KH
34672003-04-11 Kenichi Handa <handa@m17n.org>
3468
3469 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
3470
3471 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
3472 string. Callers changed.
3473
34742003-04-10 Kenichi Handa <handa@m17n.org>
a288d979 3475
6901b111 3476 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
a288d979 3477 (syms_of_fileio): Declare it as a lisp variable.
6901b111
SM
3478 (Finsert_file_contents):
3479 Call Vafter_insert_file_adjust_coding_function before calling
a288d979
KH
3480 decode-format.
3481
f979dc05
JD
34822003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3483
3484 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
3485 get GtkAdjustment as widget now is a GtkRange.
3486
3487 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
3488 GtkRange to avoid memory leak.
3489
f8c6b4c2 34902003-04-09 Kenichi Handa <handa@m17n.org>
cb98871c 3491
50ebc53d
KH
3492 * xfaces.c (Vface_font_rescale_alist): New variable.
3493 (struct font_name): New member rescale_ratio.
3494 (font_rescale_ratio): New function.
6901b111 3495 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
50ebc53d
KH
3496 (better_font_p): On comparing point sized, pay attention to
3497 recale_ratio member of fonts.
3498 (build_scalable_font_name): Reflect font->rescale_ratio in the
3499 font name.
6901b111 3500 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
50ebc53d 3501
cb98871c
KH
3502 * lread.c (read1): Before calling index, check if the 2nd
3503 arguemnt is in ASCII range.
3504
4773b8ca
RS
35052003-04-08 Richard M. Stallman <rms@gnu.org>
3506
b0ada147
RS
3507 * fileio.c (Ffile_symlink_p): Doc fix.
3508
3509 * editfns.c (Fformat): Translate positions of text properties
3510 in the format string to apply them to the result.
3511
4773b8ca
RS
3512 * fileio.c (Finsert_file_contents): Doc fix.
3513 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
3514
35152003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
6901b111 3516
4773b8ca
RS
3517 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
3518
e8f25745 35192003-04-08 Steven Tamm <steventamm@mac.com>
b0ada147 3520
e8f25745
ST
3521 * mac.c (init_mac_osx_environment): Switch libexec and bin so
3522 that self-contained application finds libexec files.
3523
f8c6b4c2 35242003-04-08 Kenichi Handa <handa@m17n.org>
2310d84c 3525
6901b111
SM
3526 * coding.c (code_convert_region_unwind):
3527 Set Vlast_coding_system_used to the argument.
2310d84c
KH
3528 (code_convert_region): If post-read-conversion function changed
3529 the value of last-coding-sytem, keep the new value in
3530 coding->symbol so that it won't be overridden.
3531 (run_pre_post_conversion_on_str): Likewise.
7c086845
KH
3532 (coding_system_accept_latin_extra_p): New function.
3533 (find_safe_codings): Pay attention to characters registered in
3534 latin-extra-code-table.
2310d84c 3535
39c9a034
TTN
35362003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
3537
3538 * Makefile.in (md5.o): Add missing dependency info.
3539
eb67c5d6
RS
35402003-04-06 Richard M. Stallman <rms@gnu.org>
3541
3542 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
3543
3544 * marker.c (verify_bytepos): New function.
3545
3546 * intervals.c (set_intervals_multibyte_1): When becoming
3547 multibyte, adjust right and left child sizes to a whole set of
3548 characters. If an interval gets zero total-length, delete it.
3549 If an interval consists of just its children, delete one of them.
3550
3551 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
3552 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
39c9a034 3553
eb67c5d6
RS
3554 * alloc.c: (VALIDATE_LISP_STORAGE): Macro deleted.
3555 All calls deleted.
3556 (lisp_malloc): Do the work here directly.
3557
b1f81fc5
JB
35582003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
3559
3560 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
3561 char tables.
3562
35632003-04-04 Kenichi Handa <handa@m17n.org>
aa8b70ae
KH
3564
3565 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
3566 destructively change "%S" to "%s".
3567
774666fb
MB
35682003-04-03 Miles Bader <miles@gnu.org>
3569
3570 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
3571 always set.
3572
19c37f01
DL
35732003-04-01 Dave Love <fx@gnu.org>
3574
3575 * xfns.c (xpm_lookup_color): Grok "opaque".
3576
2f4b24c3
AC
35772003-03-31 Andrew Choi <akochoi@shaw.ca>
3578
3579 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
3580 parent window ID.
3581
3582 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
3583
3584 * macterm.h (struct mac_output): Define x_pixels_diff and
3585 y_pixels_diff.
b1f81fc5 3586
9443fcf6
JB
35872003-03-31 Juanma Barranquero <lektu@terra.es>
3588
3589 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
3590 blockinput.h and files included from it.
3591
e072891b
KS
35922003-03-31 Kim F. Storm <storm@cua.dk>
3593
3594 The following changes consolidates the common code related to
3595 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
3596 files into frame.c.
9443fcf6 3597
e072891b
KS
3598 * frame.c: Include blockinput.h.
3599 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
3600 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
3601 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
3602 related vars here.
3603 (struct frame_parm_table, frame_parms): New table for describing
3604 frame parameters and their associated Q-variable.
3605 The order of the parameters corresponds to the sequence of the
3606 frame_parm_handlers table in redisplay_interface.
3607 (x_fullscreen_move, x_set_frame_parameters)
3608 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
3609 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
3610 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
3611 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
3612 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
3613 Generic functions for processing of frame parameters.
3614 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
3615 (display_x_get_resource, x_get_resource_string): Functions for
3616 generic access to X resources.
3617 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
3618 (x_default_parameter, Fx_parse_geometry): Functions for generic
3619 access to frame parameters.
6901b111
SM
3620 (x_figure_window_size): Generic calculation of frame size.
3621 Fixed to add space needed for tool bar. Also setup size_hint_flags.
e072891b
KS
3622 (syms_of_frame): Intern and staticpro frame parameter variables.
3623 Defvar_lisp Vx_resource_class and Vx_resource_name here.
3624 Defsubr Sx_get_resource and Sx_parse_geometry.
9443fcf6 3625
e072891b
KS
3626 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
3627 parameter related vars defined in frame.c.
3628 (EMACS_CLASS): Define here.
3629 (enum FULLSCREEN_*): Define here.
3630 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
3631 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
3632 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
3633 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
3634 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
3635 (x_set_visibility, x_set_autoraise, x_set_autolower)
3636 (x_set_unsplittable, x_set_vertical_scroll_bars)
3637 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
3638 (x_figure_window_size): Add prototypes.
3639
3640 * dispextern.h (frame_parm_handler): New typedef.
3641 (struct redisplay_interface): New member frame_parm_handlers.
3642 (enum resource_types): Move declaration here.
3643 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
3644 (x_default_parameter): Add prototypes.
3645
3646 * window.c: Remove extern decl for frame parameter vars.
3647 (change_window_heights): New generic function;
3648 replaces x_change_window_heights. All users changed.
3649
3650 * window.h (change_window_heights): Add prototype.
3651
3652 * xfaces.c: Remove extern decl for frame parameter vars.
3653
3654 * xterm.h (EMACS_CLASS): Remove. Use generic define.
3655 (struct w32_display_info): Fix type of xrdb member.
3656 (enum FULLSCREEN_*): Remove.
3657 Remove prototypes for generic functions (in frame.h).
3658
3659 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
3660 parameters now defined in frame.h and frame.c.
3661 (Vx_resource_name): Remove. Use generic var.
3662 (enum x_frame_parms): Remove (bogus, unused enum).
3663 (check_x_display_info): Make non-static (for frame.c).
3664 (struct x_frame_parm_table, x_frame_parms): Remove.
3665 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
3666 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
3667 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
3668 (x_change_window_heights, x_set_autoraise, x_set_autolower)
3669 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
3670 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
3671 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
3672 Remove. Use generic functions instead.
3673 (enum resource_types): Remove.
3674 (x_set_scroll_bar_default_width): New global function (for frame.c).
3675 (Fx_create_frame): Depend on x_figure_window_size to add space for
3676 toolbar and setup size_hint_flags.
3677 (x_frame_parm_handlers): New table for redisplay_interface.
3678 (syms_of_xfns): Don't intern/staticpro removed vars.
9443fcf6 3679
e072891b
KS
3680 * xterm.c: Remove unnecessary extern declarations.
3681 (x_fullscreen_adjust): Remove. Use generic instead.
3682 (x_redisplay_interface): Add x_frame_parm_handlers member.
3683
3684 * w32gui.h (XrmDatabase): New (dummy) typedef.
3685
3686 * w32term.h (EMACS_CLASS): Remove. Use generic define.
3687 (struct w32_display_info): Fix type of xrdb member.
3688 (enum FULLSCREEN_*): Remove.
3689 (x_fullscreen_adjust): Remove prototype.
3690
3691 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
3692 parameters now defined in frame.h and frame.c.
3693 (Vx_resource_name): Remove. Use generic var.
3694 (enum x_frame_parms): Remove (bogus, unused enum).
3695 (check_x_display_info): Make non-static (for frame.c).
3696 (struct x_frame_parm_table, x_frame_parms): Remove.
3697 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
3698 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
3699 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
3700 (x_change_window_heights, x_set_autoraise, x_set_autolower)
3701 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
3702 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
3703 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
3704 Remove. Use generic functions instead.
3705 (enum resource_types): Remove.
3706 (x_set_scroll_bar_default_width): New global function (for frame.c).
3707 (Fx_create_frame): Depend on x_figure_window_size to add space for
3708 toolbar and setup size_hint_flags.
3709 (w32_frame_parm_handlers): New table for redisplay_interface.
3710 (syms_of_w32fns): Don't intern/staticpro removed vars.
9443fcf6 3711
e072891b
KS
3712 * w32term.c: Remove unnecessary extern declarations.
3713 (x_fullscreen_adjust): Remove. Use generic instead.
3714 (x_redisplay_interface): Add w32_frame_parm_handlers member.
3715
3716 * w32reg.c (x_get_string_resource): Use XrmDatabase.
3717
3718 * macgui.h (XrmDatabase): New (dummy) typedef.
3719
3720 * macterm.h (EMACS_CLASS): Remove.
3721 (struct mac_display_info): Add xrdb member.
3722 (struct mac_output): Add want_fullscreen member.
3723
3724 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
3725 parameters now defined in frame.h and frame.c.
3726 (Vx_resource_name): Remove. Use generic var.
3727 (check_x_display_info): Make non-static (for frame.c).
3728 (struct x_frame_parm_table, x_frame_parms): Remove.
3729 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
3730 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
3731 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
3732 (x_change_window_heights, x_set_autoraise, x_set_autolower)
3733 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
3734 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
3735 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
3736 Remove. Use generic functions instead.
3737 (enum resource_types): Remove.
3738 (x_set_scroll_bar_default_width): New global function (for frame.c).
3739 (mac_frame_parm_handlers): New table for redisplay_interface.
3740 (syms_of_macfns): Don't intern/staticpro removed vars.
9443fcf6 3741
e072891b
KS
3742 * macterm.c: Remove unnecessary extern declarations.
3743 (x_redisplay_interface): Add mac_frame_parm_handlers member.
3744
3e6a560b
KS
3745 * Makefile.in (frame.o): Add dependency on blockinput.h and files
3746 included from it (atimer.h and systime.h).
3747
7b7b454e
AS
37482003-03-30 Andreas Schwab <schwab@suse.de>
3749
3750 * xdisp.c (x_insert_glyphs): Fix swapped width and height
3751 parameters for shift_glyphs_for_insert.
3752
3753 * macterm.c (x_redisplay_interface): Add missing entry for
3754 draw_vertical_window_border.
3755
beb402de
KG
37562003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
3757
3758 * fileio.c (Fexpand_file_name): In the no-handler case, after
3759 expanding, look again for a handler and invoke it. This is needed
3760 for filenames like "/foo/../user@host:/bar/../baz" -- the first
3761 expansion produces "/user@host:/bar/../baz" which needs to be
3762 expanded again for the finame result "/user@host:/baz".
3763
b676f356
JD
37642003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3765
3766 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
3767 of area to be redrawn for better performance.
3768
3c671a56
SM
37692003-03-28 Stefan Monnier <monnier@cs.yale.edu>
3770
3771 * xterm.c (take_vertical_position_into_account): Remove.
3772 (xt_action_hook): Call set_vertical_scroll_bar if needed.
3773 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
3774 (xm_scroll_callback, x_create_toolkit_scroll_bar)
3775 (x_set_toolkit_scroll_bar_thumb): Simplify.
3776 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
3777 (XTread_socket): Remove unused var.
3778 (x_make_frame_invisible): Replace goto with else.
3779
3780 * xdisp.c (set_vertical_scroll_bar): New fun.
3781 (redisplay_window): Use it.
3782
84f2e615
RS
37832003-03-26 Richard M. Stallman <rms@gnu.org>
3784
3785 * xdisp.c (update_tool_bar): Recompute tool bar if
3786 update_mode_lines is set. Set w->update_mode_line
3787 only if the tool bar contents actually change.
3788 (update_menu_bar): Undo previous change.
3789
70b6104c
JD
37902003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3791
5fd6f727
JD
3792 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
3793 (xg_frame_set_char_size): Calculate scroll bar width before frame
3794 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
3795 (xg_separator_p): Check for all documented separator types.
3796 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
3797 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
3798
70b6104c
JD
3799 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
3800 so tool bar gets updated.
3801
d9b36d19
SM
38022003-03-26 Stefan Monnier <monnier@cs.yale.edu>
3803
3804 * data.c (store_symval_forwarding): Re-instate part of the code
3805 that was deleted with too much enthusiasm.
3806
38072003-03-25 Stefan Monnier <monnier@cs.yale.edu>
3808
3809 * data.c (store_symval_forwarding): Delete special read-only
3810 hack for type == -1, since we now use ->constant instead.
3811 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
3812
3813 * buffer.c (overlays_in): Declare static.
3814 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
3815 `constant' field rather than the variable's `type' field.
3816
365fa1b3
AC
38172003-03-24 Andrew Choi <akochoi@shaw.ca>
3818
3819 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
3820
3821 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
3822
3823 * fns.c [MAC_OSX]: Do not redefine vector.
3824
3825 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
3826
3827 * macgui.h: Remove definition of No_Cursor.
3828
d9b36d19 3829 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
365fa1b3
AC
3830
3831 * xdisp.c: Define No_Cursor.
3832 (x_write_glyphs, notice_overwritten_cursor)
3833 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
3834 (note_mouse_highlight): Remove Mac-specific code.
3835 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
d9b36d19 3836
c0bcce6f
JPW
38372003-03-24 John Paul Wallington <jpw@gnu.org>
3838
3839 * xdisp.c (redisplay_window): If mini window's buffer is not
3840 empty, then redisplay it like other windows.
3841
a526b96c
KS
38422003-03-23 Kim F. Storm <storm@cua.dk>
3843
3844 * w32term.c (w32_draw_window_cursor): Fix last change.
3845
37ab321e
KH
38462003-03-23 Kenichi Handa <handa@m17n.org>
3847
a526b96c
KS
3848 * alloc.c (make_string_from_bytes, make_specified_string):
3849 Add `const' for the arg CONTENTS.
37ab321e
KH
3850
3851 * lisp.h (make_string_from_bytes, make_specified_string):
3852 Prototypes adjusted.
3853
7863d625
JD
38542003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3855
a526b96c 3856 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
fd4c9408 3857
7863d625
JD
3858 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
3859 (XG_SB_RANGE): New define.
3860
3861 * gtkutil.c (xg_fixed_handle_expose): New function.
3862 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
3863 expose events.
3864 (xg_update_scrollbar_pos): Take two more arguments, left and width
3865 of scroll bar including borders.
3866 Clear left and right part outside scroll bar separately as some
3867 themes have bars that are not an even number of pixels.
d9b36d19 3868 Don't set reallocate_redraws, don't call
7863d625
JD
3869 gdk_window_process_all_updates.
3870 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
3871 so no need to change it. Calculate size and value with XG_SB_RANGE.
3872
d9b36d19
SM
3873 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
3874 Pass left and width of scroll bar including borders to
7863d625
JD
3875 xg_update_scrollbar_pos.
3876
af0ad939
TTN
38772003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
3878
3879 * Makefile.in: Make sure space precedes end-of-line backslashes.
3880
b22139fd
KS
38812003-03-22 Kim F. Storm <storm@cua.dk>
3882
3883 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
3884 Add generic versions here. Remove system specific versions
3885 defined elsewhere.
3886
3887 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
3888 Add prototypes.
3889
6e6410cf
KS
3890 * xterm.h (STORE_NATIVE_RECT): New macro.
3891
5c9cc435
KS
38922003-03-21 Kim F. Storm <storm@cua.dk>
3893
00c64fab
SM
3894 * xdisp.c (get_glyph_string_clip_rect):
3895 Use FRAME_INTERNAL_BORDER_WIDTH.
5c9cc435
KS
3896
3897 * dispextern.h (struct redisplay_interface): Add active_p
3898 argument to draw_window_cursor member. All uses changed.
3899
acd37560
KS
39002003-03-21 Kim F. Storm <storm@cua.dk>
3901
3902 The following changes consolidate code related to writing and
3903 inserting glyphs, exposing frame, the tool bar, the mouse face,
3904 the output cursor, and help echo from xterm.c, w32term.c and
3905 macterm.c into xdisp.c. It also generalizes the use of the
3906 window_part enum instead of using numeric values throughout.
af0ad939 3907
acd37560
KS
3908 * xdisp.c: Consolidate gui-independent code here.
3909 Include keymap.h.
3910 (Qhelp_echo): Import.
3911 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
3912 (help_echo_string, help_echo_window, help_echo_object)
3913 (previous_help_echo_string, help_echo_pos): Declare here.
3914 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
3915 (estimate_mode_line_height): Define here. Handle windowing
3916 systems directly (without using estimate_mode_line_height_hook).
3917 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
3918 (update_window_cursor, update_cursor_in_window_tree)
3919 (fast_find_position, fast_find_string_pos)
3920 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
3921 (expose_area, expose_line, expose_overlaps, expose_window)
3922 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
3923 declared static as they are only used locally in xdisp.c.
3924 (draw_glyphs): Rename from x_draw_glyphs and make static.
3925 (tool_bar_item_info, notice_overwritten_cursor): Make static.
3926 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
3927 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
af0ad939 3928 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
acd37560
KS
3929 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
3930 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
3931 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
3932 (note_mouse_highlight, x_clear_window_mouse_face)
3933 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
3934 (x_intersect_rectangles): New generic functions for use by xdisp.c
3935 and GUI front-ends.
3936 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
3937 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
3938
3939 * dispextern.h (Display_Info): Generic typedef for *_display_info.
3940 (NativeRectangle): Generic typedef for rectangle type.
3941 (enum window_part): Move here from window.c.
3942 (struct redisplay_interface): New members flush_display_optional,
3943 define_frame_cursor, clear_frame_area, draw_window_cursor,
3944 draw_vertical_window_border, shift_glyphs_for_insert.
3945 Rename member clear_mouse_face to clear_window_mouse_face.
3946 (estimate_mode_line_height_hook): Remove hook.
3947 (auto_raise_tool_bar_buttons_p): Don't declare extern.
3948 (tool_bar_item_info): Remove prototype.
3949 (help_echo_string, help_echo_window, help_echo_object)
3950 (previous_help_echo_string, help_echo_pos)
3951 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
3952 (x_stretch_cursor_p, output_cursor): Declare extern.
3953 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
3954 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
3955 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
3956 (display_and_set_cursor, set_output_cursor, x_cursor_to)
3957 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
3958 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
3959 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
3960 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
3961 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
3962 Add prototypes.
3963 (mode_line_string, marginal_area_string): Fix prototypes.
3964
3965 * window.c (enum window_part): Move to dispextern.h.
3966 (coordinates_in_window): Use enum window_part member names
3967 instead of numbers to describe return value.
3968 (struct check_window_data): Change part member to window_part.
3969 (check_window_containing): Return window_part unaltered.
3970 (window_from_coordinates): Change part arg from int to enum
3971 window_part. Allow part arg to be null. All users changed.
3972
3973 * window.h (window_from_coordinates): Fix prototype.
3974
3975 * term.c (estimate_mode_line_height): Move to xdisp.c.
3976
3977 * keyboard.c (make_lispy_event): Use enum window_part.
3978
3979 * dispnew.c (mode_line_string, marginal_area_string): Use enum
3980 window_part instead of int in arg list. Users changed.
3981
3982 * xterm.h (No_Cursor): Declare as None for X.
3983 (struct mac_output): Replace member cross_cursor by hand_cursor.
af0ad939 3984
acd37560
KS
3985 * xterm.c: Remove consolidated defines and code.
3986 (BETWEEN): Remove unused macro.
3987 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
3988 (x_define_frame_cursor, x_clear_frame_area)
3989 (x_draw_window_cursor): New X-specific functions for RIF.
3990 (x_redisplay_interface): Add new members.
3991
3992 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
3993
3994 * w32term.h (struct w32_output): Remove cross_cursor member.
3995
3996 * w32term.c: Remove consolidated defines and code.
3997 (BETWEEN): Remove unused macro.
3998 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
3999 (w32_define_frame_cursor, w32_clear_frame_area)
4000 (w32_draw_window_cursor): New W32-specific functions for RIF.
4001 (w32_redisplay_interface): Add new members.
4002
4003 * w32gui.h (No_Cursor): Define as 0 for W32.
4004 (XRectangle): Add X compatible rectangle type.
4005 (NativeRectangle): Declare as RECT for W32.
4006 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
4007
4008 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
4009
4010 * w32console.c: Remove consolidated defines and code.
af0ad939 4011
acd37560
KS
4012 * msdos.h (Display_Info): Add generic typedef.
4013
4014 * msdos.c: Remove consolidated defines and code.
4015 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
4016
4017 * macterm.h (struct mac_output): Replace member cross_cursor by
4018 hand_cursor.
4019 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
4020
4021 * macterm.c: Remove consolidated defines and code.
4022 (BETWEEN): Remove unused macro.
4023 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
4024 (mac_define_frame_cursor, mac_clear_frame_area)
4025 (mac_draw_window_cursor): New Mac-specific functions for RIF.
4026 (x_redisplay_interface): Add new members.
4027
4028 * macgui.h (No_Cursor): Define as 0 for Mac.
4029 (XRectangle): Add X compatible rectangle type.
4030 (NativeRectangle): Declare as Rect for Mac.
4031 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
4032
204ccab1
KS
4033 * macfns.c (x_set_mouse_color): Setup hand_cursor.
4034 (x_set_cursor_color): Use x_display_and_set_cursor.
acd37560 4035
9443fcf6 4036 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
acd37560
KS
4037 included from it. Add dependency on keymap.h.
4038
4039 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
4040
8ba01a70 40412003-03-21 Kenichi Handa <handa@m17n.org>
3f817c73
KH
4042
4043 * fileio.c (Fexpand_file_name): Fix previous change.
4044
8ba01a70 40452003-03-19 Kenichi Handa <handa@m17n.org>
4f497b0a
KH
4046
4047 * fileio.c (Ffile_name_directory): Reconstruct file name by
4048 make_specified_string.
4049 (Ffile_name_nondirectory, Ffile_name_as_directory)
4050 (Fdirectory_file_name, Fexpand_file_name)
4051 (Fsubstitute_in_file_name): Likewise.
4052 (Fread_file_name): Compare decoded homedir with DIR and
4053 DEFAULT_FILENAME.
4054
4055 * alloc.c (make_specified_string): If NCHARS is negative, count
4056 the number of characters.
4057
19536747
JD
40582003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4059
de38ae5a
JD
4060 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
4061 all widgets.
4062
19536747
JD
4063 * gtkutil.h: Removed xg_ignore_next_thumb.
4064
37ab321e 40652003-03-18 Kenichi Handa <handa@m17n.org>
cb0d4562
KH
4066
4067 * coding.c (Vchar_coding_system_table): Remove this variable.
4068 (Vcoding_system_safe_chars): New variable.
4069 (intersection): Remove this function.
4070 (find_safe_codings): Don't use Vchar_coding_system_table, but try
4071 all codings in SAFE_CODINGS.
00c64fab 4072 (Ffind_coding_systems_region_internal): Adjust for the change of
cb0d4562
KH
4073 find_safe_codings. Get generic coding systems from
4074 Vcoding_system_safe_chars.
4075 (Fdefine_coding_system_internal): New function.
4076 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
4077 Initialize and staticpro Vcoding_system_safe_chars.
4078
17097258
JD
40792003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4080
2a2071c3
JD
4081 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
4082 equal old values before updating.
4083
17097258
JD
4084 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
4085
4086 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
4087
40882003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4089
4090 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
4091 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
4092 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
4093 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
4094 (xg_create_scroll_bar): Pass bar to button event callback.
4095 (xg_find_top_left_in_fixed): New function.
4096 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
4097 whole scroll bar area. Get old position with
4098 xg_find_top_left_in_fixed, calculate and only clear needed areas.
4099 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
4100 dragging is in progress. Calculate whole as for Motif.
4101 Remove code that saved last values. Call gtk_range functions to
4102 set scroll bar sizes.
4103
4104 * gtkutil.h: Removed xg_ignore_next_thumb.
4105
8cb9dfbf
JB
41062003-03-17 Juanma Barranquero <lektu@terra.es>
4107
4108 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
4109 and files included from it.
4110
00c64fab
SM
41112003-03-18 Stefan Monnier <monnier@cs.yale.edu>
4112
4113 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
4114 multiple occurrences of the same keymap under different prefixes.
4115 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
4116
c45bb3b2
JR
41172003-03-16 Jason Rumney <jasonr@gnu.org>
4118
4119 * w32gui.h: Use HDC for Display.
4120
4121 * w32term.c (w32_encode_char): Prevent double-byte chars from
4122 crashing Emacs.
4123
4124 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
4125 as binary.
4126
2a6d0874
JB
41272003-03-16 Juanma Barranquero <lektu@terra.es>
4128
4129 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
4130
03eb5fab
KS
41312003-03-16 Kim F. Storm <storm@cua.dk>
4132
4133 The following changes consolidate some of the gui-independent
4134 parts of the processing and drawing of "glyph strings" from
4135 xterm.c, w32term.c, and macterm.c into xdisp.c.
2a6d0874 4136
03eb5fab
KS
4137 * dispextern.h (struct glyph): Reduce face_id member from 22 to
4138 21 bits (this reduces number of faces from 4M to 2M).
4139 Replace W32 specific w32_font_type member (2 bits) by generic
4140 font_type member (3 bits) for portability.
4141 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
4142 (enum draw_glyphs_face): Define here.
4143 (struct glyph_string): Define here. Merge W32 and X versions.
4144 (struct redisplay_interface): New members per_char_metric,
4145 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
4146 (VCENTER_BASELINE_OFFSET): Define here.
4147 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
4148 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
4149
4150 * xdisp.c: Consolidate gui-independent "glyph string" code here.
4151 (dump_glyph_string): Moved here.
4152 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
4153 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
4154 (fill_composite_glyph_string, fill_glyph_string)
4155 (fill_image_glyph_string, fill_stretch_glyph_string)
4156 (left_overwritten, left_overwriting, right_overwritten)
4157 (right_overwriting, get_char_face_and_encoding)
4158 (set_glyph_string_background_width, compute_overhangs_and_x)
4159 (append_glyph, append_composite_glyph, produce_image_glyph)
4160 (take_vertical_position_into_account, append_stretch_glyph)
4161 (produce_stretch_glyph): New generic functions (based on X version).
4162 Call platform specific functions through rif.
4163 (INIT_GLYPH_STRING): New macro, hides W32 details.
4164 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
4165 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
4166 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
4167 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
4168 (notice_overwritten_cursor):
4169 Generic functions exported to platform modules. Users changed.
4170
4171 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
4172 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
4173 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
fad49844 4174 New macros for consolidated code.
2a6d0874 4175
03eb5fab
KS
4176 * xterm.c: Remove consolidated defines and code.
4177 (x_per_char_metric, x_encode_char)
4178 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
4179 (x_redisplay_interface): Add new members.
4180
4181 * w32gui.h (Display): Add dummy typedef for consolidation.
4182 (XChar2b): Define alias for wchar_t for consolidation.
4183 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
4184
4185 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
2a6d0874 4186 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
03eb5fab
KS
4187 New macros for consolidation.
4188
fad49844 4189 * w32term.c: Remove consolidated defines and code.
03eb5fab
KS
4190 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
4191 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
4192 (w32_per_char_metric): Change font_type arg to int for RIF.
4193 (w32_encode_char): Return int according to RIF requirements.
4194 (w32_compute_glyph_string_overhangs): Adapt to RIF.
4195 (w32_get_glyph_overhangs): New function for RIF. Uses generic
4196 x_get_glyph_overhangs.
4197 (w32_redisplay_interface): Add new members.
4198
4199 * macgui.h (XChar2b): Move typedef here for consolidation.
4200 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
4201
4202 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
4203 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
4204 consolidation.
4205
4206 * macterm.c: Remove consolidated defines and code.
4207 (mac_per_char_metric): New function for RIF.
00c64fab 4208 (mac_encode_char): Adapt to new RIF requirements.
03eb5fab
KS
4209 (mac_compute_glyph_string_overhangs): Adapt for RIF.
4210 (x_redisplay_interface): Add new members.
4211
00c64fab
SM
42122003-03-15 Stefan Monnier <monnier@cs.yale.edu>
4213
4214 * keymap.c (Vmenu_events): New var.
4215 (syms_of_keymap): Initialize it.
4216 (where_is_internal): Check more carefully what is a menu event.
4217
225c7a07
RS
42182003-03-14 Richard M. Stallman <rms@gnu.org>
4219
4220 * lread.c (read1): After #!, exit loop on eof.
4221
cea9be54
JD
42222003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4223
9ea0e54d
JD
4224 * gtkutil.h: Add declaration for xg_frame_cleared.
4225
0cb35f4e
JD
4226 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
4227
cea9be54
JD
4228 * gtkutil.c (struct xg_last_sb_pos): New structure.
4229 (handle_fixed_child): New function.
4230 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
4231 and force a redraw on them.
4232 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
4233 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
4234 so we can avoid unneeded redraws.
4235 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
4236 and force a redraw on the scroll bar.
4237 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
4238 if xg_last_sb_pos shows the positions are up to date.
0cb35f4e 4239 (xg_frame_cleared): New function.
cea9be54 4240
20b853f3
KH
42412003-03-13 Kenichi Handa <handa@m17n.org>
4242
4243 * coding.c (Fdetect_coding_region): Fix docstring.
4244 (Fdetect_coding_string): Fix docstring.
4245
7a555aff
AS
42462003-03-13 Andreas Schwab <schwab@suse.de>
4247
25cc0080
AS
4248 * gtkutil.c: Add prototype for create_menus.
4249
30225431
AS
4250 * data.c (long_to_cons): Fix type of top.
4251
4252 * xselect.c (selection_data_to_lisp_data): Use int instead of
4253 long for an integer of size 4.
4254
7a555aff 4255 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
30225431 4256 (xg_tool_bar_help_callback): Likewise.
7a555aff 4257
a3e4741f
AS
42582003-03-12 Andreas Schwab <schwab@suse.de>
4259
4260 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
4261
9668be7c
KS
42622003-03-12 Kim F. Storm <storm@cua.dk>
4263
03eb5fab 4264 The following changes consolidate the fringe handling from
9668be7c 4265 xterm.c, w32term.c, and macterm.c into xdisp.c.
00a88f32 4266
9668be7c
KS
4267 * xdisp.c: Consolidate fringe handling code here.
4268 (left_bits, right_bits, continued_bits, continuation_bits)
4269 (ov_bits, zv_bits): Define fringe bitmaps.
4270 (fringe_bitmaps): New array holding fringe bitmaps.
4271 (draw_fringe_bitmap): Draw a specific bitmap; call display
4272 specific drawing routine via rif->draw_fringe_bitmap.
4273 (draw_row_fringe_bitmaps): Generic replacement for
4274 x_draw_row_fringe_bitmaps; all callers changed.
4275 (compute_fringe_widths): Generic replacement for
4276 x_compute_fringe_widths; all callers changed.
4277
4278 * dispextern.h (enum fringe_bitmap_type): Define here.
4279 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
4280 (fringe_bitmaps): Declare extern.
4281 (struct redisplay_interface): New member draw_fringe_bitmap.
4282 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
4283
4284 * xterm.c: Remove generic fringe code.
4285 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
4286 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
4287
4288 * w32term.c: Remove generic fringe code.
4289 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
4290 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
00a88f32 4291
9668be7c
KS
4292 * macterm.c: Remove generic fringe code.
4293 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
4294 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
4295
00a88f32
SM
42962003-03-11 Stefan Monnier <monnier@cs.yale.edu>
4297
4298 * print.c (Fprin1_to_string): Return unibyte string if possible.
4299
1d1de695
DK
43002003-03-09 David Kastrup <dak@gnu.org>
4301
4302 * process.c (read_process_output): We have allocated enough space
4303 for readmax and carryover, so actually use the alloted space.
4304
257f40f2
JD
43052003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4306
4307 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
4308 toolkit scrollbar click.
4309
4310 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
4311 for USE_GTK.
4312 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
4313 also.
4314 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
4315 scrollbar and control is pressed, call x_scroll_bar_handle_click.
00a88f32 4316
257f40f2
JD
4317 * gtkutil.h: Declare xg_get_scroll_id_for_window.
4318
4319 * gtkutil.c (xg_get_scroll_id_for_window): New function.
4320 (xg_tool_bar_item_expose_callback): New function.
4321 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
4322 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
4323 on the tool bar widget.
4324 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
4325 to expose on the tool bar item widgets.
4326
15213141
JD
43272003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4328
26b74a0b 4329 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
00a88f32 4330 struct image* when deciding to update (struct image* may have been
26b74a0b
JD
4331 deleted from the image cache).
4332
15213141
JD
4333 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
4334 the event isn't for a frame (i.e. for dialogs).
4335
20b853f3 43362003-03-07 Kenichi Handa <handa@m17n.org>
cb681b34
KH
4337
4338 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
4339 composition components reaches the limit, terminate composing.
4340 (COMPOSITION_OK): New macro.
00a88f32 4341 (detect_coding_iso2022): Use it if an escape sequence for
cb681b34
KH
4342 composition is found.
4343 (coding_restore_composition): Adjust the number of composition
4344 components if it is not sane.
4345
c9029fe5
JB
43462003-03-06 Juanma Barranquero <lektu@terra.es>
4347
4348 * w32term.h (struct w32_display_info): Add xrdb member to support
4349 passing resources via -xrm on Windows.
4350
4351 * w32term.c (w32_make_rdb): New function.
4352 (w32_term_init): Use it to initialize xrdb member of w32_display_info
4353 struct. Delete leftover code.
4354
4355 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
4356 for resources passed on the command line.
4357
4358 * w32reg.c (w32_get_rdb_resource): New function.
4359 (x_get_string_resource): Use it, so resources passed with -xrm
4360 supercede the ones in the registry.
4361
9d00001f
JD
43622003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4363
4364 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
4365 instead of x_top_window_to_frame.
4366
ca2417b9
JD
43672003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4368
4369 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
4370 when restarting Emacs.
4371
5b20caf0
RS
43722003-03-03 Richard M. Stallman <rms@gnu.org>
4373
4374 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
4375 to run kill-buffer-query-functions.
4376 (Qkill_buffer_query_functions): New var.
4377 (syms_of_buffer): Init and staticpro it.
4378
58e91b77
JD
43792003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4380
4381 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
4382
932357b4
KS
43832003-02-25 Kim F. Storm <storm@cua.dk>
4384
4385 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
4386 If centering point failed to make whole line visible and vscroll
4387 is non-zero, disable vscroll and try centering point again.
4388
4389 * lread.c (read1): Accept `single space' syntax like (? x).
4390
bb8db7e1
JD
43912003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4392
4393 * keyboard.c (cancel_hourglass_unwind): Surround with
4394 #ifdef HAVE_X_WINDOWS
4395
47d77aab
KH
43962003-02-25 Kenichi Handa <handa@m17n.org>
4397
4398 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
4399 process only when "subprocesses" is defined.
4400
6a097c0c
SM
44012003-02-24 Stefan Monnier <monnier@cs.yale.edu>
4402
4403 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
4404
0b063c27
JB
44052003-02-24 Juanma Barranquero <lektu@terra.es>
4406
d1135afc
JB
4407 * callint.c (fix_command): Declare as static void and move before
4408 Fcall_interactively.
4409
0b063c27
JB
4410 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
4411 (syms_of_xdisp): Don't initialize Qwhen.
4412
0af912f0
JD
44132003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4414
4415 * keyboard.c (cancel_hourglass_unwind): New function.
4416 (command_loop_1): Cancel hourglass with unwind-protect.
4417
120d0a23
RS
44182003-02-23 Richard M. Stallman <rms@gnu.org>
4419
4420 * callint.c (fix_command): New subroutine, from Fcall_interactively.
4421 Detect (when ... (region-beginning)) etc.
4422 (Fcall_interactively): Call fix_command.
4423 (Qif, Qwhen): New variables.
4424 (syms_of_callint): Init and staticpro them.
0b063c27 4425
120d0a23
RS
4426 * regex.c (print_partial_compiled_pattern): Output to stderr.
4427
4ece81a6
KG
44282003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
4429
4430 * dired.c (directory_files_internal): Don't expand directory.
4431 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
4432 instead. From Lars Hansen <larsh@math.ku.dk>.
4433
e52bd6b7
SM
44342003-02-22 Stefan Monnier <monnier@cs.yale.edu>
4435
4436 * fns.c (string_to_multibyte): Remove unused var i.
4437 (Flanginfo): Fix int/Lisp_Object mixup.
4438 (void_call2): New fun.
4439 (Fmap_char_table): Use it in place of call2.
4440
4441 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
4442
4443 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
4444
4445 * keymap.c (copy_keymap_1): Make it static.
4446
4447 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
4448
c33ef7c4
JB
44492003-02-22 David Ponce <david@dponce.com>
4450
4451 * lread.c (Fload): Don't check STRING_MULTIBYTE.
4452
16782258
JD
44532003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4454
4455 * process.h: Removed subtty field from struct Lisp_Process.
4456
4457 * process.c (create_process): Remove setting of subtty.
4458 (emacs_get_tty_pgrp): New function.
e52bd6b7
SM
4459 (Fprocess_running_child_p, process_send_signal):
4460 Call emacs_get_tty_pgrp instead of ioctl.
16782258
JD
4461 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
4462
3abeca61
KG
44632003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
4464
4465 * keymap.c (Fdefine_key): Doc fix.
4466
92a8ce63
JB
44672003-02-21 Juanma Barranquero <lektu@terra.es>
4468
4469 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
4470
4471 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
4472 POLLING_PROBLEM_IN_SELECT.
4473
4474 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
4475 Delete #undef of POLLING_PROBLEM_IN_SELECT.
4476
4477 * s/hpux10-20.h: New file.
4478
e52bd6b7
SM
4479 * process.c (wait_reading_process_input):
4480 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
92a8ce63 4481
20f1ef2e
KH
44822003-02-20 Kenichi Handa <handa@m17n.org>
4483
32d0a9dc
KH
4484 * fontset.c (check_fontset_name): If NAME is nil, return the
4485 default fontset.
4486 (override_font_info): New function.
e52bd6b7 4487 (Fset_fontset_font): Document that NAME nil means the default fontset.
32d0a9dc
KH
4488 (Ffontset_info): If FONTSET is not the default fontset, merge
4489 FONTSET onto the copy of the default fontset, and work on that
4490 copy. Document that NAME nil means the default fontset.
4491 (Ffontset_font): Document that NAME nil means the default fontset.
4492
20f1ef2e
KH
4493 * process.c (setup_process_coding_systems): If the process's
4494 in/out descriptor is -1, do nothing.
4495
77d1daf2
AS
44962003-02-19 Andreas Schwab <schwab@suse.de>
4497
e52bd6b7
SM
4498 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
4499 Add prototypes.
77d1daf2 4500
f9a45bb3
KH
45012003-02-19 Kenichi Handa <handa@m17n.org>
4502
4503 * xfaces.c (try_alternative_families): Try all scalable fonts if
4504 Vscalable_fonts_allowed is not Qt.
4505
72ecb43c
JD
45062003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4507
4508 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
4509
ee5be7c3
JD
45102003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4511
4512 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
4513 names.
4514
4515 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
e52bd6b7 4516 (sorted_font_list): Move allocation of struct font_name to
ee5be7c3
JD
4517 x_face_list_fonts.
4518 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
4519 (Fx_list_fonts): Set maxnames to -1 to get all font names.
4520
4cd519a7
KS
45212003-02-18 Kim F. Storm <storm@cua.dk>
4522
068f9882
KS
4523 * lread.c (read1): Fix last change.
4524 "`" is not always special. Allow "?" after a character constant.
4cd519a7 4525
7290a344
AC
45262003-02-18 Andrew Choi <akochoi@shaw.ca>
4527
4528 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
4529
1f7fa69b
AS
45302003-02-18 Andreas Schwab <schwab@suse.de>
4531
4532 * window.c (window_scroll_pixel_based): Move outside a
4533 multi-glyph character before setting new window start.
4534
4535 * xdisp.c (in_display_vector_p): New function.
4536 * dispextern.h (in_display_vector_p): Declare.
4537
23e21195
KS
45382003-02-18 Kim F. Storm <storm@cua.dk>
4539
4540 * lread.c (read1): Fix and relax read syntax.
4541 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
4542 Only recognize "," after dotted-pair dot if inside backquote.
4543 Never include "`" or "," (inside backquote) in a symbol.
4544 Allow dotted-pair dot after a character constant.
4545 Allow "`" and "," (inside backquote) after a character constant.
92a8ce63 4546
f098b121
JD
45472003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4548
4549 * gtkutil.c (xg_tool_bar_expose_callback): New function.
4550 (xg_create_tool_bar): Force style of tool bar to be horizontal with
4551 icons. Set name of tool bar to emacs-toolbar.
4552 (update_frame_tool_bar): Connect expose event to
4553 xg_tool_bar_expose_callback.
4554
63020c46
RS
45552003-02-17 Richard M. Stallman <rms@gnu.org>
4556
4557 * keyboard.c (this_command_key_count_reset): New variable.
4558 Initiatize to 0 where this_command_key_count is set.
4559 (read_char): Save and restore this_command_key_count_reset
4560 around input method code.
4561 (read_char): If this_command_key_count_reset, echo reread commands.
4562 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
4563
fb4452cc
KH
45642003-02-17 Kenichi Handa <handa@m17n.org>
4565
4566 * fns.c (string_to_multibyte): Always return a multibyte string.
4567
bd11cc09
JR
45682003-02-16 Jason Rumney <jasonr@gnu.org>
4569
e52bd6b7
SM
4570 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
4571 Negative max_fonts parameter means list all.
bd11cc09 4572
4cdf4bde
DL
45732003-02-14 Dave Love <fx@gnu.org>
4574
4575 * fns.c (Flanginfo): Doc fix.
4576
023b93f6
KS
45772003-02-13 Kim F. Storm <storm@cua.dk>
4578
37cd4238
KS
4579 * lread.c (read_escape): Interpret \s as a SPACE character, except
4580 for \s-X in a character constant which still is the super modifier.
4581 (read1): Signal an `invalid read syntax' error if a character
4582 constant is immediately followed by a digit or symbol character.
4583
140a6b7e
KS
4584 * search.c (Fmatch_data): Doc fix. Explicitly state that
4585 match-data is undefined if last search failed.
4586
023b93f6
KS
4587 * keymap.c (Fcommand_remapping): Renamed from Fremap_command.
4588 All uses changed.
4589
7d5c86e5
JB
45902003-02-12 Juanma Barranquero <lektu@terra.es>
4591
4592 * eval.c (Fdefmacro): Fix typo.
4593
295fff2c
KS
45942003-02-12 Kim F. Storm <storm@cua.dk>
4595
4596 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
4597 macro is a string, convert meta modifiers in string when copying
4598 the string into a vector.
4599
60f3202d
KS
46002003-02-11 Kim F. Storm <storm@cua.dk>
4601
4602 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
4603
61cb0b53
KH
46042003-02-11 Kenichi Handa <handa@m17n.org>
4605
4606 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
4607
7392e23c
KS
46082003-02-10 Kim F. Storm <storm@cua.dk>
4609
4610 * process.c: Doc fixes.
4611 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
4612
ce4254bd
KH
46132003-02-10 Kenichi Handa <handa@m17n.org>
4614
9c7a329a
KH
4615 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
4616
ce4254bd
KH
4617 * process.c (QCfilter_multibyte): New variable.
4618 (setup_process_coding_systems): New function.
e52bd6b7
SM
4619 (Fset_process_buffer, Fset_process_filter):
4620 Call setup_process_coding_systems.
ce4254bd
KH
4621 (Fstart_process): Initialize the member `filter_multibyte' of
4622 struct Lisp_Process.
4623 (create_process): Call setup_process_coding_systems.
4624 (Fmake_network_process): New keyward `:filter-multibyte'.
4625 Initialize the member `filter_multibyte' of struct Lisp_Process.
4626 Call setup_process_coding_systems.
4627 (server_accept_connection): Call setup_process_coding_systems.
4628 (read_process_output): If the process has a filter, decide the
4629 multibyteness of a string to given to the filter by
4630 `filter_multibyte' member of the process. If the process doesn't
4631 have a filter and the result of conversion is unibyte, use
4632 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
4633 multibyte form.
4634 (Fset_process_coding_system): Call setup_process_coding_systems.
4635 (Fset_process_filter_multibyte): New function.
4636 (Fprocess_filter_multibyte_p): New function.
4637 (syms_of_process): Intern and staticpro QCfilter_multibyte.
4638 Defsubr Sset_process_filter_multibyte and
4639 Sprocess_filter_multibyte_p.
4640
4641 * process.h (struct Lisp_Process): New member filter_multibyte.
4642
4643 * lisp.h (setup_process_coding_systems): Add prototype.
4644
4645 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
4646 process, update coding systems for the process.
4647
b08d5f59
KH
46482003-02-09 Kenichi Handa <handa@m17n.org>
4649
4650 * fns.c (string_to_multibyte): New function.
4651 (Fstring_to_multibyte): New function.
4652 (syms_of_fns): Defsubr it.
4653
0dfd93c0
AS
46542003-02-08 Andreas Schwab <schwab@suse.de>
4655
4656 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
4657 instead of the substitution.
4658
7b76ca1c
JD
46592003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4660
4661 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
4662
4663 * xmenu.c (menu_position_func): Adjust menu popup position so that
4664 the menu is fully visible.
7b76ca1c 4665
2436a4e4
JD
46662003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4667
4668 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
e52bd6b7
SM
4669 (x_make_frame_invisible, x_wm_set_icon_position):
4670 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
2436a4e4
JD
4671
4672 * xfns.c (x_set_name, x_set_title): Ditto.
4673
37d1e680
RS
46742003-02-04 Richard M. Stallman <rms@gnu.org>
4675
4676 * keyboard.c (echo_now): Update before_command_echo_length.
4677 (Freset_this_command_lengths): Reset this_command_key_count etc.
4678 immediately rather than arranging to do it later.
4679 (before_command_key_count_1, before_command_echo_length_1)
4680 (before_command_restore_flag): Vars deleted.
4681 (add_command_key): Don't handle before_command_restore_flag.
4682 (read_char, record_menu_key): Don't update before_command_key_count or
4683 before_command_echo_length.
4684 (read_char): Don't handle before_command_restore_flag.
4685
4686 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
4687 in direct-output clauses if it wouldn't be called in the ordinary case.
4688
578846a3
KS
46892003-02-04 Kim F. Storm <storm@cua.dk>
4690
4691 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
4692
49853a4d
JD
46932003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4694
4695 * gtkutil.c (remove_from_container): Copying list is not needed.
4696 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
4697 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
4698 on list returned from gtk_container_get_children to avoid memory leak.
4699
8b53dc06
JR
47002003-02-01 Jason Rumney <jasonr@gnu.org>
4701
5d54d177
JR
4702 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
4703 local malloc.
4704 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
4705 definitions in xpm.h.
4706 (init_xpm_functions): New function.
4707 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
4708 (init_external_image_libraries): Try to load libXpm.dll.
4709
8b53dc06
JR
4710 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
4711 timestamp.
4712
b222e415
DL
47132003-01-31 Dave Love <fx@gnu.org>
4714
4715 * syntax.c (Fskip_chars_forward)
4716 (open-paren-in-column-0-is-defun-start): Doc fix.
4717
c60ee5e7
JB
47182003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
4719
4720 * fileio.c: Support // at start of name for Cygwin (just added proper
4721 preprocessor tests).
4722
4723 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
4724
4725 * Makefile.in: Use @EXEEXT@ for Cygwin.
4726
4727 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
4728
4729 * s/cygwin.h: Added for Cygwin port.
4730
53b37591
JB
47312003-01-31 Juanma Barranquero <lektu@terra.es>
4732
4733 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
4734 when including gif_lib.h.
fe929957
JB
4735 (init_gif_functions, init_tiff_functions): New functions.
4736 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
4737 Windows. Disable color table lookups. Call library functions
53b37591 4738 through pointers determined at runtime.
fe929957
JB
4739 (init_external_image_libraries): Try to load libungif.dll and
4740 libtiff.dll.
53b37591 4741
45415a8f
KH
47422003-01-31 Kenichi Handa <handa@m17n.org>
4743
4744 * xdisp.c (SKIP_GLYPHS): New macro.
e52bd6b7 4745 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
45415a8f 4746
a97e4138
JD
47472003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4748
e52bd6b7 4749 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
a97e4138 4750
6eed9bed
DL
47512003-01-30 Dave Love <fx@gnu.org>
4752
4753 * alloc.c (Vgc_elapsed, gcs_done): New variables.
4754 (Fgarbage_collect): Use them.
4755 (init_alloc, syms_of_alloc): Set them up.
4756
100dcd40
JB
47572003-01-30 Juanma Barranquero <lektu@terra.es>
4758
4759 * w32fns.c (init_external_image_libraries): Add missing operator.
4760
fbd852af
JR
47612003-01-29 Jason Rumney <jasonr@gnu.org>
4762
4763 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
4764 an alternative name for jpeg.dll.
4765
8a2d8020
KH
47662003-01-29 Kenichi Handa <handa@m17n.org>
4767
4768 * xdisp.c (set_cursor_from_row): Pay attention to string display
4769 properties.
4770
058c18c7
AC
47712003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
4772
4773 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
4774 <escape>.
4775 (keycode_to_xkeysym_table): Reformat and add more comments.
4776 (XTread_socket): Drop special case for backspace.
4777
385f11cf
AC
47782003-01-28 Andrew Choi <akochoi@shaw.ca>
4779
4780 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
4781 values in old-style RGB specs.
4782
c922a224
JB
47832003-01-27 Juanma Barranquero <lektu@terra.es>
4784
4785 * w32fns.c (init_external_image_libraries): Try alternate names for the
4786 jpeg dll.
4787
0a1d6de0
JD
47882003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4789
4790 * gtkutil.c (create_dialog, xg_separator_p)
4791 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
4792 before calling strcmp or strlen.
4793
a97e4138 47942003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1d1885fc
JD
4795
4796 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
4797 and handle image load failure.
4798
28908312
JR
47992003-01-26 Jason Rumney <jasonr@gnu.org>
4800
4801 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
4802 New functions.
4803 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
4804 Disable color table lookups. Call jpeg library functions
4805 through pointers determined at runtime.
4806 (init_external_image_libraries): Try to load jpeg.dll.
4807
84e47416
RS
48082003-01-25 Richard M. Stallman <rms@gnu.org>
4809
4810 * lisp.h: Declare format2 instead of format1.
4811
4812 * fileio.c (barf_or_query_if_file_exists):
4813 Call format2 instead of format1.
4814
4815 * editfns.c (format2): New function, replaces format1
4816 but takes exactly two Lisp Objects as format args.
4817
4818 * buffer.c (Fkill_buffer): Call format2 instead of format1.
4819
a97e4138 48202003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1fcfb866
JD
4821
4822 * xterm.h: Change to return value of x_dispatch_event to int.
4823
4824 * xterm.c (x_filter_event): New function.
4825 (event_handler_gdk, XTread_socket): Call x_filter_event.
4826 (x_dispatch_event): Change to return value of finish.
4827 (event_handler_gdk): Use return value from x_dispatch_event.
4828
4829 * xfns.c (x_window): Call create_frame_xic for GTK version to
4830 initialize input methods.
4831
4832 * gtkutil.h: Add (void) prototypes.
4833
4834 * gtkutil.c (create_menus): Remove code that puts the help menu to
4835 the right.
4836
54eefef1
JR
48372003-01-25 Jason Rumney <jasonr@gnu.org>
4838
4839 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
4840 [HAVE_PNG]: Sync with xfns.c version.
4841 (png_load): Adjust colors for Windows. Use Windows
4842 bitmaps. Disable color table lookups.
c262430d
JR
4843 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
4844 (init_png_functions): New function.
4845 (png_read_from_memory, png_load): Call png library functions
4846 through pointers determined at runtime.
4847 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
4848 (init_external_image_libraries): New function.
4849 (init_xfns): Call it.
54eefef1 4850
1a9e275b
AS
48512003-01-24 Andreas Schwab <schwab@suse.de>
4852
4853 * minibuf.c (Fminibuffer_message): Verify type of parameter.
4854
a97e4138 48552003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
81e302ef
JD
4856
4857 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
4858 of static initializer.
4859
422eec7e
DL
48602003-01-24 Dave Love <fx@gnu.org>
4861
4862 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
4863 architectures.
4864
4865 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
4866 Use __alignof__.
4867
2a026b04
KH
48682003-01-24 Kenichi Handa <handa@m17n.org>
4869
4870 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
e52bd6b7 4871 It it is nonzero, don't pretend that an invisible area doesn't exist.
2a026b04
KH
4872 (command_loop_1): Call adjust_point_for_property with proper
4873 second arg.
4874
a18bb28d
JR
48752003-01-22 Jason Rumney <jasonr@gnu.org>
4876
4877 Sync changes with xterm.c and xfns.c.
4878
4879 * w32term.c (x_draw_glyph_string_foreground)
4880 (x_draw_composite_glyph_string_foreground): Implement overstriking.
4881
4882 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
4883 phys_cursor's hpos is overwritten. This is still not completely
4884 correct, as it doesn't really make sense to use hpos at all to
4885 get the cursor glyph (as that is relative to the width of the
4886 characters on the line, which may have changed during the update).
4887
4888 * w32term.c (notice_overwritten_cursor): Handle the special case
4889 of the cursor being in the first blank non-text line at the
4890 end of a window.
4891
4892 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
4893 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
4894 Compute from the x position returned by x_draw_glyphs.
4895
4896 (x_display_and_set_cursor): Don't set phys_cursor_width here,
4897 except for NO_CURSOR and system caret, to make phys_cursor_width
4898 contain what its name suggests.
4899 (notice_overwritten_cursor): Consider the cursor image erased if
4900 the output area intersects the cursor image in y-direction.
4901
6a097c0c
SM
4902 * w32term.c (note_mode_line_or_margin_highlight): Rename from
4903 note_mode_line_highlight and extend.
a18bb28d
JR
4904
4905 * w32term.c (last_window): New variable.
4906 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
4907 (note_mouse_movement): Remove reimplemented code in #if 0.
4908
4909 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
4910 not update_mode_lines, and always set it to 1.
4911
ac6e47ef
JR
49122003-01-21 Jason Rumney <jasonr@gnu.org>
4913
4914 * w32fns.c (IDC_HAND): Define it if system headers don't.
4915
49162003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
4917
4918 * w32term.h (struct w32_output): New member hand_cursor.
4919 (WM_EMACS_SETCURSOR): New message definition.
4920
4921 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
4922 function w32_define_cursor.
4923 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
4924 position, change member name output_data.x to output_data.w32 and
4925 add function w32_define_cursor.
4926 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
4927 and change member name output_data.x to output_data.w32.
e52bd6b7
SM
4928 (w32_initialize_display_info):
4929 Setup dpyinfo->vertical_scroll_bar_cursor.
ac6e47ef
JR
4930
4931 * w32fns.c (Vx_hand_shape): New variable.
4932 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
4933 WM_EMACS_SETCURSOR.
4934 (x-create-frame): Setup Cursor types.
4935
ceb39a17
JB
49362003-01-21 David Ponce <david@dponce.com>
4937
ac6e47ef
JR
4938 * w32term.c (w32_encode_char): For DIM=1 charset, set
4939 ccl->reg[2] to -1 before calling ccl_driver. (Sync. with xterm.c
4940 x_encode_char change by Kenichi Handa <handa@m17n.org> on
ceb39a17 4941 2002-09-30.)
ac6e47ef
JR
4942 (w32_draw_relief_rect): Declare all args.
4943 (w32_define_cursor): New.
4944
4945 * w32fns.c (w32_load_cursor): New function.
4946 (w32_init_class): Use it.
4947 (x_put_x_image): Declare all args.
4948
46cf0bed
JB
49492003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
4950
4951 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
4952
a97e4138 49532003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e8794476
JD
4954
4955 * gtkutil.c: Must include stdio.h before termhooks.h
4956
83fc9c63
DL
49572003-01-21 Dave Love <fx@gnu.org>
4958
4959 * alloc.c (Fgc_status): Print zombie list.
4960 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
4961 Fix assignment of zombies.
4962 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
4963 Don't take car of non-cons.
4964
4965 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
4966
4967 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
4968
fe04b8c8
JR
49692003-01-20 David Ponce <david@dponce.com>
4970
4971 * w32menu.c (digest_single_submenu): Declare all args.
4972
4973 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
4974 changes in xmenu.c:
4975
4976 (parse_single_submenu): Use individual keymap's prompt
4977 string as pane name, if there is one.
4978 (set_frame_menubar): Save menu_items_n_panes from each call to
4979 parse_single_submenu and use it when calling digest_single_submenu.
4980
539e69a9
ST
49812003-01-20 Steven Tamm <steventamm@mac.com>
4982
4983 * macterm.c (XTread_socket): Checks for valid, visible window
4984 before sending a scroll-wheel event.
4985
675d000f
RS
49862003-01-20 Richard M. Stallman <rms@gnu.org>
4987
4988 * xdisp.c (redisplay_window): If mini window's buffer is not
4989 a minibuffer, then redisplay it like other windows.
4990
a97e4138 49912003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
22174d10
JD
4992
4993 * gtkutil.c (xg_create_frame_widgets): Check if there is an
4994 external tool bar before setting tool bar height.
4995
048addec
JD
49962003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4997
4998 * xterm.c (handle_one_xevent): Surround popup_activated
4999 with #ifdef:s for non-toolkit version.
5000
5001 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
5002 (gtkutil.o): New file.
5003 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
5004 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
5005
5006 * gtkutil.c: New file for GTK version.
5007
5008 * gtkutil.h: New file for GTK version.
5009
5010 * xterm.h: Add xt_or_gtk_widget.
5011 Include gtk files for USE_GTK.
5012 (struct x_output): Add toolbar_height.
5013 (struct x_output): Add GTK widgets and Gdk size_hints.
5014 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
5015 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
5016 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
5017
5018 * xterm.c: Include gtkutil.h for USE_GTK.
5019 Declare extern void free_frame_menubar for USE_GTK.
5020 (note_mouse_highlight): Check popup_activated for USE_GTK.
5021 (xt_action_hook): Don't compile if USE_GTK.
5022 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
5023 (xg_scroll_callback): New function.
5024 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
5025 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
5026 for USE_GTK.
5027 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
5028 xg_show_scroll_bar for USE_GTK.
5029 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
5030 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
5031 (event_handler_gdk): New function for USE_GTK.
5032 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
5033 (handle_one_xevent): Make sure widget is mapped before
5034 calling x_real_positions for USE_GTK.
5035 (XTread_socket): Add GTK event loop for USE_GTK.
5036 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
5037 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
5038 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
5039 (x_iconify_frame): Add code for USE_GTK.
5040 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
5041 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
5042 is in gtkutil.c.
5043 (x_term_init): Add initialization for GTK.
5044 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
5045
5046 * xmenu.c: Include gtkutil.h for USE_GTK.
5047 (Fx_popup_menu): Use current position if x and y is NIL.
6bdb309a
SM
5048 (single_menu_item, single_menu_item, Fx_popup_dialog):
5049 Check for USE_GTK.
048addec
JD
5050 (popup_widget_loop): New function for USE_GTK.
5051 (x_activate_menubar): Add code for USE_GTK.
5052 (popup_activate_callback, popup_deactivate_callback)
6bdb309a
SM
5053 (menu_highlight_callback, menubar_selection_callback):
5054 Add USE_GTK versions.
048addec
JD
5055 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
5056 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
5057 (free_frame_menubar): Only compile if not USE_GTK. GTK version
5058 is in gtkutil.c.
5059 (popup_selection_callback): New version for USE_GTK.
5060 (create_and_show_popup_menu): New fuction, one USE_GTK version and
6bdb309a 5061 one USE_X_TOOLKIT version.
048addec
JD
5062 (xmenu_show): Call create_and_show_popup_menu.
5063 (dialog_selection_callback): New version for USE_GTK.
5064 (create_and_show_dialog): New fuction, one USE_GTK version and
6bdb309a 5065 one USE_X_TOOLKIT version.
048addec
JD
5066 (xdialog_show): Call create_and_show_dialog.
5067
5068 * xfns.c: Include gtkutil for USE_GTK.
5069 (x_window_to_frame, x_any_window_to_frame)
5070 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
5071 (x_top_window_to_frame): Add code for USE_GTK.
5072 (x_set_background_color): Call xg_set_background_color for GTK.
5073 (x_set_menu_bar_lines): Check for USE_GTK.
5074 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
5075 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
5076 (x_window): Call xg_create_frame_widgets for USE_GTK.
5077 (Fx_create_frame): Check for USE_GTK
5078 (Fx_file_dialog): New implementation for USE_GTK.
5079
5080 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
5081 (update_menu_bar): Add check for USE_GTK.
5082 (update_tool_bar): Add check for USE_GTK and external tool bar.
5083 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
5084 (redisplay_internal): Add check for USE_GTK and popup_activated.
5085 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
5086 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
5087 (display_menu_bar): Add check for USE_GTK
5088
5089 * lisp.h: Declare Vx_resource_name extern.
5090
5091 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
5092 for USE_GTK.
5093 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
5094
5095 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
5096 (FRAME_EXTERNAL_TOOL_BAR): New macro.
5097 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
5098
5099 * fileio.c (Fread_file_name): Add check for USE_GTK.
5100
6bdb309a
SM
5101 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
5102 Add check for USE_GTK.
048addec
JD
5103
5104 * config.in: Added HAVE_GTK
5105
5106 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
5107
51082003-01-18 Stefan Monnier <monnier@cs.yale.edu>
5109
5110 * charset.h (Funibyte_char_to_multibyte): Export.
5111
51122003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5113
5114 * xmenu.c (mouse_position_for_popup): New function.
5115 (Fx_popup_menu): Call mouse_position_for_popup for X and
5116 mouse_position_hook for others.
5117
51182003-01-17 Kim F. Storm <storm@cua.dk>
5119
5120 * editfns.c (Finsert): Mention `string-make-multibyte' and
5121 `string-as-multibyte' in doc string.
5122
51232003-01-17 Kenichi Handa <handa@m17n.org>
5124
5125 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
3c02a6f5 5126
048addec
JD
5127 * editfns.c (Fformat): Convert an unibyte char argument that is
5128 formatted by "%c" to multibyte if the total result must be a
5129 multibyte string.
cd7df9c0 5130
048addec 51312003-01-16 Kim F. Storm <storm@cua.dk>
cd7df9c0 5132
048addec
JD
5133 * process.c (set-process-filter): Document unibyte/multibyte-ness
5134 of string argument.
56210ecd 5135
048addec 51362003-01-16 Kenichi Handa <handa@m17n.org>
56210ecd 5137
048addec 5138 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
56210ecd 5139
048addec
JD
5140 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
5141 (re_search_2): Likewise.
6df8b9fe 5142
048addec 51432003-01-15 Kenichi Handa <handa@m17n.org>
6df8b9fe 5144
048addec
JD
5145 * xdisp.c (message_dolog): Fix bug of the case that *Message*
5146 buffer is unibyte.
292ddc31 5147
048addec 51482003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
292ddc31 5149
048addec 5150 * fns.c (Fsubstring): Clarify doc string.
292ddc31 5151
048addec
JD
5152 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
5153 (Fprevious_char_property_change)
5154 (Fnext_single_char_property_change)
5155 (Fprevious_single_char_property_change, Fnext_property_change)
5156 (Fnext_single_property_change, Fprevious_property_change)
5157 (Fprevious_single_property_change, Fadd_text_properties)
5158 (Fput_text_property, Fset_text_properties)
5159 (Fremove_text_properties, Fremove_list_of_text_properties)
5160 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
63e4e4c6 5161
048addec 51622003-01-14 Kim F. Storm <storm@cua.dk>
63e4e4c6 5163
048addec
JD
5164 * process.h (struct Lisp_Process): New member plist replaces old
5165 member private_vars. All uses changed.
63e4e4c6 5166
048addec 5167 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
6bdb309a 5168 (QCplist): Rename from QCvars. Change all uses.
048addec 5169 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
6bdb309a 5170 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
048addec 5171 (syms_of_process): Intern, staticpro, defsubr these.
6bdb309a 5172 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
7ed16567 5173
048addec 51742003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
7ed16567 5175
6bdb309a 5176 * m/delta.h: Remove (obsolete).
e833850f 5177
048addec 51782003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
e833850f 5179
048addec
JD
5180 * fileio.c (Fdelete_directory, Fdelete_file): Document the
5181 behaviour in front of symlinks.
5182 (Fdelete_file): Raise an error on directories.
817cb127 5183
048addec 51842003-01-13 Dave Love <fx@gnu.org>
817cb127 5185
048addec 5186 * fns.c (Freverse): Use QUIT.
3e8cf2ea 5187
048addec 51882003-01-13 Richard M. Stallman <rms@gnu.org>
3e8cf2ea 5189
048addec
JD
5190 * minibuf.c (minibuffer_completion_contents):
5191 Error if point is inside prompt.
3e8cf2ea 5192
048addec
JD
5193 * keyboard.c (command_loop_1): Don't redisplay directly
5194 if there's a post-command-hook.
3e8cf2ea 5195
048addec
JD
5196 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
5197 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
2c10f029 5198
048addec 51992003-01-12 Kim F. Storm <storm@cua.dk>
94e8ffca 5200
048addec 5201 * process.h (struct Lisp_Process): New member private_vars.
94e8ffca 5202
048addec
JD
5203 * process.c (QCvars): New variable.
5204 (syms_of_process): Intern and staticpro it.
5205 (Fset_process_contact): Removed function.
5206 (Fprocess_variable, Fset_process_variable): New functions.
5207 (syms_of_process): Defsubr them.
5208 (Fstart_process): Initialize private_vars plist to nil.
5209 (Fmake_network_process): New arg :vars to setup the private
5210 variables for new network process.
5211 (server_accept_connection): Copy server's private variables to
5212 client process.
2c10f029 5213
048addec
JD
5214 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
5215 crashes). Code rewritten and simplified. Now directly aligns the
5216 pointer and recalculates pure_bytes_used, rather than aligning the
5217 size and adjusting the pointer.
b8a76c6c 5218
048addec 52192003-01-11 Kim F. Storm <storm@cua.dk>
b8a76c6c 5220
048addec
JD
5221 * process.c (Fset_process_contact): New function.
5222 (syms_of_process): defsubr it.
5223 (make-network-process): Update doc.
3a8d0899 5224
048addec 52252003-01-10 Andreas Schwab <schwab@suse.de>
3a8d0899 5226
048addec
JD
5227 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
5228 Reported by Berthold Gunreben <b.gunreben@web.de>.
4abc7470 5229
048addec 52302003-01-10 Dave Love <fx@gnu.org>
4abc7470 5231
048addec 5232 * composite.c (syms_of_composite): Make composition_hash_table weak.
b809d662 5233
048addec 52342003-01-09 Kim F. Storm <storm@cua.dk>
b809d662 5235
048addec
JD
5236 * process.c (Fmake_network_process): Convert new port number
5237 to host byte order for `:service t' case. From Mario Lang.
bf338245 5238
048addec 52392003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
bf338245 5240
048addec
JD
5241 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
5242 instead of XtAppProcessEvent.
bf338245 5243
048addec
JD
5244 * xterm.c (handle_one_xevent): New function.
5245 (x_dispatch_event): New function.
5246 (XTread_socket): Call handle_one_xevent.
bf338245 5247
048addec 5248 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
e833850f 5249
048addec
JD
5250 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
5251 call XQueryPointer to get coordinates.
5252 (popup_get_selection): Do not set popup_activated_flag to zero,
5253 let popup_deactivate_callback do that. Needed for Motif.
5254 Call x_dispatch_event instead of XtDispatchEvent.
5255 (xmenu_show): Calculate root coordinate from frame top/left position.
c4af2bce 5256
048addec 52572003-01-08 Kim F. Storm <storm@cua.dk>
c4af2bce 5258
6bdb309a 5259 * process.c (server_accept_connection): Fix recording of new
048addec
JD
5260 connection's local address in :local property of contact info.
5261 (Fmake_network_process): Record local network address for new
5262 client processes in :local property of contact info.
6bdb309a 5263 (format-network-address): Add arg OMIT-PORT. Change callers.
00e3ab56 5264
048addec 52652003-01-07 Dave Love <fx@gnu.org>
00e3ab56 5266
048addec 5267 * Makefile.in (fns.o): Depend on coding.h.
f387e1fd 5268
048addec 52692003-01-07 Markus Rost <rost@math.ohio-state.edu>
f387e1fd 5270
048addec 5271 * minibuf.c (Fread_variable): Doc fix.
f387e1fd 5272
048addec
JD
5273 * eval.c (Fuser_variable_p): Doc change. For custom variables,
5274 use the same test as for custom-variable-p.
8c6d74c6 5275
048addec 52762003-01-05 Richard M. Stallman <rms@gnu.org>
e833850f 5277
048addec
JD
5278 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
5279 Count LAST_LINE_MISFIT in scroll margin for end of window.
5280 Move label too_near_end before setting SCROLL_MARGIN_POS.
5281 Set LAST_LINE_MISFIT before jumping there.
8c6d74c6 5282
048addec
JD
5283 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
5284 scroll_conservatively case. If scrolling that much doesn't change
5285 STARTP, move it down one line.
e833850f 5286
048addec
JD
5287 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
5288 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
8c6d74c6 5289
048addec
JD
5290 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
5291 selected frame.
8c6d74c6 5292
048addec
JD
5293 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
5294 (syms_of_keymap): staticpro them.
5295 (Fapropos_internal): Initialize them and clear them out.
5296 Don't GCPRO them.
8c6d74c6 5297
048addec
JD
5298 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
5299 Doc fixes.
8c6d74c6 5300
048addec
JD
5301 * lisp.h: New misc type Lisp_Save_Value.
5302 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
5303 (XSAVE_VALUE): New macro.
5304 (struct Lisp_Save_Value): New data type.
5305 (union Lisp_Misc): Add u_save_value alternative.
5306 (make_save_value): Declared.
8c6d74c6 5307
048addec 5308 * alloc.c (make_save_value): New function.
8c6d74c6 5309
048addec
JD
5310 * xterm.c (x_catch_errors): Save dpy using make_save_value.
5311 (x_catch_errors_unwind): Call XSync.
8c6d74c6 5312
048addec 53132003-01-01 Richard M. Stallman <rms@gnu.org>
8c6d74c6 5314
048addec 5315 * window.c (window_scroll_pixel_based): Partially undo last change.
8c6d74c6 5316
048addec
JD
5317 * keyboard.c (command_loop_1): Call adjust_point_for_property
5318 in direct action cases for Qforward_char and Qbackward_char.
5319 Set already_adjusted so it won't be done twice.
8c6d74c6 5320
048addec 53212002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
8c6d74c6 5322
048addec
JD
5323 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
5324 type definition of size_t.
8c609cff 5325
048addec 53262003-01-02 Steven Tamm <steventamm@mac.com>
8c609cff 5327
048addec
JD
5328 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
5329 distinguish Carbon GUI builds from X11 builds on darwin.
b37113a1 5330
048addec 53312002-12-30 Steven Tamm <steventamm@mac.com>
b37113a1 5332
048addec
JD
5333 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
5334 to default to t.
fa634a5e 5335
048addec 53362002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
fa634a5e 5337
048addec 5338 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
ce0669d4 5339
048addec 53402002-12-28 Steven Tamm <steventamm@mac.com>
ce0669d4 5341
048addec
JD
5342 * Makefile.in (macosx-bundle): Fixes to Mac OS X/Carbon port to
5343 allow building in a different directory than source. Uses some
5344 GNU Make extensions, but there is no other make on Mac OS X.
2308af15 5345
048addec 53462002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
2308af15 5347
048addec
JD
5348 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
5349 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
5350 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
5351 (Fstring_to_number): Mention the returned value in the doc strings.
2155ecf3 5352
048addec 53532002-12-23 Richard M. Stallman <rms@gnu.org>
2155ecf3 5354
048addec
JD
5355 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
5356 <scroll-down-aggressively>: Doc fix.
2155ecf3 5357
048addec
JD
5358 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
5359 string as pane name, if there is one.
5360 (set_frame_menubar): Save menu_items_n_panes from each call to
5361 parse_single_submenu and use it when calling digest_single_submenu.
2155ecf3 5362
048addec
JD
5363 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
5364 Don't try to make last line fully visible if it is past end of window.
61f1d295 5365
048addec 53662002-12-22 Steven Tamm <steventamm@mac.com>
61f1d295 5367
048addec
JD
5368 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
5369 (mac_menu_show): Add support for hierarchical popup menus.
5370 (add_menu_item): Remove indentation support.
5371 (fill_submenu, fill_menu): Create hierarchical menus
5372 instead of using indentation.
0b17a217 5373
048addec 53742002-12-22 Richard M. Stallman <rms@gnu.org>
0b17a217 5375
048addec
JD
5376 * xdisp.c (try_cursor_movement): Don't call try_window here.
5377 (redisplay_window): Never redisplay minibuffer when inactive.
0b17a217 5378
048addec 5379 * window.c (select_window_1): Undo 9/21 change.
402e4f8b 5380
048addec 53812002-12-22 Steven Tamm <steventamm@mac.com>
402e4f8b 5382
048addec
JD
5383 * macterm.c (XTread_socket): Call KeyTranslate for control and
5384 meta to deal correctly shifted non-alpha characters, like C-S-5
5385 being treated like C-%. Does not look for shift key to deal
5386 with masking off control-key with mac-reverse-ctrl-meta.
f02cac82 5387
048addec 53882002-12-21 Richard M. Stallman <rms@gnu.org>
f02cac82 5389
048addec
JD
5390 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
5391 If it is non-nil, run timers. Use an unwind-protect to requeue
5392 the events that were read ahead.
5393 (popup_get_selection_unwind): New subroutine.
5394 (popup_get_selection_queue): File-scope variable now holds that queue.
5395 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
5396 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
5397 Use an unwind-protect to pop down the dialog box.
5398 (xdialog_show_unwind): New subroutine implements that.
f02cac82 5399
048addec
JD
5400 * xdisp.c (row_containing_pos): Change exit test using last_y.
5401 (try_window_id): Abort if row_containing_pos returns null.
f02cac82 5402
048addec
JD
5403 * lread.c (load_error_handler): New function.
5404 (Fload): Handle errors in Fsubstitute_in_file_name.
5405 Don't expect Fsignal to return.
f02cac82 5406
048addec
JD
5407 * eval.c: Errors and throws work right with interrupt blocking.
5408 (struct catchtag): New elt interrupt_input_blocked.
5409 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
5410 (internal_catch, Fcondition_case, internal_condition_case)
5411 (internal_condition_case_1, internal_condition_case_2): Save it.
5412 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
f02cac82 5413
048addec 5414 * editfns.c (Fformat): Add parens.
f02cac82 5415
048addec
JD
5416 * dired.c (file_name_completion): Fix that change.
5417 Delete special quit-handling code; just use QUIT.
f02cac82 5418
048addec 54192002-12-21 Tak Ota <Takaaki.Ota@am.sony.com> (tiny change)
f02cac82 5420
048addec
JD
5421 * dired.c (file_name_completion): Close directory on error
5422 just as in directory_files_internal.
1a590729 5423
048addec 54242002-12-19 David Kastrup <David.Kastrup@t-online.de>
1a590729 5425
048addec
JD
5426 * window.c (Fset_window_configuration): Set old_point to correct
5427 value when new_current_buffer == current_buffer.
f02cac82 5428
048addec 54292002-12-17 Ben Key <bkey1@tampabay.rr.com>
2308af15 5430
048addec
JD
5431 Revisited my earlier fix for the following entry in etc/PROBLEMS:
5432 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
5433 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
9785d95b 5434
048addec
JD
5435 These changes were in part based upon suggestions made by Peter
5436 'Luna' Runestig [peter@runestig.com].
9785d95b 5437
048addec
JD
5438 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token,
5439 g_b_init_get_token_information, g_b_init_lookup_account_sid,
6bdb309a 5440 g_b_init_get_sid_identifier_authority ): Add several static
048addec 5441 global variables.
9785d95b 5442
048addec
JD
5443 * w32.c (globals_of_w32): New function. Used to initialize those
5444 global variables that must always be initialized on startup even
5445 when the global variable initialized is non zero. Its primary
5446 purpose at this time is to set the global variables
5447 g_b_init_is_windows_9x, g_b_init_open_process_token,
5448 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
5449 g_b_init_get_sid_identifier_authority to 0 on startup.
5450 Called from main.
9785d95b 5451
048addec
JD
5452 * w32.c (is_windows_9x): Perform initialization only if
5453 g_b_init_is_windows_9x is equal to 0. On initialization set
5454 g_b_init_is_windows_9x equal to 1.
2308af15 5455
048addec
JD
5456 * w32.c (open_process_token): Perform initialization only if
5457 g_b_init_open_process_token is equal to 0. On initialization set
5458 g_b_init_open_process_token equal to 1.
2308af15 5459
048addec
JD
5460 * w32.c (get_token_information): Perform initialization only if
5461 g_b_init_get_token_information is equal to 0. On initialization
5462 set g_b_init_get_token_information equal to 1.
9785d95b 5463
048addec
JD
5464 * w32.c (lookup_account_sid): Perform initialization only if
5465 g_b_init_lookup_account_sid is equal to 0. On initialization
5466 set g_b_init_lookup_account_sid equal to 1.
9785d95b 5467
048addec
JD
5468 * w32.c (get_sid_identifier_authority): Perform initialization
5469 only if g_b_init_get_sid_identifier_authority is equal to 0.
5470 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
9785d95b 5471
048addec
JD
5472 * w32fns.c (globals_of_w32fns): New function. Used to initialize
5473 those global variables that must always be initialized on startup
5474 even when the global variable initialized is non zero.
5475 Its primary purpose at this time is to initialize the global variable
5476 track_mouse_event_fn.
9785d95b 5477
048addec
JD
5478 * w32fns.c (w32_wnd_proc): Remove initialization of
5479 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
9785d95b 5480
048addec 5481 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
9785d95b 5482
048addec
JD
5483 * w32menu.c (globals_of_w32menu): New function. Used to
5484 initialize those global variables that must always be initialized
5485 on startup even when the global variable initialized is non zero.
5486 Its primary purpose at this time is to initialize the global
5487 variables get_menu_item_info and set_menu_item_info.
9785d95b 5488
048addec
JD
5489 * w32menu.c (initialize_frame_menubar): Remove initialization of
5490 get_menu_item_info and set_menu_item_info.
9785d95b 5491
048addec 5492 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
9785d95b 5493
048addec
JD
5494 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
5495 Declare them.
9785d95b 5496
048addec
JD
5497 * emacs.c (main): Call globals_of_w32 prior to calling
5498 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
5499 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
5500 is defined.
9785d95b 5501
048addec
JD
5502 * w32term.c (x_update_window_begin): Fix Windows API error
5503 detected by BoundsChecker. Test to determine if
5504 w32_system_caret_hwnd is NULL prior to attempting to use
5505 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
2308af15 5506
048addec
JD
5507 * w32term.c (x_update_window_end): Fix Windows API error
5508 detected by BoundsChecker. Test to determine if
5509 w32_system_caret_hwnd is NULL prior to attempting to use
5510 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
b6da19ef 5511
048addec 55122002-12-17 Kenichi Handa <handa@m17n.org>
b6da19ef 5513
048addec
JD
5514 * coding.c (coding_system_require_warning): New variable.
5515 (syms_of_coding): DEFVAR it.
b6da19ef 5516
048addec 5517 * coding.h (coding_system_require_warning): Extern it.
b6da19ef 5518
048addec
JD
5519 * fileio.c (choose_write_coding_system): Even if
5520 Vcoding_system_for_write is non-nil, if
5521 coding_system_require_warning is nonzero, call
5522 Vselect_safe_coding_system_function.
bfcf6dbe 5523
048addec 55242002-12-17 Markus Rost <rost@math.ohio-state.edu>
bfcf6dbe 5525
048addec
JD
5526 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
5527 (lisp): Add font-core.
2c568af5 5528
048addec 55292002-12-13 Stefan Monnier <monnier@cs.yale.edu>
2c568af5 5530
048addec
JD
5531 * textprop.c (text_read_only): New arg `propval'.
5532 (get_char_property_and_overlay): Remove unused var `next_overlay'.
5533 (verify_interval_modification): Use text_read_only's new arg.
b8c6225c 5534
048addec 55352002-12-13 Kenichi Handa <handa@m17n.org>
b8c6225c 5536
048addec 5537 * coding.c (Funencodable_char_position): Set pend correctly.
706ddb8f 5538
048addec 55392002-12-12 Jason Rumney <jasonr@gnu.org>
706ddb8f 5540
048addec
JD
5541 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
5542 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
5543 Be more careful about when help_events are generated.
96720f09 5544
048addec 55452002-12-12 Steven Tamm <steventamm@mac.com>
96720f09 5546
048addec
JD
5547 * macterm.c (mac_check_for_quit_char): Correctly set the
5548 modifiers of the event to 0.
5549 * mac.c (sys_select): Duplicate rfds before calling select to
5550 ensure that rfds survive the while loop.
e5ae1c49 5551
048addec 55522002-12-11 Kim F. Storm <storm@cua.dk>
e5ae1c49 5553
048addec
JD
5554 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
5555 row_containing_pos returned NULL.
2eb46b2d 5556
048addec 55572002-12-10 Steven Tamm <steventamm@mac.com>
2eb46b2d 5558
6bdb309a 5559 * mac.c (sys_read): Fix sys_read to not call select if IO is
048addec 5560 non-blocking.
6bdb309a 5561 (sys_select): Fix sys_select to not use a timeout larger than
048addec 5562 the one given.
b11f1d8a 5563
048addec 55642002-12-10 Juanma Barranquero <lektu@terra.es>
b11f1d8a 5565
048addec 5566 * editfns.c (Fformat): Use alloca, not _alloca.
d8528226 5567
048addec 55682002-12-09 Richard M. Stallman <rms@gnu.org>
d8528226 5569
048addec
JD
5570 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
5571 as the last thing.
a4ac5b17 5572
048addec 55732002-12-09 Dave Love <fx@gnu.org>
a4ac5b17 5574
048addec 5575 * s/sol2-8.h: Removed. (Not necessary.)
ac42d7b9 5576
048addec 55772002-12-09 Matthew Swift <swift@alum.mit.edu>
ac42d7b9 5578
048addec
JD
5579 * editfns.c (Fformat): Handle precision in string conversion
5580 specifiers like libc functions do (ie, print at most that many
5581 characters).
85cce843 5582
048addec 55832002-12-08 Richard M. Stallman <rms@gnu.org>
85cce843 5584
048addec
JD
5585 * xdisp.c (row_containing_pos): Check more carefully
5586 whether charpos is really in the row before returning it.
0d4d26a7 5587
048addec 55882002-12-07 Steven Tamm <steventamm@mac.com>
0d4d26a7 5589
048addec 5590 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
b11f1d8a 5591
048addec
JD
5592 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
5593 each stack frame. This may change as it could be time consuming.
0d4d26a7 5594
048addec
JD
5595 * macterm.c (mac_check_for_quit_char, quit_char_comp)
5596 (init_quit_char_handler, mac_determine_quit_char_modifiers)
6bdb309a 5597 (mac_initialize): Add code to check for pressing of quit_char
048addec 5598 in the OS event queue.
b11f1d8a 5599
048addec
JD
5600 * mac.c (sys_select): Call mac_check_for_quit_char every second
5601 while blocking on select.
0d4d26a7 5602
048addec
JD
5603 * mac.c (sys_read): Use sys_select to test for input first
5604 before calling read, to allow C-g to break.
9252f7bc 5605
048addec 56062002-12-07 Richard M. Stallman <rms@gnu.org>
9252f7bc 5607
048addec 5608 * minibuf.c (Fcompleting_read): Doc fix.
9252f7bc 5609
048addec 5610 * lread.c (syms_of_lread) <load-history>: Doc fix.
9252f7bc 5611
048addec 5612 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
9252f7bc 5613
048addec
JD
5614 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
5615 autoload.
9252f7bc 5616
048addec 5617 * data.c (Fdefalias): Record in load-history redefining an autoload.
9252f7bc 5618
048addec 5619 * alloca.c: Undo ifdef change accidentally made on 12-04.
bfa261c0 5620
048addec 56212002-12-06 Francesco Potorti` <pot@gnu.org>
bfa261c0 5622
048addec 5623 * xfns.c (png_load): Avoid double gamma correction for PNG images.
c5992177 5624
048addec 56252002-12-04 Richard M. Stallman <rms@gnu.org>
c5992177 5626
048addec 5627 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 5628
048addec 5629 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 5630
048addec 5631 * alloca.c: Don't use #error.
02d588e2 5632
048addec 56332002-12-03 Dave Love <fx@gnu.org>
02d588e2 5634
048addec
JD
5635 * buffer.c (Qucs_set_table_for_input): New.
5636 (Fget_buffer_create): Use it.
5637 (Qset_buffer_major_mode_hook): Deleted.
5638 (Fset_buffer_major_mode): Revert previous change.
5639 (init_buffer_once): Intern ucs-set-table-for-input.
5640 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
5641 Add &Qucs_set_table_for_input.
451e2697 5642
048addec 56432002-12-03 Andreas Schwab <schwab@suse.de>
451e2697 5644
048addec
JD
5645 * callint.c (Fcall_interactively): Use next_event only if less
5646 than key_count.
72742a99 5647
048addec 56482002-12-02 Andrew Choi <akochoi@shaw.ca>
72742a99 5649
048addec
JD
5650 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
5651 names to 255 characters.
72742a99 5652
048addec
JD
5653 * macterm.c (XTread_socket): If all frames have been collapsed,
5654 expand the first one before handling drag-and-drop events.
72742a99 5655
048addec
JD
5656 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
5657 which is detected by autoconf.
40e6ff95 5658
048addec 56592002-12-01 Steven Tamm <steventamm@mac.com>
40e6ff95 5660
048addec
JD
5661 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
5662 offset in two hints table to allow prebinding to be redone and
5663 allow the executable to be stripped.
c02138c6 5664
048addec 56652002-11-29 Dave Love <fx@gnu.org>
c02138c6 5666
048addec
JD
5667 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
5668 already provided.
0e47bbf7 5669
048addec 56702002-11-29 Richard M. Stallman <rms@gnu.org>
0e47bbf7 5671
048addec
JD
5672 * xdisp.c (start_display): Check more intelligently for
5673 whether the line is continued.
5674 (move_it_vertically_backward): Clear it->continuation_lines_width.
44129dcb 5675
048addec 56762002-11-28 Dave Love <fx@gnu.org>
44129dcb 5677
048addec
JD
5678 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
5679 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
f707342d 5680
048addec 56812002-11-27 Steven Tamm <steventamm@mac.com>
f707342d 5682
048addec
JD
5683 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
5684 more descriptive error output from lread.c:Fload upon most require
5685 cycles during boostrapping.
1637fd2c 5686
048addec 56872002-11-27 Jason Rumney <jasonr@gnu.org>
1637fd2c 5688
048addec
JD
5689 * fileio.c (Finsert_file_contents): Give a more appropriate error
5690 for files bigger than 2Gb when off_t is 32 bit.
1637fd2c 5691
048addec
JD
5692 * dired.c (Ffile_attributes): Don't return negative file sizes for
5693 files bigger than 2Gb when off_t is 32 bit.
540c2788 5694
048addec 56952002-11-27 Dave Love <fx@gnu.org>
6b2fd6ea 5696
048addec 5697 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
6b2fd6ea 5698
048addec
JD
5699 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
5700 Test GETPGRP_VOID instead.
5701 [BSD_TERMIOS]: Remove definitions (never used).
6b2fd6ea 5702
048addec
JD
5703 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
5704 Don't define.
5705 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
540c2788 5706
048addec 5707 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
8cc03716 5708
048addec 57092002-11-25 Jason Rumney <jasonr@gnu.org>
8cc03716 5710
048addec
JD
5711 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
5712 supported.
4042a81a 5713
048addec 57142002-11-25 Dave Love <fx@gnu.org>
4042a81a 5715
048addec 5716 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
4042a81a 5717
048addec 5718 * Makefile.in (TEMACS_LDFLAGS): Update last change.
be4ee72f 5719
048addec 57202002-11-25 Andreas Schwab <schwab@suse.de>
be4ee72f 5721
048addec 5722 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
82122254 5723
048addec 57242002-11-24 Steven Tamm <steventamm@mac.com>
82122254 5725
048addec
JD
5726 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
5727 determine the size of pointers alloced in unexed space instead
5728 of using possibly invalid emacs_zone pointers. This fixes the
5729 binary incompatibility problems caused by updates to libSystem.B.
c1ee53bc 5730
048addec 57312002-11-24 Richard M. Stallman <rms@gnu.org>
c1ee53bc 5732
048addec 5733 * search.c (Fstring_match): Doc fix.
c1ee53bc 5734
048addec
JD
5735 * callint.c (Fcall_interactively): If a command fails because
5736 `*' detects a read-only buffer, but RECORD_FLAG is set,
5737 record it anyway if the args don't actually do tty input.
5598c32e 5738
048addec 57392002-11-22 Dave Love <fx@gnu.org>
5598c32e 5740
048addec 5741 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
5598c32e 5742
048addec
JD
5743 * keyboard.c (interrupt_signal): Provide forward declaration.
5744 (kbd_buffer_store_event): Don't declare interrupt_signal.
5598c32e 5745
048addec 5746 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
97b14e22 5747
048addec 57482002-11-21 Richard M. Stallman <rms@gnu.org>
97b14e22 5749
048addec
JD
5750 * eval.c (interactive_p): Skip any number of bytecode
5751 and special form frames, in any order.
516eea8e 5752
048addec 57532002-11-20 Jason Rumney <jasonr@gnu.org>
516eea8e 5754
048addec
JD
5755 * w32fns.c (convert_mono_to_color_image): New function.
5756 (xbm_load, xbm_load_image): Use it when foreground or background
5757 is explicitly set.
04dbfa08 5758
048addec 57592002-11-19 Dave Love <fx@gnu.org>
04dbfa08 5760
048addec 5761 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
b4aebae3 5762
048addec 57632002-11-18 Jason Rumney <jasonr@gnu.org>
b4aebae3 5764
048addec
JD
5765 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
5766 (XPutPixel): Swap blue and red.
5767 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
5768 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
5769 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
5770 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
1998560a 5771
048addec 57722002-11-18 Dave Love <fx@gnu.org>
d824beee 5773
048addec 5774 * m/orion105.h (HAVE_ALLOCA): Don't define.
d824beee 5775
048addec 5776 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
d824beee 5777
048addec 5778 * m/intel386.h: Don't include alloca.h or define alloca.
d824beee 5779
048addec
JD
5780 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
5781 malloc, realloc, calloc.
d824beee 5782
048addec
JD
5783 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
5784 (bcmp): Don't define.
d824beee 5785
048addec 5786 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
d824beee 5787
048addec 5788 * m/amdahl.h: Don't define LIB_STANDARD.
d824beee 5789
048addec 5790 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
d824beee 5791
048addec 5792 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
d824beee 5793
048addec
JD
5794 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
5795 Don't include alloca.h.
d824beee 5796
048addec 5797 * s/aix3-2.h (HAVE_FSYNC): Don't define.
1998560a 5798
048addec 5799 * regex.c (_GNU_SOURCE): Don't define.
1998560a 5800
048addec 5801 * process.c (_GNU_SOURCE): Don't define.
1998560a 5802
048addec 5803 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
8704a6ab 5804
048addec 58052002-11-18 Markus Rost <rost@math.ohio-state.edu>
8704a6ab 5806
048addec 5807 * s/sol2-8.h: Include sol2-6.h.
6ae2cd57 5808
048addec 58092002-11-18 Miles Bader <miles@gnu.org>
6ae2cd57 5810
048addec
JD
5811 * dispextern.h (struct face): Add `overstrike' field.
5812 * xterm.c (x_draw_glyph_string_foreground)
5813 (x_draw_composite_glyph_string_foreground): Implement overstriking.
5814 * xfaces.c (load_face_font): Set `face->overstrike' based on
5815 result from choose_face_font.
5816 (best_matching_font, choose_face_font): Add `needs_overstrike'
5817 argument, and use it to return whether overstriking is desirable
5818 for this face/font combo.
5819 (set_font_frame_param: Pass new argument to choose_face_font.
6ae2cd57 5820
048addec 58212002-11-17 Ben Key <BKey1@tampabay.rr.com>
3582b6a3 5822
048addec
JD
5823 This change is my fix for the following entry in etc/PROBLEMS:
5824 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
5825 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
f60ae425 5826
048addec
JD
5827 * w32.c: Added wrapper functions around the win32 API functions
5828 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
5829 GetSidIdentifierAuthority. These wrapper functions serve two
5830 purposes:
5831 1. They ensure that the wrapped function can never be called
5832 when Emacs is running on an operating system on which they are
5833 not supported (Microsoft Windows 95 / 98 / ME).
5834 2. They call the wrapped functions via function pointers rather
5835 than calling them directly. This avoids taking advantage of the
5836 undocumented fact that although these functions are not supported
5837 in the 9x branch of Microsoft Windows, the functions do exist in
5838 the version of advapi32.dll that is found in the 9x branch of
5839 Microsoft Windows.
f60ae425 5840
6bdb309a 5841 * w32.c (init_user_info): Replace the calls to the win32 API
048addec
JD
5842 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
5843 and GetSidIdentifierAuthority with calls to the newly added
5844 wrapper functions.
f60ae425 5845
048addec
JD
5846 * w32.h: Added extern declarations for the following functions:
5847 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
5848 syms_of_w32menu, and void syms_of_fontset.
f60ae425 5849
6bdb309a 5850 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
048addec
JD
5851 function pointer track_mouse_event_fn in the handler for the
5852 WM_SETFOCUS message.
3582b6a3 5853
6bdb309a 5854 * w32menu.c (initialize_frame_menubar): Add code to
048addec
JD
5855 reinitialize the function pointers set_menu_item_info and
5856 get_menu_item_info.
f60ae425 5857
048addec 58582002-11-17 Ben Key <BKey1@tampabay.rr.com>
f60ae425 5859
048addec
JD
5860 * sound.c: Added a partial implementation of play-sound-internal
5861 for Microsoft Windows. Added various #ifdef / #else / #endif
5862 code blocks to separate the code that will compile under
5863 Microsoft Windows from the code that is specific to Gnu/Linux.
5864 Moved several blocks of code around to make this separation of code
5865 into Windows compatible and Gnu/Linux compatible code blocks easier.
f60ae425 5866
048addec 5867 * makefile.w32-in: Include sound.c and link with WinMM.lib.
a0f0878d 5868
048addec
JD
5869 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
5870 added support for play-sound-internal under Windows would be
5871 included in the build of Emacs.
517f42a0 5872
048addec 58732002-11-16 Jason Rumney <jasonr@gnu.org>
517f42a0 5874
048addec 5875 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
517f42a0 5876
048addec 5877 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
a0f0878d 5878
048addec 58792002-11-15 Stefan Monnier <monnier@cs.yale.edu>
a0f0878d 5880
048addec
JD
5881 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
5882 (adjust_point_for_property): Move out of display and invisible even if
5883 we were already inside before (in case a property was added while
5884 we weren't looking). Be more careful when handling invisible props.
5885 Skip invisible text as if it really wasn't there at all.
aab83f91 5886
048addec 58872002-11-15 Jason Rumney <jasonr@gnu.org>
aab83f91 5888
048addec
JD
5889 * w32term.c (x_draw_image_foreground)
5890 (w32_draw_image_foreground_1): Use standard copy and invert
5891 operations to draw images.
aab83f91 5892
048addec
JD
5893 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
5894 depth of 1.
5895 (xbm_read_bitmap_data): Invert bits as xbm is read in.
5896 (XPutPixel): Don't invert bits here.
a4478a76 5897
048addec 58982002-11-15 Jason Rumney <jasonr@gnu.org>
a4478a76 5899
048addec
JD
5900 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
5901 (w32_draw_image_foreground_1): Handle image masks.
5902 (x_draw_image_glyph_string): Don't BitBlt transparently.
a4478a76 5903
048addec
JD
5904 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
5905 (x_from_xcolors): Adjust RGB values for W32.
5906 (image_background, image_background_transparent)
5907 (postprocess_image, x_to_xcolors, x_disable_image)
5908 (x_build_heuristic_mask): Adapt for W32 and enable.
5909 (x_create_x_image_and_pixmap): Mark images with palettes as such.
5910 (xbm_load): Remove unused variable.
03670a65 5911
048addec 59122002-11-14 Richard M. Stallman <rms@gnu.org>
03670a65 5913
048addec 5914 * buffer.c (syms_of_buffer): Doc fix.
59daa29a 5915
048addec 59162002-11-14 Dave Love <fx@gnu.org>
59daa29a 5917
048addec 5918 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
59daa29a 5919
048addec
JD
5920 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
5921 * xmenu.c (unuse_menu_items, digest_single_submenu):
5922 * xfns.c (x_put_x_image):
5923 * xdisp.c (message2_nolog, set_message):
5924 * undo.c (record_point):
5925 * terminfo.c (tparam):
5926 * syntax.c (scan_sexps_forward):
5927 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
5928 * composite.c (update_compositions):
5929 * cm.c (calccost, cmgoto):
5930 * charset.c (c_string_width): Declare all args (per C99).
59daa29a 5931
048addec 5932 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
59daa29a 5933
048addec
JD
5934 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
5935 Don't declare.
59daa29a 5936
048addec 5937 * emacs.c (main) [!VMS]: Avoid third arg.
59daa29a 5938
048addec
JD
5939 * fns.c (Fcopy_sequence): Doc fix.
5940 (Fmap_char_table): Cast `call2'.
3947677c 5941
048addec
JD
59422002-11-14 Francesco Potorti` <pot@gnu.org>
5943
5944 * s/sol2-8.h: New file.
5945
59462002-11-14 Kim F. Storm <storm@cua.dk>
5947
5948 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
5949 dependency on `risky-local-variable' and the :propertize form.
5950
59512002-11-12 Stefan Monnier <monnier@cs.yale.edu>
5952
5953 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
5954
5955 * syntax.c (scan_sexps_forward): Undo last patch.
5956 Use a more obvious fix: check eob before updating the syntax table.
5957
59582002-11-09 Stefan Monnier <monnier@cs.yale.edu>
5959
5960 * syntax.c (scan_sexps_forward): Update syntax table before reading
5961 a char rather than after so we don't update the table past eob.
5962
59632002-11-09 Dave Love <fx@gnu.org>
5964
5965 * buffer.c (Fset_buffer_major_mode): Fix last change.
5966
5967 * regex.c (regexec): Fix pmatch declaration.
5968
5969 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
5970
5971 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
5972 to self-inserting characters.
5973 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
5974
5975 * coding.c (Vtranslation_table_for_input): New.
5976 (syms_of_coding): DEFVAR it.
5977
59782002-11-08 Juanma Barranquero <lektu@terra.es>
5979
5980 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
5981 window.
5982
59832002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
5984
6bdb309a 5985 * process.c (Fformat_network_address): Remove unused locals p,
048addec
JD
5986 cp, and i.
5987
59882002-11-06 Dave Love <fx@gnu.org>
5989
5990 * buffer.c (Qset_buffer_major_mode_hook): New.
5991 (Fset_buffer_major_mode): Use it.
5992
59932002-11-06 Richard M. Stallman <rms@gnu.org>
5994
5995 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
5996 and stop_polling.
5997
5998 * process.c (wait_reading_process_input):
5999 Test POLLING_PROBLEM_IN_SELECT, not hpux.
6000 Avoid initialization for auto Lisp_Object var.
6001
6002 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
6003
6004 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
6005
60062002-11-05 Richard M. Stallman <rms@gnu.org>
6007
6008 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
6009
6010 * callint.c (Fcall_interactively): New local filter_specs.
6011 (Fcall_interactively): Check for progn as well as let.
6012 Add a gcpro.
6013 (Qprogn): New variable.
6014 (syms_of_callint): Staticpro and init Qprogn.
6015
60162002-11-04 John Paul Wallington <jpw@shootybangbang.com>
6017
6018 * lread.c (Feval_buffer): Doc fix.
6019
60202002-11-04 Dave Love <fx@gnu.org>
6021
6022 * keyboard.c (read_char): Always translate iff
6023 Vkeyboard_translate_table is a char table and c is valid.
6024
6025 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
6026 and fix C types.
6027
60282002-11-03 Stefan Monnier <monnier@cs.yale.edu>
6029
6030 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
6031
6032 * editfns.c (get_pos_property): Don't hardcode Qfield.
6033
6034 * keyboard.c (adjust_point_for_property): Handle `display' prop on
6035 overlays. Also handle `invisible' prop.
6036
60372002-11-02 Stefan Monnier <monnier@cs.yale.edu>
6038
6039 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
6040 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
6041
60422002-11-01 Andreas Schwab <schwab@suse.de>
6043
6044 * editfns.c (Fmessage): Revert last change to properly handle %%.
6045
60462002-11-01 Stefan Monnier <monnier@cs.yale.edu>
6047
6048 * xmenu.c (unuse_menu_items): New fun.
6049 (menu_items_inuse): New var.
6050 (syms_of_xmenu): Initialize it.
6051 (init_menu_items): Use it to detect re-entrance.
6052 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
6053 (Fx_popup_menu): Remove spurious XSETFRAME.
6054
6055 * editfns.c (find_field): Make an exception for nil fields.
6056
60572002-11-01 Dave Love <fx@gnu.org>
6058
6059 * m/gec63.h: Deleted.
6060
60612002-10-31 Dave Love <fx@gnu.org>
6062
6063 * xterm.c (XTread_socket): Fix last change.
6064 (xaw_scroll_callback): Cast call_data to long to avoid warning.
6065
60662002-10-31 Stefan Monnier <monnier@cs.yale.edu>
6067
6068 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
6069
60702002-10-30 Stefan Monnier <monnier@cs.yale.edu>
6071
6072 * editfns.c (overlays_around, get_pos_property): New funs.
6073 (find_field): Use them.
6074 Also be careful not to modify POS before its last use.
6075 (Fmessage): Don't Fformat if there's nothing to format.
6076
60772002-10-30 Dave Love <fx@gnu.org>
6078
6079 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
6080 [HAVE_PTY_H]; Include pty.h.
6081
6082 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
6083
6084 * xterm.c (Qeql): Declare.
6085 (Vx_keysym_table): New.
6086 (syms_of_xterm): Initialize it.
6087 (XTread_socket): Use it. Deal with ASCII keysyms.
6088 (XSetIMValues) [HAVE_X11R6]: Prototype.
6089
6090 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
6091 (lispy_kana_keys): Comment out.
6092 (make_lispy_event) [XK_kana_A]: Comment out.
6093 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
6094 Fix sprintf call.
6095
6096 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
6097 regexp.h change).
6098 (TERMINFO, LIBS_TERMCAP): Define.
6099
6100 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
6101 (bcmp): Define conditional on HAVE_BCMP.
6102 (NO_SIOCTL_H): Don't define.
6103 (TIOCSIGSEND): Don't make conditional on IRIX6.
6104
6105 * s/sol2-5.h: Don't include strings.h.
6106 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
6107
6108 * s/irix6-0.h (IRIX6): Don't define.
6109 (bcopy, bcmp, bzero): Don't undef.
6110
6111 * s/irix6-5.h: Don't include strings.h.
6112 (IRIX6): Don't define.
6113 (bcopy, bcmp, bzero): Don't undef.
6114
6115 * syntax.c (Fforward_comment): Doc fix.
6116
61172002-10-29 Kim F. Storm <storm@cua.dk>
6118
6119 * process.c (Fsignal_process): Allow PROCESS to be specified by
6120 name in addition to pid (as integer or string).
6121
61222002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
6123
6124 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
6125 environments.
6126
61272002-10-27 Kim F. Storm <storm@cua.dk>
6128
6129 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
6130
6131 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
6132
6133 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
6134
6135 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
6136
61372002-10-26 Richard M. Stallman <rms@gnu.org>
6138
6139 * editfns.c (Fformat): Detect invalid format letters for floats.
6140
61412002-10-25 Kenichi Handa <handa@m17n.org>
6142
6143 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
6144 (x_set_title): Likewise.
6145
61462002-10-25 Juanma Barranquero <lektu@terra.es>
6147
6148 * macgui.h:
6149 * w32gui.h: Remove definition of XColor.
6150
6151 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
6152
61532002-10-24 Kim F. Storm <storm@cua.dk>
6154
6155 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
6156 Callers changed (supply dummy arg).
6157
6158 * lisp.h (get_window_cursor_type): Update prototype.
6159
6160 * w32term.c (x_display_and_set_cursor): Get active_cursor from
6161 get_window_cursor_type to track system caret.
6162
61632002-10-24 Kim F. Storm <storm@cua.dk>
6164
6165 * process.c (Fformat_network_address): New function.
6166 (syms_of_process): Defsubr it.
6167 (list_processes_1): Use it to format :local/:remote address if
6168 service/host is not set; before emacs would crash in that case.
6169 (Fmake_network_process): Don't use Ffind_operation_coding_system
6170 to setup coding system if host or service is not set.
6171
61722002-10-23 Juanma Barranquero <lektu@terra.es>
6173
6174 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
6175
6176 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
6177 COLORREF.
6178
6179 * macgui.h:
6180 * w32gui.h: Add definition of XColor.
6181
6182 * macfns.c:
6183 * w32fns.c:
6184 * xfaces.c: Remove definition of XColor.
6185
61862002-10-22 Stefan Monnier <monnier@cs.yale.edu>
6187
6188 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
6189
6190 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
6191 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
6192 window if it is dedicated.
6193 (Fshrink_window): Add preserve_before as was done for enlarge_window.
6194 (Vspecial_display_function): Update docstring.
6195
6196 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
6197 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
6198 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
6199
62002002-10-21 Stefan Monnier <monnier@cs.yale.edu>
6201
6202 * casefiddle.c (casify_region): Don't treat a prefix char as part
6203 of a word when at the beginning.
6204
62052002-10-17 Juanma Barranquero <lektu@terra.es>
6206
6207 * lread.c (syms_of_lread): Fix typos.
6208
62092002-10-17 Dave Love <fx@gnu.org>
6210
6211 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
6212
62132002-10-16 Richard M. Stallman <rms@gnu.org>
6214
6215 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
6216
62172002-10-14 Juanma Barranquero <lektu@terra.es>
6218
6219 * w16select.c (syms_of_win16select): Fix docstring for
6220 `selection-coding-system'.
6221
6222 * w32select.c (syms_of_w32select): Likewise.
6223
62242002-10-14 Stefan Monnier <monnier@cs.yale.edu>
6225
6226 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
6227 a backslash-quoted char.
6228 (scan_lists, scan_sexps_forward): Pacify the compiler.
6229
62302002-10-13 Richard M. Stallman <rms@gnu.org>
6231
6232 * window.c (window_scroll): Set immediate_quit.
6233
6234 * print.c (print): When backquote form is the car of a list,
6235 output in old style. Use old_backquote_output to output all
6236 comma forms inside it in old style too.
6237
6238 * buffer.h (struct buffer): Move `undo_list' down below `name'.
6239
62402002-10-11 Markus Rost <rost@math.ohio-state.edu>
6241
6242 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
6243 batch mode).
6244
6245 * lread.c (Fload): Doc fix (load-suffixes).
6246
62472002-10-10 Steven Tamm <steventamm@mac.com>
6248
6249 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
6250 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
6251 Also switch the default to Qnil from Qt.
6252
62532002-10-08 Kenichi Handa <handa@m17n.org>
6254
6255 * coding.c (code_convert_region): When we need more GAP for
6256 conversion, pay attention to the case that coding->produced is not
6257 greater than coding->consumed.
6258
62592002-10-07 Richard M. Stallman <rms@gnu.org>
6260
6261 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
6262
62632002-10-06 Andrew Choi <akochoi@shaw.ca>
6264
6265 * macmenu.c (mac_menu_show): Add j to count menu items; match
6266 menu_item_selection to it to find selected item.
6267
62682002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6269
6270 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
6271 cases. The correct fix is to pass ReparentNotify to Xt.
6272 The shell widget interprets ConfigureNotify differently depending
6273 on if it has been reparented or not.
6274
62752002-10-05 Markus Rost <rost@math.ohio-state.edu>
6276
6277 * editfns.c (Fformat_time_string): Doc fix.
6278
62792002-10-05 John Paul Wallington <jpw@shootybangbang.com>
6280
6281 * fns.c (Flength): Doc fix.
6282
62832002-10-04 Stefan Monnier <monnier@cs.yale.edu>
6284
6285 * keyboard.c (keyremap): New struct.
6286 (read_key_sequence): Use it: globally replace keytran_foo with
6287 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
6288 keytran_next and fkey_next to just `next'.
6289
62902002-10-04 Steven Tamm <steventamm@mac.com>
6291
6292 * macterm.c (keycode_to_xkeysym_table): Change return to be
6293 treated like an X keysym.
6294
62952002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6296
6297 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
6298 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
6299 This is to also handle x/y changes that occur because of a resize.
6300
63012002-10-02 John Paul Wallington <jpw@shootybangbang.com>
6302
6303 * frame.c (Vdelete_frame_functions): New variable.
6304 (syms_of_frame): Initialize and defvar it.
6305 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
6306 it when frame's `tooltip' parameter is non-nil.
6307
6308 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
6309
6310 * w32fns.c (x_create_tip_frame): Likewise.
6311
6312 * macfns.c (x_create_tip_frame): Likewise.
6313
63142002-09-30 Kenichi Handa <handa@m17n.org>
6315
6316 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
6317 -1 before calling ccl_driver.
6318
6319 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
6320 Only when it is non-nil, handle composition sequence.
6321 (setup_coding_system) <0>: Don't force composition handling.
6322
6323 * Makefile.in (lisp, shortlisp): Add utf-16.elc
6324
63252002-09-29 Richard M. Stallman <rms@gnu.org>
6326
6327 * search.c (Freplace_match): Adjust match data for the substitution
6328 just made in the buffer.
6329
6330 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
6331 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
6332
63332002-09-27 Richard M. Stallman <rms@gnu.org>
6334
6335 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
6336 (read_char): Use them. Do all exits thru the end of the function.
6337
63382002-09-27 Kenichi Handa <handa@etl.go.jp>
6339
6340 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
6341 is nil.
6342
63432002-09-26 Richard M. Stallman <rms@gnu.org>
6344
6345 * regex.h (__restrict_arr): Don't define if already defined.
6346
6347 * coding.c (run_pre_post_conversion_on_str):
6348 Save and restore Vdeactivate_mark.
6349
63502002-09-26 John Paul Wallington <jpw@shootybangbang.com>
6351
6352 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
6353
63542002-09-26 Kenichi Handa <handa@etl.go.jp>
6355
6356 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
6357 nonzero, try face's family at first. Otherwise try FAMILY at first.
6358 (choose_face_font): If C is a single byte char or latin-1, call
6359 try_font_list with PREFER_FACE_FAMILY 1.
6360
63612002-09-21 Richard M. Stallman <rms@gnu.org>
6362
6363 * window.c (select_window_1): Don't select frame.
6364 Set frame's selected window only when frame itself is selected.
6365 (Fselect_window): Doc fix.
6366
63672002-09-18 Kim F. Storm <storm@cua.dk>
6368
6369 * process.c (make-network-process): Doc fix (there is no
6370 network-server-log-function hook).
6371
63722002-09-18 Richard M. Stallman <rms@gnu.org>
6373
6374 * print.c (print): Clear out the unused parts of Vprint_number_table.
6375 (syms_of_print): Doc fix for `print-number-table'.
6376
6377 * unexelf.c (unexec): Undo previous change.
6378
63792002-09-17 Andreas Schwab <schwab@suse.de>
6380
6381 * m/alpha.h [LINUX]: Don't define DATA_START.
6382
63832002-09-16 Dave Love <fx@gnu.org>
6384
6385 * unexelf.c (unexec): Deal with .got, reinstating change from
6386 25-08-1999.
6387
63882002-09-13 Richard M. Stallman <rms@gnu.org>
6389
6390 * s/sol2-6.h (UNEXEC): Comment out definition.
6391
6392 * unexsol.c (unexec): Don't downcase first letter of error msg.
6393
6394 * xfaces.c (Fcolor_supported_p): Just one arg is required.
6395
63962002-09-12 Markus Rost <rost@math.ohio-state.edu>
6397
6398 * unexsol.c: Include buffer.h, charset.h, coding.h.
6399
64002002-09-11 Richard M. Stallman <rms@gnu.org>
6401
6402 * unexsol.c: Don't use report_file_error; do it by hand
6403 using dlerror.
6404
6405 * process.c (wait_reading_process_input, both versions):
6406 Before calling turn_on_atimers, call stop_polling.
6407
6408 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
6409
6410 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
6411 we go to too_near_end, call clear_glyph_matrix.
6412 (redisplay_window): After make_cursor_line_fully_visible,
6413 call clear_glyph_matrix and bypass `goto done'.
6414
6415 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
6416 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
6417
64182002-09-10 Richard M. Stallman <rms@gnu.org>
6419
6420 * fileio.c (Fdo_auto_save): Catch error making directory.
6421 Only call push_message if we need to.
6422 At the same time, make an unwind-protect to pop it.
6423 Rename local message_p to old_message_p.
6424 (do_auto_save_make_dir, do_auto_save_eh): New functions.
6425 (do_auto_save_unwind): Don't call pop_message.
6426
6427 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
6428
6429 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
6430
6431 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
6432
6433 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
6434
64352002-09-10 Stefan Monnier <monnier@cs.yale.edu>
6436
6437 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
6438 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
6439 (re_match_2_internal): Be more careful with infinite loops.
6440
64412002-09-10 Kim F. Storm <storm@cua.dk>
6442
6443 * macros.c (end_kbd_macro): New function.
6444 (Fend_kbd_macro): Use it.
6445
6446 * macros.h (end_kbd_macro): Declare extern.
6447
6448 * keyboard.c (Fdiscard_input): If defining keyboard macro,
6449 end and save it instead of discarding it.
6450
64512002-09-09 Markus Rost <rost@math.ohio-state.edu>
6452
6453 * s/sol2-6.h: Fix typo. Add comment.
6454
64552002-09-09 Richard M. Stallman <rms@gnu.org>
6456
6457 * regex.c (regnum_t): Use signed int, not unsigned int.
6458
6459 * s/sol2-6.h: New file.
6460
6461 * s/sol2-5.h (UNEXEC): Definition deleted.
6462
64632002-09-08 Kim F. Storm <storm@cua.dk>
6464
6465 * macros.c (executing_macro_index): Change type to EMACS_INT.
6466 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
6467
6468 * macros.h (executing_macro_index): Change type to EMACS_INT.
6469
64702002-09-06 Richard M. Stallman <rms@gnu.org>
6471
6472 * casetab.c (set_case_table): Make canon table point to eqv table.
6473
64742002-09-06 Juanma Barranquero <lektu@terra.es>
6475
6476 * coding.c (syms_of_coding): Fix spacing.
6477
6478 * composite.c (Fcompose_region_internal)
6479 (Fcompose_string_internal): Likewise.
6480
6481 * data.c (Flsh): Likewise.
6482
6483 * fontset.c (Fset_fontset_font): Likewise.
6484
6485 * macfns.c (Fx_server_max_request_size): Likewise.
6486
6487 * w16select.c (syms_of_win16select): Likewise.
6488
6489 * w32select.c (syms_of_w32select): Likewise.
6490
6491 * xselect.c (syms_of_xselect): Likewise.
6492
64932002-09-05 Richard M. Stallman <rms@gnu.org>
6494
6495 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
6496 call EXTEND_RANGE_TABLE and return a proper value.
6497 (set_image_of_range): Don't call set_image_of_range_1
6498 if no TRANSLATE or if range includes all of Latin-1.
6499 Only call it for the Latin-1 part of the range.
6500 For other cases, make two separate ranges,
6501 one for the original specified characters and one for
6502 their case-conversions.
6503
65042002-09-04 Richard M. Stallman <rms@gnu.org>
6505
6506 * s/sol2-5.h (UNEXEC): Use unexsol.o.
6507
6508 * window.c (displayed_window_lines): Correct for one-off bug
6509 in HEIGHT on non-window displays.
6510
6511 * regex.c (set_image_of_range_1): New function.
6512 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
6513 Return a value to indicate running out of memory.
6514 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
6515 (extend_range_table_work_area): New subroutine.
6516 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
6517 Different calling conventions, and used from set_image_of_range{,_1}.
6518 (IMMEDIATE_QUIT_CHECK): Definitions moved.
6519
65202002-09-04 Juanma Barranquero <lektu@terra.es>
6521
6522 * makefile.w32-in: All dependencies updated.
6523
65242002-09-01 Richard M. Stallman <rms@gnu.org>
6525
6526 * unexsol.c: New file.
6527
6528 * xfns.c (Qbox): Declare external, don't define.
6529
6530 * xdisp.c (redisplay_window) <force-start case>:
6531 If point is on semi-visible last line, reposition
6532 it at previous line.
6533
6534 * alloc.c (display_malloc_warning): Use display-warning.
6535 (malloc_warning_1): Function deleted.
6536
6537 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
6538
6539 * lread.c (read1): Handle #! by skipping the line.
6540
65412002-08-31 Richard M. Stallman <rms@gnu.org>
6542
6543 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
6544 Don't include LDFLAGS.
6545 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
6546
65472002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
6548
6549 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
6550 member of x_display_info unless we compile for some window system.
6551
65522002-08-31 Kim F. Storm <storm@cua.dk>
6553
6554 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
6555 (get_window_cursor_type): Don't use them.
6556 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
6557
65582002-08-30 Kenichi Handa <handa@etl.go.jp>
6559
6560 * xdisp.c (get_next_display_element): Fix previous change.
6561
65622002-08-30 Andrew Choi <akochoi@shaw.ca>
6563
6564 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
6565 (expose_window): Use it to fix the display of overlapping
6566 rows (merge code from xterm.c).
6567
6568 * macfns.c (Qbox): Add extern declaration.
6569
65702002-08-30 Juanma Barranquero <lektu@terra.es>
6571
6572 * w32fns.c (Qbox): Make extern.
6573 (syms_of_w32fns): Remove initialization of Qbox.
6574
65752002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
6576
6577 * xfns.c (Fx_open_connection): Fix error message.
6578
65792002-08-30 Kim F. Storm <storm@cua.dk>
6580
6581 The following changes consolidates the handling of the cursor
6582 type in xdisp.c, moving duplicate code and functionality from
6583 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
6584
6585 * frame.h (enum text_cursor_kinds): Consolidated here.
6586 Added DEFAULT_CURSOR value.
6587 (struct frame) <desired_cursor, cursor_width>
6588 <blink_off_cursor, blink_off_cursor_width>: New fields.
6589 Consolidated from output_x, output_w32 and output_mac structs.
6590 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
6591 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
6592
6593 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
6594 Variables consolidated here.
6595 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
6596 (Vcursor_in_non_selected_windows): Renamed from
6597 cursor_in_non_selected_windows and changed to Lisp_Object.
6598 (syms_of_xdisp): Define and staticpro new and moved variables.
6599 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
6600 consolidated here. Recognize Qhollow setting.
6601 (set_frame_cursor_types): New function to set frame cursor types
6602 based on the frame parameters.
6603 (get_window_cursor_type): New function to calculate new cursor
6604 type and width for the specified window. Based on duplicated
6605 code consolidated here.
6606 Enhancements: cursor-in-non-selected-windows may be a cursor type,
6607 check buffer-local alternate-cursor-type and blink-cursor-alist
6608 before using built-in blink off methods.
6609
6610 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
6611
6612 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
6613 (get_specified_cursor_type, get_window_cursor_type)
6614 (set_frame_cursor_types): Added prototypes.
6615
6616 * macfns.c (x_specified_cursor_type): Removed.
6617 (x_set_cursor_type): Use set_frame_cursor_types.
6618 (Qbar, Qbox): Removed.
6619 (syms_of_macfns): Don't intern or staticpro them.
6620
6621 * macterm.c (x_specified_cursor_type): Remove prototype.
6622 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
6623 (x_display_and_set_cursor): Use get_window_cursor_type.
6624 Remove unused local variables cursor_non_selected, active_cursor.
6625 Redraw cursor if hbar cursor width changes.
6626 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
6627
6628 * macterm.h (enum text_cursor_kinds): Removed.
6629 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
6630 <blink_off_cursor, blink_off_cursor_width>: Members removed.
6631 (FRAME_DESIRED_CURSOR): Macro removed.
6632
6633 * w32fns.c (Vblink_cursor_alist): Removed.
6634 (Qbar, Qhbar, Qbox, Qhollow): Removed.
6635 (syms_of_w32fns): Don't intern, staticpro, or define them.
6636 (x_specified_cursor_type): Removed.
6637 (x_set_cursor_type): Use set_frame_cursor_types.
6638
6639 * w32term.c (x_specified_cursor_type): Remove prototype.
6640 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
6641 (x_display_and_set_cursor): Use get_window_cursor_type.
6642 Remove unused local variables cursor_off_state.
6643 Redraw cursor if hbar cursor width changes.
6644 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
6645
6646 * w32term.h (enum text_cursor_kinds): Removed.
6647 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
6648 <blink_off_cursor, blink_off_cursor_width>: Members removed.
6649 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
6650 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
6651 (struct w32_display_info) <x_highlight_frame>: Renamed member from
6652 w32_highlight_frame.
6653
6654 * xfns.c (Vblink_cursor_alist): Removed.
6655 (Qbar, Qhbar, Qbox, Qhollow): Removed.
6656 (syms_of_xfns): Don't intern, staticpro, or define them.
6657 (x_specified_cursor_type): Removed.
6658 (x_set_cursor_type): Use set_frame_cursor_types.
6659
6660 * xterm.c (x_specified_cursor_type): Remove prototype.
6661 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
6662 (x_display_and_set_cursor): Use get_window_cursor_type.
6663 Remove unused local variables cursor_off_state.
6664 Redraw cursor if hbar cursor width changes.
6665
6666 * xterm.h (enum text_cursor_kinds): Removed.
6667 (struct output_x) <current_cursor, desired_cursor, cursor_width>
6668 <blink_off_cursor, blink_off_cursor_width>: Members removed.
6669 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
6670 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
6671 (x_specified_cursor_type): Remove prototype.
6672
66732002-08-28 Richard M. Stallman <rms@gnu.org>
6674
6675 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
6676 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
6677 (Vblink_cursor_alist): New variable.
6678 (syms_of_w32fns): Initialize and defvar it.
6679 (x_specified_cursor_type): Recognize Qbox for filled box.
6680 Exceptions are hollow boxes.
6681 (Qbox, Qhollow): New variables.
6682 (syms_of_w32fns): Initialize and staticpro them.
6683
6684 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
6685 New macros.
6686 (struct w32_output): New fields blink_off_cursor,
6687 blink_off_cursor_width.
6688 (FRAME_CURSOR_WIDTH): New macro.
6689
6690 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
6691 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
6692
6693 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
6694 for bar cursor.
6695
6696 * w32term.c (expose_overlaps): New function.
6697 (expose_window): Use it to fix the display of overlapping rows.
6698
66992002-08-28 Simon Josefsson <jas@extundo.com>
6700
6701 * xfns.c (Fx_open_connection): Improve help when X connection
6702 fails, xhost is insecure and xauth is better.
6703
67042002-08-28 Juanma Barranquero <lektu@terra.es>
6705
6706 * makefile.w32-in: Add missing dependencies on w32term.h and
6707 composite.h.
6708
6709 * emacs.c (USAGE1): Add missing newline.
6710
67112002-08-27 Andrew Choi <akochoi@shaw.ca>
6712
6713 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
6714
67152002-08-27 Richard M. Stallman <rms@gnu.org>
6716
6717 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
6718 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
6719 (Vblink_cursor_alist): New variable.
6720 (syms_of_xfns): Initialize and defvar it.
6721 (x_specified_cursor_type): Recognize Qbox for filled box.
6722 Exceptions are hollow boxes.
6723 (Qbox, Qhollow): New variables.
6724 (syms_of_xfns): Initialize and staticpro them.
6725
6726 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
6727 New macros.
6728 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
6729
6730 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
6731 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
6732
6733 * emacs.c (main): Handle --script.
6734 (USAGE1): Mention --script.
6735 (standard_args): Define sort order for --script.
6736
67372002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
6738
6739 * xdisp.c (redisplay_updating_p): Variable removed.
6740 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
6741 New variables.
6742 (init_iterator): Don't free realized faces if
6743 inhibit_free_realized_faces is set.
6744 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
6745 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
6746 initialize Qinhibit_free_realized_faces.
6747
6748 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
6749 when iterator is adding glyphs to a glyph matrix.
6750
67512002-08-27 Kenichi Handa <handa@etl.go.jp>
6752
6753 * xdisp.c (get_next_display_element): In unibyte case, don't use
6754 octal form for such eight-bit characters that can be converted to
6755 multibyte char.
6756
67572002-08-26 Kim F. Storm <storm@cua.dk>
6758
6759 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize foreground
6760 and background colors. From Joe Buehler (tiny change).
6761
67622002-08-26 Miles Bader <miles@gnu.org>
6763
6764 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
6765
67662002-08-25 Andrew Choi <akochoi@shaw.ca>
6767
6768 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
6769 defined instead of MAC_OSX.
6770
6771 * s/darwin.h (select): Define select to sys_select only if
6772 HAVE_CARBON is defined.
6773 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
6774 (DONT_REOPEN_PTY): #def it.
6775
6776 * macterm.c (XTread_socket): Remove code to call
6777 SendEventToEventTarget for keys with command modifiers when
6778 mac_command_key_is_meta is nil.
6779
67802002-08-24 Andreas Schwab <schwab@suse.de>
6781
6782 * eval.c (Fdefvar): Fix last change.
6783
67842002-08-23 Richard M. Stallman <rms@gnu.org>
6785
6786 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
6787 Record variables in load history as (defvar . VAR).
6788 (Fdefvar): Don't record in load history if no initial value.
6789 (Qdefvar): New variable.
6790 (syms_of_eval): Init and staticpro it.
6791
6792 * lread.c (syms_of_lread): Doc fix.
6793 (build_load_history): Use Fmember to see if a definition
6794 is already in the Vload_history element.
6795
6796 * process.c (Fstart_process): Remove /: from program name.
6797
6798 * emacs.c (decode_env_path): Don't add /: if file name handler
6799 has a `safe-magic' property.
6800
6801 * callproc.c (Fcall_process): Remove /: from program name.
6802
68032002-08-23 Stefan Monnier <monnier@cs.yale.edu>
6804
6805 * regex.c (PATFETCH): Remove the translating fetch.
6806 (PATFETCH_RAW): Rename to PATFETCH.
6807 (set_image_of_range): New fun.
6808 (SET_RANGE_TABLE_WORK_AREA): Use it.
6809 (regex_compile): Don't translate the pattern chars so eagerly.
6810 Only do it when inserting an `exactn' bytecode or when handling
6811 a char-range.
6812 (mutually_exclusive_p): Avoid empty statement.
6813
68142002-08-22 Kim F. Storm <storm@cua.dk>
6815
6816 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
6817 end up on a partially visible line; this reverts a specific part
6818 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
6819 display error which has been reported several times now.
6820 However it introduces the problem that changes was supposed to fix.
6821 See my comments in the source if you want to debug this further.
6822
68232002-08-20 Kenichi Handa <handa@etl.go.jp>
6824
6825 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
6826
68272002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
6828
6829 * msdos.c (croak): Add `void' to definition.
6830
6831 * sysdep.c [MSDOS] (request_sigio, unrequest_sigio):
6832 Don't define them, they are defined in msdos.c.
6833
6834 * mem-limits.h [MSDOS]: Declare etext.
6835
6836 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
6837 `const' since CORRECT_DIR_SEPS modifies its target.
6838
68392002-08-19 Kim F. Storm <storm@cua.dk>
6840
6841 * keyboard.c (Fclear_this_command_keys): Added optional arg
6842 KEEP-RECORD to avoid clearing lossage when we just want to clear
6843 the current key sequence (kmacro needs this).
6844
68452002-08-19 Kenichi Handa <handa@localhost>
6846
6847 * composite.c (run_composition_function): Call FUNC if it is fboundp.
6848
6849 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
6850 cons, return Qnil.
6851
68522002-08-17 Richard M. Stallman <rms@gnu.org>
6853
6854 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
6855
6856 * sysdep.c [!VMS]: Include sys/files.h.
6857
6858 * editfns.c (save_restriction_restore): Defend from unchained marker.
6859
6860 * buffer.c (overlays_at): Handle extending vec uniformly.
6861 (overlays_in): Handle extending vec from length 0 as in overlays_at.
6862
68632002-08-15 Andrew Choi <akochoi@shaw.ca>
6864
6865 * mac.c (init_mac_osx_environment): New function.
6866
6867 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
6868
68692002-08-14 Kim F. Storm <storm@cua.dk>
6870
6871 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
6872 executing macro before appending to it (when used from Lisp).
6873 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
6874 which is called prior to each iteration of macro (for kmacro.el).
6875 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
6876
6877 * lisp.h (Fexecute_kbd_macro): Update prototype.
6878
6879 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
6880
68812002-08-14 Kenichi Handa <handa@etl.go.jp>
6882
6883 * xselect.c (QUTF8_STRING): New variable.
6884 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
6885 (x_atom_to_symbol): Likewise.
6886 (x_get_local_selection): New argument local_request. If it is
6887 nonzero, call handler_fn with the second arg nil.
6888 (x_handle_selection_request): Call x_get_local_selection with
6889 local_request 0.
6890 (lisp_data_to_selection_data): Don't encode the string here.
6891 (Fx_get_selection_internal): Call x_get_local_selection with
6892 local_request 1.
6893 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
6894
6895 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
6896
6897 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
6898
68992002-08-13 Richard M. Stallman <rms@gnu.org>
6900
6901 * minibuf.c (Fminibufferp): New function.
6902 (syms_of_minibuf): Defsubr it.
6903 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
6904
69052002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
6906
6907 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
6908
69092002-08-12 Richard M. Stallman <rms@gnu.org>
6910
6911 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
6912 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
6913 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
6914 already.
6915
6916 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
6917
69182002-08-11 Andrew Choi <akochoi@shaw.ca>
6919
6920 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
6921 (Vmac_pass_command_to_system): New variable.
6922 (Vmac_pass_control_to_system): New variable.
6923 (do_mouse_moved): Check wp with is_emacs_window.
6924 (XTread_socket): Check window_ptr with is_emacs_window.
6925 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
6926 events back to Mac Toolbox for processing, depending on values of
6927 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
6928 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
6929 Vmac_pass_control_to_system.
6930
69312002-08-10 Kenichi Handa <handa@etl.go.jp>
6932
6933 * coding.c (unencodable_char_position): New function.
6934 (Funencodable_char_position): New function.
6935 (syms_of_coding): Defsubr Funencodable_char_position.
6936
69372002-08-10 Andrew Choi <akochoi@shaw.ca>
6938
6939 * mac.c (sys_select) [MAC_OSX]: New function.
6940
6941 * macterm.c (MakeMeTheFrontProcess): New function.
6942 (mac_initialize): Call MakeMeTheFrontProcess.
6943
6944 * s/darwin.h: Define select to sys_select.
6945
69462002-08-09 Richard M. Stallman <rms@gnu.org>
6947
6948 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
6949
69502002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
6951
6952 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
6953 end of the buffer.
6954
69552002-08-08 Ken Raeburn <raeburn@mit.edu>
6956
6957 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
6958
6959 * puresize.h (BASE_PURESIZE): Increase to 910000.
6960
69612002-08-08 Kenichi Handa <handa@etl.go.jp>
6962
6963 * coding.c (Ffind_operation_coding_system): For write-region, if
6964 VISIT is a filename, make it the target.
6965
69662002-08-07 Richard M. Stallman <rms@gnu.org>
6967
6968 * alloc.c (mark_object): Detect long lists for debugging.
6969 (mark_object_loop_halt): New variable.
6970
6971 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
6972
6973 * data.c (Fmake_variable_frame_local): Doc fix.
6974
69752002-08-01 David Ponce <david@dponce.com>
6976
6977 * w32menu.c (local_heap, local_alloc, local_free): New macros.
6978 (malloc_widget_value, free_widget_value)
6979 (w32_free_submenu_strings): Use them.
6980
6981 (push_submenu_start, push_submenu_end, push_left_right_boundary)
6982 (push_menu_pane, push_menu_item, single_keymap_panes)
6983 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
6984 (single_submenu, set_frame_menubar)
6985 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
6986
6987 (Fx_popup_menu): Don't show pop up menu until preceding one is
6988 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
6989
6990 * w32menu.c: Changes adapted from xmenu.c
6991 (set_frame_menubar): First parse all submenus,
6992 then make widget_value trees from them.
6993 Don't allocate any widget_value objects
6994 until we are done with the parsing.
6995 (parse_single_submenu): New function.
6996 (digest_single_submenu): New function.
6997 (single_submenu): Function deleted, replaced by those two.
6998
69992002-08-04 Andrew Choi <akochoi@shaw.ca>
7000
7001 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
7002 returns a valid window pointer before proceeding for keyDown and
7003 autoKey events.
7004
70052002-08-03 Andrew Choi <akochoi@shaw.ca>
7006
7007 * macterm.c (USE_CARBON_EVENTS): New macro.
7008 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
7009 (x_iconify_frame): Call CollapseWindow.
7010 (Vmac_reverse_ctrl_meta): New variable.
7011 (Vmac_wheel_button_is_mouse_2): New variable.
7012 (init_mac_drag_n_drop): New function.
7013 (mac_do_receive_drag): New function.
7014 (mac_handle_service_event): New function.
7015 (init_service_handler): New function.
7016 (mac_to_emacs_modifiers): New function.
7017 (mac_event_to_emacs_modifiers): New function.
7018 (mac_get_mouse_btn): New function.
7019 (mac_convert_event_ref): New function.
7020 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
7021 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
7022 mac_get_mouse_btn.
7023 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
7024
7025 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
7026 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
7027 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
7028 TOOL_BAR_EVENT for MAC_OS as well.
7029 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
7030 as for WINDOWS_NT.
7031 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
7032
7033 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
7034
70352002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
7036
7037 * xdisp.c (forward_to_next_line_start): Fix a condition that
7038 lead to a newline being skipped.
7039
70402002-08-02 Andrew Choi <akochoi@shaw.ca>
7041
7042 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
7043
70442002-08-01 Richard M. Stallman <rms@gnu.org>
7045
7046 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
7047
70482002-07-31 Andrew Choi <akochoi@shaw.ca>
7049
7050 * macfns.c: #undef init_process before #define-ing it.
7051
7052 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
7053 HAVE_CARBON is defined.
7054
70552002-07-31 Richard M. Stallman <rms@gnu.org>
7056
7057 * xmenu.c (set_frame_menubar): First parse all submenus,
7058 then make widget_value trees from them.
7059 Don't allocate any widget_value objects
7060 until we are done with the parsing.
7061 (parse_single_submenu): New function.
7062 (digest_single_submenu): New function.
7063 (single_submenu): Function deleted, replaced by those two.
7064
70652002-07-30 Juanma Barranquero <lektu@terra.es>
7066
7067 * w32proc.c (syms_of_ntproc): Fix docstring of
7068 `w32-get-true-file-attributes'.
7069
70702002-07-28 Richard M. Stallman <rms@gnu.org>
7071
7072 * s/hpux8.h (HPUX8): Define this before including hpux.h.
7073 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
7074
7075 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
7076
7077 * keyboard.c (make_lispy_event):
7078 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
7079 Explicitly clear up_modifier in event->modifiers.
7080
70812002-07-27 Richard M. Stallman <rms@gnu.org>
7082
7083 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
7084
7085 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
7086 for bar cursor.
7087
70882002-07-26 Kenichi Handa <handa@etl.go.jp>
7089
7090 * coding.c (detect_coding_iso2022): While checking a byte sequence
7091 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
7092 it in the normal loop.
7093
70942002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
7095
7096 * xterm.c (expose_overlaps): New function.
7097 (expose_window): Use it to fix the display of overlapping rows.
7098
7099 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
7100
71012002-07-23 Ken Raeburn <raeburn@gnu.org>
7102
7103 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
7104 since it only depends on XUINT.
7105
7106 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
7107 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
7108 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
7109 Macros deleted.
3947677c 7110
77d1daf2
AS
7111 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
7112 its value over other approaches.
7113 * sysdep.c (start_of_data): Don't define the function if a macro
7114 form has been defined.
8a8e19a3 7115
048addec
JD
71162002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
7117
7118 * xdisp.c (redisplay_updating_p): New variable.
7119 (init_iterator): Don't free realized faces when
7120 redisplay_updating_p is set.
7121 (redisplay_internal): Set redisplay_updating_p while updating
7122 the display.
7123
71242002-07-23 Richard M. Stallman <rms@gnu.org>
7125
7126 * editfns.c (Fmessage): Treat "" like nil.
7127
71282002-07-23 Kenichi Handa <handa@etl.go.jp>
7129
7130 * xdisp.c (face_before_or_after_it_pos):
7131 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
7132
71332002-07-22 Juanma Barranquero <lektu@terra.es>
7134
7135 * callproc.c (init_callproc) [DOS_NT]:
7136 Initialize Vshared_game_score_directory to nil.
7137 (syms_of_callproc) [DOS_NT]: Likewise.
7138
71392002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
7140
7141 * xdisp.c (display_line): Replace an abort with xassert.
7142
71432002-07-21 Richard M. Stallman <rms@gnu.org>
7144
7145 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
7146 and END_UNCHANGED when setting buffer_unchanged_p.
7147 Use current_matrix_up_to_date_p to decide whether to use
7148 try_cursor_movement.
7149
7150 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
7151
7152 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
7153
7154 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
7155 Set to nil if dir does not exist.
7156 (syms_of_callproc): Init unconditionally and simply.
7157
7158 * buffer.c (Fbuffer_list): Doc fix.
7159
71602002-07-21 Ken Raeburn <raeburn@gnu.org>
7161
7162 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
7163
7164 * buffer.c (mmap_realloc): When shrinking, make sure number of
7165 pages to unmap is rounded towards zero.
7166
7167 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
7168 (XSETINT): Deleted.
7169
7170 * m/att3b.h (XINT): Don't define.
7171 (VALBITS, VALMASK, XTYPE): Deleted.
7172 (DATA_SEG_BITS): Define.
7173 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
7174 ARRAY_MARK_FLAG): Deleted.
7175 (DATA_SEG_BITS): Define.
7176 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
7177 (DATA_SEG_BITS): Define.
7178
71792002-07-20 Richard M. Stallman <rms@gnu.org>
7180
7181 * print.c (print_error_message): New args CONTEXT and CALLER.
7182 Calls changed.
7183
7184 * lisp.h (print_error_message): Declare new args.
7185
7186 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
7187 and CONTEXT to print_error_message, don't print them here.
7188 For a Quit, don't use Vsignaling_function.
7189 Call message_log_maybe_newline.
7190
7191 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
7192
71932002-07-20 Kim F. Storm <storm@cua.dk>
7194
7195 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
7196
71972002-07-19 Ken Raeburn <raeburn@gnu.org>
7198
7199 * bytecode.c (struct byte_stack): Pointers into byte string now
7200 point to const.
7201 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
7202 const.
7203 * charset.h (BCOPY_SHORT): Source pointer now points to const.
7204 * coding.c (encode_eol, detect_coding, detect_eol):
7205 (decode_coding, encode_coding, detect_coding_system):
7206 Source strings now treated as const.
7207 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
7208 modify Lisp string contents.
7209 * coding.h (decode_coding, encode_coding, detect_coding,
7210 detect_eol): Declarations updated.
7211 * composite.c (compose_chars_in_text): Treat Lisp string contents
7212 as const.
7213 * dispnew.c (safe_bcopy): Source pointer now points to const.
7214 * lisp.h (STRING_COPYIN): New macro.
7215 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
7216 (internal_with_output_to_temp_buffer): Declarations updated.
7217 * print.c (temp_output_buffer_setup):
7218 (internal_with_output_to_temp_buffer): Buffer name argument is now
7219 pointer to const.
7220 * sound.c (struct sound_device): Function pointer field "write"
7221 buffer argument now points to const.
7222 (vox_write): Buffer argument points to const.
7223 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
7224 contents as const.
7225 * sysdep.c (emacs_write): Buffer pointer now const.
7226 * term.c (encode_terminal_code): Buffer pointer now const.
7227 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
7228 (x_face_list_fonts, x_update_menu_appearance):
7229 (hash_string_case_insensitive): Treat Lisp string contents as const.
7230
72312002-07-19 Juanma Barranquero <lektu@terra.es>
7232
7233 * fileio.c (Ffile_name_as_directory): Fix argument name in docstring.
7234 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
7235
7236 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
7237
7238 * fileio.c (syms_of_fileio): Likewise.
7239
72402002-07-18 Richard M. Stallman <rms@gnu.org>
7241
7242 * data.c (Fdefalias): Doc fix.
7243
72442002-07-17 Dave Love <fx@gnu.org>
7245
7246 * intervals.h (text_property_stickiness): Use P_.
7247
7248 * ccl.c: Remove `emacs' conditionals.
7249 (ccl_backtrace_table): Fix size spec.
7250 (ccl_driver): Fix type errors.
7251
72522002-07-16 Ken Raeburn <raeburn@gnu.org>
7253
7254 * alloc.c (xstrdup, make_string, make_unibyte_string)
7255 (make_multibyte_string, build_string): String pointer args now
7256 point to const.
7257 * charset.c (find_charset_in_text, c_string_width):
7258 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
7259 * fileio.c (report_file_error):
7260 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
7261 (count_combining_before, count_combining_after, insert_1_both):
7262 (insert, insert_and_inherit, insert_string):
7263 (insert_before_markers, insert_before_markers_and_inherit):
7264 * lread.c (intern, oblookup, hash_string):
7265 * minibuf.c (temp_echo_area_glyphs):
7266 * search.c (fast_c_string_match_ignore_case):
7267 * sysdep.c (emacs_open, set_file_times):
7268 * xfaces.c (xstricmp):
7269 * xdisp.c (store_frame_title, string_char_and_length):
7270 (message_dolog, message2, message2_nolog, set_message): Likewise.
7271 (set_message_1): Cast message string argument to const pointer.
7272 * editfns.c (general_insert_function): Insertion function now
7273 takes pointer to const for input data.
7274 * charset.h (find_charset_in_text, c_string_width):
7275 (parse_str_as_multibyte): Declarations updated.
7276 * dispextern.h (xstricmp): Declaration updated.
7277 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
7278 (count_size_as_multibyte, count_combining_before):
7279 (count_combining_after, insert_1, insert_1_both, message_dolog):
7280 (insert, insert_and_inherit, insert_before_markers)
7281 (insert_before_markers_and_inherit, set_message, message2):
7282 (message2_dolog, build_string, make_string, make_unibyte_string):
7283 (make_multibyte_string, intern, oblookup, report_file_error):
7284 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
7285 (emacs_open, xstrdup): Declarations updated.
7286 * systime.h (set_file_times): Declaration updated.
7287
7288 * charset.c (find_charset_in_text, lisp_string_width): Use const
7289 for pointer to lisp string data.
7290 * charset.h (FETCH_STRING_CHAR_ADVANCE):
7291 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
7292 * coding.c (Ffind_coding_systems_region_interval):
7293 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
7294 (Fmake_directory_internal, Fdelete_directory):
7295 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
7296 * fontset.c (font_family_registry, fs_query_fontset):
7297 (list_fontsets):
7298 * frame.c (Fframe_parameter):
7299 * keyboard.c (cmd_error_internal):
7300 * keymap.c (Fdescribe_buffer_bindings):
7301 * lread.c (complete_filename_p, openp):
7302 * minibuf.c (Fminibuffer_complete_word):
7303 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
7304 (face_before_or_after_it_pos, next_element_from_string):
7305 (get_overlay_arrow_glyph_row, display_mode_element):
7306 (decode_mode_spec_coding):
7307 * xterm.c (same_x_server): Likewise.
7308
7309 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
7310 settings of non-existent fields.
7311
7312 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
7313 copy a lisp value.
7314
7315 * lread.c (Fintern_soft): Use string macros instead of
7316 Lisp_String fields.
7317 * keyboard.c (echo_char, parse_modifiers_uncached):
7318 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
7319 * textprop.c (validate_interval_range, interval_of): Likewise.
7320
7321 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
7322
7323 * charset.h (FETCH_STRING_CHAR_ADVANCE)
7324 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
7325 XSTRING()->size_byte.
7326
7327 * lisp.h (SDATA, SREF): Produce rvalue.
7328 (SSET): New macro.
7329 * alloc.c (make_event_array): Use SSET for storing into a string.
7330 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
7331 a string.
7332 * casefiddle.c (casify_object): Use SSET.
7333 * charset.h (FETCH_STRING_CHAR_ADVANCE)
7334 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
7335 address of string contents.
7336 * data.c (Faref): Use SDATA.
7337 (Faset): Use SDATA, SSET.
7338 * dired.c (directory_files_internal): Use SSET.
7339 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
7340 (Fread_file_name): Use SREF, SSET.
7341 * fns.c (concat): Use SSET.
7342 (concat, Fdelete): Use SDATA.
7343 * insdel.c (insert_from_string_1): Use SDATA.
7344 * keyboard.c (Fevent_convert_list): Use SREF.
7345 * lread.c (Fload): Use SDATA, SSET.
7346 * macfns.c (validate_x_resource_name): Use SSET.
7347 * process.c (status_message): Use SSET.
7348 * search.c (wordify): Use SDATA.
7349 (Freplace_match): Use SREF.
7350 * w32fns.c (validate_x_resource_name): Use SSET.
7351 * xfns.c (validate_x_resource_name): Use SSET.
7352 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
7353
73542002-07-16 Richard M. Stallman <rms@gnu.org>
7355
7356 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
7357
7358 * xdisp.c (reconsider_clip_changes):
7359 Don't test prevent_redisplay_optimizations_p.
7360 (redisplay_internal): Test prevent_redisplay_optimizations_p
7361 along with clip_changed in some cases.
7362 (try_window_id): Likewise.
7363 (redisplay_window): New local var buffer_unchanged_p.
7364
7365 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
7366
7367 * process.c (create_process): Test USG_SUBTTY_WORKS.
7368 (process_send_signal): Clean up handling of GID.
7369 Detect errors in ioctls meant to set GID.
7370
7371 * window.c (temp_output_buffer_show):
7372 Don't set prevent_redisplay_optimizations_p.
7373
73742002-07-15 Juanma Barranquero <lektu@terra.es>
7375
7376 * eval.c (Fdefvaralias): Add docstring argument.
7377
73782002-07-15 Ken Raeburn <raeburn@gnu.org>
7379
7380 * lisp.h (STRING_INTERVALS): Produce rvalue.
7381 (STRING_SET_INTERVALS): New macro.
7382 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
7383 * fns.c (Fstring_as_multibyte): Likewise.
7384 * intervals.c (balance_possible_root_interval, delete_interval)
7385 (create_root_interval, copy_intervals_to_string): Likewise.
7386 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
7387 instead of 0.
7388
73892002-07-14 Ken Raeburn <raeburn@gnu.org>
7390
7391 * lisp.h (STRING_SET_CHARS): New macro.
7392 (SCHARS, SBYTES): Produce rvalues.
7393 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
7394 * fns.c (concat): Likewise.
7395 * lread.c (read_vector): Likewise.
7396
7397 * lisp.h (SMBP): Deleted. All uses changed to STRING_MULTIBYTE.
7398 (STRING_SET_UNIBYTE): New macro.
7399 (SET_STRING_BYTES): Deleted. Callers (all of which supplied a
7400 length of -1) changed to use STRING_SET_UNIBYTE.
7401 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
7402 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
7403 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
7404 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
7405 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
7406 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
7407 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
7408 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
7409 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
7410 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
7411 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
7412 STRING_BYTES or indirection changed to SCHARS, SBYTES,
7413 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
7414 unchanged for now.
7415
74162002-07-13 Kim F. Storm <storm@cua.dk>
7417
7418 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
7419
74202002-07-12 Richard M. Stallman <rms@gnu.org>
7421
7422 * fileio.c (Fwrite_region): Doc fix.
7423
7424 * print.c (print_error_message): Don't handle Vsignaling_function here.
7425
7426 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
7427 (command_loop_1): Avoid certain actions after memory-full error.
7428
7429 * eval.c (Fsignal): Don't call cancel_hourglass.
7430 For a memory-full error, don't call Vsignal_hook_function
7431 and don't set Vsignaling_function.
7432
7433 * process.c (process_send_signal): Add abort call.
7434
74352002-07-11 Markus Rost <rost@math.ohio-state.edu>
7436
7437 * keymap.c (Fkey_binding): Fix typo.
7438
74392002-07-11 Richard M. Stallman <rms@gnu.org>
7440
7441 * alloc.c (Vmemory_full): New variable.
7442 (Vmemory_signal_data): Renamed from memory_signal_data.
7443 Uses changed.
7444 (syms_of_alloc): Defvar them.
7445 (memory_full, buffer_memory_full): Set Vmemory_full.
7446
7447 * lisp.h (Vmemory_full): Add declaration.
7448 (current_column, indented_beyond_p): Change declaration.
7449
7450 * indent.c (last_known_column): Declare as double, not float.
7451 (current_column, current_column_1, string_display_width)
7452 (position_indentation): Return `double'.
7453 (indented_beyond_p): Arg `column' is `double'. Callers changed.
7454
7455 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
7456 (back_to_previous_visible_line_start)
7457 (reseat_at_next_visible_line_start, next_element_from_buffer):
7458 Use `double', not `float', when calling indented_beyond_p.
7459
7460 * s/hpux11.h (BROKEN_SA_RESTART): Defined.
7461
7462 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
7463
74642002-07-11 Juanma Barranquero <lektu@terra.es>
7465
7466 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
7467 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
7468 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
7469 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
7470 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
7471 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
7472
74732002-07-10 Juanma Barranquero <lektu@terra.es>
7474
7475 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE. All callers
7476 changed.
7477
74782002-07-09 Stefan Monnier <monnier@cs.yale.edu>
7479
7480 * data.c (Fdefalias): Add an optional `docstring' argument.
7481 (set_internal, Fsetq_default): Use XCAR/XCDR.
7482
7483 * composite.c (HASH_VALUE, HASH_KEY):
7484 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
7485
74862002-07-09 Kenichi Handa <handa@etl.go.jp>
7487
7488 * callproc.c (Fcall_process): Fix previous change.
7489
74902002-07-07 Stefan Monnier <monnier@cs.yale.edu>
7491
7492 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
7493 Add support for hash-tables.
7494 (Ftry_completion): Return t even if the string appears multiple times.
7495
7496 * fns.c (Fnconc): Use XCDR.
7497 (Fprovide): Use CONSP and XCDR.
7498 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
7499 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
7500 (Fmake_hash_table): Accept `:size nil'.
7501 (Fmakehash): Delete: moved to subr.el.
7502 (syms_of_fns): Don't defsubr makehash.
7503
7504 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
7505 (HASH_TABLE_SIZE): Move from fns.c.
7506
75072002-07-07 Richard M. Stallman <rms@gnu.org>
7508
7509 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
7510 Instead just return 0 when there is something to be done.
7511 (try_scrolling): If make_cursor_line_fully_visible returns 0,
7512 retry scrolling as if cursor were off the bottom.
7513 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
7514 return CURSOR_MOVEMENT_MUST_SCROLL.
7515 (redisplay_window): If make_cursor_line_fully_visible returns 0,
7516 go to try_to_scroll.
7517
7518 * buffer.c (Fbuffer_local_value): Store current value into its binding
7519 so we get the up-to-date value for the binding that is loaded.
7520
7521 * eval.c (Fdefmacro): Doc fix.
7522
75232002-07-05 Dave Love <fx@gnu.org>
7524
7525 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
7526 correctly.
7527
7528 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
7529 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
7530 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
7531 CCL_LookupCharConstTbl.
7532 (syms_of_ccl): Defvar translation-hash-table-vector.
7533
75342002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7535
7536 * xdisp.c: Remove unused variable `face'.
7537
75382002-07-04 Juanma Barranquero <lektu@terra.es>
7539
7540 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
7541 obsolescence information.
7542
75432002-07-03 Andrew Choi <akochoi@shaw.ca>
7544
7545 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
7546 pattern. Search cache first.
7547 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
7548 for Japanese font.
7549 (XLoadQueryFont): Use it.
7550
75512002-07-02 Richard M. Stallman <rms@gnu.org>
7552
7553 * keymap.c (Fdefine_key): Doc fix.
7554
7555 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
7556
75572002-07-02 Juanma Barranquero <lektu@terra.es>
7558
7559 * keymap.c (syms_of_keymap): Fix typo.
7560
75612002-07-01 Andrew Choi <akochoi@shaw.ca>
7562
7563 * s/darwin.h: Define POSIX_SIGNALS.
7564
7565 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
7566 and FSRefMakePath to convert FSSpec returned with Apple Event to
7567 Posix pathname.
7568 (mac_initialize) [TARGET_API_MAC_CARBON]:
7569 Call init_required_apple_events and disable the `Quit' menu item
7570 provided automatically by the Carbon Toolbox.
7571
75722002-07-01 Dave Love <fx@gnu.org>
7573
7574 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
7575 for K&R.
7576
7577 * xterm.c: Fix prototype for K&R.
7578
7579 * term.c (costs_set): Declare static, non-initialized for pcc.
7580
75812002-07-01 Richard M. Stallman <rms@gnu.org>
7582
7583 * keyboard.c (timer_last_idleness_start_time): New variable.
7584 (timer_start_idle): Set that.
7585 (read_key_sequence): Use that to reset timer_idleness_start_time
7586 to previous value.
7587
7588 * window.c (Frecenter): With arg, set optional_new_start.
7589
7590 * xdisp.c (redisplay_internal): Make optional_new_start really work.
7591
7592 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
7593 buffer for completion.
7594
75952002-06-29 Ken Raeburn <raeburn@gnu.org>
7596
7597 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
7598
75992002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7600
7601 * keyboard.c (readable_filtered_events): New function that filters
7602 FOCUS_IN_EVENT depending on parameter.
7603 (readable_events): Calls readable_filtered_events, not filtering
7604 FOCUS_IN_EVENT.
7605 (get_filtered_input_pending): New function, filtering parameter passed
7606 to readable_filtered_events.
7607 (get_input_pending): Calls get_filtered_input_pending, not filtering
7608 FOCUS_IN_EVENT.
7609 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
7610 FOCUS_IN_EVENT.
7611
7612 * xterm.h (struct x_output): Add focus_state.
7613
7614 * xterm.c (x_focus_changed): New function.
7615 (x_detect_focus_change): New function.
7616 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
7617 EnterNotify and LeaveNotify to track X focus changes.
7618
76192002-06-28 Andreas Schwab <schwab@suse.de>
7620
7621 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
7622
76232002-06-27 Kim F. Storm <storm@cua.dk>
7624
7625 * xdisp.c: (mode_line_string_list, mode_line_string_face)
7626 (mode_line_string_face_prop): New variables.
7627 (store_mode_line_string): New function.
7628 (display_mode_element): Use store_mode_line_string to
7629 add mode-line string elements to mode_line_string_list
7630 when mode_line_string_list is non-nil.
7631 (Fformat_mode_line): Now returns propertized string by
7632 default. New arg NO-PROPS to ignore properties.
7633 (decode_mode_spec): Only add two dashes for %- in propertized
7634 mode-line string.
7635 (syms_of_xdisp): Init and staticpro mode_line_string_list.
7636
76372002-06-27 Stefan Monnier <monnier@cs.yale.edu>
7638
7639 * minibuf.c (minibuffer_completion_contents): Add return type.
7640
76412002-06-27 Juanma Barranquero <lektu@terra.es>
7642
7643 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
7644
76452002-06-26 Juanma Barranquero <lektu@terra.es>
7646
7647 * fileio.c (read_file_name_cleanup): Add missing return.
7648
76492002-06-26 Richard M. Stallman <rms@gnu.org>
7650
7651 * window.c (Frecenter): Don't set force_start flag.
7652
7653 * minibuf.c (do_completion, Fminibuffer_complete_word)
7654 (Fminibuffer_completion_help): Complete just the text before point.
7655 (minibuffer_completion_contents): New function.
7656
7657 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
7658
7659 * frame.c (frames_bury_buffer): Function deleted.
7660
76612002-06-25 Miles Bader <miles@gnu.org>
7662
7663 * callint.c (Fcall_interactively): When checking to see if doprnt hit
7664 the end of callint_message, allow for a terminating '\0'.
7665
76662002-06-24 Juanma Barranquero <lektu@terra.es>
7667
7668 * w32select.c: Include composite.h
7669
7670 * w16select.c: Likewise.
7671
76722002-06-24 Kenichi Handa <handa@etl.go.jp>
7673
7674 * callproc.c (Fcall_process): If code detection is necessary,
7675 call detect_coding directly here.
7676
7677 * coding.c (detect_eol): Preserve coding->cmp_data.
7678
7679 * w16select.c (Fw16_get_clipboard_data):
7680 * w32fns.c (w32_to_x_font):
7681 * w32select.c (Fw32_get_clipboard_data):
7682 * xselect.c (selection_data_to_lisp_data):
7683 * xterm.c (XTread_socket): Disable composition handling.
7684
76852002-06-24 Stefan Monnier <monnier@cs.yale.edu>
7686
7687 * print.c (temp_output_buffer_setup): Kill all local variables.
7688
76892002-06-22 Stefan Monnier <monnier@cs.yale.edu>
7690
7691 * lread.c (Fread): Remove redundant and imprecise declaration.
7692
7693 * xfns.c (check_x_display_info): Use check_x_frame.
7694
7695 * .gdbinit (xprintsym): Use the new `xname' field.
7696 (xsymbol): Use it.
7697
76982002-06-22 Jason Rumney <jasonr@gnu.org>
7699
7700 * w32fns.c (file_dialog_callback): New function.
7701 (Fx_file_dialog): Allow selecting directories as well as files.
7702
77032002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7704
7705 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
7706 OpenBSD. Add support for mipseb-*-netbsd* machines.
7707
77082002-06-17 Andrew Choi <akochoi@shaw.ca>
7709
7710 * macterm.c (mac_scroll_area): Set foreground and backcolor to
7711 black and white before scrolling. Restore frame background and
7712 foreground color after scrolling.
7713 (do_window_update): Call XClearWindow before calling expose_frame.
7714 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
7715 FRAME_FOREGROUND_PIXEL of frame.
7716
7717 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
7718 test Mac command key as <ALT> key.
7719
77202002-06-17 Stefan Monnier <monnier@cs.yale.edu>
7721
7722 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
7723
7724 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
7725 Lookup keys in function-key-map immediately so that key-translation-map
7726 can be applied earlier.
7727 Remove function_key_possible and key_translation_possible, replaced
7728 by checking `keytran_start < t'.
7729
7730 * .gdbinit (xsymbol): Use the new `xname' field.
7731
77322002-06-17 Andrew Choi <akochoi@shaw.ca>
7733
7734 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
7735 test Mac command key as <ALT> key.
7736
7737 * mac.c (do_applescript): Call initialize_applescript if necessary
7738 when first called. Dispose of result_desc only when there is no error.
7739 (Fdo_applescript): Use %d format specifier instead of %ld.
7740
77412002-06-16 Andrew Choi <akochoi@shaw.ca>
7742
7743 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
7744 of FrontWindow for cases keyDown and autoKey.
7745
7746 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
7747 Vdefault_fontset to Monaco with mac-roman coding.
7748
7749 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
7750 init_process before and after inclusion of Carbon/Carbon.h, resp.
7751
7752 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
7753 cursor_gc.
7754 (add_font_name_table_entry): New function.
7755 (init_font_name_table): Use add_font_name_table_entry; add italic,
7756 bold, and bold-italic entries for truetype fonts.
7757
7758 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
7759 for Mac too.
7760 (try_font_list) [MAC_OS]: If no font matches given registry, try
7761 fonts with any registry matching face_family.
7762 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
7763
7764 * s/darwin.h: If autoconf detects the Ncurses library, define
7765 LIBS_TERMCAP to -lncurses to use it.
7766
77672002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
7768
7769 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
7770
77712002-06-15 Richard M. Stallman <rms@gnu.org>
7772
7773 * window.c (Fset_window_configuration): Explicitly preserve
7774 the point value that new_current_buffer had at the start.
7775
77762002-06-14 Juanma Barranquero <lektu@terra.es>
7777
7778 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
7779 Fix typos.
7780
77812002-06-14 Kim F. Storm <storm@cua.dk>
7782
7783 * insdel.c (insert_1_both, insert_from_string_1)
7784 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
7785 insert happened in the end_unchanged region. Otherwise, the
7786 redisplay may be confused and duplicate the last line in the
7787 buffer [seen after save-buffer when require-final-newline==t].
7788
77892002-06-13 Jason Rumney <jasonr@gnu.org>
7790
7791 * w32.c (init_environment): Remove EMACSLOCKDIR.
7792 (stat): Swap _S_IFDIR and _S_IFREG.
7793
77942002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7795
7796 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
7797 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
7798 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
7799 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
7800 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
7801 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
7802 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
7803 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
7804 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
7805 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
7806 SELECTION_REQUEST_EVENT, selection_clear_event to
7807 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
7808 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
7809 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
7810 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
7811 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
7812 no_event to NO_EVENT.
7813
78142002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7815
7816 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
7817
78182002-06-12 Stefan Monnier <monnier@cs.yale.edu>
7819
7820 * intervals.c (textget): Don't forget to `return'.
7821 (lookup_char_property): Use XCAR/XCDR.
7822
78232002-06-12 Juanma Barranquero <lektu@terra.es>
7824
7825 * xdisp.c (Fformat_mode_line): Fix typo.
7826
78272002-06-12 Kim F. Storm <storm@cua.dk>
7828
7829 * xdisp.c (Fformat_mode_line): New function.
7830 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
7831 (store_frame_title_char, store_frame_title): Use unconditionally.
7832 (init_xdisp): Defsubr Fformat_mode_line.
7833 Initialize frame_title_buf etc. unconditionally.
7834
78352002-06-11 Stefan Monnier <monnier@cs.yale.edu>
7836
7837 * keyboard.c (read_key_sequence):
7838 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
7839 things through those maps after downcasing events.
7840 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
7841 applies after function-key-map.
7842 Make sure that keytran can be done in the middle in the sequence.
7843 Be careful not to throw away events past the one we downcase.
7844
7845 * lread.c (read_integer): Remove unused var `tem'.
7846 (read1): Fix int/Lisp_Object mixup.
7847
7848 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
7849
78502002-06-11 Richard M. Stallman <rms@gnu.org>
7851
7852 * keyboard.c (readable_events): Ignore any number of
7853 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
7854
78552002-06-09 Miles Bader <miles@gnu.org>
7856
7857 * xfaces.c (Ftty_supports_face_attributes_p): New function.
7858 (parse_rgb_list, tty_lookup_color): New functions.
7859 (tty_defined_color): Use `tty_lookup_color' to do all the work.
7860 (color_distance, Fcolor_distance): New functions.
7861 (TTY_SAME_COLOR_THRESHOLD): New macro.
7862 (Qtty_color_standard_values): New variable.
7863 (syms_of_xfaces): Initialize new vars & functions.
7864
78652002-06-08 Colin Walters <walters@verbum.org>
7866
7867 * textprop.c (Vchar_property_alias_alist): New variable.
7868 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
7869
7870 * intervals.c (lookup_char_property): New function for looking up
7871 overlay and text properties, created from textget.
7872 (textget): Use it.
7873
7874 * intervals.h (lookup_char_property): Declare.
7875 (Vchar_property_alias_alist): Declare.
7876
7877 * buffer.c (Foverlay_get): Use lookup_char_property.
7878
78792002-06-07 Sam Steingold <sds@gnu.org>
7880
7881 * xselect.c (lisp_data_to_selection_data): Fix last change:
7882 *data_ret is not a Lisp string, while unibyte_string is.
7883
78842002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
7885
7886 * xselect.c (lisp_data_to_selection_data): Fix last change:
7887 set size_ret.
7888
78892002-06-07 Andreas Schwab <schwab@suse.de>
7890
7891 * m/amdx86-64.h: New file.
7892
78932002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
7894
7895 * fns.c (Fstring_make_unibyte): Doc fix.
7896
7897 * xselect.c (lisp_data_to_selection_data): If the requested type
7898 is STRING, call string_make_unibyte to encode the selected text
7899 as a string.
7900
7901 * window.c (Fset_window_hscroll): Doc fix.
7902
79032002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7904
7905 * fileio.c (choose_write_coding_system):
7906 Call select-safe-coding-system properly.
7907
79082002-06-03 Richard M. Stallman <rms@gnu.org>
7909
7910 * xdisp.c (message_with_string): Error if STRING is not a string.
7911
7912 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
7913
7914 * fileio.c (choose_write_coding_system): Pass FILE arg to
7915 Vselect_safe_coding_system_function.
7916
79172002-06-03 Ken Raeburn <raeburn@gnu.org>
7918
7919 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
7920
79212002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
7922
7923 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
7924 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
7925 * keymap.c (describe_command): Likewise.
7926 * minibuf.c (read_minibuf): Likewise.
7927
7928 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
7929 Cast `current_column' return value to int.
7930 (back_to_previous_visible_line_start)
7931 (reseat_at_next_visible_line_start, next_element_from_buffer):
7932 Cast `indented_beyond_p' 3rd arg to float.
7933
7934 * indent.c (last_known_column): Now a float.
7935 (current_column_1, position_indentation, current_column)
7936 (string_display_width): Return float.
7937 (Fcurrent_column): Cast `current_column' return value to int.
7938 (Fcurrent_indentation): Cast `position_indentation' retval to int.
7939 (indented_beyond_p): Third arg now a float.
7940 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
7941
7942 * lisp.h (current_column): Now returns float.
7943 (indented_beyond_p): 3rd arg now a float.
7944
79452002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
7946
7947 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
7948 is Qcompound_text_with_extensions.
7949
7950 * xselect.c (lisp_data_to_selection_data): Always set selection
7951 type as string if x_encode_text returns streingp non-NULL.
7952
7953 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
7954
79552002-05-30 Richard M. Stallman <rms@gnu.org>
7956
7957 * window.c (Fset_window_configuration): Correct the handling
7958 of point in current buffer, to work with multiple windows.
7959
79602002-05-29 Colin Walters <walters@verbum.org>
7961
7962 * lread.c (Fread_from_string): Don't depend on order of evaluation
7963 for C function parameters.
7964
79652002-05-28 Richard M. Stallman <rms@gnu.org>
7966
7967 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
7968 way for blinked-off state and for a nonselected window.
7969
7970 * window.c (window_scroll_pixel_based): Don't call Fbolp;
7971 instead, see if the new start pos is at beginning of line.
7972
7973 * fileio.c (Fwrite_region): If START is a string, don't
7974 make any annotations.
7975
7976 * eval.c (syms_of_eval): Doc fix.
7977
79782002-05-28 Colin Walters <walters@debian.org>
7979
7980 * emacs.c (USAGE1): Add --no-splash.
7981 (standard_args): Ditto.
7982
79832002-05-28 Colin Walters <walters@gnu.org>
7984
7985 * lread.c (readchar_count): New variable.
7986 (readchar): Increment it.
7987 (unreadchar): Decrement it.
7988 (read_multibyte): Decrement it.
7989 (Vread_with_symbol_positions): New variable.
7990 (Vread_symbol_positions_list): New variable.
7991 (read_internal_start): New function, created from Fread and
7992 Fread_from_string. Handle Vread_symbol_positions_list and
7993 Vread_with_symbol_positions.
7994 (readevalloop, Fread, Fread_from_string): Use it.
7995 (read1): Use readchar_count to add symbol positions to
7996 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
7997 (syms_of_lread): DEFVAR_LISP and initialize them.
7998
7999 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
8000 (substitute_object_recurse, substitute_object_in_subtree)
8001 (substitute_in_interval): Prototype.
8002 (read_multibyte): Return c if it's less than zero.
8003
80042002-05-28 Kim F. Storm <storm@cua.dk>
8005
8006 * fileio.c (Fread_file_name_internal): Added brute-force
8007 speed up for using predicate file-directory-p.
8008
80092002-05-28 Kim F. Storm <storm@cua.dk>
8010
8011 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
8012 New variables.
8013 (syms_of_fileio): DEFVAR_LISP them.
8014 (read_file_name_cleanup): New unwind function.
8015 (Fread_file_name_internal): Only return completions satifying
8016 Vread_file_name_predicate. Temporarily unwind protect and rebind
8017 default-directory while checking completions against the predicate.
8018 (Fread_file_name): Added PREDICATE argument. Specbind it to
8019 Vread_file_name_predicate during completion.
8020 Call Vread_file_name_function to read the file name if non-nil.
8021
8022 * lisp.h (Fread_file_name): Now has 6 args.
8023
8024 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
8025 predicate for Fread_file_name when reading directory name.
8026 Supply Qnil for predicate in other calls to Fread_file_name.
8027
80282002-05-26 Miles Bader <miles@gnu.org>
8029
8030 * term.c (tty_capable_p): New function.
8031 * dispextern.h (tty_capable_p): New function declaration.
8032 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
8033 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
8034
80352002-05-23 Stefan Monnier <monnier@cs.yale.edu>
8036
8037 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
8038 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
8039 (Vwrite_region_annotate_functions): Docstring fix.
8040
80412002-05-23 Kim F. Storm <storm@cua.dk>
8042
8043 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
8044 phys_cursor's hpos is overwritten. This is still not completely
8045 correct, as it doesn't really make sense to use hpos at all to
8046 get the cursor glyph (as that is relative to the width of the
8047 characters on the line, which may have changed during the update).
8048
80492002-05-22 Jason Rumney <jasonr@gnu.org>
8050
8051 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
8052 Lisp_Object.
8053 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
8054 Use modified enumfont_t struct.
8055
8056 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
8057
8058 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
8059 Handle the `hbar' cursor type.
8060 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
8061
8062 * w32fns.c (Qhbar): New variable.
8063 (x_specified_cursor_type): Use it.
8064
80652002-05-21 Ken Raeburn <raeburn@gnu.org>
8066
8067 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
8068 now, when the address is needed.
8069
80702002-05-21 Colin Walters <walters@gnu.org>
8071
8072 * Makefile.in (shortlisp): Add font-core.el.
8073
80742002-05-20 Richard M. Stallman <rms@gnu.org>
8075
8076 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
8077
8078 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
8079 equivalent key bindings here.
8080
80812002-05-20 Ken Raeburn <raeburn@gnu.org>
8082
8083 Change symbol structure to contain a lisp object for the symbol
8084 name:
8085 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
8086 object field named "xname".
8087 (SYMBOL_NAME): New macro.
8088 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
8089 name field.
8090 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
8091 (mark_object, gc_sweep): Use symbol xname field and XSTRING
8092 instead of name field.
8093 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
8094 SYMBOL_NAME instead of XSYMBOL and name field.
8095 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
8096 instead of XSYMBOL and name field.
8097 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
8098 and SYMBOL_NAME instead of XSYMBOL and name field.
8099 * coding.c (Fread_coding_system, code_convert_region1)
8100 (code_convert_string1, code_convert_string_norecord)
8101 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
8102 XSYMBOL and name field.
8103 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
8104 (Fmake_variable_buffer_local, Fmake_local_variable)
8105 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
8106 of XSYMBOL and name field.
8107 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
8108 XSYMBOL and name field.
8109 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
8110 instead of XSYMBOL and name field.
8111 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
8112 XSYMBOL and name field.
8113 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
8114 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
8115 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
8116 instead of XSYMBOL and name field.
8117 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
8118 (parse_modifiers, apply_modifiers, Fevent_convert_list)
8119 (parse_solitary_modifier, Fexecute_extended_command):
8120 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
8121 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
8122 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
8123 of XSYMBOL and name field.
8124 (describe_command, describe_translation): Use SYMBOL_NAME and
8125 assignment instead of XSYMBOL and name field and XSETSTRING.
8126 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
8127 instead of XSYMBOL and name field.
8128 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
8129 name field and XSETSTRING.
8130 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
8131 of XSYMBOL and name field.
8132 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
8133 assignment instead of XSYMBOL and name field and XSETSTRING.
8134 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
8135 XSTRING instead of XSYMBOL and name field.
8136 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
8137 and XSTRING instead of XSYMBOL and name field.
8138 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
8139 and XSTRING instead of XSYMBOL and name field.
8140 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
8141 XSTRING instead of XSYMBOL and name field.
8142 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
8143 of XSYMBOL and name field.
8144 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
8145 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
8146
81472002-05-19 Ken Raeburn <raeburn@gnu.org>
8148
8149 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
8150 and XCDR real rvalues in most configurations.
8151
8152 * buffer.c (fix_overlays_in_range, fix_overlays_before):
8153 Don't take the address of the cdr part of a cons cell; instead, track
8154 the parent cell and call XSETCDR, or set the variable for the head
8155 of the list if we haven't started down the list yet.
8156
81572002-05-19 Richard M. Stallman <rms@gnu.org>
8158
8159 * doc.c (reread_doc_file): Don't ask for confirmation.
8160
81612002-05-18 Jason Rumney <jasonr@gnu.org>
8162
8163 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
8164 (xbm_load_image): Use it.
8165 (xbm_load): Ditto.
8166 (xbm_read_bitmap_data): Reverted to xfns.c version.
8167 From David Ponce <david@dponce.com>.
8168
81692002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
8170
8171 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
8172 2.02 and later.
8173
81742002-05-16 Juanma Barranquero <lektu@terra.es>
8175
8176 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
8177
81782002-05-15 Stefan Monnier <monnier@cs.yale.edu>
8179
8180 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
8181 meaningful test.
8182 (read_char_minibuf_menu_prompt): Fix typo.
8183
81842002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
8185
8186 * eval.c (Fcommandp): Doc fix.
8187
81882002-05-13 Stefan Monnier <monnier@cs.yale.edu>
8189
8190 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
8191 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
8192 (Fset_keymap_parent): Gcpro a bit more.
8193 (access_keymap): Gcpro around meta_map call and around the main loop.
8194 (get_keyelt): Gcpro when following indirect references.
8195 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
8196 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
8197 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
8198 Remove useless ad-hoc remap code.
8199
82002002-05-13 Richard M. Stallman <rms@gnu.org>
8201
8202 * search.c (search_buffer): Give up boyer moore search if inverse
8203 translation change charset_base.
8204
82052002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
8206
8207 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
8208 characters is carried over from the previous block of text, adjust
8209 coding->produced to account for the extra character.
8210
82112002-05-11 Andreas Schwab <schwab@suse.de>
8212
8213 * coding.c (intersection): Keep the elements of the returned list
8214 in the same order as in the first list.
8215
82162002-05-11 Kim F. Storm <storm@cua.dk>
8217
8218 * keymap.c (current_minor_maps): Fixed resizing of cmm_maps;
8219 only update cmm_size if realloc actually succeeds.
8220 Testing with initial size of 2 elements revealed that using
8221 realloc on GNU/Linux would cause a random trap in xmalloc
8222 later on, so I rewrote the code to use malloc/bcopy/free instead
8223 of realloc.
8224
82252002-05-10 Jason Rumney <jasonr@gnu.org>
8226
8227 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
8228
82292002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
8230
8231 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
8232 parens, to ensure correct evaluation order.
8233
82342002-05-10 Kim F. Storm <storm@cua.dk>
8235
8236 * keymap.c (Vemulation_mode_map_alists): New variable.
8237 (syms_of_keymap): DEFVAR_LISP it.
8238 (current_minor_maps): Process keymap alists in that list before
8239 minor-mode-overriding-map-alist and minor-mode-map-alist.
8240
82412002-05-09 Richard M. Stallman <rms@gnu.org>
8242
8243 * search.c (Freplace_match): Doc fix.
8244
82452002-05-09 Kim F. Storm <storm@cua.dk>
8246
8247 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
8248 Enlarge cursor rectangle drawn around image with non-zero relief.
8249
8250 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
8251 Enlarge cursor rectangle drawn around image with non-zero relief.
8252
8253 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
8254 Enlarge cursor rectangle drawn around image with non-zero relief.
8255
82562002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
8257
8258 * xselect.c (lisp_data_to_selection_data): Don't set selection
8259 type if comes from the Lisp object's car. If the selection
8260 contains a pure ASCII text, always return QSTRING as its type.
8261
82622002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8263
8264 * mac.c (mac-cut-function): Doc fix.
8265
82662002-05-05 Richard M. Stallman <rms@gnu.org>
8267
8268 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
8269
82702002-05-04 Jason Rumney <jasonr@gnu.org>
8271
8272 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
8273 for event-click-count.
8274
8275 * process.c (init_process): Only add server subfeature if we can
8276 use non-blocking I/O.
8277
82782002-05-04 Andrew Choi <akochoi@shaw.ca>
8279
8280 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
8281 repeatedly.
8282
82832002-05-03 Jason Rumney <jasonr@gnu.org>
8284
8285 * process.c (Fmake_network_process): Only support server sockets
8286 when we can make them non-blocking.
8287
8288 * s/ms-w32.h (HAVE_SELECT): Define.
8289
8290 * w32.h (FILE_NDELAY): New flag.
8291
8292 * w32.c (sys_getpeername, fcntl): New functions.
8293 (_sys_read_ahead): Temporarily block on non-blocking sockets.
8294
8295 * w32proc.c: include sys/file.h.
8296
82972002-05-03 Colin Walters <walters@verbum.org>
8298
8299 * callproc.c (Vgame_score_directory): Renamed to
8300 Vshared_game_score_directory.
8301
83022002-04-30 Richard M. Stallman <rms@gnu.org>
8303
8304 * s/gnu.h [emacs]: Include stdio.h.
8305 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
8306
8307 * eval.c (do_autoload): Error if called while preparing to dump.
8308
8309 * fns.c (Frequire): Error if need to load while preparing to dump.
8310
83112002-04-28 Colin Walters <walters@verbum.org>
8312
8313 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
8314 Default to "~/.emacs.d/games".
8315
83162002-04-29 Stefan Monnier <monnier@cs.yale.edu>
8317
8318 * lread.c (openp): Change arg exec_only to predicate.
8319 (build_load_history): Use XCAR/XCDR.
8320 (Flocate_file_internal): New fun.
8321 (syms_of_lread): Defsubr it.
8322 (Fload): Update call to openp.
8323
8324 * lisp.h (openp): Update prototype.
8325
8326 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
8327 * w32proc.c (sys_spawnve):
8328 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
8329 * w32.c (check_windows_init_file):
8330 * sound.c (Fplay_sound_internal):
8331 * process.c (Fstart_process):
8332 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
8333 * mac.c (run_mac_command):
8334 * emacs.c (init_cmdargs):
8335 * callproc.c (Fcall_process): Update call to openp.
8336
8337 * textprop.c (remove_properties): Don't use XCAR without CONSP.
8338
8339 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
8340
83412002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8342
8343 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
8344 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
8345
83462002-04-28 Richard M. Stallman <rms@gnu.org>
8347
8348 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
8349
8350 * eval.c (Fcommandp): New arg for_call_interactively.
8351 * lisp.h (Fcommandp): Declare new arg.
8352
83532002-04-28 Jason Rumney <jasonr@gnu.org>
8354
8355 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
8356
8357 * w32.c (stat, fstat): Use file index information to generate
8358 inodes for directories where available.
8359
83602002-04-26 Andrew Choi <akochoi@shaw.ca>
8361
8362 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
8363 [HAVE_CARBON]: Include Mac object files.
8364
8365 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
8366 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
8367 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
8368 MAC_OSX, and MAC_OS instead of macintosh.
8369
8370 * editfns.c [MAC_OS8]: Include stdio.h.
8371
8372 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
8373
8374 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
8375 Apple Monaco.
8376
8377 * process.c: Declare QCfamily and QCfilter as extern.
8378 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
8379 calling select.
8380
8381 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
8382
8383 * tparam.c [MAC_OSX]: Don't define BC and UP.
8384
8385 * config.in [HAVE_CARBON]: Add.
8386
8387 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
8388 Move here from mac/src and mac/inc.
8389
8390 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
8391
83922002-04-26 Gerd Moellmann <gerd@gnu.org>
8393
8394 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
8395 Compute phys_cursor_width from the x position returned
8396 by x_draw_glyhs, which is cheaper.
8397 (x_display_and_set_cursor): Compute the buffer-local value
8398 of `cursor-in-non-selected-windows' only when needed.
8399
84002002-04-25 Gerd Moellmann <gerd@gnu.org>
8401
8402 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
8403 cursor on a stretch glyph has a width that depends on
8404 x_stretch_cursor_p.
8405
84062002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8407
8408 * abbrev.c (abbrev-start-location): Doc fix.
8409
8410 * indent.c (Fvertical_motion): Fix last change.
8411
84122002-04-25 Gerd Moellmann <gerd@gnu.org>
8413
8414 * indent.c (Fvertical_motion): Move to the start of the line
8415 containing PT before moving up or down.
8416
84172002-04-24 Gerd Moellmann <gerd@gnu.org>
8418
8419 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
8420 case of writing a whole row, more or less analogous to the case of
8421 writing only parts of a row.
8422
8423 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
8424 0 for NO_CURSOR.
8425
8426 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
8427
84282002-04-23 Colin Walters <walters@verbum.org>
8429
8430 * buffer.c (syms_of_buffer): Doc fix.
8431
84322002-04-23 Gerd Moellmann <gerd@gnu.org>
8433
8434 * xterm.c (notice_overwritten_cursor): Handle the special case
8435 of the cursor being in the first blank non-text line at the
8436 end of a window.
8437
8438 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
8439 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
8440 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
8441 bar cursors only, to make phys_cursor_width contain what its name
8442 suggests.
8443 (notice_overwritten_cursor): Consider the cursor image erased if
8444 the output area intersects the cursor image in y-direction.
8445
84462002-04-23 Simon Marshall <simon@gnu.org>
8447
8448 * xfns.c (x_set_mouse_color): Change default for cross_cursor
8449 to XC_hand2.
8450
84512002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8452
8453 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
8454
84552002-04-22 Kim F. Storm <storm@cua.dk>
8456
8457 * textprop.c (remove_properties): Fixed trap for malformed plist.
8458
84592002-04-22 Richard M. Stallman <rms@gnu.org>
8460
8461 * cmds.c (Fend_of_line): Handle intangible text in mid line.
8462
8463 * window.c (make_window): Initialize height_fixed_p,
8464 last_cursor_off_p, and p->cursor_off_p slots.
8465
84662002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8467
8468 * fns.c (use-dialog-box): Doc fix.
8469
84702002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8471
8472 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
8473 variables `row', `i' and `area'.
8474 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
8475 toolkit library.
8476
84772002-04-19 Stefan Monnier <monnier@cs.yale.edu>
8478
8479 * xfaces.c (clear_font_table): Don't free the default font of
8480 a frame even if it's on another display.
8481 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
8482 that could be Qt.
8483
84842002-04-19 Juanma Barranquero <lektu@terra.es>
8485
8486 * indent.c (Fmove_to_column): Remove unused local variable
8487 `next_boundary_byte'.
8488 (current_column_1): Likewise.
8489
84902002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
8491
8492 * msdos.c (Qhbar): New variable.
8493 (syms_of_msdos): Intern and staticpro it.
8494 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
8495 cursor type.
8496
84972002-04-19 Dave Lambert <dlambert@acm.org>
8498
8499 Theses change implement an underscore-like (`hbar') cursor.
8500
8501 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
8502
8503 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
8504 Handle the `hbar' cursor type.
8505 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
8506
8507 * xfns.c (Qhbar): New variable.
8508 (syms_of_xfns): Intern and staticpro it.
8509 (x_specified_cursor_type): Handle `hbar' cursor.
8510
8511 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
8512 not defined.
8513
85142002-04-18 Richard M. Stallman <rms@gnu.org>
8515
8516 * textprop.c (remove_properties): New arg LIST allows scanning
8517 either a list or a plist.
8518 (interval_has_some_properties_list): New function, like
8519 interval_has_some_properties using list instead of plist.
8520 All callers changed.
8521 (Fremove_list_of_text_properties): New function.
8522 (syms_of_textprop): Defsubr it.
8523
85242002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
8525
8526 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
8527
85282002-04-17 Juanma Barranquero <lektu@terra.es>
8529
8530 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
8531
85322002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
8533
8534 * window.c (coordinates_in_window): Don't report on margin area
8535 if its width is zero.
8536
85372002-04-16 Jason Rumney <jasonr@gnu.org>
8538
8539 * w32fns.c (Fx_file_dialog): Decode file name before using.
8540
8541 * w32term.c (construct_drag_n_drop): Likewise.
8542
85432002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
8544
8545 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
8546 store load-history in pure space.
8547
8548 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
8549
85502002-04-16 Stefan Monnier <monnier@cs.yale.edu>
8551
8552 * xterm.c (Qlatin_1, Qutf_8): New vars.
8553 (syms_of_xterm): Initialize them.
8554 (XTread_socket): Eliminate incorrect optimization that tried to avoid
8555 decoding the output of X*LookupString.
8556 Always use latin-1 to decode the output of XLookupString.
8557 Try Xutf8LookupString if XmbLookupString failed.
8558
8559 * region-cache.c (new_region_cache): Use BEG.
8560
85612002-04-16 Gerd Moellmann <gerd@gnu.org>
8562
8563 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
8564 configuration files.
8565 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
8566 returns 0.
8567
85682002-04-15 Andreas Schwab <schwab@suse.de>
8569
8570 * config.in: Regenerated using autoheader.
8571
8572 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
8573 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
8574 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
8575 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
8576 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
8577 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
8578 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
8579 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
8580 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
8581 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
8582 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
8583 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
8584 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
8585 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
8586 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
8587 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
8588 STACK_DIRECTION, now set by autoconf.
8589
85902002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8591
8592 * dispnew.c (marginal_area_string): Sort arguments.
8593
8594 * dispextern.h (marginal_area_string): Add prototype.
8595
85962002-04-13 Richard M. Stallman <rms@gnu.org>
8597
8598 * fileio.c (Finsert_file_contents):
8599 Don't call temp_output_buffer_setup--do just part, by hand.
8600
8601 * coding.c (run_pre_post_conversion_on_str):
8602 Don't call temp_output_buffer_setup--do just part, by hand.
8603
8604 * keyboard.c (command_loop_1): Don't call start_hourglass
8605 or cancel_hourglass when executing a macro.
8606
8607 * marker.c (count_markers): New function.
8608
8609 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
8610 grow without limit. Move recently used elements to the front.
8611
86122002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
8613
8614 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
8615
86162002-04-12 Gerd Moellmann <gerd@gnu.org>
8617
8618 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
8619 rows marginal areas.
8620 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
8621 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
8622
8623 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
8624
86252002-04-12 Dave Love <fx@gnu.org>
8626
8627 * dispnew.c (marginal_area_string): New.
8628
8629 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
8630 (Qleft_margin, Qright_margin): Declare.
8631 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
8632
8633 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
8634 note_mode_line_highlight and extended.
8635
8636 * keyboard.c (Qleft_margin, Qright_margin): Declare.
8637 (make_lispy_event): Deal with mouse events in margins.
8638
86392002-04-12 Stefan Monnier <monnier@cs.yale.edu>
8640
8641 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
8642
8643 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
8644 than deactivating the mark if tmm is set to `lambda'.
8645 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
8646 Use a single event for HELP_EVENT.
8647 (Fexecute_extended_command): Save last_point_position.
8648
86492002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8650
8651 * lisp.h (Fpropertize): Add prototype.
8652
8653 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
8654
86552002-04-10 Colin Walters <walters@verbum.org>
8656
8657 * config.in: Add HAVE_SHARED_GAME_DIR.
8658
8659 * callproc.c: (Vgame_score_directory): New variable.
8660 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
8661
86622002-04-10 Richard M. Stallman <rms@gnu.org>
8663
8664 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
8665
86662002-04-09 Stefan Monnier <monnier@cs.yale.edu>
8667
8668 * minibuf.c (read_minibuf): Use empty_string.
8669 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
8670 Short-circuit the search as soon as it "failed".
8671 (Fall_completions): Allow lambda forms and lists of strings for alist.
8672 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
8673 when require_match is nil.
8674 (Ftest_completion): Rename from `test_completion' and export to elisp.
8675 Call the predicate also when alist is a list.
8676 Obey Vcompletion_regexp_list.
8677 (do_completion, Fminibuffer_complete_and_exit): Use it.
8678 (Fassoc_string): Rename from `assoc_for_completion'.
8679 Allow list of strings as well and export to elisp.
8680
86812002-04-08 Stefan Monnier <monnier@cs.yale.edu>
8682
8683 * puresize.h (BASE_PURESIZE): Increase to 900KB.
8684
86852002-04-08 Juanma Barranquero <lektu@terra.es>
8686
8687 * w32.c (sys_accept): Don't hide variable `s'.
8688
86892002-04-05 Gerd Moellmann <gerd@gnu.org>
8690
8691 * callint.c (Fcall_interactively): Use INTEGERP instead of
8692 NUMBERP for checking Vhistory_length.
8693
86942002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8695
8696 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
8697 Doc fix to reflect it.
8698
86992002-04-04 Richard M. Stallman <rms@gnu.org>
8700
8701 * xdisp.c (display_mode_element): New arg RISKY.
8702 Disregard text props found or specified within a variable
8703 that isn't marked risky-local-variable.
8704 (Qrisky_local_variable): New variable.
8705 (syms_of_xdisp): Init and staticpro it.
8706
87072002-04-04 Stefan Monnier <monnier@cs.yale.edu>
8708
8709 * undo.c (record_point): New fun.
8710 (record_delete, record_insert): Use it.
8711
87122002-04-03 Juanma Barranquero <lektu@terra.es>
8713
8714 * doc.c (Fdocumentation): Add missing parentheses.
8715 (Fdocumentation_property): Likewise.
8716
87172002-04-03 Stefan Monnier <monnier@cs.yale.edu>
8718
8719 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
8720 data is 0, just return nil.
8721
87222002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
8723
8724 * msdos.c (syms_of_msdos): Fix last change with
8725 mouse_autoselect_window.
8726
87272002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8728
8729 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
8730 mouse_autoselect_window.
8731
87322002-04-02 Stefan Monnier <monnier@cs.yale.edu>
8733
8734 * keyboard.c (make_lispy_event): Handle unknown keysyms together
8735 with system-specific keysyms. Use it also for unknown function keys.
8736
8737 * doc.c (reread_doc_file): Return whether reload was attempted.
8738 (Fdocumentation, Fdocumentation_property): Don't try to reload
8739 if the doc is 0 and only ask once.
8740
8741 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
8742
87432002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
8744
8745 * keyboard.c (read_char): If the event was Qselect_window,
8746 restore timer_idleness_start_time to its previous value.
8747
8748 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
8749
87502002-04-01 Stefan Monnier <monnier@cs.yale.edu>
8751
8752 * region-cache.c (new_region_cache): Use BEG.
8753
8754 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
8755 Use BEG and BEG_BYTE.
8756
8757 * doc.c (get_doc_string): Return nil if the location is wrong.
8758 (reread_doc_file): New fun.
8759 (Fdocumentation, Fdocumentation_property):
8760 Call it if get_doc_string fails.
8761 (Fsnarf_documentation): Make it work for a dumped Emacs.
8762
8763 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
8764 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
8765
8766 * charset.c (Fstring): Allow 0 arguments.
8767
8768 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
8769
8770 * process.c (DATAGRAM_CONN_P, list_processes_1)
8771 (Fprocess_datagram_address, Fset_process_datagram_address)
8772 (Fset_network_process_options, server_accept_connection):
8773 Fix some int/Lisp_Object confusions (thank you union types).
8774
87752002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8776
8777 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
8778
8779 * w32term.c: Likewise.
8780 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
8781
8782 * keyboard.c (Qselect_window): New symbol.
8783 (head_table): Use it.
8784 (keys_of_keyboard): Bound select-window event to handle-select-window.
8785 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
8786
8787 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
8788 (last_window): New variable.
8789 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
8790 (note_mouse_movement): Remove reimplemented code in #if 0.
8791 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
8792 Emacs windows.
8793
8794 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
8795
87962002-03-31 Gerd Moellmann <gerd@gnu.org>
8797
8798 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
8799 Callers changed.
8800
88012002-03-30 Richard M. Stallman <rms@gnu.org>
8802
8803 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
8804 loop whenever it stops making progress.
8805
8806 * widget.c (set_frame_size): Don't call change_frame_size.
8807
88082002-03-30 Gerd Moellmann <gerd@gnu.org>
8809
8810 * dispnew.c (direct_output_for_insert):
8811 Call mark_window_display_accurate.
8812
88132002-03-29 Jason Rumney <jasonr@gnu.org>
8814
8815 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
8816
88172002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
8818
8819 * Makefile.in (lread.o): Depend on coding.h.
8820
8821 * lread.c (openp, Fload): Encode the file name before passing it
8822 to `stat', `access', and `emacs_open'.
8823 (openp): GCPRO the encoded file name. Don't recompute Lisp
8824 strings unnecessarily.
8825
88262002-03-29 Kim F. Storm <storm@cua.dk>
8827
8828 * fns.c (Flax_plist_put): Doc fix.
8829
88302002-03-28 Miles Bader <miles@gnu.org>
8831
8832 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
8833
88342002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8835
8836 * process.c (set-network-process-options): Add usage.
8837 (make-network-process): Doc fix.
8838
88392002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
8840
8841 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
8842
88432002-03-26 Richard M. Stallman <rms@gnu.org>
8844
8845 * fns.c (Fsubstring_no_properties): New function.
8846 (Flax_plist_get, Flax_plist_put): New functions.
8847 (syms_of_fns): defsubr them.
8848
8849 * xdisp.c (update_menu_bar): Test only update_mode_lines;
8850 don't test or alter w->update_mode_line.
8851
8852 * window.c (Fdisplay_buffer): Doc fix.
8853
88542002-03-24 Richard M. Stallman <rms@gnu.org>
8855
8856 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
8857
88582002-03-24 Gerd Moellmann <gerd@gnu.org>
8859
8860 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
8861 (Fdefmacro): Handle `(declare ...)'.
8862 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
8863 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
8864
88652002-03-24 Jason Rumney <jasonr@gnu.org>
8866
8867 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
8868 (xbm_file_p): Add prototypes.
8869 (xbm_format, xbm_image_p): Sync with xfns.c.
8870 (reflect_byte): New function.
8871 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
8872 (xbm_load_image): Create bitmaps with a depth of 1.
8873 (init_xfns): Enable XBM images.
8874
88752002-03-23 Jason Rumney <jasonr@gnu.org>
8876
8877 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
8878 correctly. Do not pass up_modifier to keyboard buffer.
8879
8880 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
8881
88822002-03-22 Stefan Monnier <monnier@cs.yale.edu>
8883
8884 * Makefile.in (bootstrapclean): New target.
8885 (bootstrap-temacs, bootstrap-doc): Remove.
8886 (bootstrap-emacs): Use a bog-standard `temacs'.
8887 Don't bother to build a DOC file.
8888
8889 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
8890
8891 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
8892 in temacs even if !CANNOT_DUMP.
8893 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
8894
8895 * alloc.c (check_pure_size): Only output a warning.
8896
88972002-03-22 Jason Rumney <jasonr@gnu.org>
8898
8899 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
8900 supported.
8901
8902 * w32term.c (zv_bits): Declare as short, for word alignment.
8903 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
8904 (syms_of_w32term): Define x-use-underline-position-properties.
8905
8906 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
8907 (clear_image_cache): Block input, fix logic, clear matrices in
8908 all frames that share this cache.
8909
89102002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
8911
8912 * emacs.c (main): Update the Copyright year in the blurb printed
8913 by "emacs --version".
8914
8915 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
8916
8917 * xterm.c (XTread_socket): If XK_ISO_Lock and
8918 XK_ISO_Last_Group_Lock are defined, handle keysyms between
8919 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
8920
89212002-03-21 Kim F. Storm <storm@cua.dk>
8922
8923 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
8924 menu-bar bindings in keymap and local-map properties _are_ used.
8925 But try keymap property first in accordance with 2002-01-03 patch.
8926 Added comment describing why this is not always reliable.
8927 (tool_bar_items): Ditto for tool-bar.
8928
89292002-03-21 Jason Rumney <jasonr@gnu.org>
8930
8931 * w32fns.c (x_clear_image_1): Disable color table code.
8932
89332002-03-21 Kim F. Storm <storm@cua.dk>
8934
8935 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
8936 removed the wrong version of the DEFUN macro; fixed it.
8937
8938 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
8939 Fmember rather than Fmemq).
8940 (Fprovide): Check that subfeatures is a list.
8941
8942 * process.c (QCfeature, QCdatagram): Removed variables.
8943 (QCtype, Qdatagram): New variables.
8944 (network_process_featurep): Removed function.
8945 (Fmake_network_process): Removed :feature check.
8946 Use :type 'datagram instead of :datagram t to create a datagram
8947 socket. This allows us to add other connection types (e.g. raw
8948 sockets) later in a consistent manner.
8949 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
8950 supported subfeatures for feature make-network-process.
8951 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
8952 Intern and staticpro QCtype and Qdatagram.
8953 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
8954
8955 * xfns.c: (QCtype): Remove duplicate declaration and
8956 initialization (is now declared in process.c).
8957
8958 * w32fns.c: (QCtype): Remove duplicate declaration and
8959 initialization (is now declared in process.c).
8960
89612002-03-21 Richard M. Stallman <rms@gnu.org>
8962
8963 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
8964 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
8965 when jumping to `fail' to avoid undoing reg changes in the
8966 last iteration of the loop.
8967 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
8968
8969 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
8970 Depend on process.h.
8971
89722002-03-20 Jason Rumney <jasonr@gnu.org>
8973
8974 Most of the following changes are still conditional on HAVE_IMAGES
8975 which is not set by default on Windows.
8976
8977 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
8978
8979 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
8980 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
8981 (four_corners_best, x_clear_image_1, x_clear_image)
8982 (x_alloc_image_color, postprocess_image)
8983 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
8984 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
8985 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
8986
8987 * w32gui.h (struct XImage): Define.
8988
8989 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
8990 extract mouse co-ordinates.
8991
89922002-03-20 Jason Rumney <jasonr@gnu.org>
8993
8994 * w32.c (init_winsock): Dynamically load new server and UDP
8995 socket functions.
8996 (socket_to_fd): New function.
8997 (sys_socket): Use it.
8998 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
8999 (sys_recvfrom, sys_sendto): New wrapper functions.
9000
9001 * process.c (QCfamily, QCfilter): Remove duplicate declaration
9002 and initialization.
9003
9004 * makefile.w32-in (LIBS): Remove $(WSOCK32).
9005
90062002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
9007
9008 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
9009 Don't use "sun" as a variable, it's a predefined constant on Sun
9010 machines.
9011
90122002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9013
9014 * bytecode.c (Fbyte_code): Revert last change.
9015
90162002-03-19 Kim F. Storm <storm@cua.dk>
9017
9018 * makefile.w32-in (LIBS): Add $(WSOCK32).
9019 From David Ponce <dponce@voila.fr>.
9020
90212002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9022
9023 * process.c (wait_reading_process_input): Move variables `pname'
9024 and `pnamelen' down where they are used.
9025
9026 * bytecode.c (Fbyte_code): Discard unused computed value to
9027 prevent gcc warning.
9028
9029 * lisp.h (Fplist_member): Add prototype.
9030
90312002-03-18 Kim F. Storm <storm@cua.dk>
9032
9033 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
9034 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
9035
9036 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
9037 Remove explicit GNU_LINUX settings for datagram support.
9038
90392002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9040
9041 * process.c (Fmake_network_process): Remove unused variable `sa'.
9042 Doc fix. Add usage:.
9043 (set_socket_options): Remove unused variables `optnum' and `opttype'.
9044
90452002-03-17 Richard M. Stallman <rms@gnu.org>
9046
9047 * xdisp.c (cursor_type_changed): New variable.
9048 (redisplay_internal): Redisplay all windows if cursor_type_changed.
9049 Clear it when clearing windows_or_buffers_changed.
9050 (try_cursor_movement, redisplay_window, try_window_id)
9051 (try_window_reusing_current_matrix): Test cursor_type_changed
9052 along with windows_or_buffers_changed.
9053
9054 * window.h (cursor_type_changed): New variable.
9055
9056 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
9057 not update_mode_lines, and always set it to 1.
9058
9059 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
9060 if no frames needed redrawing.
9061
90622002-03-17 Kim F. Storm <storm@cua.dk>
9063
9064 The following changes add support for network server processes,
9065 datagram connections, and local (unix) sockets.
9066
9067 * process.h (struct Lisp_Process): New member log.
9068 Doc fix: Member command used to indicate stopped network process.
9069 Doc fix: Member childp contains plist for network process.
9070 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
9071
9072 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
9073 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
9074 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
9075 New variables.
9076 (NETCONN1_P): New macro.
9077 (DATAGRAM_SOCKETS): New conditional symbol.
9078 (datagram_address): New array.
9079 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
9080 (status_message): Use concat3.
9081 (Fprocess_status): Add `listen' status to doc string. Return `stop'
9082 for a stopped network process.
9083 (Fset_process_buffer): Update contact plist for network process.
9084 (Fset_process_filter): Ditto. Don't enable input for stopped
9085 network processes. Server must listen, even if filter is t.
9086 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
9087 New functions.
9088 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
9089 (Fprocess_contact): Added KEY argument. Handle datagrams.
9090 (list_processes_1): Optionally show only processes with the query
9091 on exit flag set. Dynamically adjust column widths. Omit tty
9092 column if not needed. Report stopped network processes.
9093 Identify server and datagram network processes.
9094 (Flist_processes): New optional arg `query-only'.
9095 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
9096 (conv_lisp_to_sockaddr, set_socket_options)
9097 (network_process_featurep, unwind_request_sigio): New helper functions.
9098 (Fprocess_datagram_address, Fset_process_datagram_address):
9099 (Fset_network_process_options): New lisp functions.
9100 (Fopen_network_stream): Removed. Now defined in simple.el.
9101 (Fmake_network_process): New lisp function. Code is based on previous
9102 Fopen_network_stream, but heavily reworked with new property list based
9103 argument list, support for datagrams, server processes, and local
9104 sockets in addition to old client-only functionality.
9105 (server_accept_connection): New function.
9106 (wait_reading_process_input): Use it to handle incoming connects.
9107 Do not enable input on a new connection if process is stopped.
9108 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
9109 (send_process): Handle datagram sockets.
9110 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
9111 network process is indicated by setting command field to t .
9112 (Fprocess_send_eof): No-op if datagram connection.
9113 (Fstatus_notify): Don't read input for a stream server socket or a
9114 stopped network process.
9115 (init_process): Initialize datagram_address array.
9116 (syms_of_process): Intern and staticpro new variables, defsubr new
9117 functions.
9118
91192002-03-16 Jason Rumney <jasonr@gnu.org>
9120
9121 * w32fns.c (w32_to_all_x_charsets): Return correct type in
9122 startup case.
9123
91242002-03-16 Richard M. Stallman <rms@gnu.org>
9125
9126 * xdisp.c (redisplay_internal, redisplay_windows):
9127 Use list_of_error to call internal_condition_case_1.
9128 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
9129 so as to catch all errors with no possibility of debugger redisplay.
9130 (list_of_error): New variable.
9131 (syms_of_xdisp): Init and staticpro it.
9132
9133 * print.c (print_object): Delete `\ ' from printed rep of frame.
9134
91352002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
9136
9137 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
9138 until its implementation is fixed.
9139
91402002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9141
9142 * xfns.c (png_load): Remove unused variable `gamma_str'.
9143
91442002-03-14 Richard M. Stallman <rms@gnu.org>
9145
9146 * xfns.c (x_real_positions): Handle failure in XQueryTree.
9147
91482002-03-14 Miles Bader <miles@gnu.org>
9149
9150 * intervals.c (adjust_for_invis_intang): New function.
9151 (set_point_both): Use `adjust_for_invis_intang' to do most of the
9152 work for dealing with invisible+intangible regions. Do so before
9153 and after both forward and backward movements, to handle both
9154 front-sticky and rear-sticky cases.
9155 * textprop.c (text_property_stickiness): Function moved here from
9156 `editfns.c'.
9157 * intervals.h (text_property_stickiness): New declaration.
9158 * editfns.c (char_property_eq): Function removed.
9159 (text_property_stickiness): Function moved to `textprop.c'.
9160
91612002-03-13 Jason Rumney <jasonr@gnu.org>
9162
9163 * config.in: Add STRFTIME_NO_POSIX2.
9164
9165 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
9166 and %OX when underlying strftime does not.
9167
91682002-03-13 Stefan Monnier <monnier@cs.yale.edu>
9169
9170 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
9171 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
9172 line) to avoid annoying flicker.
9173 (xm_scroll_callback): Get rid of the now unnecessary kludge.
9174 (XTread_socket): Mark it static.
9175
9176 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
9177
91782002-03-13 Kim F. Storm <storm@cua.dk>
9179
9180 * puresize.h (BASE_PURESIZE): Increase to 775000.
9181
91822002-03-12 Juanma Barranquero <lektu@terra.es>
9183
9184 * editfns.c (syms_of_editfns): Fix typo.
9185
91862002-03-12 Gerd Moellmann <gerd@gnu.org>
9187
9188 * xsmfns.c: Include stdio.h because termhooks.h needs it.
9189 Include termopt.h for interrupt_input.
9190
91912002-03-11 Andreas Schwab <schwab@suse.de>
9192
9193 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
9194
91952002-03-11 Gerd Moellmann <gerd@gnu.org>
9196
9197 * xterm.c (note_mouse_movement): Put code for
9198 x_autoselect_window_p in #if 0.
9199
9200 * lread.c (Fload): Don't assume that message_with_string uses the
9201 string it is given like a C string.
9202
92032002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9204
9205 * xterm.h (x_session_check_input, x_session_initialize): Declared.
9206
9207 * xterm.c: (XTread_socket): Add call to x_session_check_input and
9208 x_session_have_connection.
9209 (x_initialize): Add call to x_session_initialize.
9210
9211 * termhooks.h (enum event_kind): Add save_session_event.
9212
9213 * keyboard.c: Add Emacs event save_session_event.
9214
9215 * emacs.c (main): Add call to syms_of_xsmfns.
9216
9217 * lisp.h: Declare syms_of_xsmfns as extern.
9218
9219 * config.in: Add HAVE_X_SM.
9220
9221 * Makefile.in (LIBXT): Add -lSM -lICE
9222 if HAVE_X_SM and not USE_X_TOOLKIT.
9223 (XOBJ): New file xsmfns.c added.
9224
9225 * xsmfns.c: New file for X session management.
9226
92272002-03-09 Jason Rumney <jasonr@gnu.org>
9228
9229 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
9230 read-only when setting modified time.
9231
92322002-03-08 Gerd Moellmann <gerd@gnu.org>
9233
9234 * xdisp.c (move_it_vertically_backward): At the end of the function,
9235 when moving forward by lines, treat terminal frames specially.
9236
9237 * keyboard.c (echo_char): Make sure to add a separator between
9238 keys even if echo_dash hasn't been called.
9239
9240 * xdisp.c: Use new string macros.
9241 (update_echo_area): Pass number of bytes to message3 instead of
9242 number of chars.
9243 (set_message_1): Don't access a string's size_byte directly.
9244 (decode_mode_spec_coding): Use number of bytes of eoltype string
9245 instead number of chars.
9246
9247 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
9248
92492002-03-08 Juanma Barranquero <lektu@terra.es>
9250
9251 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
9252 24-bit.
9253
92542002-03-06 Jason Rumney <jasonr@gnu.org>
9255
9256 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
9257
92582002-03-06 Gerd Moellmann <gerd@gnu.org>
9259
9260 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
9261 (cancel_echoing, echo_length, echo_truncate): Changed to
9262 work with new kboard definition.
9263 (echo_now): Use message3_nolog instead of message2_nolog.
9264
9265 * alloc.c (mark_kboards): Mark echo_string.
9266
9267 * keyboard.h (ECHOBUFSIZE): Removed.
9268 (struct kboard): Member echoptr removed, member echobuf renamed
9269 to echo_string.
9270
9271 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
9272 message3 instead of message2 to display the message using STRING's
9273 text properties.
9274
92752002-03-05 Andreas Schwab <schwab@suse.de>
9276
9277 * xdisp.c (hscroll_margin): Change to EMACS_INT.
9278
92792002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
9280
9281 * frame.c (default-frame-alist): Explain that setting it doesn't
9282 affect existing frames.
9283
92842002-03-05 Stefan Monnier <monnier@cs.yale.edu>
9285
9286 * indent.c (skip_invisible): Fix my brain fart.
9287
9288 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
9289
92902002-03-04 Stefan Monnier <monnier@cs.yale.edu>
9291
9292 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
9293 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
9294 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
9295 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
9296 and variables to use EMACS_INT instead of just int.
9297
9298 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
9299
93002002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
9301
9302 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
9303 environment, pass it down with corrected value.
9304
93052002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9306
9307 * lread.c (read_filtered_event): Do not call start_hourglass
9308 before returning.
9309
93102002-03-04 Juanma Barranquero <lektu@terra.es>
9311
9312 * w32term.c (x_display_and_set_cursor): Fix typo.
9313
93142002-03-03 Richard M. Stallman <rms@gnu.org>
9315
9316 * fileio.c (Fmake_temp_name): Doc fix.
9317
93182002-03-03 Gary Wong <gtw@gnu.org>
9319
9320 * termcap.c [!emacs]: Replace ospeed for building standalone
9321 libtermcap, for binary compatibility.
9322
9323 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
9324
93252002-03-03 Richard M. Stallman <rms@gnu.org>
9326
9327 * xrdb.c (file_p): Rename arg `path' to `filename'.
9328
9329 * abbrev.c (Fexpand_abbrev): Increment plist as use count
9330 only if it is an integer.
9331
9332 * xfns.c (png_load): Set screen_gamma based on f->gamma.
9333 If png_get_sRGB gives an answer, call png_set_gamma
9334 using the default image gamma value.
9335
9336 * lread.c (read1): When reading from a file, default string to
9337 multibyte only if it has some multibyte characters.
9338
9339 * print.c (print_object): Output multibyte chars 128...255
9340 using \x even if ! print_escape_multibyte.
9341
9342 * xdisp.c (display_mode_element): Move the places where
9343 bytepos, charpos, this, and lisp_string are set.
9344 Use lisp_string to set bytepos.
9345
9346 * xdisp.c (redisplay_internal):
9347 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
9348
9349 * xdisp.c (display_mode_element): Merge properties specified with
9350 :propertize onto those that come with the string.
9351
93522002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
9353
9354 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
9355 automatic-hscrolling. Users changed.
9356 <hscroll-margin>: Renamed from automatic-hscroll-margin.
9357 Users changed.
9358 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
9359
93602002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
9361
9362 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
9363
93642002-03-02 Kim F. Storm <storm@cua.dk>
9365
9366 * window.c (Fminibuffer_selected_window): New function.
9367 (syms_of_window): Defsubr it.
9368
93692002-03-01 Kim F. Storm <storm@cua.dk>
9370
9371 * window.h (struct window): New member phys_cursor_width.
9372
9373 * window.c (make_window, replace_window): Init phys_cursor_width.
9374
9375 * xterm.c (x_display_and_set_cursor): Blink box cursor using
9376 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
9377
9378 * w32term.c (x_display_and_set_cursor): Blink box cursor using
9379 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
9380
9381 * lisp.h (GCPRO6): New macro.
9382
9383 * process.c (Fopen_network_stream): Use GCPRO6.
9384
93852002-03-01 Kim F. Storm <storm@cua.dk>
9386
9387 * process.c (Qconnect, Qfailed): New variables.
9388 (syms_of_process): Intern and staticpro them.
9389 (Fprocess_status): Document connect and failed return values.
9390 [NON_BLOCKING_CONNECT]: New conditional.
9391 (connect_wait_mask, num_pending_connects): New variables.
9392 (status_message): Convert Qfailed status.
9393 (Fopen_network_stream): Added support for non-blocking connect.
9394 New optional args: filter, sentinel, non_blocking. Doc updated.
9395 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
9396 (deactivate_process): Handle pending non-blocking connect.
9397 (wait_reading_process_input): Poll for status of non-blocking
9398 connects. Exec sentinel directly when connect succeeds.
9399 (status_notify): Don't read process output if not yet connected.
9400
94012002-02-28 Kim F. Storm <storm@cua.dk>
9402
9403 * window.c: (minibuf_selected_window): Renamed from
9404 Vminibuf_selected_window. Users changed.
9405 (syms_of_window): Staticpro it.
9406
94072002-02-26 Kim F. Storm <storm@cua.dk>
9408
9409 The following changes add a new Vminibuf_selected_window variable
9410 which is similar to Vminibuf_scroll_window, but which is only set
9411 on entry to the minibuffer (from a non-minibuffer window):
9412
9413 * window.c: (Vminibuf_selected_window): New variable.
9414 (struct save_window_data): New member minibuf_selected_window.
9415 (Fset_window_configuration): Restore Vminibuf_selected_window.
9416 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
9417 Set minibuf_scroll_window member to nil if minibuf_level is 0.
9418 (compare_window_configurations): Compare minibuf_selected_window.
9419
9420 * window.h: (Vminibuf_selected_window): Declare extern.
9421
9422 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
9423 entry to minibuffer or on entry from a non-minibuffer window.
9424
9425 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
9426 Vminibuf_selected_window instead of Vminibuf_scroll_window.
9427
9428 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
9429 instead of Vminibuf_scroll_window when deciding in which window
9430 the region should be highlighted. Consequently, the region remains
9431 highlighteded even when a completion buffer is also displayed.
9432
94332002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
9434
9435 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
9436
9437 * xselect.c (Qcompound_text_with_extensions): Renamed from
9438 Qcompound_text_no_extensions.
9439 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
9440
94412002-02-26 Juanma Barranquero <lektu@terra.es>
9442
9443 * w32proc.c (syms_of_ntproc): Doc fix.
9444
94452002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9446
9447 * intervals.h: Include "dispextern.h" unconditionally.
9448
94492002-02-24 Jason Rumney <jasonr@gnu.org>
9450
9451 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
9452 and disp-table.elc.
9453 (lisp): Add emacs-lisp/backquote.elc.
9454
94552002-02-24 Kim F. Storm <storm@cua.dk>
9456
9457 * keymap.c (Flookup_key): Fixed problem in 2001-12-28 patch:
9458 The validation of the event type was too strict as it didn't
9459 allow string events; buffer names are used in bindings for
9460 menu-bar-select-buffer (see `menu-bar-update-buffers').
9461
94622002-02-23 Kim F. Storm <storm@cua.dk>
9463
9464 The following changes rework my patch of 2002-02-06 which
9465 added command remapping by entering the commands directly into
9466 the keymaps. Now, command remapping uses an explicit `remap'
9467 prefix in the keymaps, i.e. [remap COMMAND].
9468
9469 * keymap.c (Qremap, remap_command_vector): New variables.
9470 (is_command_symbol): Removed function.
9471 (Fdefine_key): No longer accept a symbol for KEY.
9472 Added validation of [remap COMMAND] argument for KEY.
9473 The DEF is no longer required to be a symbol when remapping a command.
9474 (Fremap_command): New function to remap command through keymaps.
9475 (Flookup_key): Perform command remapping initiated by
9476 Fremap_command directly for speed.
9477 (Fkey_binding): Use Fremap_command for command remapping.
9478 (where_is_internal): Handle new command remapping representation.
9479 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
9480 staticpro them. Defsubr Fremap_command.
9481
9482 * keymap.h (Fremap_command): Declare extern.
9483 (is_command_symbol): Remove extern.
9484
9485 * keyboard.c (command_loop_1): Use Fremap_command for command
9486 remapping; now try command remapping for all symbols.
9487
94882002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
9489
9490 * coding.h (run_pre_post_conversion_on_str): Add prototype.
9491
94922002-02-23 Jason Rumney <jasonr@gnu.org>
9493
9494 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
9495 on the string before encoding it.
9496 (Fw32_get_clipboard_data): Run post-read-conversion on the string
9497 after decoding it.
9498
9499 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
9500
95012002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9502
9503 * w32term.c (enter_timestamp): Remove unused static variable to
9504 prevent warning.
9505
9506 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
9507
95082002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
9509
9510 * w16select.c (Fw16_get_clipboard_data): Fix last change.
9511
9512 * xselect.c (selection_data_to_lisp_data): Fix last change.
9513
95142002-02-22 Jason Rumney <jasonr@gnu.org>
9515
9516 * w32term.h (struct w32_output): New member menu_command_in_progress.
9517
9518 * w32menu.c (menubar_selection_callback): Free the menu and
9519 clear the menu_command_in_progress flag.
9520
9521 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
9522 (menu_free_timer): New variable.
9523 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
9524 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
9525 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
9526 menu command is in progress.
9527 <WM_COMMAND>: Set the menu_command_in_progress flag.
9528 Kill any menu_free_timer that is running.
9529
9530 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
9531 Call ExtTextOutA rather than ExtTextOut.
9532
95332002-02-22 Eli Zaretskii <eliz@gnu.org>
9534
9535 * puresize.h (BASE_PURESIZE): Increase to 755000.
9536
95372002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
9538
9539 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
9540 on the string before encoding it.
9541 (Fw16_get_clipboard_data): Run post-read-conversion on the string
9542 after decoding it.
9543
95442002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
9545
9546 Support for ICCCM Extended Segments in X selections:
9547
9548 * xselect.c <Qcompound_text_no_extensions>: New variable.
9549 (syms_of_xselect): Intern and staticpro it.
9550 (selection_data_to_lisp_data): Run post-read-conversion on decoded
9551 selection text.
9552 (lisp_data_to_selection_data): If next-selection-coding-system is
9553 compound-text-no-extensions, set the type of selection to be
9554 compound-text.
9555
9556 * xterm.h (x_encode_text): Update prototype.
9557
9558 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
9559 callers changed. If SELECTIONP is non-zero, run the
9560 pre-write-conversion function before encoding the selection text.
9561
95622002-02-21 Kim F. Storm <storm@cua.dk>
9563
9564 * frame.c (syms_of_frame): Change mouse-highlight default to t.
9565
9566 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
9567 Correct composing of language-change event.
9568
95692002-02-20 Kim F. Storm <storm@cua.dk>
9570
9571 * keyboard.c (menu_bar_items): Don't include keymap or local-map
9572 bindings at PT when building menu (the menu is not updated often
9573 enough for this to work reliable).
9574 (tool_bar_items): Likewise.
9575 (current_active_maps): Removed unused (and buggy) function.
9576
95772002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9578
9579 * xfns.c (gif_load): Use correct width and height for GIF images.
9580
95812002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
9582
9583 * floatfns.c (Fatan): Accept an optional second arg and call
9584 atan2 if passed 2 args.
9585
95862002-02-18 Jason Rumney <jasonr@gnu.org>
9587
9588 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
9589
95902002-02-17 Jason Rumney <jasonr@gnu.org>
9591
9592 * w32term.c (x_autoselect_window_p): New variable.
9593 (syms_of_w32term): DEFVAR_BOOL and initialize it.
9594 (note_mouse_movement): Use it.
9595
9596 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
9597
9598 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
9599
9600 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
9601 New variables.
9602 (syms_of_w32fns): Intern and staticpro them.
9603 (x_frame_parms) <"fullscreen">: New parameter.
9604 (x_fullscreen_move, x_set_fullscreen): New functions.
9605 (x_set_frame_parameters): Support Qfullscreen.
9606 (x_real_positions): Save x/y_pixels_diff frame params.
9607 (x_figure_window_size): Support full-screen frames.
9608 (Fx_create_frame): Default the fullscreen parameter.
9609
9610 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
9611 (x_fullscreen_adjust): New functions.
9612 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
9613 fullscreen. Call x_check_fullscreen_move, and set the
9614 want_fullscreen member of output_data.w32
9615 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
9616
9617 * w32term.h: New enum for FULLSCREEN_* constants.
9618 (struct w32_output): New members want_fullscreen, x_pixels_diff,
9619 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
9620 (x-fullscreen-adjust): New prototype.
9621
96222002-02-17 Kim F. Storm <storm@cua.dk>
9623
9624 * frame.c: (Vmouse_highlight): New variable.
9625 (syms_of_frame): DEFVAR_LISP it.
9626
9627 * frame.h: (Vmouse_highlight): Declare extern.
8a8e19a3 9628
048addec 9629 * xterm.h (struct x_display_info): Add mouse_face_hidden.
8a8e19a3 9630
048addec
JD
9631 * xterm.c (disable_mouse_highlight): Removed variable.
9632 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
9633 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
9634 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
9635 and on after keyboard input.
9636 (x_term_init): Initialize mouse_face_hidden.
8a8e19a3 9637
048addec 9638 * msdos.h (struct display_info): Add mouse_face_hidden.
8a8e19a3 9639
048addec
JD
9640 * msdos.c (disable_mouse_highlight): Removed variable.
9641 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
9642 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
9643 (internal_terminal_init): Initialize mouse_face_hidden.
9644 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
9645 and on after keyboard input.
4f1b1854 9646
048addec 9647 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
4f1b1854 9648
048addec
JD
9649 * w32term.c (disable_mouse_highlight): Removed variable.
9650 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
9651 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
9652 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
9653 and on after keyboard input.
9654 (w32_initialize_display_info): Initialize mouse_face_hidden.
4f1b1854 9655
048addec 96562002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
4f1b1854 9657
048addec
JD
9658 * msdos.c (last_mouse_window): New variable.
9659 (dos_rawgetc): Fix last change--if the mouse is in the same window
9660 as recorded in last_mouse_window, don't select this window.
5cb6905d 9661
048addec 9662 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
5cb6905d 9663
048addec
JD
9664 * msdos.c (x_autoselect_window_p): New variable.
9665 (syms_of_msdos): Defvar it.
9666 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
9667 which the last mouse movement occured, unless it is already selected.
437dfb9f 9668
048addec
JD
9669 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
9670 New variables.
9671 (syms_of_xdisp): DEVFAR them.
9672 (hscroll_window_tree): Use automatic_hscroll_margin and
9673 Vautomatic_hscroll_step to compute the amount of window scrolling.
437dfb9f 9674
048addec 96752002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9f696a00 9676
048addec
JD
9677 * xterm.c (x-autoselect-window): New variable.
9678 (note_mouse_movement): Use it.
9f696a00 9679
048addec 9680 * keyboard.c: Do not include "systime.h" twice.
d57966d7 9681
048addec 96822002-02-15 Andreas Schwab <schwab@suse.de>
d57966d7 9683
048addec 9684 * puresize.h (BASE_PURESIZE): Increase to 9/5.
d57966d7 9685
048addec 9686 * alloc.c (NSTATICS): Increase to 1280.
74779f52 9687
048addec 96882002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
74779f52 9689
048addec 9690 * alloc.c (NSTATICS): Bump to 1026.
a474d59c 9691
048addec
JD
9692 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
9693 (Vx_super_keysym): New variables.
9694 (syms_of_xterm): DEFVAR_LISP them.
9695 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
9696 variables to determine which keys to use for the various modifiers.
a474d59c 9697
048addec 96982002-02-13 Kim F. Storm <storm@cua.dk>
fbb70ad9 9699
048addec
JD
9700 * window.c: (Vmode_line_in_non_selected_windows): Removed.
9701 (mode_line_in_non_selected_windows): New variable.
9702 (syms_of_window): DEFVAR_BOOL it.
fbb70ad9 9703
048addec
JD
9704 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
9705 Use mode_line_in_non_selected_windows.
9706 (mode_line_in_non_selected_windows): Declare extern.
9707 (Vmode_line_in_non_selected_windows): Removed extern.
2d10309f 9708
048addec 97092002-02-13 Richard M. Stallman <rms@gnu.org>
2d10309f 9710
048addec
JD
9711 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
9712 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
9713 (Fclear_this_command_keys): Doc fixes.
2d10309f 9714
048addec
JD
9715 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
9716 (update_face_from_frame_parameter): Increment face_change_count
9717 and windows_or_buffers_changed to force redisplay using changed faces.
7f2cddf3 9718
048addec
JD
9719 * xdisp.c (QCpropertize): New variable.
9720 (mode_line_proptrans_alist): New variable.
9721 (display_mode_element): New arg PROPS; all calls changed.
9722 Implement this, for strings.
9723 Handle literal output of strings by sharing the
9724 main-line code for strings, using local var `literal'.
9725 Handle :propertize feature.
9726 (syms_of_xdisp): Initialze and staticpro QCpropertize and
9727 mode_line_proptrans_alist.
0b1e6b54 9728
048addec 97292002-02-11 Kim F. Storm <storm@cua.dk>
7f2cddf3 9730
048addec
JD
9731 * window.c: (Vmode_line_in_non_selected_windows): New variable.
9732 (syms_of_window): DEFVAR_LISP it.
7f2cddf3 9733
048addec
JD
9734 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
9735 (CURRENT_MODE_LINE_FACE_ID): Use it.
9736 (Vmode_line_in_non_selected_windows): Declare extern.
e17144de 9737
048addec
JD
9738 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
9739 to get mode line face.
e17144de 9740
048addec 97412002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 9742
048addec
JD
9743 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
9744 variables; cus-start.el doesn't need them anymore.
44368f8f 9745
048addec 97462002-02-09 Kim F. Storm <storm@cua.dk>
f884b6f4 9747
048addec
JD
9748 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
9749 reduction. This fixes a display problem where stray newlines were
9750 inserted in the window (corrected by C-l). Clarified code (IMHO).
6637c996 9751
048addec 97522002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 9753
048addec 9754 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
6637c996 9755
048addec 9756 * xdisp.c (display_mode_lines): Fix last change.
453c5510 9757
048addec 97582002-02-09 Jason Rumney <jasonr@gnu.org>
453c5510 9759
048addec
JD
9760 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
9761 match each other.
9762 (w32_load_system_font): Prevent Cleartype fonts from loading.
9763 (Fx_show_tip): Ensure tip frames are above other topmost windows.
d1d070e3 9764
048addec 97652002-02-09 Kim F. Storm <storm@cua.dk>
d1d070e3 9766
048addec
JD
9767 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
9768 (CURRENT_MODE_LINE_HEIGHT): Use it.
9769 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 9770
048addec
JD
9771 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
9772 (pos_visible_p, handle_face_prop): Likewise.
9773 (display_mode_lines): Likewise, but for the real selected window.
9774 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 9775
048addec
JD
9776 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
9777 in non-selected windows.
9778 (realize_basic_faces): Realize it.
9779 (syms_of_term): Intern and staticpro it.
308dd672 9780
048addec 97812002-02-08 Kim F. Storm <storm@cua.dk>
edde72f6 9782
048addec
JD
9783 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
9784 Changed mail addresses to emacs-devel@gnu.org.
308dd672 9785
048addec 97862002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
3c1e6b46 9787
048addec
JD
9788 * fileio.c (Fsubstitute_in_file_name): If the file name includes
9789 ~user, and there's no such user, don't discard everything before ~user.
03950b5b 9790
048addec 9791 * floatfns.c (Fround): Doc fix.
3c1e6b46 9792
048addec 97932002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c1e11810 9794
048addec 9795 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
c1e11810 9796
048addec 97972002-02-07 Stefan Monnier <monnier@cs.yale.edu>
1996baee 9798
048addec 9799 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
1996baee 9800
048addec 98012002-02-07 Kim F. Storm <storm@cua.dk>
0065bb74 9802
048addec
JD
9803 * keymap.c (where_is_internal): Only check whether definition is
9804 remapped if it fulfills is_command_symbol.
0065bb74 9805
048addec 98062002-02-07 Andreas Schwab <schwab@suse.de>
0065bb74 9807
048addec 9808 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
b5cb6072 9809
048addec 9810 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
b5cb6072 9811
048addec 98122002-02-06 Kim F. Storm <storm@cua.dk>
15fff01d 9813
048addec
JD
9814 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
9815 defining command remapping. Doc updated.
9816 (Flookup_key): Remap command through keymap if KEY is a symbol.
9817 (is_command_symbol): New function.
9818 (Fkey_binding): Use it. New optional argument NO-REMAP.
9819 Doc updated. Callers changed. Perform command remapping via
9820 recursive call unless that arg is non-nil.
9821 (where_is_internal): New argument no_remap. Callers changed.
9822 Call recursively to find original key bindings for a remapped
9823 comand unless that arg is non-nil.
9824 (Fwhere_is_internal): New optional argument NO-REMAP.
9825 Doc updated. Callers changed. Pass arg to where_is_internal.
0065bb74 9826
048addec
JD
9827 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
9828 (is_command_symbol): Added prototype.
0d8466cc 9829
048addec
JD
9830 * keyboard.c (Vthis_original_command): New variable.
9831 (syms_of_keyboard): DEFVAR_LISP it.
9832 (command_loop_1): Set it, and perform command remapping.
15fff01d 9833
048addec 98342002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2fae9111 9835
048addec 9836 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
2d6c1fc0 9837
048addec 98382002-02-06 Jason Rumney <jasonr@gnu.org>
07025a55 9839
048addec 9840 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
07025a55 9841
048addec 98422002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
07025a55 9843
048addec 9844 * charset.c (get_charset_id): Use if-else instead of ?:.
3a232704 9845
048addec 98462002-02-06 Richard M. Stallman <rms@gnu.org>
539e92ad 9847
048addec 9848 * filelock.c (S_ISLNK): Define if not defined.
3a232704 9849
048addec 98502002-02-03 Richard M. Stallman <rms@gnu.org>
0cb8bb48 9851
048addec 9852 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
539e92ad 9853
048addec
JD
9854 * lread.c (read1): Redesign strategy for force_multibyte and
9855 force_singlebyte. Now is_multibyte records whether read_buffer
9856 is multibyte. Encountering any multibyte character makes it so.
4e02881b 9857
048addec 98582002-02-02 Stefan Monnier <monnier@cs.yale.edu>
4e02881b 9859
048addec
JD
9860 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
9861 with the same sequence, map that sequence to f10 rather than f0.
1ab964d7 9862
048addec 98632002-02-03 Andreas Schwab <schwab@suse.de>
1ab964d7 9864
048addec
JD
9865 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
9866 latter never being defined on GNU/Linux.
749f499f 9867
048addec 98682002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
749f499f 9869
048addec
JD
9870 * xfaces.c (realize_default_face): Don't set the weight and slant of
9871 the default face to Qnormal, unless these attributes are unspecified.
b5d9aaba 9872
048addec 98732002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3a232704 9874
048addec
JD
9875 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
9876 Call cancel_hourglass unconditionally.
d0fd26dd 9877
048addec
JD
9878 * eval.c (Fsignal): Remove duplicated declaration of
9879 the variable `display_hourglass_p'.
b4c45162 9880
048addec 98812002-01-31 Richard M. Stallman <rms@gnu.org>
d0fd26dd 9882
048addec 9883 * editfns.c (region_limit): Nicer error message.
c95eaa61 9884
048addec
JD
9885 * coding.c (decode_composition_emacs_mule):
9886 Give up if NCOMPONENT gets too large to index `component'.
c95eaa61 9887
048addec
JD
9888 * callint.c (check_mark): New arg to specify clearer error message.
9889 Callers changed.
c95eaa61 9890
048addec 98912002-01-27 Richard M. Stallman <rms@gnu.org>
c95eaa61 9892
048addec 9893 * minibuf.c (Fcompleting_read): Doc fix.
c95eaa61 9894
048addec 98952002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c95eaa61 9896
048addec
JD
9897 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
9898 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
9899 Fix doc-strings.
c95eaa61 9900
048addec 99012002-01-26 Richard M. Stallman <rms@gnu.org>
c95eaa61 9902
048addec 9903 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
c95eaa61 9904
048addec
JD
9905 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
9906 and scroll_up_aggressively.
c95eaa61 9907
048addec 99082002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
31877e0a 9909
048addec 9910 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
31877e0a 9911
048addec 99122002-01-25 Stefan Monnier <monnier@cs.yale.edu>
e2c3786a 9913
048addec
JD
9914 * textprop.c (Fnext_property_change, Fnext_single_property_change)
9915 (Fprevious_property_change, Fprevious_single_property_change):
9916 Stay within the narrowed-buffer boundaries.
e2c3786a 9917
048addec 99182002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
c513fc03 9919
048addec
JD
9920 * term.c (Ftty_display_color_cells): New function.
9921 (syms_of_term): Defsubr it.
9922 (Ftty_display_color_cells, Ftty_display_color_p): Change the
9923 argument name to DISPLAY. Doc fix.
bf794306 9924
048addec
JD
9925 * dispextern.h: Add prototype for set_tty_color_mode and
9926 tty_setup_colors.
bf794306 9927
048addec 99282002-01-24 Jason Rumney <jasonr@gnu.org>
bf794306 9929
048addec
JD
9930 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
9931 If region left to draw is not what was expected, mark the frame as
9932 garbaged.
62582985 9933
048addec
JD
9934 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
9935 Combine the regions returned by BeginPaint and GetUpdateRect.
c513fc03 9936
048addec 99372002-01-23 Jason Rumney <jasonr@gnu.org>
3509a04c 9938
048addec
JD
9939 * w32term.c (x_update_window_begin): Only hide caret if
9940 w32_use_visible_system_caret is set.
9941 (x_update_window_end): Only show caret if
9942 w32_use_visible_system_caret is set.
9943 (syms_of_w32term): Handle SystemParametersInfo call failing.
3509a04c 9944
048addec 9945 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
3509a04c 9946
048addec 99472002-01-22 Richard M. Stallman <rms@gnu.org>
3509a04c 9948
048addec
JD
9949 * unexelf.c (unexec): Define n so as to cause compilation error
9950 for the code where people have often written n instead of nn.
1e9a6186 9951
048addec 9952 * .gdbinit (hookpost-run): Defined.
1e9a6186 9953
048addec 99542002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e4e34e31 9955
048addec 9956 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
e4e34e31 9957
048addec 99582002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4521d1fc 9959
048addec
JD
9960 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
9961 if fullscreen is being set.
7c75be36 9962
048addec 99632002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4521d1fc 9964
048addec
JD
9965 * minibuf.c (Fminibuffer_contents)
9966 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
9967 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
4521d1fc 9968
048addec 99692002-01-21 Richard M. Stallman <rms@gnu.org>
4521d1fc 9970
048addec 9971 * window.c (check_frame_size): Fix minimum height calculation.
93dec019 9972
048addec 99732002-01-20 Ken Raeburn <raeburn@gnu.org>
93dec019 9974
048addec
JD
9975 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
9976 height before comparison.
9977 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
905cc05a 9978
048addec 99792002-01-20 Jason Rumney <jasonr@gnu.org>
2ed06289 9980
048addec
JD
9981 * w32term.c (w32_system_caret_width): Remove.
9982 (w32_use_visible_system_caret): New user flag.
9983 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
9984 Windows reports a screen reader running.
9985 (x_update_window_begin): Hide the system caret.
9986 (x_update_window_end): Show the system caret.
9987 (x_display_and_set_cursor): Don't draw a cursor when
9988 w32_use_visible_system_caret is set. Do not adjust width.
0e79d667 9989
048addec
JD
9990 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
9991 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
9992 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
9993 the user requests it. Use system default width when creating.
9994 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
0e79d667 9995
048addec
JD
9996 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
9997 New window messages.
905cc05a 9998
048addec 99992002-01-20 Richard M. Stallman <rms@gnu.org>
82a7ab23 10000
048addec 10001 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
d75bec6a 10002
048addec 100032002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
52dcb476 10004
048addec 10005 * doprnt.c (doprnt1): Fix typos in error call.
82a7ab23 10006
048addec 100072002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
82a7ab23 10008
048addec 10009 * unexelf.c (unexec) [__sgi]: Support the .got sections.
82a7ab23 10010
048addec 100112002-01-20 Jason Rumney <jasonr@gnu.org>
4d0fa4f3 10012
048addec
JD
10013 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
10014 that Windows returns. If a double check fails, try to guess how
10015 ExtTextOut is going to act.
4d0fa4f3 10016
048addec
JD
10017 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
10018 in place of stricmp.
10019 (w32_list_synthesized_fonts): Removed.
10020 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
10021 (struct enumfont_t): New element; list.
10022 (enum_font_cb2): List all style and charset variations of a font.
10023 (Fw32_select_font): New optional argument; include_proportional.
10024 Exclude vertical fonts. Exclude proportional fonts unless
10025 include_proportional is non-nil.
10026 (w32_enable_synthesized_fonts): Change to a boolean.
10027 (Fw32_send_sys_command): Doc fix.
493faf20 10028
048addec 100292002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
493faf20 10030
048addec
JD
10031 * dispnew.c (update_frame): Move the variable `tem' to the block
10032 where it is used.
4971e491 10033
048addec 100342002-01-19 Jason Rumney <jasonr@gnu.org>
4971e491 10035
048addec
JD
10036 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
10037 call to face-set-after-frame-default.
4971e491 10038
048addec 100392002-01-18 Richard M. Stallman <rms@gnu.org>
d911a0fa 10040
048addec
JD
10041 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
10042 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
d911a0fa 10043
048addec 100442002-01-17 Richard M. Stallman <rms@gnu.org>
d911a0fa 10045
048addec
JD
10046 * window.c (enlarge_window): When exceeding size of parent,
10047 directly delete all the siblings instead of trying to resize it.
201c831a 10048
048addec 100492002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
201c831a 10050
048addec 10051 * term.c (set_tty_color_mode): Remove unused variable `tem'.
201c831a 10052
048addec 100532002-01-16 Henrik Enberg <henrik@enberg.org>
34e39c95 10054
048addec 10055 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
34e39c95 10056
048addec 100572002-01-16 Kim F. Storm <storm@cua.dk>
d77fbc16 10058
048addec
JD
10059 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
10060 is invisible. This can happen if cursor is on top line of a
10061 window, and we switch to a buffer with a header line.
d77fbc16 10062
048addec 10063 * w32term.c (x_erase_phys_cursor): Ditto.
61e3b944 10064
048addec 100652002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
61e3b944 10066
048addec
JD
10067 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
10068 `dont_resize' only when used.
61e3b944 10069
048addec 10070 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
70da46c3 10071
048addec 100722002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
70da46c3 10073
048addec
JD
10074 * xdisp.c (display_mode_element): When computing charpos, depend
10075 on multibyteness of elt, not the text in field.
8af01033 10076
048addec 100772002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8af01033 10078
048addec
JD
10079 * buffer.c (Fkill_all_local_variables):
10080 Increment `update_mode_lines' only once.
7363986a 10081
048addec 100822002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7363986a 10083
048addec
JD
10084 * lisp.h (adjust_after_replace_noundo)
10085 (Fupdate_coding_systems_internal): Add prototypes.
d9e6c4b1 10086
048addec 10087 * sound.c (Fplay_sound): Initialize header_size also for :data case.
d20fc48a 10088
048addec 100892002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
d9e6c4b1 10090
048addec
JD
10091 Support for the --color command-line argument and tty-color-mode
10092 frame parameter:
f1a85b89 10093
048addec
JD
10094 * term.c (tty_default_color_capabilities, tty_setup_colors)
10095 (set_tty_color_mode): New functions.
10096 (term_init): Call tty_default_color_capabilities.
10097 (Qtty_color_mode_alist): New variable.
10098 (syms_of_term): Intern and staticpro it.
f1a85b89 10099
048addec
JD
10100 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
10101 frames.
10102 (do_switch_frame): For termcap frames, switch the tty
10103 color mode as specified by the frame's parameters.
10104 (Qtty_color_mode): New variable.
10105 (syms_of_frame): Intern and staticpro it.
3a62677f 10106
048addec
JD
10107 * emacs.c (USAGE2): Add the --color option.
10108 (standard_args): Ditto.
72244db2 10109
048addec
JD
101102002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10111
10112 * xterm.h (struct x_output): New members want_fullscreen,
10113 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
10114 y_pixels_outer_diff.
10115 New enum for FULLSCREEN_* constants.
10116 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
10117 is NULL.
10118 (x_fullscreen_adjust): Add prototype.
3a62677f 10119
048addec
JD
10120 * emacs.c (USAGE2): Add the new full-screen arguments.
10121 (standard_args): Ditto.
3a62677f 10122
048addec
JD
10123 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
10124 New variables.
10125 (syms_of_xfns): Intern and staticpro them.
10126 (x_frame_parms) <"fullscreen">: New parameter.
10127 (x_fullscreen_move, x_set_fullscreen): New functions.
10128 (x_set_frame_parameters): Support for Qfullscreen.
10129 (x_real_positions): More accurate computation of the frame position.
10130 (x_figure_window_size): Support full-screen frames.
10131 (Fx_create_frame): Default the fullscreen parameter.
3a62677f 10132
048addec
JD
10133 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
10134 (XTread_socket) <Expose>: Call x_check_fullscreen.
10135 <ConfigureNotify>: Don't resize to fullscreen.
10136 Call x_check_fullscreen_move, and set the want_fullscreen member of
10137 output_data.x.
3a62677f 10138
048addec 101392002-01-13 Jason Rumney <jasonr@gnu.org>
9d113d9d 10140
048addec
JD
10141 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
10142 for mice with more than 3 buttons.
b8523839 10143
048addec
JD
10144 * w32term.c (parse_button): New parameter xbutton. Callers changed.
10145 (w32_read_socket): Handle new "XBUTTON" messages.
9464dea4 10146
048addec
JD
10147 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
10148 (syms_of_w32fns): DEFVAR_BOOL it.
10149 (w32_wnd_proc): Handle new "XBUTTON" messages.
9d113d9d 10150
048addec 101512002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
70ec1377 10152
048addec 10153 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
70ec1377 10154
048addec 101552002-01-13 Andreas Schwab <schwab@suse.de>
92f7dd37 10156
048addec 10157 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
92f7dd37 10158
048addec 101592002-01-12 Andreas Schwab <schwab@suse.de>
c93674bb 10160
048addec
JD
10161 * .gdbinit (xbuffer): Remove address operator since data is now a
10162 pointer.
c93674bb 10163
048addec 101642002-01-11 Richard M. Stallman <rms@gnu.org>
59b59892 10165
048addec 10166 * insdel.c (adjust_after_replace_noundo): New function.
59b59892 10167
048addec 10168 * coding.c (code_convert_region): Don't copy old text if undo disabled.
c6ea2775 10169
048addec 101702002-01-09 Jason Rumney <jasonr@gnu.org>
c6ea2775 10171
048addec
JD
10172 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
10173 when checking for multiple frames.
91175673 10174
048addec 101752002-01-08 Richard M. Stallman <rms@gnu.org>
91175673 10176
048addec
JD
10177 * window.c (delete_window): Rewrite the code for changing the
10178 selected window to handle the case where WINDOW is not a leaf.
91175673 10179
048addec 101802002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
e0fead5d 10181
048addec
JD
10182 * process.c (send_process): Set src_multibyte to 1 after the call
10183 top setup_coding_system, not before the call.
e0fead5d 10184
048addec 101852002-01-07 Jason Rumney <jasonr@gnu.org>
e0fead5d 10186
048addec
JD
10187 * xmenu.c (set_frame_menubar, xmenu_show):
10188 (xdialog_show): Initialize wv->help to Qnil.
c186cdb3 10189
048addec
JD
10190 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
10191 (w32_dialog_show): Initialize wv->help to Qnil.
c186cdb3 10192
048addec 101932002-01-06 Jason Rumney <jasonr@gnu.org>
c186cdb3 10194
048addec 10195 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
c186cdb3 10196
048addec 10197 * w32menu.c (w32_menu_display_help): Revert last change.
58cfce98 10198
048addec 10199 * xmenu.c (menu_highlight_callback): Revert last change.
58cfce98 10200
048addec 102012002-01-06 Andreas Schwab <schwab@suse.de>
62854fe2 10202
048addec
JD
10203 * insdel.c (make_gap_larger): Make sure buffer size does not
10204 overflow range of int.
62854fe2 10205
048addec 102062002-01-05 Jason Rumney <jasonr@gnu.org>
656f46bb 10207
048addec
JD
10208 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
10209 OVERLAPS_P.
656f46bb 10210
048addec 10211 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
656f46bb 10212
048addec
JD
10213 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
10214 to the left or to the right of the pointer, put it against
10215 the left screen edge.
10216 (x_frame_parms): Add missing braces around initializer.
036e218d 10217
048addec
JD
10218 * w32term.c (x_setup_relief_colors): Don't compute an image's
10219 background color if it doesn't have a Pixmap.
10220 (notice_overwritten_cursor): Don't depend on
10221 output_cursor and updated_area. Compare pixel coordinates with
10222 window's cursor pixel coordinates.
10223 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
10224 Call notice_overwritten_cursor with new arg list.
10225 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
10226 unconditionally.
10227 (x_draw_image_relief): Use predefined macro instead of
10228 constant when the value of `tool_bar_button_relief' is negative.
036e218d 10229
048addec 10230 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
7ddb2c16 10231
048addec 102322002-01-04 Richard M. Stallman <rms@gnu.org>
7ddb2c16 10233
048addec 10234 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
ace9b298 10235
048addec 102362002-01-03 Richard M. Stallman <rms@gnu.org>
90647b07 10237
048addec
JD
10238 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
10239 (Fkey_binding): Try the `keymap' property map first.
10240 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
10241 minor mode bindings.
90647b07 10242
048addec 102432002-01-03 Kim F. Storm <storm@cua.dk>
ace9b298 10244
048addec 10245 * keyboard.c (read_key_sequence): Fixed cast of submaps arg to bcopy.
ace9b298 10246
048addec 102472002-01-02 Richard M. Stallman <rms@gnu.org>
ace9b298 10248
048addec
JD
10249 * keyboard.c (read_key_sequence): Handle the keymap property
10250 before minor mode maps.
9fbc32aa 10251
048addec
JD
10252 * editfns.c (Fformat): Update thissize from field_width
10253 based on the actual width, in the string case.
036e218d 10254
048addec 102552002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fbc32aa 10256
048addec
JD
10257 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
10258 when used as truth value to prevent gcc warnings.
9fbc32aa 10259
048addec
JD
10260 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
10261 * w32proc.c: Include <config.h>.
9fbc32aa 10262
048addec 102632002-01-01 Andreas Schwab <schwab@suse.de>
9fbc32aa 10264
048addec
JD
10265 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
10266 not EMACS_INT, to make them compatible with DEFVAR_INT.
10267 * lisp.h (max_specpdl_size): Adjust declaration.
9fbc32aa 10268
048addec 102692002-01-01 Richard M. Stallman <rms@gnu.org>
9fbc32aa 10270
048addec
JD
10271 * print.c (print_object): Test print_escape_nonascii only for
10272 unibyte strings.
10273 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
10274 when outputting to a multibyte buffer.
9fbc32aa 10275
048addec 102762001-12-29 Richard M. Stallman <rms@gnu.org>
9fbc32aa 10277
048addec
JD
10278 * print.c (print_object): In multibyte string, use hex escapes.
10279 Use octal only for unibyte strings.
10280 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
0142178a 10281
048addec
JD
10282 * lread.c (read_escape): New arg BYTEREP for reporting whether
10283 escape forces unibyte or multibyte.
10284 (read1): When reading a string, take note of that info.
0142178a 10285
048addec 102862001-12-29 Ken Raeburn <raeburn@gnu.org>
d4824a5d 10287
048addec
JD
10288 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
10289 comparison to test lisp value returned by Fget.
d4824a5d 10290
048addec 102912001-12-29 Richard M. Stallman <rms@gnu.org>
b1356234 10292
048addec 10293 * lisp.h (max_specpdl_size): Add declaration.
b1356234 10294
048addec 10295 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
3ce081f5 10296
048addec
JD
10297 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
10298 Handle modifier bits. Correct typo in error message.
99e380ee 10299
048addec 103002001-12-28 Richard M. Stallman <rms@gnu.org>
3ce081f5 10301
048addec
JD
10302 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
10303 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
10304 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
10305 Update calls to Fdefine_abbrev.
10306 (write_abbrev): Update for changed data format.
10307 Don't list "system" abbrevs.
10308 (Fexpand_abbrev): Update use count with new data format.
10309 (describe_abbrev): Update for changed data format.
10310 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
66458f32 10311
048addec 10312 * config.in (HAVE_MBSINIT): Add #undef.
66458f32 10313
048addec 10314 * strftime.c (mbsinit): Define as no-op if not available.
66458f32 10315
048addec
JD
10316 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
10317 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
59a86c99 10318
048addec
JD
10319 * keymap.c (Flookup_key): Error message if key has wrong data type.
10320 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
10321 (exclude_key): New variable.
59a86c99 10322
048addec 103232001-12-28 Gerd Moellmann <gerd@gnu.org>
eb77a5f4 10324
048addec
JD
10325 * xterm.c (x_setup_relief_colors): Don't compute an image's
10326 background color if it doesn't have a Pixmap.
eb77a5f4 10327
048addec
JD
10328 * xterm.c (notice_overwritten_cursor): Don't depend on
10329 output_cursor and updated_area. Compare pixel coordinates with
10330 window's cursor pixel coordinates.
10331 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
10332 Call notice_overwritten_cursor with new arg list.
10333 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
10334 unconditionally.
eb77a5f4 10335
048addec
JD
10336 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
10337 height of the cursor line to the amount to scroll.
eb77a5f4 10338
048addec 103392001-12-27 Richard M. Stallman <rms@gnu.org>
bb313871 10340
048addec
JD
10341 * intervals.c (set_point_both): The position after an invisible,
10342 intangible character is not an acceptable stopping point.
bb313871 10343
048addec 103442001-12-27 Ken Raeburn <raeburn@gnu.org>
55b43a63 10345
048addec
JD
10346 * window.c (enlarge_window): In new preserve_before code, convert
10347 CURBEG from lisp object to integer before doing arithmetic.
6052529b 10348
048addec 103492001-12-27 Richard M. Stallman <rms@gnu.org>
3ce081f5 10350
048addec 10351 * bytecode.c (Fbyte_code): Undo previous change.
3ce081f5 10352
048addec 103532001-12-26 Kim F. Storm <storm@cua.dk>
3ce081f5 10354
048addec
JD
10355 * keyboard.c (record_char): Ignore duplicate help-echo events only
10356 separated by mouse-movement. When tracking mouse, only record
10357 first and last mouse-movement event in same window.
10358 Don't record mouse-movement events in keyboard macros.
3ce081f5 10359
048addec 103602001-12-25 Richard M. Stallman <rms@gnu.org>
55b43a63 10361
048addec
JD
10362 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
10363 (Fenlarge_window): New arg PRESERVE_BEFORE.
111ed14e 10364
048addec
JD
10365 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
10366 instead of Fstring_as_unibyte.
9fabb2f5 10367
048addec 103682001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fabb2f5 10369
048addec 10370 The following changes remove mocklisp support:
9fabb2f5 10371
048addec 10372 * mocklisp.h, mocklisp.c: Files removed.
111ed14e 10373
048addec
JD
10374 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
10375 `Qmocklisp' and `Qmocklisp_arguments'.
10376 Remove prototype of syms_of_mocklisp.
2fa0eedf 10377
048addec 10378 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
d1420435 10379
048addec
JD
10380 * callint.c: Do not include mocklisp.h.
10381 (Fcall_interactively): Do not test for mocklisp case.
2fa0eedf 10382
048addec
JD
10383 * eval.c: Remove variables `Qmocklisp_arguments',
10384 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
10385 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
10386 Do not test for mocklisp case.
10387 (Fwhile): Remove unused variable `tem'.
10388 (syms_of_eval): Remove variable `moclisp-arguments'.
ebcbef4e 10389
048addec 10390 * data.c (wrong_type_argument): Remove mocklisp case.
5c131048 10391
048addec 10392 * doc.c (Fdocumentation): Remove mocklisp case.
5c131048 10393
048addec 10394 * emacs.c (main): Do not call syms_of_mocklisp.
5c131048 10395
048addec 103962001-12-21 Richard M. Stallman <rms@gnu.org>
96d276c3 10397
048addec
JD
10398 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
10399 to the left or to the right of the pointer, put it against
10400 the left screen edge.
6108b49c 10401
048addec 104022001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
96d276c3 10403
048addec
JD
10404 * Makefile.in (distclean): Remove .gdbinit if we are building
10405 outside the source tree.
5eea19a4 10406
048addec 104072001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
5eea19a4 10408
048addec 10409 * w32.c (emacs_root_dir): New function.
5eea19a4 10410
048addec 10411 * msdos.c (emacs_root_dir): New function.
5eea19a4 10412
048addec
JD
10413 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
10414 of the current drive as the fallback for default_directory.
438e57dd 10415
048addec
JD
10416 * dired.c (file_name_completion): Run the elements of
10417 completion-ignored-extensions through ENCODE_FILE.
438e57dd 10418
048addec
JD
10419 * lisp.h (scmp): Remove prototype, since it's now a static
10420 function private to dired.c.
c88e5347 10421
048addec 104222001-12-18 Richard M. Stallman <rms@gnu.org>
c88e5347 10423
048addec
JD
10424 * dired.c (scmp): Function moved from minibuf.c.
10425 Delete multibyte handling--used only on encoded strings.
59ce1461 10426
048addec 10427 * minibuf.c (scmp): Function moved to dired.c.
59ce1461 10428
048addec 10429 * fns.c (merge): Add QUIT call.
59ce1461 10430
048addec 104312001-12-18 Dave Love <fx@gnu.org>
8727d588 10432
048addec
JD
10433 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
10434 language/georgian.el.
8727d588 10435
048addec 104362001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
cc63037e 10437
048addec
JD
10438 * Makefile.in (lisp, shortlisp): Synchronize with changes to
10439 lisp/Makefile.in:DONTCOMPILE.
cc63037e 10440
048addec 104412001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
cc63037e 10442
048addec
JD
10443 * xdisp.c (window_box_height): Do not return negative values.
10444 From Gerd Moellmann <gerd@gnu.org>.
cc63037e 10445
048addec 10446 * keyboard.c (head_table): Add missing braces around initializer.
cc63037e 10447
048addec 10448 * term.c (keys): Likewise.
deece6f5 10449
048addec 10450 * xfns.c (x_frame_parms, visual_classes): Likewise.
deece6f5 10451
048addec 104522001-12-17 Sam Steingold <sds@gnu.org>
1b944d9c 10453
048addec
JD
10454 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
10455 patch (COMPOSING_P, not COMPOSING).
28ff4293 10456
048addec 104572001-12-17 Richard M. Stallman <rms@gnu.org>
a395ef6a 10458
048addec 10459 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
a395ef6a 10460
048addec
JD
10461 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
10462 before calling decode_coding.
9b46de40 10463
048addec 10464 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
9b46de40 10465
048addec
JD
10466 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
10467 instead of only for COMPOSITION_DISABLED.
9b46de40 10468
048addec 104692001-12-16 Richard M. Stallman <rms@gnu.org>
aff37336 10470
048addec 10471 * alloc.c (pure_alloc): After overflow, allocate just a small block.
aff37336 10472
048addec 10473 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
b9937f07 10474
048addec
JD
10475 * buffer.h (struct buffer): New field `display_error_modiff'.
10476 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
b9937f07 10477
048addec 10478 * window.c (Frecenter): Clear display_error_modiff field.
2cd23960 10479
048addec
JD
10480 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
10481 Call redisplay_window, but not if display_error_modiff field says no.
10482 (redisplay_window_error): New function.
10483 (displayed_buffer): New variable.
10484 (redisplay_internal, redisplay_windows): Call the new functions
10485 instead of redisplay_window directly.
2cd23960 10486
048addec 104872001-12-15 Richard M. Stallman <rms@gnu.org>
2cd23960 10488
048addec 10489 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
2cd23960 10490
048addec 104912001-12-14 Andrew Innes <andrewi@gnu.org>
a4184c1c 10492
048addec
JD
10493 * makefile.w32-in (EMACSLOADPATH): Define.
10494 ($(EMACS)): Run `list-load-path-shadows' after dumping emacs.
10495 (bootstrap-temacs): Remove dependency on bootstrap-clean.
a4184c1c 10496
048addec 104972001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
f6fa0866 10498
048addec
JD
10499 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
10500 parameter have a numeric value all the time.
f6fa0866 10501
048addec 10502 * w32fns.c (x_report_frame_params): Likewise.
f4ca4b00 10503
048addec 105042001-12-12 Richard M. Stallman <rms@gnu.org>
f4ca4b00 10505
048addec 10506 * fileio.c (Fwrite_region): Doc fix.
f4e25f94 10507
048addec
JD
10508 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
10509 (redisplay_internal): Call clear_image_cache only for window terminals.
f4e25f94 10510
048addec 105112001-12-12 Gerd Moellmann <gerd@gnu.org>
91c153e2 10512
048addec
JD
10513 * xdisp.c (move_it_vertically_backward): Change heuristic
10514 for the case that we didn't move far enough initially.
91c153e2 10515
048addec
JD
10516 * window.c (Frecenter): Simplify computation in the case of window
10517 system frames and ARG < 0; use window_box_height.
65b7d3e7 10518
048addec 105192001-12-11 Richard M. Stallman <rms@gnu.org>
65b7d3e7 10520
048addec
JD
10521 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
10522 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
6b5f6311 10523
048addec 105242001-12-11 Andrew Innes <andrewi@gnu.org>
6b5f6311 10525
048addec
JD
10526 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
10527 arg is negative.
be676094 10528
048addec 105292001-12-11 Richard M. Stallman <rms@gnu.org>
be676094 10530
048addec
JD
10531 * m/hp800.h: Split the __hpux conditional into the parts
10532 that are right for GNU/Linux too and the parts that are not.
10533 Use the former if GNU_LINUX.
10534 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
032a857d 10535
048addec 10536 * s/gnu-linux.h (GNU_LINUX): Defined.
032a857d 10537
048addec 105382001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
032a857d 10539
048addec
JD
10540 * macros.c, msdos.c, w16select.c: Change doc-string comments to
10541 `new style' [w/`doc:' keyword].
032a857d 10542
048addec 105432001-12-10 Jason Rumney <jasonr@gnu.org>
b6270150 10544
048addec
JD
10545 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
10546 before using.
b6270150 10547
048addec 105482001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
792e5cbd 10549
048addec
JD
10550 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
10551 keyword].
98cbb9fa 10552
048addec 105532001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
98cbb9fa 10554
048addec 10555 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
98cbb9fa 10556
048addec 10557 * s/hpux10.h (srand48): Don't undefine.
98cbb9fa 10558
048addec 105592001-12-09 Jason Rumney <jasonr@gnu.org>
792e5cbd 10560
048addec
JD
10561 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
10562 Add comment to explain where the struct came from.
10563 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
10564 (add_menu_item): Process pop-up menus first to avoid memory leak.
10565 (add_menu_item, w32_menu_display_help): Use `help' field as
10566 Lisp_Object.
10567 (w32_free_submenu_strings): Only free owner-drawn strings.
fa336b91 10568
048addec 105692001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
fa336b91 10570
048addec 10571 * COPYING: Moved back.
fa336b91 10572
048addec
JD
10573 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
10574 Add parentheses around && within ||.
077907d4 10575
048addec 10576 * indent.c (compute_motion): Likewise.
aa2af83a 10577
048addec 10578 * intervals.c (merge_properties_sticky): Likewise.
60a653f1 10579
048addec
JD
10580 * coding.c (setup_coding_system, shrink_encoding_region)
10581 (Fdecode_sjis_char): Likewise.
60a653f1 10582
048addec 105832001-12-07 Andreas Schwab <schwab@suse.de>
60a653f1 10584
048addec
JD
10585 * xdisp.c (display_mode_element): Don't read past end of string if
10586 it ends with '%'.
60a653f1 10587
048addec
JD
10588 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
10589 can hold.
60a653f1 10590
048addec
JD
10591 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
10592 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
10593 type changed to Lisp_Object.
10594 (syms_of_data): DEFVAR_LISP them.
60a653f1 10595
048addec 105962001-12-07 Richard M. Stallman <rms@gnu.org>
60a653f1 10597
048addec
JD
10598 * callproc.c (init_callproc): Set Vdata_directory based on the source
10599 location whenever Emacs was run uninstalled.
60a653f1 10600
048addec 106012001-12-06 Paul Eggert <eggert@twinsun.com>
60a653f1 10602
048addec
JD
10603 * config.in (HAVE_WORKING_VFORK): New #undefs.
10604 * process.c (create_process):
10605 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
10606 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
10607 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
10608 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
10609 * m/intel386.h (HAVE_VFORK): Likewise.
10610 * m/mips-siemens.h (HAVE_VFORK): Likewise.
10611 * m/mips.h (HAVE_VFORK): Likewise.
10612 * s/freebsd.h (vfork): Remove #define.
10613 * s/lynxos.h (HAVE_VFORK): Remove #undef.
10614 * s/usg5-4-2.h: Fix comment about vfork.
60a653f1 10615
048addec 106162001-12-06 Richard M. Stallman <rms@gnu.org>
60a653f1 10617
048addec
JD
10618 * s/hpux10.h (random): Add undef.
10619 (HAVE_RANDOM): Define it just once.
60a653f1 10620
048addec 106212001-12-06 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 10622
048addec 10623 * eval.c: Undo last change: the standard syntax is not wanted.
60a653f1 10624
048addec 106252001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 10626
048addec
JD
10627 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
10628 scroll bars of the frame before deleting the frame itself. If the
10629 frame has a widget, delete the frame with XtDestroyWidget, and do
10630 not call XDestroyWindow before that.
60a653f1 10631
048addec 106322001-12-06 Kim F. Storm <storm@cua.dk>
60a653f1 10633
048addec 10634 * xfns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 10635
048addec 10636 * w32fns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 10637
048addec 106382001-12-05 Andrew Innes <andrewi@gnu.org>
60a653f1 10639
048addec
JD
10640 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
10641 excessively large.
60a653f1 10642
048addec
JD
10643 * insdel.c (make_gap_larger): New function.
10644 (make_gap_smaller): New function.
10645 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
10646 Call make_gap_smaller if arg is negative.
60a653f1 10647
048addec 106482001-12-04 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 10649
048addec
JD
10650 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
10651 Pass a dummy argument when calling interrupt_signal.
10652 (parse_menu_item): Mark disabled items before checking for empty def.
10653 (read_char_minibuf_menu_prompt): Make safety more visible.
10654 (read_key_sequence): Add a `first_unbound' variable.
10655 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
10656 unbound prefix as soon as we can detect it.
60a653f1 10657
048addec
JD
10658 * doc.c (Fsnarf_documentation): Add prototype.
10659 (get_doc_string): Handle negative arguments.
10660 (Fdocumentation): Use AREF and ASIZE.
10661 Move the calls to get_doc_string to a single place.
10662 Don't confuse an interactive-spec for a docstring reference.
10663 (Fdocumentation_property): Take advantage of the fact that
10664 get_doc_string now ignores the sign of the docstring position.
60a653f1 10665
048addec 10666 * eval.c: Use standard syntax for usage in docstrings.
60a653f1 10667
048addec 106682001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 10669
048addec 10670 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief` an option.
60a653f1 10671
048addec 106722001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 10673
048addec
JD
10674 * xterm.c (x_draw_image_relief): Use predefined macro instead of
10675 constant when the value of `tool_bar_button_relief' is negative.
60a653f1 10676
048addec 106772001-12-02 Richard M. Stallman <rms@gnu.org>
60a653f1 10678
048addec
JD
10679 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
10680 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
60a653f1 10681
048addec 10682 * fileio.c (read_non_regular): Delete Fsignal call.
60a653f1 10683
048addec 106842001-12-01 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 10685
048addec 10686 * lisp.h (run_hook_list_with_args): Undo last change.
60a653f1 10687
048addec 106882001-12-01 Gerd Moellmann <gerd@gnu.org>
60a653f1 10689
048addec 10690 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
60a653f1 10691
048addec 106922001-12-01 Jason Rumney <jasonr@gnu.org>
60a653f1 10693
048addec 10694 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
60a653f1 10695
048addec
JD
10696 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
10697 [!WM_MOUSELEAVE]: Define.
60a653f1 10698
048addec
JD
10699 * w32menu.c (current_popup_menu, get_menu_item_info):
10700 (set_menu_item_info): New vars.
10701 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
10702 (w32_menu_show): Set current_popup_menu.
10703 (add_menu_item): Allocate new strings for owner-drawn menu items
10704 and help strings.
10705 Use owner-draw for disabled menu items again.
10706 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
10707 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
60a653f1 10708
048addec
JD
10709 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
10710 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
10711 <WM_EXITMENULOOP>: Free menu strings.
10712 <WM_MOUSELEAVE>: Stop tracking mouse.
10713 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
60a653f1 10714
048addec
JD
10715 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
10716 and mouse face.
60a653f1 10717
048addec 107182001-12-01 Kim F. Storm <storm@cua.dk>
60a653f1 10719
048addec
JD
10720 The following changes add left-fringe and right-fringe
10721 frame parameters to adjust fringe widths, or remove one or
10722 both fringes.
60a653f1 10723
048addec
JD
10724 * frame.h (struct frame): Remove trunc_area_pixel_width and
10725 trunc_area_cols fields.
10726 (Qleft_fringe, Qright_fringe): Declare.
10727 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
60a653f1 10728
048addec
JD
10729 * frame.c (Qleft_fringe, Qright_fringe): New vars.
10730 (syms_of_frame): Initialize them.
60a653f1 10731
048addec
JD
10732 * window.c (coordinates_in_window): Handle separate left and right
10733 fringe widths.
60a653f1 10734
048addec
JD
10735 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
10736 and fringe_cols fields.
10737 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
10738 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
10739 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
10740 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
10741 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
10742 (x_compute_fringe_widths): Add prototype.
60a653f1 10743
048addec
JD
10744 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
10745 fill fringe evenly with small dashes.
10746 (x_draw_fringe_bitmap): Clear background if necessary. Align and
10747 clip the new ZV bitmap to avoid jitter between rows.
10748 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
10749 background. Don't draw fringe bitmaps if fringe width is zero.
10750 (x_compute_fringe_widths): New function.
10751 (x_new_font, x_set_window_size_1): Use it.
60a653f1 10752
048addec
JD
10753 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
10754 (x_set_frame_parameters): Process `font' parameter before other
10755 parameters as fringe widths depend on it.
10756 (x_set_fringe_width): New function.
10757 (x_figure_window_size): Use x_compute_fringe_widths.
10758 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
10759 parameters.
60a653f1 10760
048addec
JD
10761 * widget.c (set_frame_size): Use x_compute_fringe_widths.
10762 (EmacsFrameSetCharSize): Ditto.
60a653f1 10763
048addec
JD
10764 * w32term.h: Merged changes from xterm.h.
10765 * w32term.c: Merged changes from xterm.c.
10766 * w32fns.c: Merged changes from xfns.c.
60a653f1 10767
048addec 107682001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 10769
048addec 10770 * COPYING: Removed.
60a653f1 10771
048addec 107722001-11-29 Dave Love <fx@gnu.org>
60a653f1 10773
048addec
JD
10774 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
10775 extra extra slot.
10776 (detect_coding_mask): Fix call of detect_coding_iso2022.
60a653f1 10777
048addec 107782001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 10779
048addec
JD
10780 * fileio.c (file-name-coding-system)
10781 (default-file-name-coding-system): Doc fix (links to referenced
10782 variables added).
60a653f1 10783
048addec 107842001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 10785
048addec
JD
10786 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
10787 Add dummy uses of gcproN variables.
60a653f1 10788
048addec
JD
10789 * category.c (describe_category, describe_category_1)
10790 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
10791 (syms_of_category): Don't defsubr Sdescribe_categories.
60a653f1 10792
048addec 107932001-11-28 Richard M. Stallman <rms@gnu.org>
60a653f1 10794
048addec 10795 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
60a653f1 10796
048addec
JD
10797 * Makefile.in (lispdir): New variable, referring to build dir.
10798 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
60a653f1 10799
048addec 108002001-11-28 Andrew Innes <andrewi@gnu.org>
60a653f1 10801
048addec
JD
10802 * w32menu.c (w32_menu_display_help): Actually add the new argument
10803 OWNER.
60a653f1 10804
048addec 108052001-11-28 Jason Rumney <jasonr@gnu.org>
60a653f1 10806
048addec
JD
10807 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
10808 menu items. From David Ponce <dponce@wanadoo.fr>.
10809 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
10810 conditionally.
10811 (w32_menu_display_help): New argument OWNER. Rewritten to store a
10812 help event in the owner frame's keyboard buffer.
60a653f1 10813
048addec
JD
10814 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
10815 (Fx_show_tip): Don't subtract last width from row width.
10816
10817 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
10818 (w32_read_socket): Use EQ to compare frames.
60a653f1 10819
048addec 108202001-11-28 Gerd Moellmann <gerd@gnu.org>
60a653f1 10821
048addec
JD
10822 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
10823 OVERLAPS_P.
60a653f1 10824
048addec 108252001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 10826
048addec
JD
10827 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
10828 `gcpro3' and `gcpro4'.
60a653f1 10829
048addec 10830 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
60a653f1 10831
048addec 108322001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 10833
048addec 10834 * ccl.c: Use AREF and ASIZE.
60a653f1 10835
048addec 108362001-11-27 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 10837
048addec
JD
10838 * lisp.h (run_hook_list_with_args): Remove.
10839 (LIST_END_P): Fix call to wrong_type_argument.
10840 (make_fixnum_or_float): Use EMACS_INT rather than int.
60a653f1 10841
048addec 108422001-11-26 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 10843
048addec
JD
10844 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
10845 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
60a653f1 10846
048addec
JD
10847 * eval.c: Use AREF and ASIZE.
10848 (Ffetch_bytecode): Add the file name to the error message.
60a653f1 10849
048addec
JD
10850 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
10851 which match the end of the file-name.
10852 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
10853 is not a valid env var, but leave it as is instead.
60a653f1 10854
048addec
JD
10855 * keymap.c (access_keymap): Handle t bindings like nil bindings.
10856 Make nil bindings in char-tables transparent.
10857 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
60a653f1 10858
048addec 108592001-11-26 Richard M. Stallman <rms@gnu.org>
60a653f1 10860
048addec
JD
10861 * textprop.c (set_text_properties_1): Allow START, END in either order.
10862 Do nothing if range is empty.
60a653f1 10863
048addec 10864 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
60a653f1 10865
048addec
JD
10866 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
10867 (clean): Not here.
60a653f1 10868
048addec 108692001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 10870
048addec
JD
10871 * textprop.c (set_text_properties_1): Clearly mark that the
10872 interval should not be empty.
60a653f1 10873
048addec
JD
10874 * intervals.c (graft_intervals_into_buffer):
10875 Don't call set_text_properties_1 on an empty interval.
60a653f1 10876
048addec 108772001-11-25 Richard M. Stallman <rms@gnu.org>
60a653f1 10878
048addec 10879 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
60a653f1 10880
048addec
JD
10881 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
10882 don't lose the data in it.
60a653f1 10883
048addec 108842001-11-25 Juanma Barranquero <lektu@terra.es>
60a653f1 10885
048addec 10886 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
60a653f1 10887
048addec 10888 * buffer.c (Fkill_buffer): Use Frun_hooks, not Vrun_hooks.
60a653f1 10889
048addec 10890 * print.c (temp_output_buffer_setup): Use Frun_hooks, not Vrun_hooks.
60a653f1 10891
048addec 108922001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 10893
048addec 10894 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
60a653f1 10895
048addec 108962001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 10897
048addec
JD
10898 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
10899 Niemitalo <kon@iki.fi>.
60a653f1 10900
048addec 109012001-11-25 Jason Rumney <jasonr@gnu.org>
60a653f1 10902
048addec 10903 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
60a653f1 10904
048addec
JD
10905 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
10906 (Fx_show_tip): Block input during frame creation.
10907 (Fx_show_tip, Fx_hide_tip): Enable.
60a653f1 10908
048addec 109092001-11-24 Richard M. Stallman <rms@gnu.org>
60a653f1 10910
048addec
JD
10911 * lread.c (Fload): Detect recursive load error for more than 3
10912 nestings of the same file.
10913 (Vrecursive_load_depth_limit): Variable deleted.
10914 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
60a653f1 10915
048addec 109162001-11-24 Jason Rumney <jasonr@gnu.org>
60a653f1 10917
048addec
JD
10918 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
10919 mouse position if either left or top is not specified.
60a653f1 10920
048addec
JD
10921 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
10922 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
10923 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
10924 (my_create_tip_window): Assign tip_window.
10925 (x_create_tip_frame): Use same defaults as X.
10926 (compute_tip_xy): Remove unused variable. Use full screen width.
10927 (Fx_show_tip): Do not double height. Call ShowWindow directly.
60a653f1 10928
048addec
JD
10929 * w32term.c (x_after_update_window_line): Doc fix.
10930 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
10931 frames.
10932 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
60a653f1 10933
048addec
JD
10934 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
10935 for all Windowed systems.
60a653f1 10936
048addec 109372001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 10938
048addec
JD
10939 * msdos.c (IT_clear_screen): If the frame's faces are not yet
10940 realized, use the initial screen colors to clear the screen.
60a653f1 10941
048addec 109422001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 10943
048addec
JD
10944 * textprop.c (Fset_text_properties): Remove unused variables
10945 `unchanged', `prev_changed', `s' and `len'.
60a653f1 10946
048addec
JD
10947 * search.c (Freplace_match): Remove unused variable `inslen'.
10948
10949 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
10950
109512001-11-22 Jason Rumney <jasonr@gnu.org>
10952
10953 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
10954 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
10955 (my_create_tip_window): New function.
10956 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
10957 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
10958
109592001-11-20 Jason Rumney <jasonr@gnu.org>
10960
10961 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
10962 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
10963
10964 * w32fns.c (Vw32_system_coding_system): Remove.
10965 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
10966
109672001-11-19 Stefan Monnier <monnier@cs.yale.edu>
10968
10969 * fileio.c (Fwrite_region): Move choose_write_coding_system to
10970 after build_annotations.
10971
10972 * syntax.c (describe_syntax): Add dummy arg.
10973 (describe_syntax_1): Update call to describe_vector.
10974
10975 * category.c (describe_category): Add dummy arg.
10976 (describe_category_1): Update call to describe_vector.
10977
10978 * keymap.c (Fdescribe_vector): Add `describer' parameter.
10979 (describe_command, describe_translation): Add dummy second param.
10980 (describe_map): Call elt_describer with two arguments.
10981 (describe_vector_princ): Add `fun' parameter.
10982 Call it instead of the hardcoded `princ'.
10983 (describe_vector): Add arg `args'.
10984 Pass it as a new second argument to elt_describer.
60a653f1 10985
048addec 10986 * keymap.h (describe_vector): Update prototype.
60a653f1 10987
048addec
JD
10988 * frame.c: Don't include keymap.h any more.
10989 (keys_of_frame): Remove.
60a653f1 10990
048addec 10991 * lisp.h (keys_of_frame): Remove declaration.
60a653f1 10992
048addec 10993 * emacs.c (main): Don't call `keys_of_frame' any more.
60a653f1 10994
048addec 109952001-11-14 Andreas Schwab <schwab@suse.de>
60a653f1 10996
048addec
JD
10997 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
10998 if defined, 0 otherwise.
10999 (MAP_FAILED): Define if not defined and use it to test mmap failure.
11000 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
60a653f1 11001
048addec 110022001-11-19 Richard M. Stallman <rms@gnu.org>
60a653f1 11003
048addec 11004 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
60a653f1 11005
048addec 110062001-11-18 Jason Rumney <jasonr@gnu.org>
60a653f1 11007
048addec
JD
11008 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
11009 (x_draw_bar_cursor): If the background color of the glyph under
11010 the cursor equals the frame's cursor color, use the glyph's
11011 foreground color for drawing the bar cursor.
11012 (x_after_update_window_line): Clear internal border in different
11013 circumstances.
11014 (w32_set_vertical_scroll_bar): Check for width and height > 0.
11015 (w32_draw_relief_rect): Correct relief by 1 pixel.
11016 (x_set_glyph_string_background_width):
11017 Set extends_to_end_of_line_p if the row's fill_line_p is set and
11018 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
11019 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
11020 if cursor_in_non_selected_windows is false.
11021 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
11022 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
11023 Notice if cursor gets overwritten.
11024 (notice_overwritten_cursor): Renamed from
11025 note_overwritten_text_cursor. Rewritten to take glyph widths
11026 into account, and to take X positions as parameters.
11027 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
11028 around call to x_draw_glyphs.
11029 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
11030 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
11031 color to use for image glyph reliefs.
11032 (x_draw_image_relief): Accept zero tool_bar_button_relief.
11033 (glyph_rect): Remove unused variable `area'.
60a653f1 11034
048addec
JD
11035 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
11036 some items.
11037 (x_set_internal_border_width): Set frame garbaged when window
11038 doesn't exist yet.
11039 (Fx_create_frame): Accept zero tool_bar_button_relief.
11040 (x_clear_image_1, four_corners_best, image_background)
11041 (image_background_transparent): New functions.
11042 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
11043 (gs_format): Add `:background' entry.
11044 (lookup_image): Set IMG's background color if specified.
11045 (pbm_load, xbm_load_image, png_load): Set IMG's background field
11046 when appropriate.
11047 (x_clear_image_1): Reset `background_valid' and
11048 `background_transparent_valid' fields.
11049 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
11050 calculating it here. Set IMG's background_transparent field.
11051 (enum xpm_keyword_index): Add XPM_BACKGROUND.
11052 (enum png_keyword_index): Add PNG_BACKGROUND.
11053 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
11054 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
11055 (enum gif_keyword_index): Add GIF_BACKGROUND.
11056 (enum gs_keyword_index): Add GS_BACKGROUND.
11057 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
11058 Pre-calculate image background color where necessary.
11059 (x_create_x_image_and_pixmap, xbm_load, gs_load):
11060 Use display info's n_cbits entry for screen depth.
11061 (Fx_show_tip): Remove unused variables `buffer', `top',
11062 `left', `max_width' and `max_height'.
60a653f1 11063
048addec 11064 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
60a653f1 11065
048addec 110662001-11-18 Gerd Moellmann <gerd@gnu.org>
60a653f1 11067
048addec 11068 * puresize.h (BASE_PURESIZE): Increase to 750000.
60a653f1 11069
048addec 110702001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 11071
048addec 11072 * frame.c (Fframe_live_p): Doc fix.
60a653f1 11073
048addec 110742001-11-18 Richard M. Stallman <rms@gnu.org>
60a653f1 11075
048addec
JD
11076 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
11077 (message_dolog_marker3): New static variables hold three markers.
11078 (syms_of_xdisp): Initialize and staticpro them.
11079 (message_dolog): Use message_dolog_marker1..3 instead of
11080 allocating markers each time. Unchain them when done.
60a653f1 11081
048addec 110822001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 11083
048addec 11084 * doc.c (Fsnarf_documentation): Doc fix.
60a653f1 11085
048addec 110862001-11-17 Andreas Schwab <schwab@suse.de>
60a653f1 11087
048addec 11088 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
60a653f1 11089
048addec 110902001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 11091
048addec 11092 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
60a653f1 11093
048addec 110942001-11-17 Jason Rumney <jasonr@gnu.org>
60a653f1 11095
048addec 11096 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
60a653f1 11097
048addec 110982001-11-17 Gerd Moellmann <gerd@gnu.org>
60a653f1 11099
048addec
JD
11100 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
11101 with invalid position.
60a653f1 11102
048addec 111032001-11-16 Richard M. Stallman <rms@gnu.org>
60a653f1 11104
048addec 11105 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
60a653f1 11106
048addec
JD
11107 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
11108 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
11109 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
60a653f1 11110
048addec 11111 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
60a653f1 11112
048addec 111132001-11-16 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11114
048addec
JD
11115 * fileio.c (build_annotations): Split off the tail.
11116 (build_annotations_2): New fun. Extracted from build_annotations.
11117 (Fwrite_region): Split the call to build_annotations into two
11118 calls to build_annotations and build_annotations_2.
077907d4 11119
048addec 111202001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
1756e2fb 11121
048addec
JD
11122 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
11123 clear_waiting_for_input with argument.
1756e2fb 11124
048addec 11125 * xterm.h (x_update_cursor): Remove duplicated prototype.
06e8f738 11126
048addec 11127 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
06e8f738 11128
048addec 11129 * xterm.c (waiting_for_input): Remove unnecessary declaration.
fa336b91 11130
048addec 11131 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
fa336b91 11132
048addec 111332001-11-16 Stefan Monnier <monnier@cs.yale.edu>
fa336b91 11134
048addec
JD
11135 * fileio.c (choose_write_coding_system): New fun, extracted
11136 from Fwrite_region.
11137 (Fwrite_region): Use it.
fa336b91 11138
048addec
JD
11139 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
11140 (funcall_lambda, run_hook_with_args): Make static and add prototype.
11141 (ml_apply, find_handler_clause): Add prototype.
fa336b91 11142
048addec 111432001-11-16 Eli Zaretskii <eliz@gnu.org>
fa336b91 11144
048addec 11145 * config.in: Add #undef HAVE_COFF_H.
fa336b91 11146
048addec
JD
11147 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
11148 Required for ISC 4.1.
fa336b91 11149
048addec 111502001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
fa336b91 11151
048addec
JD
11152 * syswait.h: (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
11153 Andrew Wiseman <a.wiseman@btclick.com>.
fa336b91 11154
048addec 111552001-11-16 Kim F. Storm <storm@cua.dk>
fa336b91 11156
048addec
JD
11157 The following changes are made to clean up the various internal
11158 references to the fringes to actually use the term `fringe' for
11159 them. Previously, they were called `flags areas', `bitmap areas',
11160 `left/right side of windows', or implicitly as `flags' or
11161 `bitmaps':
fa336b91 11162
048addec
JD
11163 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
11164 Comments fixed. Use renamed symbols.
06e8f738 11165
048addec 11166 * dispnew.c: Comment fix. Use renamed symbols.
06e8f738 11167
048addec
JD
11168 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
11169 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
11170 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
9ce647f4 11171
048addec 11172 * msdos.c: Comment fix.
9ce647f4 11173
048addec 11174 * w32fns.c: Use renamed symbols.
9b784ab8 11175
048addec
JD
11176 * w32term.c: Comment fixes. Use renamed symbols.
11177 (fringe_bitmap_type): Renamed from bitmap_type.
11178 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
11179 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
11180 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
9f7e52b4 11181
048addec
JD
11182 * w32term.h: Comment fixes. Use renamed symbols.
11183 (fringes_extra): Renamed from flags_areas_extra.
11184 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
11185 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
11186 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
11187 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
11188 (FRAME_X_LEFT_FRINGE_WIDTH):
11189 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
11190 (FRAME_X_RIGHT_FRINGE_WIDTH):
11191 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
9f7e52b4 11192
048addec 11193 * widget.c: Use renamed symbols.
9f7e52b4 11194
048addec
JD
11195 * window.c: Comment fixes. Use renamed symbols.
11196 (coordinates-in-window-p): Doc fix.
fa336b91 11197
048addec 11198 * xdisp.c: Comment fixes. Use renamed symbols.
34e5d0af 11199
048addec 11200 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
9b784ab8 11201
048addec 11202 * xfns.c: Use renamed symbols.
89512fcd 11203
048addec
JD
11204 * xterm.c: Comment fixes. Use renamed symbols.
11205 (fringe_bitmap_type): Renamed from bitmap_type.
11206 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
11207 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
11208 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
89512fcd 11209
048addec
JD
11210 * xterm.h: Comment fixes. Use renamed symbols.
11211 (fringes_extra): Renamed from flags_areas_extra.
11212 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
11213 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
11214 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
11215 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
11216 (FRAME_X_LEFT_FRINGE_WIDTH):
11217 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
11218 (FRAME_X_RIGHT_FRINGE_WIDTH):
11219 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
11220
112212001-11-15 Jason Rumney <jasonr@gnu.org>
11222
11223 * w32menu.c (add-menu-item): Make help_echo and radio buttons
11224 work for most menu items. From David Ponce
11225 <david.ponce@wanadoo.fr>.
11226
112272001-11-15 Gerd Moellmann <gerd@gnu.org>
11228
11229 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
11230 Some x_set_* function expect to be called even if old and new
11231 value are equal.
11232
11233 * xdisp.c (build_desired_tool_bar_string): Accept zero
11234 tool_bar_button_relief.
11235
11236 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
11237
11238 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
11239
11240 * xterm.c (x_draw_bar_cursor): If the background color of the
11241 glyph under the cursor equals the frame's cursor color, use
11242 the glyph's foreground color for drawing the bar cursor.
11243
11244 * dispnew.c (direct_output_forward_char): Fix character/byte
11245 position comparison.
7d18891d 11246
048addec 112472001-11-15 Miles Bader <miles@gnu.org>
d2936d21 11248
048addec
JD
11249 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
11250 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
11251 Update arguments to find_field.
11252 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
11253 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
11254 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
11255 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
7d18891d 11256
048addec 112572001-11-14 Richard M. Stallman <rms@gnu.org>
7d18891d 11258
048addec 11259 * editfns.c (Fpropertize): Allow call with 1 arg.
7d18891d 11260
048addec
JD
11261 * dispextern.h (image_background, image_background_transparent):
11262 Conditionalize on HAVE_X_WINDOWS.
7d18891d 11263
048addec 112642001-11-13 Richard M. Stallman <rms@gnu.org>
7d18891d 11265
048addec 11266 * print.c (Fprin1_to_string): Doc fix.
7d18891d 11267
048addec 11268 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
7d18891d 11269
048addec 11270 * floatfns.c (Fceiling, Ffloor): Doc fixes.
7d18891d 11271
048addec 11272 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
7d18891d 11273
048addec 11274 * fileio.c (Ffile_accessible_directory_p): Doc fix.
7d18891d 11275
048addec 11276 * eval.c (syms_of_eval): Doc fix.
7d18891d 11277
048addec 11278 * coding.c (syms_of_coding): Doc fix.
7d18891d 11279
048addec 11280 * doc.c (Fsnarf_documentation): Doc fix.
7d18891d 11281
048addec 11282 * dispnew.c (syms_of_display): Doc fix.
9474c847 11283
048addec 11284 * category.c (Fget_unused_category): Doc fix.
9474c847 11285
048addec 11286 * buffer.c (syms_of_buffer): Doc fixes.
e3059a5d 11287
048addec 112882001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
e3059a5d 11289
048addec 11290 * print.c (prin1, print): Doc fix.
e3059a5d 11291
048addec 112922001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
b3700ae7 11293
048addec
JD
11294 * fontset.h: Remove declarations of variables
11295 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
b3700ae7 11296
048addec
JD
11297 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
11298 `Vclip_large_size_font'.
eae936e2 11299
048addec 113002001-11-13 Jason Rumney <jasonr@gnu.org>
4bb962be 11301
048addec 11302 * w32fns.c: Doc fix.
ddb67bdc 11303
048addec 113042001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3467c402 11305
048addec 11306 * xfaces.c (Fface_attributes_as_vector): Doc fix.
3467c402 11307
048addec 11308 * fns.c: Doc fix.
6e1b91d7 11309
048addec 11310 * emacs.c: Doc fix.
1c1d3d69 11311
048addec 11312 * coding.c: Doc fix.
1c1d3d69 11313
048addec
JD
11314 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
11315 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
11316 `new style' [w/`doc:' keyword].
b6f4c7ba 11317
048addec 113182001-11-12 Richard M. Stallman <rms@gnu.org>
b6f4c7ba 11319
048addec
JD
11320 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
11321 LeaveNotify events. Only FocusIn and FocusOut do that now.
11322 (x_display_and_set_cursor): Do display hollow cursors in active
11323 minibuffer windows when they are not selected.
b6f4c7ba 11324
048addec 113252001-11-12 Jason Rumney <jasonr@gnu.org>
a89f435d 11326
048addec
JD
11327 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
11328 * w32term.c: Change doc-string comments to `new style'.
11329 [w/`doc:' keyword]. Doc fixes.
a89f435d 11330
048addec
JD
11331 * w32fns.c: Don't define max.
11332 (Fx_open_connection): Only execute once.
a4cd0cd7 11333
048addec 113342001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
eafb659a 11335
048addec
JD
11336 * ccl.c: Change macros to use do-while block instead of if-else.
11337 Use braces to follow GNU Coding Standards.
eafb659a 11338
048addec 113392001-11-11 Richard M. Stallman <rms@gnu.org>
a4cd0cd7 11340
048addec 11341 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
a4cd0cd7 11342
048addec 11343 * lread.c (read_escape): Use end_of_file_error for reporting eof.
a4cd0cd7 11344
048addec
JD
11345 * insdel.c (replace_range): Use adjust_markers_for_replace
11346 instead of adjust_markers_for_delete and adjust_markers_for_insert.
a4cd0cd7 11347
048addec 11348 * intervals.h: Declare set_text_properties and set_text_properties_1.
a4cd0cd7 11349
048addec
JD
11350 * textprop.c (set_text_properties_1): New subroutine
11351 broken out of set_text_properties.
11352 (set_text_properties): Use set_text_properties_1.
91823618 11353
048addec
JD
11354 * intervals.c (graft_intervals_into_buffer):
11355 Use set_text_properties_1 to clear out properties.
91823618 11356
048addec
JD
11357 * search.c (Freplace_match): Use replace_range to insert
11358 and delete. Don't request property inheritance from
11359 surrounding text.
86928dfb 11360
048addec 113612001-11-10 Jason Rumney <jasonr@gnu.org>
86928dfb 11362
048addec
JD
11363 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
11364 vertical fonts. Allow them if face name is explicitly specified.
11365 Do not give up if we find a font that cannot be converted to an xlfd.
40ef1eda 11366
048addec 113672001-11-10 Gerd Moellmann <gerd@gnu.org>
ab8469eb 11368
048addec
JD
11369 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
11370 instead of malloc/free.
a78e0303 11371
048addec 113722001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
40ef1eda 11373
048addec
JD
11374 * xfaces.c (merge_face_vectors): Use braces to follow GNU
11375 Coding Standards.
11376 (Finternal_set_lisp_face_attribute): Likewise.
fabf4a91 11377
048addec 11378 * buffer.c (Fbury_buffer): Likewise.
0c99b139 11379
048addec 11380 * indent.c (current_column_1): Remove unused variable `prev_col'.
0c99b139 11381
048addec
JD
11382 * coding.c (encode_coding): Use precomputed value of `src'.
11383 (encode_coding): Remove unused variable `src_end'.
11384 (code_convert_region): Remove unused variables `count'.
830ddd77 11385
048addec 113862001-11-07 Jason Rumney <jasonr@gnu.org>
830ddd77 11387
048addec
JD
11388 * w32term.c (x_display_and_set_cursor): Do not move system caret
11389 if cursor_glyph is NULL.
55c6d645 11390
048addec 113912001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
55c6d645 11392
048addec 11393 * keymap.c (access_keymap): Fix compilation error.
5de38842 11394
048addec 113952001-11-07 Miles Bader <miles@gnu.org>
7a4564a4 11396
048addec 11397 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
5de38842 11398
048addec 113992001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4fa23df5 11400
048addec
JD
11401 * intervals.c (graft_intervals_into_buffer):
11402 Remove #ifdef'd-out code.
11403 (graft_intervals_into_buffer): Remove unused variable `middle'.
4fa23df5 11404
048addec
JD
11405 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
11406 code (eval-current-buffer).
11407 Change doc-string comments to `new style' [w/`doc:' keyword].
7a6a97d7 11408
048addec 114092001-11-06 Richard M. Stallman <rms@gnu.org>
c191d13c 11410
048addec 11411 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
7a6a97d7 11412
048addec 114132001-11-06 Stefan Monnier <monnier@cs.yale.edu>
44dc78e0 11414
048addec 11415 * lread.c (read1): Fix behavior with nested backquoting.
44dc78e0 11416
048addec
JD
11417 * keyboard.c (make_lispy_event): Check integerness and fix
11418 Lisp_Object/int mixup.
17893c65 11419
048addec 114202001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4d994a79 11421
048addec 11422 * fns.c (copy_hash_table): Remove unused variable `v'.
d5360cc7 11423
048addec
JD
11424 * fontset.c (fontset_font_pattern): Remove unused variable
11425 `family_registry'.
d5360cc7 11426
048addec 11427 * indent.c (current_column_1): Remove unused variable `prev_col'.
d5360cc7 11428
048addec 114292001-11-05 Richard M. Stallman <rms@gnu.org>
96238a5a 11430
048addec 11431 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
96238a5a 11432
048addec
JD
11433 * buffer.c (Fkill_buffer): Don't delete auto save file
11434 if buffer is modified.
d9d54213 11435
048addec 114362001-11-05 Andrew Innes <andrewi@gnu.org>
d9d54213 11437
048addec
JD
11438 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
11439 CHECK_NUMBER_CDR.
b116830b 11440
048addec 114412001-11-05 Richard M. Stallman <rms@gnu.org>
b116830b 11442
048addec 11443 * unexelf.c (unexec): Minor changes; clean up comments.
3297e2a1 11444
048addec 114452001-11-05 Sam Steingold <sds@gnu.org>
3297e2a1 11446
048addec 11447 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
6fb8339c 11448
048addec 114492001-11-05 Andreas Schwab <schwab@suse.de>
6fb8339c 11450
048addec 11451 * sound.c (sound_perror): Save errno from being clobbered.
7dd73b78 11452
048addec 114532001-11-05 Dale Hagglund <rdh@yottayotta.com>
7dd73b78 11454
048addec
JD
11455 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
11456 the program image directly.
982f6c7e 11457
048addec 114582001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d31053f9 11459
048addec 11460 * buffer.h (Fbuffer_local_value): Add prototype.
d31053f9 11461
048addec 114622001-11-04 Richard M. Stallman <rms@gnu.org>
d31053f9 11463
048addec
JD
11464 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
11465 and CHECK_BUFFER.
d31053f9 11466
048addec
JD
11467 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
11468 (record_char): Likewise.
d31053f9 11469
048addec
JD
11470 * keyboard.c (make_lispy_event): Don't insist a drag event must
11471 move to a different buffer position. Instead, check for moving at
11472 least double_click_fuzz.
982f6c7e 11473
048addec 11474 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
830047fd 11475
048addec 11476 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
b116830b 11477
048addec
JD
11478 * indent.c (current_column_1, Fmove_to_column): Separate the code
11479 for display-table glyphs from the code for buffer text, to fix
11480 bugs in the former.
830047fd 11481
048addec 114822001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
b116830b 11483
048addec
JD
11484 * buffer.c (Fbuffer_local_value): New function.
11485 (syms_of_buffer): Defsubr it.
2df5238c 11486
048addec
JD
11487 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
11488 value of `cursor-in-non-selected-windows'.
4e397688 11489
048addec
JD
11490 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
11491 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
11492 (syms_of_xdisp): Initialize it.
48b0f3ae 11493
048addec 114942001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2df5238c 11495
048addec 11496 * xfns.c (Fx_create_frame): Doc fix.
3ecaf7e5 11497
048addec
JD
11498 * coding.c: Change doc-string comments to `new style' [w/`doc:'
11499 keyword].
3ecaf7e5 11500
048addec
JD
11501 * eval.c (top_level_value, top_level_set): Remove commented and
11502 #ifdef'd-out code.
11503 (Fdefvar): Fix usage in doc-string.
3ecaf7e5 11504
048addec 115052001-11-03 Richard M. Stallman <rms@gnu.org>
3ecaf7e5 11506
048addec 11507 * xfns.c: Include unistd.h, if it exists.
8db2e33b 11508
048addec 11509 * editfns.c: Move the include of ctype.h after unistd.h.
8db2e33b 11510
048addec 11511 * gmalloc.c: Test BROKEN_PROTOTYPES.
aed29b97 11512
048addec 115132001-11-03 Ken Raeburn <raeburn@gnu.org>
aed29b97 11514
048addec
JD
11515 * lisp.h (CHECK_STRING_CAR): New macro.
11516 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
11517 treating XCAR and XCDR as lvalues.
11518 (openp): Use CHECK_STRING_CAR.
11519 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
aed29b97 11520
048addec 115212001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
6cb16f95 11522
048addec
JD
11523 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
11524 (SIGMASKTYPE): Define.
1b1acc13 11525
048addec 11526 * syssignal.h (sigunblock): Don't define if already defined.
020f9b38 11527
048addec 115282001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
020f9b38 11529
048addec
JD
11530 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
11531 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
11532 Fix typos in comments.
6cb16f95 11533
048addec
JD
11534 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
11535 and #ifdef'd-out code.
11536 Fix and reindent comments.
6cb16f95 11537
048addec 11538 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
6cb16f95 11539
048addec
JD
11540 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
11541 argument `i' in macros.
6cb16f95 11542
048addec
JD
11543 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
11544 `i' in macros.
7e9d3c2f 11545
048addec
JD
11546 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
11547 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
11548 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
11549 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
11550 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
11551 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
11552 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
11553 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
11554 in macros.
7e9d3c2f 11555
048addec
JD
11556 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
11557 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
11558 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
11559 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
11560 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
11561 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
11562 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
11563 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
11564 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
11565 (remove unused second argument).
7e9d3c2f 11566
048addec 115672001-11-02 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 11568
048addec
JD
11569 * syntax.c (describe_syntax): New wrapper.
11570 (Finternal_describe_syntax_value): Rename from describe_syntax.
11571 Don't insert space at front and \n at the end.
11572 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
e6bff182 11573
048addec
JD
11574 * regex.c (re_wctype): Try to fix some warnings.
11575 (regcomp, regexec): Don't forget the __restrict.
9ba48103 11576
048addec 115772001-11-02 Richard M. Stallman <rms@gnu.org>
9ba48103 11578
048addec 11579 * textprop.c (Fget_char_property): Doc fix.
9ba48103 11580
048addec 115812001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9ba48103 11582
048addec 11583 * process.c (Fstart_process): Add usage to doc-string.
c22e59e1 11584
048addec 11585 * data.c (Fsetq_default): Ditto.
c22e59e1 11586
048addec 11587 * callint.c (Finteractive): Ditto.
9271ed2c 11588
048addec 115892001-11-01 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 11590
048addec
JD
11591 * macros.c: Don't include keymap.h any more.
11592
115932001-11-01 Richard M. Stallman <rms@gnu.org>
11594
11595 * data.c (Fmake_local_variable): Doc fix.
11596
11597 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
11598 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
e6bff182 11599
048addec 11600 * keymap.c (Fdescribe_buffer_bindings): Print character property
9271ed2c
RS
11601 bindings along with or instead of the buffer local map.
11602 Make the overriding maps override what they should.
11603
f00691a3 116042001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8b8bd9c6
PJ
11605
11606 * window.c (grow_mini_window): Fix typo in comment.
11607
27188d11
GM
116082001-11-01 Gerd Moellmann <gerd@gnu.org>
11609
7b49b9d2
GM
11610 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
11611 (XTset_vertical_scroll_bar): Likewise.
11612
43f7c3ea
GM
11613 * xfns.c (x_build_heuristic_mask): Use four_corners_best
11614 instead of IMAGE_BACKGROUND.
c22e59e1 11615
b350c2e5
GM
11616 * xfns.c (four_corners_best): Reindent.
11617
c22e59e1 11618 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
27188d11
GM
11619 Handle :box so that it is possible to specify sexprs.
11620
bf00d461
EZ
116212001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
11622
11623 * s/hpux11.h: New file.
11624
f00691a3 116252001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e10df59 11626
2b209b97
PJ
11627 * emacs.c (USAGE1): Show command line option --no-window-system
11628 instead of --no-windows in usage.
11629 (standard_args): Rename --no-windows to --no-window-system.
11630 (bug_reporting_address): Follow Emacs coding conventions.
11631
9dbc9081
PJ
11632 * eval.c (Fcommandp): Doc fix.
11633 Change doc-string comments to `new style' [w/`doc:' keyword].
11634
4e10df59
PJ
11635 * frame.c (Fframe_live_p): Doc fix.
11636
11637 * buffer.c (selective-display-ellipses): Doc fix.
11638
dd387b25
GM
116392001-10-31 Gerd Moellmann <gerd@gnu.org>
11640
fe957e65
GM
11641 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
11642
dd387b25
GM
11643 * xfaces.c (realize_x_face): If C is not a single-byte character,
11644 set the face's colors_copied_bitwise_p instead of the defaulted_p
11645 members which have a different meaning.
11646 (free_face_colors): Do nothing for a face whose colors have been
11647 copied bitwise.
11648
c22e59e1 11649 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
dd387b25 11650
f00691a3 116512001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2e1280f8 11652
687784e8
PJ
11653 * marker.c, mocklisp.c: Change doc-string comments to `new style'
11654 [w/`doc:' keyword].
2e1280f8 11655
b9d9a9b9
GM
116562001-10-31 Gerd Moellmann <gerd@gnu.org>
11657
11658 * fns.c (require_unwind): Return Lisp_Object.
11659
f00691a3 116602001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
48400103 11661
fa1361cb
PJ
11662 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
11663 (last-input-char): Revert doc-string to be the same as the
11664 doc-string of `last-input-event'.
11665
6c465a15 11666 * xdisp.c: Fix typos in comments.
48400103 11667
eafa3196
GM
116682001-10-31 Gerd Moellmann <gerd@gnu.org>
11669
11670 * window.c (grow_mini_window): Handle case that the root
11671 window is already smaller than the nominal mininum height.
11672
747d3f2a
SM
116732001-10-30 Stefan Monnier <monnier@cs.yale.edu>
11674
bf9bb76f
SM
11675 * emacs.c (main): Don't call keys_of_macros any more.
11676
11677 * lisp.h (keys_of_macros): Remove.
11678
11679 * macros.c (keys_of_macros): Remove.
11680
747d3f2a
SM
11681 * xfaces.c (Fface_attribute_relative_p): Declare args.
11682
5e905a57
JR
116832001-10-30 Jason Rumney <jasonr@gnu.org>
11684
11685 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
11686 (enum_font_cb2): Ignore fonts with vertical orientation.
11687
3a426197
RS
116882001-10-30 Richard M. Stallman <rms@gnu.org>
11689
11690 * keyboard.c (Finput_pending_p): Doc fix.
11691
a742d646
GM
116922001-10-30 Gerd Moellmann <gerd@gnu.org>
11693
259cf6bc
GM
11694 * xterm.c (x_after_update_window_line): Don't run the code
11695 clearing in borders for rows whose visible height is 0.
11696
3f99f948
GM
11697 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
11698 resized_p flag is set. If not set, use the much less flickering
11699 method previously used.
11700
11701 * dispnew.c (change_frame_size_1): Set frame's resized_p.
11702
11703 * frame.h (struct frame) <resized_p>: New member.
11704
b4a3be43
GM
11705 * lread.c (to_multibyte): Ensure read_buffer is at least twice
11706 as large as the number of bytes to convert.
747d3f2a 11707
a742d646
GM
11708 * lread.c (to_multibyte): New function.
11709 (read1): Use it.
11710
cacbb9e9
EZ
117112001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
11712
11713 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
11714
99cb6b2f
GM
117152001-10-30 Gerd Moellmann <gerd@gnu.org>
11716
327f42ee 11717 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
747d3f2a
SM
11718 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
11719 if the row's fill_line_p is set and drawing the last glyph with
11720 DRAW_IMAGE_{RAISED,SUNKEN}.
327f42ee 11721
99cb6b2f
GM
11722 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
11723
8e8223e2
SM
117242001-10-29 Stefan Monnier <monnier@cs.yale.edu>
11725
11726 * xmenu.c: Include coding.h and charset.h.
11727 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
11728 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
11729 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
11730 Explicitly set wv->help. Use `TRUE' rather than `True'.
11731 (menu_help_callback): Use empty_string.
11732
11733 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
11734 (Fx_popup_dialog): Explicitly init f.
11735 (w32_menu_display_help): Use empty_string.
11736
4d083a8f
RS
117372001-10-29 Richard M. Stallman <rms@gnu.org>
11738
b2304472
RS
11739 * fns.c (Frequire): Detect recursive try to require the same
11740 feature 3 or more levels deep, and get error.
11741 (require_unwind): New subroutine.
11742 (require_nesting_list): New variable.
11743 (syms_of_fns): Init and staticpro it.
11744
4d083a8f
RS
11745 * print.c (print_object): Clarify indication of insertion type.
11746
2fe41216
EZ
117472001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
11748
90480000
EZ
11749 * coding.c (syms_of_coding): Document that locale-coding-system is
11750 used for decoding input on X.
11751
2fe41216
EZ
11752 * window.c (Fscroll_left, Fscroll_right): Doc fix.
11753
f00691a3 117542001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
74e79967
PJ
11755
11756 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
11757 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
11758
60ebcfe8
GM
117592001-10-29 Gerd Moellmann <gerd@gnu.org>
11760
9a7bdceb
GM
11761 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
11762 use NO_CURSOR if cursor_in_non_selected_windows is false.
11763
3f08fcd2
GM
11764 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
11765 the slant attribute if FRAME is t.
11766
0ccfdad2
GM
11767 * xfns.c (x_set_internal_border_width): Set frame garbaged
11768 when X window doesn't exist yet.
11769
ef253080
GM
11770 * xterm.c (x_after_update_window_line): Clear internal border
11771 in different circumstances.
b116830b 11772
60ebcfe8
GM
11773 * xterm.c (XTread_socket) <KeyPress>: Don't use
11774 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
11775 <handa@etl.go.jp>.
11776
73d25f9c
EZ
117772001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
11778
11779 * m/ibms390.h: New file. From Adam Thornton
11780 <athornton@sinenomine.net>.
11781
cac1daf0
GM
117822001-10-28 Gerd Moellmann <gerd@gnu.org>
11783
053b3256 11784 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
b116830b 11785
cac1daf0
GM
11786 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
11787 a loop counter.
11788
f00691a3 117892001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13b1a09c 11790
186486eb
PJ
11791 * emacs.c: Use argv[0] instead of emacs when -t was specified.
11792
4707d2d0
PJ
11793 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
11794 keyword].
11795 Fix typos in comments.
b116830b 11796
d883731c
PJ
11797 * emacs.c (bug_reporting_address): New function.
11798 Use it when displaying usage message.
11799
04012254
PJ
11800 * minibuf.c (read_minibuf): Remove unused external declaration of
11801 variable `Qread_only'.
11802
13b1a09c
PJ
11803 * keymap.c (access_keymap): Remove unused variable `charset'.
11804
5bbf4378
MB
118052001-10-28 Miles Bader <miles@gnu.org>
11806
11807 * xfaces.c (merge_face_heights): Handle TO being relative as well.
11808 Remove #ifdef'd-out code.
11809 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
11810 (syms_of_xfaces): Initialize them.
11811
1ce1e4ee
JR
118122001-10-27 Jason Rumney <jasonr@gnu.org>
11813
11814 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
11815 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
11816 position using the system caret.
11817
11818 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
11819 (w32_system_caret_height, w32_system_caret_x)
11820 (w32_system_caret_y): New variables for tracking system caret.
11821 (w32_initialize): Initialize them.
c2d53558 11822 (x_display_and_set_cursor): Make system caret follow the active cursor.
1ce1e4ee 11823
c2d53558
SM
11824 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
11825 New messages types.
1ce1e4ee
JR
11826
11827 * w32term.c (note_mouse_highlight): Clear old help_echo.
11828
f00691a3 118292001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e30ce42 11830
bb4600a4
PJ
11831 * xterm.c: Fix typo in a comment.
11832
7db35a48
PJ
11833 * emacs.c: Fix typos in comments.
11834 Remove unnecessary spaces.
11835 Change doc-string comments to `new style' [w/`doc:' keyword].
11836 (USAGE2): Fix typos in usage string.
11837
a7248e4f
PJ
11838 * xterm.c: Fix typo in a comment.
11839
4e30ce42
PJ
11840 * lisp.h: (gdb_lisp_params): Remove code in #if 0 which is now in
11841 emacs.c.
11842
62725a92
GM
118432001-10-27 Gerd Moellmann <gerd@gnu.org>
11844
798dbe1f 11845 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
c2d53558 11846 instead of 1/2 line_height in the heuristic for skipping
798dbe1f
GM
11847 farther backward when target_y was not reached.
11848
62725a92
GM
11849 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
11850 Display errno only if non-zero.
11851 (sound_warning): New function.
11852 (vox_configure): Don't treat failing to set sample rate as error.
11853 (various places): Improve error messages.
11854
d4e34d24
EZ
118552001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
11856
944e6f60
EZ
11857 * fileio.c (Faccess_file): Run the argument filename through
11858 Fexpand_file_name, before using it.
11859
d4e34d24
EZ
11860 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
11861 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
11862
38d2af0c
GM
118632001-10-26 Gerd Moellmann <gerd@gnu.org>
11864
da80a8d5
GM
11865 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
11866
38d2af0c
GM
11867 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
11868 Fix clearing in the case of scroll bars on the right.
c2d53558 11869
45de4a6f 118702001-10-26 Juanma Barranquero <lektu@terra.es>
56f508dd
EZ
11871
11872 * w32gui.h (XImage): Add a dummy typedef.
11873
fbd5ceb2
GM
118742001-10-26 Gerd Moellmann <gerd@gnu.org>
11875
c2d53558 11876 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
fbd5ceb2 11877
b23236fb
EZ
118782001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
11879
11880 * frame.c (Fframe_parameter): Fix last change.
11881
5d991fc4
EZ
11882 * fileio.c: Revert last change (which removed old commented-out
11883 version of expand-file-name). Add a comment that explains why
11884 this old version should not be removed.
11885
879eadc3
GM
118862001-10-25 Gerd Moellmann <gerd@gnu.org>
11887
75700ff2
GM
11888 * frame.c (Fframe_parameter): Fix a bug whereby some
11889 ``artificial'' frame parameters, like `minibuffer' were not
11890 obtained by calling Fframe_parameters.
11891
dfe92a6a
GM
11892 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
11893 cursor differently.
11894
879eadc3
GM
11895 * xdisp.c (move_it_vertically_backward): Compute line height
11896 differently. Add heuristic to try to be more compatible to 20.x.
11897
e1010ebe
SM
118982001-10-25 Stefan Monnier <monnier@cs.yale.edu>
11899
d73a471b
SM
11900 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
11901
d6da5a06
GM
11902 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
11903 boolean.
e1010ebe 11904
f66bd220
MB
119052001-10-25 Miles Bader <miles@gnu.org>
11906
11907 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
11908 BG is a pointer to a structure, not a structure.
11909 (gif_format, png_format): Add missing commas.
11910
d436d538
RS
119112001-10-24 Richard M. Stallman <rms@gnu.org>
11912
11913 * xfaces.c (Fface_attributes_as_vector): New function.
c2d53558 11914 (syms_of_xfaces): Defsubr it.
d436d538 11915
f00691a3 119162001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
075c507b
PJ
11917
11918 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
11919 variable `area'.
11920
f00691a3 119212001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d492b584 11922
c2d53558 11923 * search.c (scan_newline): Remove unused variable `selective_display'.
d492b584 11924
e2a57b34
MB
119252001-10-25 Miles Bader <miles@gnu.org>
11926
11927 * dispextern.h (struct image): Add `background',
11928 `background_valid', and `background_transparent' fields.
11929 (image_background, image_background_transparent): New declarations.
11930 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
11931 * xfns.c (image_background, image_background_transparent)
11932 (four_corners_best): New functions.
c2d53558 11933 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
e2a57b34
MB
11934 (gs_format): Add `:background' entry.
11935 (lookup_image): Set IMG's background color if specified.
11936 (pbm_load, xbm_load_image, png_load): Set IMG's background field
11937 when appropriate.
11938 (x_clear_image_1): Reset `background_valid' and
11939 `background_transparent_valid' fields.
11940 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
11941 calculating it here. Set IMG's background_transparent field.
11942 (enum xpm_keyword_index): Add XPM_BACKGROUND.
11943 (enum png_keyword_index): Add PNG_BACKGROUND.
11944 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
11945 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
11946 (enum gif_keyword_index): Add GIF_BACKGROUND.
11947 (enum gs_keyword_index): Add GS_BACKGROUND.
c2d53558 11948 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
e2a57b34
MB
11949 Pre-calculate image background color where necessary.
11950 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
11951 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
11952 color to use for image glyph reliefs.
11953
b547b6e8
GM
119542001-10-24 Gerd Moellmann <gerd@gnu.org>
11955
d9e3b8c6
GM
11956 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
11957 in full-width rows.
c2d53558 11958
b547b6e8
GM
11959 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
11960 Fix clearing of area not covered by scroll bar.
11961
f00691a3 119622001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2beb36f9
PJ
11963
11964 * xterm.c: (x_insert_glyphs): Remove unused variables `real_end'
11965 and `real_start'.
c2d53558 11966 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
2beb36f9
PJ
11967 (glyph_rect): Remove unused variable `area'.
11968
76cb5e06
GM
119692001-10-24 Gerd Moellmann <gerd@gnu.org>
11970
bdbdebff 11971 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
c2d53558
SM
11972
11973 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
11974 (row_containing_pos): Take additional argument DY.
11975 Treat rows ending in middle of char differently.
62e33982
GM
11976 (display_line): Handle tabs on window systems differently.
11977
11978 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
11979 with additional argument.
11980
11981 * dispextern.h (row_containing_pos): Adjust prototype.
11982
76cb5e06
GM
11983 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
11984 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
11985 (try_window_id, try_window_reusing_current_matrix)
11986 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
6c465a15 11987 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
76cb5e06 11988
f00691a3 119892001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
996fee11 11990
c9e60620
PJ
11991 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
11992 gnuemacs).
11993 (HAVE_BOXES): Fix typo in comment.
11994 (push_menu_pane): Fix typo in comment.
11995
3b552d56
PJ
11996 * xdisp.c: (display_prop_string_p): Remove unused local declaration
11997 of `Qwhen'.
11998 (single_display_prop_string_p): Remove unused local declarations
11999 of `Qwhen' and `Qmargin'.
12000 (string_buffer_position): Remove unused variable `around'.
12001 (store_frame_title): Remove unused variable `width'.
12002
15c565ac
PJ
12003 * window.c: Don't define max.
12004 (coordinates_in_window): Remove unused variable `uy'.
12005
a8818eb9
PJ
12006 * widget.c: Don't define max.
12007
996fee11
PJ
12008 * process.c: Don't define max.
12009 (create_process): Remove unused variable `buffer'.
12010
496e1a5b
GM
120112001-10-23 Gerd Moellmann <gerd@gnu.org>
12012
c2d53558 12013 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
496e1a5b 12014
5905ae8b
EZ
120152001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
12016
12017 * xfaces.c (Finternal_set_lisp_face_attribute)
12018 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
12019 frame is on a windowed display.
12020
24db49fb
GM
120212001-10-23 Gerd Moellmann <gerd@gnu.org>
12022
c2d53558
SM
12023 * dispnew.c (sync_window_with_frame_matrix_rows):
12024 Fix handling of windows which aren't full-width, fix handling
c51488cd
GM
12025 of marginal areas.
12026
c2d53558 12027 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
24db49fb 12028
f0487f05
EZ
120292001-10-23 Andreas Schwab <schwab@suse.de>
12030
12031 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
12032 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
12033
f0a48a01
GM
120342001-10-23 Gerd Moellmann <gerd@gnu.org>
12035
c2d53558 12036 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
f0a48a01
GM
12037 REAL_END. Notice if cursor gets overwritten.
12038 (notice_overwritten_cursor): Take X positions as parameters.
12039 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
12040 around call to x_draw_glyphs.
12041
f00691a3 120422001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
a50a10a0 12043
fc11dff0
PJ
12044 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
12045 instead of C) and usage.
a50a10a0 12046
fc11dff0
PJ
12047 * editfns.c (char-to-string): Fix argument names (use CHAR instead
12048 of C) and usage.
a50a10a0
PJ
12049
12050 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
12051 `left', `max_width' and `max_height'.
12052
8738febd
GM
120532001-10-23 Gerd Moellmann <gerd@gnu.org>
12054
12055 * xdisp.c (display_line): For a tab continued to the next line,
12056 set row's ends_in_middle_of_char_p.
12057
653c329b
GM
120582001-10-22 Gerd Moellmann <gerd@gnu.org>
12059
12060 * xdisp.c (display_line): Fix computation of continuation lines
12061 width for TABs.
12062
f00691a3 120632001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
f958c5ac 12064
7ba51063
PJ
12065 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
12066 `Qlaplace'.
12067
f958c5ac
PJ
12068 * fileio.c: Remove unused code.
12069
eb360291
MB
120702001-10-22 Miles Bader <miles@gnu.org>
12071
12072 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
12073 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
12074 Remove `DOC_STRINGS_IN_COMMENTS' cases.
12075
98515cf0
JR
120762001-10-21 Jason Rumney <jasonr@gnu.org>
12077
12078 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
12079
93026d88
EZ
120802001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
12081
12082 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
12083 (Finsert_string): Avoid the multi-line string literals warning.
12084
c9a95b79
MB
120852001-10-22 Miles Bader <miles@gnu.org>
12086
12087 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
12088 (Fdocumentation): Don't use it.
12089 (syms_of_doc): Don't initialize it.
12090
12091 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
12092 * print.c (Fwith_output_to_temp_buffer): Likewise.
12093 * window.c (Fsave_window_excursion): Likewise.
c2d53558 12094 * editfns.c (Fsave_excursion, Fsave_current_buffer)
c9a95b79 12095 (Fsave_restriction): Likewise.
c2d53558
SM
12096 * eval.c (Frun_hooks, Frun_hook_with_args)
12097 (Frun_hook_with_args_until_failure)
12098 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
12099 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
12100 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
c9a95b79
MB
12101 (Funwind_protect, Fcondition_case): Likewise.
12102 * coding.c (Ffind_operation_coding_system): Likewise.
12103 * keyboard.c (Ftrack_mouse): Likewise.
12104
a3b10252
MB
121052001-10-21 Miles Bader <miles@gnu.org>
12106
c2d53558 12107 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
a3b10252
MB
12108 (Fmake_hash_table): Add usage: string to doc string.
12109 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
c2d53558 12110 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
a3b10252
MB
12111 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
12112 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
12113 (Fml_prefix_argument_loop): Likewise.
12114
f00691a3 121152001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c6f73eec 12116
c2d53558 12117 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
888ebd13 12118
c6f73eec
PJ
12119 * sysdep.c (init_sys_modes): Change doc-string comments to `new
12120 style' [w/`doc:' keyword].
12121
12122 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
12123 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
12124 comments to `new style' [w/`doc:' keyword].
12125
3cf3436e
JR
121262001-10-21 Jason Rumney <jasonr@gnu.org>
12127
12128 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
12129
c169b8f1
JR
12130 * w32term.c (remember_mouse_glyph): New function.
12131 (w32_mouse_position): Use it.
12132 (note_mouse_movement): If the mouse moved off the glyph, remember
12133 its new position.
c2d53558 12134
4fdd691b
JR
12135 * w32term.h (struct w32_output): Correct spelling of x_compatible.
12136 (w32_display_info): Add mouse_face_overlay.
12137
c169b8f1
JR
12138 * w32term.c (notice_overwritten_cursor): Renamed from
12139 note_overwritten_text_cursor. Rewritten to take glyph widths into
12140 account.
12141 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
12142 (fast_find_string_pos): New function.
12143 (fast_find_position): Return the correct vpos. Add parameter
12144 STOP. In the final row, stop before glyphs having STOP as object.
12145 Don't consider glyphs that are not from a buffer.
12146 (fast_find_position) [0]: Add a presumably more correct version
12147 for after 21.1.
12148 (expose_window_tree, expose_frame): Don't compute intersections here.
12149 (expose_window): Do it here instead.
12150 (expose_window_tree, expose_window, expose_line): Return 1 when
12151 overwriting mouse-face.
12152 (expose_window): If W is the window currently being updated, mark
12153 the frame garbaged.
12154 (expose_frame): If mouse-face was overwritten, redo it.
12155 (x_use_underline_position_properties): New variable.
12156 (syms_of_xterm): DEFVAR_BOOL it.
12157 (x_draw_glyph_string): Add comment to use it in future.
12158 (x_draw_glyph_string): Restore clipping after drawing box.
12159 Fix a computation of the underline position.
12160 (w32_get_glyph_string_clip_rect): Minor cleanup.
12161 (x_fill_stretch_glyph_string): Remove an assertion.
12162 (x_produce_glyphs): Don't convert multibyte characters
12163 to unibyte characters in unibyte buffers.
12164 (cursor_in_mouse_face_p): New function.
12165 (x_draw_stretch_glyph_string): Use it to choose a different GC
12166 when drawing a cursor within highlighted text. Don't draw
12167 background again if it has already been drawn.
12168 (x_draw_glyph_string_box): Don't draw a full-width
12169 box just because the glyph row's full_width_p flag is set.
12170 (x_draw_glyphs): Fix computation of rightmost x for
12171 full-width rows.
12172 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
12173 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
12174 change bottom shadow accordingly. Some cleanup.
12175 (x_update_window_end): Handle overwritten mouse face
12176 also for tool bar windows.
12177 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
12178 DRAW is DRAW_IMAGE_RAISED.
12179 (clear_mouse_face): Return 1 if text with mouse face was
2c568af5
SM
12180 actually redrawn. Make the function static.
12181 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
c169b8f1
JR
12182 optimize away highlighting if we pass over that same overlay again.
12183 (note_mouse_highlight): Call mouse_face_overlay_overlaps
12184 to detect a case where we have to highlight a different region
12185 despite not having left the currently highlighted region.
12186 Set mouse_face_overlay in the x_display_info. Avoid changing the
12187 mouse pointer shape when show_mouse_face has already done it, or
12188 there is no need. Handle mouse-face and help-echo in strings.
12189 (glyph_rect): New function.
12190 (w32_mouse_position): Use it to raise the threshold for mouse
12191 movement event generation.
12192 (w32_initialize_display_info): Initialize the x_display_info's
12193 mouse_face_overlay.
12194 (w32_set_vertical_scroll_bar): Don't clear a zero height
12195 or width area.
12196 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
12197 a widget to zero height.
12198
3cf3436e 12199 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
4fdd691b 12200 Protect unibyte strings created by replacing their multibyte
3cf3436e
JR
12201 equivalents in menu_items.
12202 (w32_menu_show): Don't overwrite an item's name with its key
12203 description in case the description is a multibyte string.
12204 (single_submenu): Some cleanup.
12205
12206 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
12207 (postprocess_image): New function.
12208 (lookup_image): Call it for all image types except PostScript.
12209 (x_kill_gs_process): Call postprocess_image.
12210 (tiff_error_handler, tiff_warning_handler): New functions.
12211 (tiff_load): Install them as handlers.
12212 (x_kill_gs_process): Recognize if someone has cleared the image
12213 cache under us.
12214 (valid_image_p): Protect better against invalid image
12215 specifications. Previous code could signal an error.
12216 (Fx_hide_tip, Fshow_tip): Doc fix.
12217 (Fv_max_tooltip_size): New variable.
12218 (syns_of_xfns): DEFVAR_LISP it.
12219 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
12220 window buffer to *tip* right after creating the frame. Set frame's
12221 window_width. Use a maximum tooltip size specified by
12222 Vx_max_tooltip_size, if that has valid contents.
12223 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
12224 Make sure the tooltip is completely visible.
12225 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
12226 (Fx_create_frame): Adjust the frame's height for presence
12227 of the tool bar before calling x_figure_window_size.
12228 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
12229 when the window gets smaller.
12230 (x_set_foreground_color): Set frame's cursor_pixel.
12231 (x_set_foreground_color, x_set_background_color): Cleaned up.
12232 (x_set_font): Handle case of x_new_fontset returning the same name
12233 as before, although there was a change in fontsets.
12234
386ca361
MB
122352001-10-21 Miles Bader <miles@gnu.org>
12236
c2d53558 12237 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
386ca361
MB
12238 (Flogxor): Add usage: string to doc string.
12239 * charset.c (Fstring): Likewise.
12240 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
12241 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
12242
f00691a3 122432001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14ff1ee0 12244
03be2694
PJ
12245 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
12246
12247 * alloc.c: Reindent DEFUNs with doc: keywords.
12248
12249 * abbrev.c (Finsert_abbrev_table_description): Reindent.
12250
14ff1ee0
PJ
12251 * frame.c: Change doc-string comments to `new style' [w/`doc:'
12252 keyword].
12253
2f147815 12254See ChangeLog.9 for earlier changes.
6922b018
KH
12255
12256;; Local Variables:
49b3bd82 12257;; coding: iso-2022-7bit
6922b018 12258;; End:
2a34a036 12259
2f147815 12260 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
2a34a036
GM
12261 Copying and distribution of this file, with or without modification,
12262 are permitted provided the copyright notice and this notice are preserved.
ab5796a9
MB
12263
12264;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4