(struct fringe_bitmap): Change member bits from char to
[bpt/emacs.git] / src / ChangeLog
CommitLineData
9d7271e8
KS
12004-02-12 Kim F. Storm <storm@cua.dk>
2
3 * window.c (Fwindow_fringes): Doc fix.
4
706c1e4f
JD
52004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6
7 * xselect.c (x_get_foreign_selection): Add new optional parameter
8 time_stamp.
9 (Fx_get_selection_internal): Ditto, pass time_stamp to
10 x_get_foreign_selection.
11
12 * data.c (Fbyteorder): New function.
13
c2d12b5d
JD
142004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15
16 * atimer.c: Move include stdio.h to same place as in other files.
17
18 * region-cache.c: Ditto.
19
20 * sysdep.c: Ditto.
21
22 * xfaces.c: Ditto.
23
4c1947b9
SS
242004-02-09 Sam Steingold <sds@gnu.org>
25
26 * w32term.c (w32_draw_fringe_bitmap): Fixed a typo in the last patch.
27
82722af3
KS
282004-02-09 Kim F. Storm <storm@cua.dk>
29
30 * fringe.c: New file. Move original fringe related declarations
31 and code from dispextern.h and xdisp.c here.
32 Rework code to support user defined fringe bitmaps, redefining
33 standard bitmaps, ability to overlay user defined bitmap with
34 overlay arrow bitmap, and add faces to bitmaps.
35 (Voverflow_newline_into_fringe): Declare here.
36 (enum fringe_bitmap_align): New enum.
37 (..._bits): All bitmaps are now defined without bitswapping; that
38 is now done in init_fringe_once (if necessary).
39 (standard_bitmaps): New array with specifications for the
40 standard fringe bitmaps.
41 (fringe_faces): New array.
42 (valid_fringe_bitmap_id_p): New function.
43 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
44 (draw_fringe_bitmap): New function which draws fringe bitmap,
45 possibly overlaying bitmap with cursor in right fringe or the
46 overlay arrow in the left fringe.
47 (update_window_fringes): Do not handle overlay arrow here.
48 Compare and copy fringe bitmap faces.
49 (init_fringe_bitmap): New function.
50 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
51 define and destroy user defined fringe bitmaps.
52 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
53 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
54 (syms_of_fringe): New function. Defsubr new DEFUNs.
55 DEFVAR_LISP Voverflow_newline_into_fringe.
56 (init_fringe_once, init_fringe): New functions.
57 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
4c1947b9 58
82722af3
KS
59 * Makefile.in (obj): Add fringe.o.
60 (fringe.o): New dependencies.
61
62 * dispextern.h (FRINGE_ID_BITS): New definition for number of
63 bits allocated to hold a fringe number. Increase number of bits
64 from 4 to 8 to allow user defined fringe bitmaps.
65 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
66 left_user_fringe_face_id, right_user_fringe_bitmap,
67 right_user_fringe_face_id.
68 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
69 Move to new file fringe.c.
70 (MAX_FRINGE_BITMAPS): Define here.
71 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
72 and overlay_p. Change member which to int.
73 (struct redisplay_interface): New members define_fringe_bitmap
74 and destroy_fringe_bitmap.
75 (valid_fringe_bitmap_id_p): Add prototype.
76 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
77
78 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
79 arrows.
80 (update_frame): Do flush_display if force_flush_display_p to
81 ensure display (specifically fringes) are updated in a timely
82 manner when resizing the frame by dragging the mouse.
83 (update_window_line): Update row if overlay arrow changed.
84 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
85 or overlay arrow changed.
86
87 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
88 syms_of_fringe, and init_fringe.
89
90 * frame.h (struct frame): New member force_flush_display_p.
91
92 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
93 Add prototypes.
94
a3993cc8
KS
95 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
96 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
97 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
98 Use cursor color for displaying cursor in fringe.
82722af3
KS
99 (x_redisplay_interface): Add null handlers for
100 define_fringe_bitmap and destroy_fringe_bitmap functions.
101
102 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
103 xterm.c to handle overlayed fringe bitmaps and to use cursor color
104 for displaying cursor in fringe.
105 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
106 specific functions to define and destroy fringe bitmaps in fringe_bmp.
107 (w32_redisplay_interface): Add them to redisplay_interface.
108 (w32_term_init): Call w32_init_fringe instead of explicitly
109 defining fringe bitmaps in fringe_bmp array.
110 (x_delete_display): Call w32_reset_fringes instead of explicitly
111 destroying fringe bitmaps in fringe_bmp array.
112
113 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
114 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
115 (continued_bits, continuation_bits, ov_bits, first_line_bits)
116 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
117 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
118 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
119 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
120 Move fringe handling vars and code to new file fringe.c.
121 (handle_display_prop): Handle left-fringe and right-fringe
122 display properties; store user fringe bitmaps in iterator.
123 (move_it_in_display_line_to): Handle cursor in fringe at eob.
124 (clear_garbaged_frames): Set force_flush_display_p if resized.
125 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
126 (display_line): Handle cursor in fringe at eob.
127 (display_line): Set row user fringe bitmaps from iterator.
128
129 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
130 Use cursor color for displaying cursor in fringe.
131 (x_redisplay_interface): Add null handlers for
132 define_fringe_bitmap and destroy_fringe_bitmap functions.
133
030400eb
JD
1342004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
135
136 * macfns.c (Fx_change_window_property): Make doc string and
137 parameters same as for X version.
138
139 * w32fns.c (Fx_change_window_property): Ditto.
140
3af55251
KS
1412004-02-07 Kim F. Storm <storm@cua.dk>
142
ec110e9e
KS
143 * xdisp.c (hscroll_window_tree): Position cursor near to right
144 margin in hscrolled window when jumping to end of line (rather
145 than centering cursor).
146
3af55251
KS
147 * process.c (wait_reading_process_input): Don't do adaptive read
148 buffering if waiting for a specific process.
149
b0c138ce
LT
1502004-02-05 Luc Teirlinck <teirllm@auburn.edu>
151
152 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
153 (Fread_minibuffer, Feval_minibuffer)
154 (Fread_string, Fread_no_blanks_input)
155 (Fcompleting_read): Doc fixes.
156 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
157 completion-regexp-list. Define Qcase_fold_search and staticpro it.
158 (read_minibuf): Fix initial comment.
159 (Ftry_completion, Fall_completions, Ftest_completion): Bind
160 case-fold-serach to the value of completion-ignore-case when
161 checking completion-regexp-list.
162 (Fdisplay_completion_list): Make it handle arguments that are
163 symbols. Doc fix.
164
9676f5ad 1652004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
64d1e373 166
9676f5ad 167 * xterm.h: Add declaration of free_frame_menubar.
64d1e373 168
9676f5ad
JD
169 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
170 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
b0c138ce 171 (Fx_change_window_property): Add declaration of parameters type and
9676f5ad 172 format. Remove unused variable cons.
5b698285
JD
173
174 * xselect.c: Include stdio,h.
175
fc1d15f6
KH
1762004-02-05 Kenichi Handa <handa@m17n.org>
177
ebaff4af
KH
178 * fns.c (Fset_char_table_range): Fix previous change.
179
fc1d15f6
KH
180 * buffer.c (Fset_buffer_multibyte): Fix docstring.
181
9676f5ad
JD
1822004-02-04 Luc Teirlinck <teirllm@auburn.edu>
183
184 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
185
da75761f
SM
1862004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
187
188 * keymap.c (Vmouse_events): Rename from Vmenu_events.
189 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
190
13c5d120
KH
1912004-02-04 Kenichi Handa <handa@m17n.org>
192
193 * fns.c (Fset_char_table_range): Handle charsets ascii,
194 eight-bit-control, and eight-bit-graphic correctly.
195
2883d842
JR
1962004-02-03 Jason Rumney <jasonr@gnu.org>
197
198 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
199
200 * w32fns.c (x_to_w32_font): Likewise.
201
69eff41f
JD
2022004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
203
204 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
205 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
206
207 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
208 ClientMessages.
209
210 * xselect.c: Include termhooks.h and X11/Xproto.h
211 (x_check_property_data, x_fill_property_data)
212 (x_property_data_to_lisp, mouse_position_for_drop)
213 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
da75761f 214 (Fx_send_client_event): Move here from xfns.c.
69eff41f
JD
215 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
216
da75761f 217 * xfns.c (x-send-client-message): Move to xselect.c
69eff41f
JD
218 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
219 OUTER_P.
220 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
221 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
222 if vector_ret_p is true.
223 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
69eff41f 224
dcdbbb5d
EZ
2252004-02-02 Eli Zaretskii <eliz@elta.co.il>
226
227 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
228 basename of FILE relative to it, not FILE itself.
229
09721b31
KH
2302004-02-02 Kenichi Handa <handa@m17n.org>
231
232 * coding.c (coding_restore_composition): Check invalid
233 composition data more rigidly.
234
eb996101
LT
2352004-01-30 Luc Teirlinck <teirllm@auburn.edu>
236
237 * fileio.c (Fread_file_name_internal): Correctly handle the case
238 where insert-default-directory is nil.
239 (Fread_file_name): Always return an empty string if the user exits
240 with an empty minibuffer. Adapt the docstring accordingly.
241 (syms_of_fileio): Adapt the docstring of insert-default-directory
242 to the change in Fread_file_name.
243
a0367d42
EZ
2442004-01-29 Eli Zaretskii <eliz@elta.co.il>
245
246 * alloca.c [!alloca]: Fix the prototype for xfree.
247
13f52ed8
KH
2482004-01-29 Kenichi Handa <handa@m17n.org>
249
250 * fns.c (string_char_to_byte): Optimize for ASCII only string.
251 (string_byte_to_char): Likewise.
252
d57625a0
JR
2532004-01-28 Peter Runestig <peter@runestig.com>
254
255 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
256
911c78b4
ST
2572004-01-27 Steven Tamm <steventamm@mac.com>
258
259 * unexmacosx.c (unexec_copy): Do not copy more than was
260 requested to prevent overwriting during unexec.
261
eb37b8fd
JD
2622004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
263
ce38070a
JD
264 * process.c (sigchld_handler): Add comment about not calling malloc.
265
eb37b8fd
JD
266 * process.h: Add extern to synch_process_termsig.
267
21a3e657
ST
2682004-01-27 Steven Tamm <steventamm@mac.com>
269
da75761f
SM
270 * macterm.c (make_mac_frame, make_mac_terminal_frame):
271 Move setting of scroll bars from make_mac_frame to
272 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
21a3e657 273
d62a265d
RS
2742004-01-26 Richard M. Stallman <rms@gnu.org>
275
276 * search.c (Freplace_match): Handle nonexistent
277 back-references properly.
278
2792004-01-03 Richard M. Stallman <rms@gnu.org>
280
281 * window.c (decode_any_window): New function.
282 (Fwindow_height, Fwindow_width, Fwindow_edges)
283 (Fwindow_pixel_edges, Fwindow_inside_edges)
284 (Fwindow_inside_pixel_edges): Use decode_any_window.
285
ff236419
JD
2862004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
287
288 * process.h: synch_process_termsig new variable.
289
290 * callproc.c: Define synch_process_termsig.
291 (Fcall_process): Initiate synch_process_termsig to zero and
292 check if non-zero and get signal name after subprocess has ended.
293
294 * process.c (sigchld_handler): Set synch_process_termsig
295 if terminated by a signal. synch_process_death setting removed.
296
297 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
298
41b867ea
AS
2992004-01-26 Andreas Schwab <schwab@suse.de>
300
301 * print.c (print_preprocess): Declare size as EMACS_INT to not
302 lose bits.
303 (print_object): Likewise.
304 * alloc.c (Fpurecopy): Likewise.
305
a08084ff
LT
3062004-01-25 Luc Teirlinck <teirllm@auburn.edu>
307
308 * window.c (Fwindow_minibuffer_p): Doc fix.
309
b19ac475
JY
3102004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
311
312 * editfns.c (Fformat): Make both passes accept the same set of flags.
313
fe905025
KH
3142004-01-23 Kenichi Handa <handa@m17n.org>
315
316 * fns.c (Fmd5): If OBJECT is a buffer different from the current
317 one, set buffer to OBJECT temporarily.
318
438fc6c0
SM
3192004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
320
455316e2
SM
321 * keyboard.c (kbd_buffer_gcpro): Remove.
322 (kbd_buffer_store_event, clear_event, Fdiscard_input)
323 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
324 Don't initialize and/or maintain the variable any more. It was made
325 redundant by my commit of 2003-06-15.
326
438fc6c0
SM
327 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
328
5335a4ee
JD
3292004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
330
331 * lisp.h: Add undef DECL_ALIGN.
332
dcdaeebc
SM
3332004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
334
335 * process.c (wait_reading_process_input) [SYNC_INPUT]:
336 Check interrupt_input_pending explicitly.
337
338 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
339
340 * keyboard.c (handle_async_input): New fun,
341 extracted from input_available_signal.
342 (input_available_signal, reinvoke_input_signal): Use it.
343
9076a823
SM
3442004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
345
d7107586
SM
346 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
347
348 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
349 manipulation macros for when tags are in the lower bits.
350 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
351 (DECL_ALIGN): New macro.
352 (DEFUN): Use it.
353
354 * lisp.h [ENABLE_CHECKING]: Don't force union type.
355
356 * s/darwin.h (__attribute__): Remove outdated workaround.
357
358 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
359
360 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
361 Don't check range of malloc address.
362 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
363
9076a823
SM
364 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
365
366 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
367
ba029065
KH
3682004-01-19 Kenichi Handa <handa@m17n.org>
369
370 * fontset.c (fontset_font_pattern): Fix previous change.
371
7af0e8d7
MB
3722004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
373
374 * xdisp.c (Voverflow_newline_into_fringe)
375 (move_it_in_display_line_to, redisplay_internal)
376 (update_window_fringes, redisplay_window, display_line, window):
377 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
378 that it compiles without a window-system.
379 * dispnew.c (direct_output_for_insert, update_window): Likewise.
380
77a9cf69
KS
3812004-01-16 Kim F. Storm <storm@cua.dk>
382
383 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
384
385 * buffer.c (init_buffer_once): Set buffer_defaults and
386 buffer_local_flags for indicate_buffer_boundaries.
387 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
388 default- variable for it.
389
390 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
391 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
d7107586 392 New members exact_window_width_line_p and cursor_in_fringe_p for
77a9cf69
KS
393 overflowing newlines into right fringe.
394 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
395 and indicate_bottom_line_p for buffer boundaries and scrolling.
396 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
397 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
398 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
399 and HOLLOW_SQUARE_BITMAP.
400 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
401 Add prototypes.
402
403 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
404 instead of related indicator fields.
405 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
406 (direct_output_for_insert): Handle exact width lines like
407 contined lines. Call update_window_fringes.
408 (update_window): Call update_window_fringes.
409 (scrolling_window): Don't skip desired rows with changed bitmaps.
410 Check if fringe bitmaps changes when assigning scrolled rows.
411
412 * xdisp.c (Voverflow_newline_into_fringe): New variable.
413 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
414 (move_it_in_display_line_to): Overflow newline into fringe for
415 rows that are exactly as wide as the window.
416 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
417 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
418 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
419 (fringe_bitmaps): Add new bitmaps.
420 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
421 Select proper bitmap for cursor in fringe when appropriate.
422 Handle alignment of bitmap to top or bottom of row.
423 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
424 done by update_window_fringes.
425 (update_window_fringes, draw_window_fringes): New functions.
426 (redisplay_internal): Call update_window_fringes in case only
427 cursor row is updated.
428 (redisplay_window): Call update_window_fringes.
429 Explicitly call draw_window_fringes if redisplay was done using
430 the current matrix or the overlay arrow is in the window.
431 (try_window_reusing_current_matrix): Mark scrolled rows for
432 fringe update (to update buffer-boundaries / scrolling icons).
433 (find_last_unchanged_at_beg_row): Handle exact width lines line
434 continued lines.
435 (display_line): Overflow newline into fringe for rows that are
436 exactly as wide as the window. Don't append space for newline
d7107586 437 in this case.
77a9cf69
KS
438 (notice_overwritten_cursor): Explicitly clear cursor bitmap
439 in fringe as if it had been overwritten.
440 (erase_phys_cursor): Erase cursor bitmap in fringe.
d7107586 441 (syms_of_xdisp): Mark show-trailing-whitespace and
77a9cf69
KS
442 void-text-area-pointer as user options.
443 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
d7107586 444
77a9cf69
KS
445 * xterm.c (x_update_window_end): Call draw_window_fringes.
446 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
447 in row instead of actually drawing fringe bitmaps.
448 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
449 (x_draw_window_cursor): Draw cursor in fringe.
450
451 * w32term.c (x_update_window_end): Call draw_window_fringes.
452 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
453 in row instead of actually drawing fringe bitmaps.
454 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
455 (w32_draw_window_cursor): Draw cursor in fringe.
456
457 * macterm.c (x_update_window_end): Call draw_window_fringes.
458 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
459 in row instead of actually drawing fringe bitmaps.
460 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
461 (mac_draw_window_cursor): Draw cursor in fringe.
462
a633a954
JD
4632004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
464
465 * xterm.c (handle_one_xevent): Don't handle characters that are part
466 of an old style (XLookupString) compose sequence.
467
80460525
KH
4682004-01-15 Kenichi Handa <handa@m17n.org>
469
470 * search.c (Freplace_match): Use make_multibyte_string or
471 make_unibyte_string according to the buffer multibyteness.
472
7fc34f85
SM
4732004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
474
475 * alloc.c (struct interval_block, struct string_block)
476 (struct symbol_block, struct marker_block, live_string_p)
477 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
478 Better preserve alignment for objects in blocks.
479 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
480
481 * lread.c (defvar_per_buffer): Remove dead declaration.
482
483 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
484 space size.
485
66070bd1
JD
4862004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
487
488 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
489 if a key press should pop down. Only pop down if a key is pressed
490 outside the menu/dialog.
491 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
492 popup_get_selection.
493 (create_and_show_dialog): Pass 1 for down_on_keypress to
494 popup_get_selection.
495
de7515d6
JD
4962004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
497
498 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
499 BLOCK/UNBLOCK_INPUT.
500
160b1b50
JD
5012004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
502
503 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
504 specified.
505
3a9f36e6
KH
5062004-01-08 Kenichi Handa <handa@m17n.org>
507
508 * editfns.c (Fformat): Fix '&' to '&&'.
509
3803eb32
AS
5102004-01-08 Andreas Schwab <schwab@suse.de>
511
512 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
513 size if PSEUDOVECTOR_FLAG is set.
514
9da88f37
KH
5152004-01-07 Kenichi Handa <handa@m17n.org>
516
74ac5074
KH
517 * charset.c (Fdeclare_equiv_charset): Fix docstring.
518
9da88f37
KH
519 * fontset.c (fontset_ref_via_base): Fix previous change.
520
05faee07
KS
5212004-01-07 Kim F. Storm <storm@cua.dk>
522
523 * process.c (read_process_output): Only activate adaptive
524 buffering if we read less than 256 bytes at a time.
525
634910c8
KS
5262004-01-06 Kim F. Storm <storm@cua.dk>
527
528 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
529 object and image object. Return glyph width and height.
530 (mode_line_string, marginal_area_string): Ditto.
531
532 * dispextern.h (buffer_posn_from_coords, mode_line_string)
533 (marginal_area_string): Fix prototypes.
534
535 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
536 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
537 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
538
539 * keyboard.c (make_lispy_position): Use modified mode_line_string,
540 buffer_posn_from_coords, and marginal_area_string functions to
541 include both string object and image object in the lispy position.
542 Also add actual glyph width and height to position.
543 (read_key_sequence): Use real buffer position from mouse
544 event to find keymap property even when click is in marginal area.
545
546 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
547 mode_line_string and marginal_area_string functions to handle
548 both string object and image object properties.
d7107586 549
57951c2e
AS
5502004-01-06 Andreas Schwab <schwab@suse.de>
551
552 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
553 character.
554
181e6a61
AS
5552004-01-02 Andreas Schwab <schwab@suse.de>
556
d7107586
SM
557 * macterm.c (emacs_options, x_initialized, same_x_server):
558 Remove unused (and duplicated) definitions.
181e6a61 559
31e0fbdd
KS
5602004-01-02 Kim F. Storm <storm@cua.dk>
561
562 * process.h (struct Lisp_Process): New members for adaptive read
563 buffering: adaptive_read_buffering, read_output_delay, and
564 read_output_skip.
565
566 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
567 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
568 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
569 (process_output_delay_count, process_output_skip): New vars.
570 (Vprocess_adaptive_read_buffering): New variable.
571 (make_process): Initialize adaptive read buffering members.
572 (Fstart_process): Set adaptive_read_buffering member.
573 (deactivate_process): Cleanup adaptive read buffering.
574 (wait_reading_process_input): Temporarily omit delayed
575 subprocesses from the set of file descriptors to read from;
576 adjust the select timeout if we skipped any subprocesses.
577 (read_process_output): Increase adaptive read buffering delay if
578 we read less than a full buffer; reduce delay when we read a
579 full buffer.
580 (send_process): Simplify using local Lisp_Process var.
581 Reset adaptive read buffering delay after write.
582 (init_process): Initialize process_output_delay_count and
583 process_output_skip.
584 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
585
68c6a789
JR
5862004-01-01 Jason Rumney <jasonr@gnu.org>
587
d7107586 588 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
68c6a789 589
3f70fe82
LT
5902003-12-30 Luc Teirlinck <teirllm@auburn.edu>
591
592 * print.c (Ferror_message_string): Add hyperlink in the docstring
593 to the definition of `signal' in the Elisp manual.
594 * eval.c (Fsignal): Ditto.
595
c2be49ed
EZ
5962003-12-29 James Clark <jjc@jclark.com> (tiny change)
597
598 * fns.c (internal_equal): Return t for two NaN arguments.
599
7abd90ea
RS
6002003-12-29 Richard M. Stallman <rms@gnu.org>
601
602 * data.c (store_symval_forwarding): Handle setting
603 default-fill-column, etc., by changing the value in
604 buffers that use the default.
605
606 * minibuf.c (Fset_minibuffer_window): Doc fix.
607
608 * fileio.c (choose_write_coding_system): Ignore auto_saving
609 if using the visited file for auto saves.
610 (Fwrite_region): Don't update SAVE_MODIFF
611 if auto-saving in visited file.
612
3e7cfcdc
KH
6132003-12-29 Kenichi Handa <handa@m17n.org>
614
615 * dispextern.h (face_font_available_p): Extern it.
616
617 * fontset.c (Voverriding_fontspec_alist): New variable.
618 (lookup_overriding_fontspec): New function.
d7107586 619 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
3e7cfcdc
KH
620 (fontset_font_pattern): Likewise.
621 (regulalize_fontname): New function.
622 (Fset_fontset_font): Call regulalize_fontname.
623 (Fset_overriding_fontspec_internal): New function.
d7107586
SM
624 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
625 Defsubr Sset_overriding_fontspec_internal.
3e7cfcdc
KH
626
627 * xfaces.c (face_font_available_p): New function.
628
7abd90ea
RS
6292003-12-28 Richard M. Stallman <rms@gnu.org>
630
631 * buffer.c (Fother_buffer): Don't crash if BUF is nil
632 or if its name is nil.
633
634 * buffer.c (Fkill_buffer): Don't delete auto-save file
635 if it's the same as the visited file.
636
de1d1a40
LT
6372003-12-28 Luc Teirlinck <teirllm@auburn.edu>
638
639 * coding.c (Fcheck_coding_system): Doc fix.
640
204fb75e
KS
6412003-12-28 Kim F. Storm <storm@cua.dk>
642
643 * Makefile.in (eval.o): Depend on dispextern.h.
644
645 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
646 image glyph using image's ascent.
647 (mode_line_string): Return image glyph as object clicked on.
648 Adjust y0 for image glyph using image's ascent.
649
650 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
651 (struct glyph): New members, ascent and descent. Used to save
652 this glyph's ascent and descent, instead of having.
653 (struct glyph): Declare member face_id using FACE_ID_BITS.
654 (find_hot_spot): Add prototype.
655
656 * keyboard.c (Qimage): Remove extern (now in lisp.h).
657 (QCmap): Declare extern.
658 (make_lispy_position): When position is inside image hot-spot,
659 use hot-spot element's id as posn element.
660
661 * lisp.h (IMAGEP): New macro to test for image object type.
662 (Qimage): Declare extern.
663
664 * macfns.c (Qimage): Remove extern (now in lisp.h).
665 (valid_image_p, parse_image_spec): Use IMAGEP macro.
666
667 * macterm.c (Qface, Qmouse_face): Remove unused externs.
668
669 * w32fns.c (Qimage): Remove extern (now in lisp.h).
670 (valid_image_p, parse_image_spec): Use IMAGEP macro.
671
672 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
673
674 * w32term.c (Qface, Qmouse_face): Remove unused externs.
675
676 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
677 pointer types.
678 (Qrelative_width, Qalign_to): Remove unused variables.
679 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
680 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
681 image maps.
d7107586 682 (x_y_to_hpos_vpos): Return glyph relative coordinates through
204fb75e
KS
683 new dx and dy args.
684 Remove buffer_only_p arg (always 0). Simplify code accordingly.
685 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
686 than row's ascent and height, to get sensible height on tall rows.
687 (build_desired_tool_bar_string): Remove Qimage extern.
688 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
689 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
690 image glyph is alone on the last line.
691 (append_glyph, append_composite_glyph, produce_image_glyph)
d7107586 692 (append_stretch_glyph): Set glyph's ascent and descent.
204fb75e 693 (on_hot_spot_p): New function to check if position is inside an
d7107586 694 rectangular, circular, or polygon-shaped image hot-spot,
204fb75e
KS
695 (find_hot_spot): New function to search for image hot-spot.
696 (Flookup_image_map): New defun to search for image hot-spot.
697 (define_frame_cursor1): New aux function to determine frame pointer.
698 (note_mode_line_or_margin_highlight, note_mouse_highlight):
699 Handle `pointer' text property and :pointer image property to
700 control frame pointer shape. Detect image hot-spots for pointer
701 and help_echo properties. Use define_frame_cursor1.
702 (note_mouse_highlight): Use Vvoid_text_area_pointer.
703 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
704 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
705
706 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
707
708 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
709 (Qimage): Remove extern (now in lisp.h).
710 (valid_image_p, parse_image_spec): Use IMAGEP macro.
711
712 * xmenu.c (show_help_event): Remove unused code.
713
714 * xterm.c (Qface, Qmouse_face): Remove unused externs.
715 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
716 row's ascent and descent, to get a sensible height on tall rows.
717
fc052137
LT
7182003-12-25 Luc Teirlinck <teirllm@auburn.edu>
719
720 * minibuf.c (Fcompleting_read): Undo previous change.
721
b9148500
LH
7222003-12-25 Lars Hansen <larsh@math.ku.dk>
723
724 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
725 Arguments GCPRO'ed in call to file name handler.
726
56ffd194
TTN
7272003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
728
729 * termcap.c (tgetst1): Scan for "%pN"; if all
730 N are continuous in [1,9], remove all "%pN".
731
5202d23d
JD
7322003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
733
f26fab36
JD
734 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
735
5202d23d
JD
736 * xfaces.c (lface_fully_specified_p): Take into account that
737 MAC OS always have unspecified stipple.
738
8babaa59
TTN
7392003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
740
741 * tparam.c (tparam1): Add handling for `%pN', which
742 means use param N for the next substitution.
743
2d176448
TTN
7442003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
745
746 * xfaces.c (Fcolor_gray_p): Fix omission bug:
747 In case `frame' is nil, consult the selected frame.
748 (Fcolor_supported_p): Likewise.
749
adb0708c
LT
7502003-12-23 Luc Teirlinck <teirllm@auburn.edu>
751
000eeb15
LT
752 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
753 Doc fixes.
0dc72b11
LT
754
755 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
756 and an integer. Adapt the introductory comment accordingly.
adb0708c
LT
757 (Fread_from_minibuffer): Delete code moved into read_minibuf.
758 Doc fix.
759 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
760 read_minibuf.
761 (Fcompleting_read): Delete code moved into read_minibuf.
d7107586 762 (Ftest_completion): Make it handle obarrays and hash tables correctly.
adb0708c 763
2e4d132b
KH
7642003-12-03 Kenichi Handa <handa@m17n.org>
765
766 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
767 encoding sequence.
768
3999c705
KH
7692003-12-01 Kenichi Handa <handa@m17n.org>
770
771 * composite.c (syms_of_composite): Don't make the compostion hash
772 table week.
773
d344ecbb
LT
7742003-11-30 Luc Teirlinck <teirllm@auburn.edu>
775
776 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
777 * textprop.c (Fget_char_property_and_overlay): New function.
778 (syms_of_textprop): Defsubr it.
779
03d6484e
JD
7802003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
781
019b1f0e
JD
782 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
783 to compile on terminal configuration.
784
03d6484e
JD
785 * fileio.c (Fread_file_name): Check use_file_dialog also before
786 calling Fx_file_dialog.
787
788 * fns.c: use_file_dialog: New variable.
789 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
790
442d3fd0
KS
7912003-11-29 Kim F. Storm <storm@cua.dk>
792
793 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
794 (syms_of_msdos): Don't intern and staticpro them.
795
0f6a07a8
KS
7962003-11-27 Kim F. Storm <storm@cua.dk>
797
798 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
799 coordinates relative to glyph at posn. If glyph is an image,
800 return that as object at posn. Callers changed.
801 (mode_line_string, marginal_area_string): Calculate and return
802 pixel coordinates relative to glyph. Callers changed.
803
804 * dispextern.h (buffer_posn_from_coords, mode_line_string)
805 (marginal_area_string): Fix prototypes.
806 (window_box_left_offset, window_box_right_offset): Add prototypes.
807
808 * frame.h (get_specified_cursor_type, get_window_cursor_type):
809 Remove prototypes.
810
811 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
812
813 * keyboard.c (make_lispy_position): Add x and y coordinates
814 relative to the current glyph as 7th element of position.
815 If glyph is an image, return it in the object element.
816 (read_key_sequence): Skip checks for keymap property in cases
817 where POSN_STRING is not a string (e.g. an image).
818
819 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
820 (Vshow_text_cursor_in_void): New variable.
821 (glyph_to_pixel_coords): Don't use negative hpos.
822 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
823 (append_stretch_glyph): Change ascent arg to be actual value
824 in pixels rather than ratio to height. Callers changed.
825 (calc_pixel_width_or_height): New aux function, implementing
826 pixel based artihmetic for glyph widths and heights.
827 (produce_stretch_glyph): Use calc_pixel_width_or_height for
828 :width, :height, :align-to, and :ascent, thus allowing these to
829 be specified in pixels as well as multiples of characters.
830 Don't produce stretch glyphs with zero width or height.
831 (get_specified_cursor_type): Declare static.
832 (get_window_cursor_type): Declare static. Add glyph arg to be
833 able to know when cursor is on an image; always substitute
834 hollow-box cursor for filled-box cursor on images, to avoid
835 negative images and flicker when blinking the cursor.
836 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
837 (note_mode_line_or_margin_highlight): Use non-text cursor rather
838 than vertical scroll-bar cursor in display margins.
839 (note_mouse_highlight): Use non-text cursor rather than text
840 cursor in fringes and over images in the text area.
841 Use non-text cursor when mouse pointer is outside editable text,
842 i.e. in the void after end-of-line or end-of-buffer; this was
843 already done for W32, but is now standard for all systems --
844 user can toggle show-text-cursor-in-void to get old behaviour.
845 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
846 Vdisplay_pixels_per_inch.
847
00498bfc
AS
8482003-11-25 Andreas Schwab <schwab@suse.de>
849
850 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
851 EMACS_INT to not lose bits.
852 (Ffillarray): Don't set bits beyond the size of a bool vector.
853
edaa824d
KS
8542003-11-25 Kim F. Storm <storm@cua.dk>
855
856 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
857 define this defun on systems that cannot use stderr as lvalue.
858
74d6f539
GM
8592003-11-24 Gerd Moellmann <gerd@gnu.org>
860
861 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
862 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
863 ld's default is incompatible with unexec.
864
6a1ff3ba
KS
8652003-11-23 Kim F. Storm <storm@cua.dk>
866
63dc7c6b
KS
867 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
868 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
869 (Fforce_window_update): New defun.
870 (syms_of_window): Defsubr it.
871 (Fset_window_margins, Fset_window_fringes): Doc fix.
872
6a1ff3ba
KS
873 * print.c (Fredirect_debugging_output): New defun.
874 (syms_of_print): Defsubr it.
875
aef109b7
LT
8762003-11-22 Luc Teirlinck <teirllm@auburn.edu>
877
878 * fns.c (Fset_char_table_parent): Doc fix.
879
6a1ff3ba 8802003-11-22 Kim F. Storm <storm@cua.dk>
63ccbe21
KS
881
882 * dispnew.c (buffer_posn_from_coords): Return actual row/column
883 for glyph clicked on, rather than (unused) pixel positions.
884 (mode_line_string, marginal_area_string): Change X and Y args to
885 pointers for returning actual row/column for glyph clicked on.
886 Simplify and optimize loops.
887
aef109b7
LT
888 * dispextern.h (mode_line_string, marginal_area_string):
889 Update prototypes.
63ccbe21
KS
890
891 * keyboard.c (make_lispy_position): New function for generating
892 mouse click positions from frame and pixel coordinates.
893 Enhanced to return buffer position and actual row/column for
894 events outside the text area using updated mode_line_string and
895 marginal_area_string functions.
896 Return left-fringe and right-fringe clicks as such, rather than
897 clicks in text area.
898 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
899 pixel_to_glyph_coords, as we never use the results.
900 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
901 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
902 Eliminate unused code in WHEEL_EVENT handling.
903 (make_lispy_movement): Use make_lispy_position.
904
905 * window.c (coordinates_in_window): Remove redundant tests.
906 Fix returned X pixel value for left-margin.
907
908 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
909 mode_line_string and marginal_area_string parameters.
910
930a9995
LH
9112003-11-22 Lars Hansen <larsh@math.ku.dk>
912
d7107586
SM
913 * w32.c (struct the_group, getgrgid): Add.
914 * mac.c (struct my_group, getgrgid): Add.
aef109b7 915
3dbf3426
LT
9162003-11-21 Luc Teirlinck <teirllm@auburn.edu>
917
918 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
919
cae8ddbb 9202003-11-21 Lars Hansen <larsh@math.ku.dk>
ded4064f 921
d7107586
SM
922 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
923 include in call to file name handler. Optionally translate numeric
924 UID and GID to strings. Update docstring.
925 (directory_files_internal): Add parameter ID-FORMAT.
926 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
927 include in call to file name handler and call to
928 directory_files_internal. Update Docstring.
929 (Fdirectory_files): Add dummy parameter in call to
930 directory_files_internal.
931 * lisp.h (Qinteger): Add.
932 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
933 (Ffile_attributes): Add parameter.
934 * data.c (Qinteger): Export.
cae8ddbb 935
2550b848
LT
9362003-11-21 Luc Teirlinck <teirllm@auburn.edu>
937
3dbf3426 938 * fns.c (Freverse, Fnreverse): Doc fixes.
2550b848 939
88380018
KS
9402003-11-19 Kim F. Storm <storm@cua.dk>
941
942 * xdisp.c (init_iterator): Initialize it->start to position
943 before reseating (in case start position is invisible).
944 (init_to_row_start): Set it->start to row-start.
945 (redisplay_window): Accept optional_new_start if start position
946 is invisible (in which case IT_CHARPOS overshoots PT).
947 (display_line): Setup row->start from it->start (rather than
948 it->current which is wrong if first char on line is invisible).
949 When done, reseat it->start to it->current (= start of next row).
950 (expose_area): Fix exposure of text area when first char (e.g. TAB)
951 is only partially visible.
952
953 * dispextern.h (struct it): New member start.
954
854c1a59
SM
9552003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
956
455316e2
SM
957 * alloc.c (make_float, Fcons): Clear the markbit at init time.
958 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
959 of block_index outside of the macro call.
960 (Fgarbage_collect): Remove null code.
961
962 * m/amdx86-64.h: Don't redefine XPNTR.
963
854c1a59
SM
964 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
965 of VALMASK.
966
967 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
968 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
969 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
970
971 * lisp.h (VALMASK): Only define for non-union type.
972 (MARKBIT): Remove.
973 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
974 (XTYPE): Define unconditionally.
975 (XSETTYPE): Remove one more remnant.
976 (EQ): Define differently for the union and non-union cases.
977 (INTMASK): New bit mask.
978 (struct Lisp_Marker): Move down to prepare for upcoming patch.
979 (GC_EQ): Delegate to EQ.
980
981 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
982
a0c6ef2d
JD
9832003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
984
985 * xterm.c (x_window_to_scroll_bar): Move check of display to
986 where window_id is compared.
987
859492c4
KS
9882003-11-17 Kim F. Storm <storm@cua.dk>
989
990 * dispextern.h (struct it): New member first_vpos.
991
992 * xdisp.c (start_display): Set it->first_vpos.
993 (try_window_id): Use first_vpos to start display in first _text_
994 line if no reusable lines at start of window with header line.
995
810f2256
JD
9962003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
997
7c402969 998 * w32fns.c (XPutPixel):
854c1a59
SM
999 * w32bdf.c (w32_init_bdf_font):
1000 * sunfns.c (sel_read):
1001 * process.c (Fmake_network_process):
1002 * frame.c (store_frame_param):
1003 * fontset.c (Fset_fontset_font):
1004 * emacs.c (shut_down_emacs):
7c402969
JD
1005 * ccl.c (ccl_driver): Remove period at end of error message.
1006
a32e9bfd
JD
1007 * config.in: Regenerate.
1008
810f2256
JD
1009 * xfns.c (x_window_to_frame, x_any_window_to_frame)
1010 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
1011 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
1012 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
1013 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
1014
1015 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
1016
1017 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
1018 (XTmouse_position, handle_one_xevent): Pass Display* to
1019 x_window_to_scroll_bar.
1020 (x_window_to_scroll_bar): Take a Display* argument.
1021 Check that display for frame is equal to Display* argument.
854c1a59 1022 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
810f2256
JD
1023 x_display_info_for_display instead. Use Display in xev instead
1024 of GDK_DISPLAY.
1025 (x_dispatch_event): Call x_display_info_for_display.
1026 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
1027 (x_connection_closed): Call xg_display_close for GTK.
1028 (x_term_init): Call xg_display_open for additional displays.
1029 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
1030 for GTK.
1031
1032 * xmenu.c (single_menu_item, mouse_position_for_popup)
1033 (x_activate_menubar): Formatting adjustments.
1034
1035 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
1036 adjustments.
1037
1038 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
1039 (xg_display_close, xg_create_default_cursor)
1040 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
1041 handling.
854c1a59
SM
1042 (xg_left_ptr_cursor): Remove.
1043 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
810f2256
JD
1044 cursor here.
1045 (xg_win_to_widget): Take Display* argument, call
1046 gdk_xid_table_lookup_for_display.
1047 (xg_create_frame_widgets, xg_get_file_name, create_menus)
1048 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
1049 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
1050 in FRAME_X_DISPLAY_INFO.
1051 (xg_get_scroll_id_for_window): Take Display* argument.
1052 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
854c1a59 1053 (xg_initialize): Remove xg_left_ptr_cursor.
810f2256
JD
1054
1055 * gtkutil.h: xg_get_scroll_id_for_window, xg_win_to_widget takes
1056 Display* argument also. Declare xg_display_open,
1057 xg_display_close, xg_create_default_cursor.
1058
0b03cc78
JD
10592003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1060
1061 * xterm.c (x_detect_focus_change): Do not change focus frame for
1062 Enter/LeaveNotify if the current focus frame has explicit focus.
1063
77e688fa
KS
10642003-11-14 Kim F. Storm <storm@cua.dk>
1065
1066 * dispnew.c (update_text_area): Fix redisplay error when hscroll
1067 is active and first glyph is only partially visible.
854c1a59 1068
dd429b03
KH
10692003-11-13 Kenichi Handa <handa@m17n.org>
1070
1071 * xdisp.c (select_frame_for_redisplay): New function.
1072 (redisplay_internal): Record also selected_frame for
1073 unwind_redisplay. Call select_frame_for_redisplay before
1074 redrawing each frame.
1075 (unwind_redisplay): Argument changed to a cons.
1076
6d9266f4
LT
10772003-11-12 Luc Teirlinck <teirllm@auburn.edu>
1078
1079 * fns.c (Fstring_to_multibyte): Doc fix.
1080
80060eb3
KH
10812003-11-11 Kenichi Handa <handa@m17n.org>
1082
1083 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
1084
74305183
JD
10852003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1086
1087 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
1088 program specified positions.
1089
cfda993e
JD
10902003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1091
1092 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
1093
df211069
KH
10942003-11-08 Kenichi Handa <handa@m17n.org>
1095
1096 * Makefile.in (lisp): Add kannada.el.
1097 (shortlisp): Likewise.
1098
4307d534
KH
10992003-11-07 Kenichi Handa <handa@m17n.org>
1100
854c1a59
SM
1101 * coding.c (coding_allocate_composition_data):
1102 Reset coding->composing to COMPOSITION_NO.
4307d534
KH
1103 (coding_restore_composition): Detect invalid composition data.
1104 Give Fstring and Fvector a Lispy integer, not C int.
1105
854c1a59
SM
11062003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
1107
1108 * floatfns.c (Flogb): Don't use VALMASK.
1109
1110 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
1111 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
1112
1113 * lisp.h (XINT): Move the cast to clarify what is going on.
1114 (GCTYPEMASK, XSETTYPE): Remove.
1115 (XGCTYPE): Make it an alias of XTYPE.
1116
d04103a1
JD
11172003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1118
1119 * xterm.c (x_term_init): Fix formatting.
1120
da18b5ac
JD
11212003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1122
1123 * gtkutil.h: Declare xg_have_tear_offs, remove xg_keep_popup
1124 and xg_did_tearoff.
1125
1126 * gtkutil.c: Remove variable xg_did_tearoff.
1127 (xg_have_tear_offs): New function.
1128 (tearoff_remove): Just decrease xg_detached_menus.
1129 (tearoff_activate): Increase xg_detached_menus and call
1130 tearoff_remove when tearoff is removed.
854c1a59 1131 (xg_keep_popup): Remove function.
da18b5ac
JD
1132 (create_menus): Give add_tearoff_p as argument to recursive
1133 call to create_menus.
1134 (xg_create_widget): Use variables instead of multiple
1135 strcmp. Tell create_menus to create tear off only for
1136 menu bar menus.
1137 (xg_update_menubar): Change title for a detached menu also.
1138 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
1139 of deep_p.
1140 (xg_initialize): Initialize xg_detached_menus, remove
1141 initialization of xg_did_tearoff.
1142
1143 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
1144 xg_have_tear_offs returns non-zero.
1145 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
1146 call to xg_keep_popup.
1147
64d4923e
AC
11482003-11-01 Andrew Choi <akochoi@shaw.ca>
1149
1150 * macterm.c (XTread_socket): Handle menubar selection and grow
1151 window only for mouseDown events.
854c1a59 1152
6cc8bc07
JD
11532003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1154
1155 * xterm.c (x_term_init): For GTK part, increase x_initialized
1156 to check for more than one display. Use error instead of return 0.
1157
043131c4
AC
11582003-10-31 Andrew Choi <akochoi@shaw.ca>
1159
854c1a59 1160 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
043131c4
AC
1161 (copy_dysymtab): Call it.
1162
bdda99a1
LT
11632003-10-31 Luc Teirlinck <teirllm@auburn.edu>
1164
1165 * eval.c (Fdefvaralias): Doc fix.
1166
800f42ff 11672003-10-26 Luc Teirlinck <teirllm@auburn.edu>
0d11571e
LT
1168
1169 * data.c (Fsetplist): Doc fix.
1170
ef35b389
LK
11712003-10-14 Lute Kamstra <lute@gnu.org>
1172
1173 * window.c (Fset_window_fringes): Clarify docstring.
07107abc 1174
ef35b389 11752003-10-14 Kim F. Storm <storm@cua.dk>
854c1a59 1176
07107abc
KS
1177 * window.c (Fset_window_margins): Simplify arg checking.
1178
f7005886
RS
11792003-10-13 Richard M. Stallman <rms@gnu.org>
1180
1181 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
1182 (print_partial_compiled_pattern): Replace assert with a printout.
1183 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
1184
1185 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
1186
1187 * window.c (Fset_window_margins): Allow only integers as args.
1188 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
1189 Doc fixes.
1190
9c0c2af5
LK
11912003-10-13 Lute Kamstra <lute@gnu.org>
1192
1193 * window.c (Fset_window_fringes): Elaborate docstring.
1194
3f080e4e
AC
11952003-10-12 Andrew Choi <akochoi@shaw.ca>
1196
854c1a59 1197 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
a4887377 1198
3f080e4e
AC
1199 * s/darwin.h (GC_MARK_STACK): Define.
1200
0aa513ed
JD
12012003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1202
1203 * window.c (shrink_windows): New function.
1204 (size_window): Call shrink_windows to calculate window sizes when
1205 shrinking frame with more than one window.
1206
6aa8858a
KS
12072003-10-12 Kim F. Storm <storm@cua.dk>
1208
1209 * xdisp.c (compute_fringe_widths): Doc fix.
1210
c2164d91
KH
12112003-10-08 Kenichi Handa <handa@m17n.org>
1212
854c1a59 1213 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
c2164d91 1214
f82ac129
KH
12152003-10-07 Kenichi Handa <handa@m17n.org>
1216
1217 * coding.c (Qcoding_system_define_form): New variable.
1218 (syms_of_coding): Intern and staticpro it.
1219 (Fcheck_coding_system): Try to autoload the definition of
1220 CODING-SYSTEM.
1221
9296c947
LT
12222003-10-05 Luc Teirlinck <teirllm@auburn.edu>
1223
1224 * fns.c (Frequire): Doc fix.
1225
c1f0671a
JD
12262003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1227
3d8c3826
JD
1228 * xfns.c (Fx_send_client_event): New function as a base for
1229 manipulating extended window manager hints.
6dc15d98 1230 (Fx_send_client_event): Remove unused variable s.
3d8c3826 1231
068ae0fd
JD
1232 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
1233 that function is removed.
1234
1235 * xterm.c (x_set_offset): Use move_offset_left/top instead of
1236 x/y_pixels_outer_diff.
1237 (x_check_expected_move): Calculate move_offset_left/top.
1238
1239 * xterm.h (struct x_output): New members: move_offset_top/left.
1240
854c1a59 1241 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
068ae0fd
JD
1242 call x_set_offset directly.
1243
1244 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
1245
96f09305
JD
1246 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
1247
1248 * xterm.c (x_delete_display): Free font names and font_encoder
1249 in dpyinfo->font_table.
1250
854c1a59
SM
1251 * xfns.c (Fx_close_connection): Only call XFreeFont here.
1252 Move xfree of font names to x_delete_display.
96f09305 1253
c1f0671a
JD
1254 * xterm.h (struct x_display_info): New member, wm_type.
1255 (struct x_output): New members, expected_top/left and
1256 check_expected_move.
1257
1258 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
1259 is received.
854c1a59
SM
1260 (handle_one_xevent): Rename x_check_expected_move from
1261 x_check_fullscreen_move.
c1f0671a
JD
1262 (x_set_offset): Only add WM decoration sizes to modified_top/left
1263 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
854c1a59 1264 (x_check_expected_move): Rename from x_check_fullscreen_move.
c1f0671a
JD
1265 Removed fullscreen specific code. Use check_expected_move,
1266 expected_left/top instead. Also, set wm_type.
1267 (x_term_init): Initialize wm_type to unknown.
1268
1269 * frame.c (x_fullscreen_move): Remove addition of WM decoration
1270 sizes to move_x/y.
1271
be2fdba9
KH
12722003-10-03 Kenichi Handa <handa@m17n.org>
1273
1274 * macterm.c (x_load_font): Clear all members of FONTP before start
1275 filling them.
1276
12772003-10-02 Kenichi Handa <handa@m17n.org>
1278
1279 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
1280 before calling find_ccl_program_func. Call find_ccl_program_func
1281 only when fontp->font_encoder is not NULL.
1282
1283 * xterm.c (x_load_font): Clear all members of FONTP before start
1284 filling them.
1285
26a6e439
JPW
12862003-10-03 John Paul Wallington <jpw@gnu.org>
1287
1288 * keymap.c (map_keymap): Don't abort when binding is a vector.
1289
0d4c2dc2
JR
12902003-10-02 Jason Rumney <jasonr@gnu.org>
1291
854c1a59
SM
1292 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
1293 Sync dependencies with Makefile.in.
a63cf46f
JR
1294 (alloca.o): Remove.
1295
0d4c2dc2
JR
1296 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
1297 filling them.
1298
1299 * w32bdf.c (w32_load_bdf_font): Likewise.
1300
ab8f7d5c
RS
13012003-09-30 Richard M. Stallman <rms@gnu.org>
1302
1303 * term.c (set_tty_color_mode): Calculate current_mode_spec
1304 regardless of value of VAL.
1305
854c1a59 1306 * intervals.c (graft_intervals_into_buffer):
ab8f7d5c
RS
1307 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
1308 Handle over_used when splitting UNDER.
1309
13102003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1311
1312 * regex.c (regex_compile): Free the stack when returning from function.
1313
3413f972
KH
13142003-09-28 Kenichi Handa <handa@m17n.org>
1315
1316 * fontset.c (Finternal_char_font): Change return value to
1317 cons (FONT-NAME . GLYPH-CODE).
1318
40409f05
EZ
13192003-09-28 Eli Zaretskii <eliz@elta.co.il>
1320
1321 * term.c (tty_setup_colors): Treat any negative argument as -1.
1322
f98ddc99
KH
13232003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
1324
1325 * process.c (send_process): Delete unused temp_buf.
1326
66c8f1a8
DL
13272003-09-26 Dave Love <fx@gnu.org>
1328
1329 * xterm.c (x_bitmap_mask): Declare.
1330
ca716c26
DL
13312003-09-25 Dave Love <fx@gnu.org>
1332
1333 * Makefile.in (fns.o): Depend on md5.h.
1334
fbe57420
KS
13352003-09-25 Kim F. Storm <storm@cua.dk>
1336
1337 * window.c (set_window_buffer): Fix redisplay problems when
1338 switching between buffers with different display margin widths.
1339
ef6ae4ff
KS
13402003-09-23 Kim F. Storm <storm@cua.dk>
1341
1342 * process.c (set_socket_option): Fix :bindtodevice option.
1343 (Fset_network_process_option): Update process contact list when
1344 setting option succeeds.
1345 (Fmake_network_process): Doc fix.
1346
68e03c1c
DL
13472003-09-23 Dave Love <fx@gnu.org>
1348
7146d1c1 1349 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
68e03c1c 1350
2f809aae
EZ
13512003-09-22 Eli Zaretskii <eliz@elta.co.il>
1352
1353 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
1354 color mode is an integer number (it could be -1).
1355
8fe7d8c8
RS
13562003-09-22 Richard M. Stallman <rms@gnu.org>
1357
1358 * intervals.c (graft_intervals_into_buffer): Correct the main loop
1359 in the case where OVER is longer than UNDER.
1360
2f71b5ea
MY
13612003-09-22 Masatake YAMATO <jet@gyve.org>
1362
7146d1c1 1363 * window.c (Fset_window_scroll_bars): Validate the value of
2f71b5ea 1364 `vertical_type'.
7146d1c1 1365
0c4da023
KS
13662003-09-21 Kim F. Storm <storm@cua.dk>
1367
1368 * frame.c (Vdefault_frame_scroll_bars): New variable.
1369 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
1370 (syms_of_frame): DEFVAR_LISP it, and initialize according to
1371 window-system default scroll bar position.
1372
b648413b
KS
1373 * window.c (Fwindow_scroll_bars): Doc fix.
1374
8f5b9e34
JD
13752003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1376
854c1a59 1377 * xterm.c (x_set_offset): Take window manager decorations into account.
8f5b9e34 1378
b0f23edf
RS
13792003-09-19 Richard M. Stallman <rms@gnu.org>
1380
1381 * atimer.h: Don't include lisp.h.
1382 (P_): Define it here (as well as elsewhere).
1383
1384 * print.c (Fprin1_to_string): Move the PRINTPREPARE
1385 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
1386
1387 * data.c (Fvariable_binding_locus): New function.
1388 (syms_of_data): defsubr it.
1389 (Flocal_variable_p): Delete duplicate call to indirect_variable.
1390
e1283999
DL
13912003-09-18 Dave Love <fx@gnu.org>
1392
ad5f3636
DL
1393 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
1394
e1283999
DL
1395 * process.c (Fnetwork_interface_info): Fix type error.
1396 (Fnetwork_interface_list): Doc fix.
1397 (read_process_output, read_process_output): Delete unused var.
1398
b8c7fd71
KS
13992003-09-17 Kim F. Storm <storm@cua.dk>
1400
1401 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
1402 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
1403 (Fnetwork_interface_info): Check that ifreq struct has required
1404 fields before accessing them; this requires that those fields are
1405 defined as macros, which may be too restrictive on some platforms,
1406 but it is better than failing on other platforms.
1407 (syms_of_process): Only defsubr above fns when included.
1408
11e0a411
DL
14092003-09-17 Dave Love <fx@gnu.org>
1410
1411 * unexalpha.c: Don't include varargs.h.
1412
e9c50801
KS
14132003-09-17 Kim F. Storm <storm@cua.dk>
1414
1415 * process.c (Fset_process_sentinel): Add sentinel to childp plist
1416 for network process.
1417 (socket_options): Add `:' prefix to option names. Add optbit field.
1418 (set_socket_option): Remove no_error arg and special handling of s < 0.
1419 Return 1<<optbit for known option, 0 for unknown.
1420 Do not interpret 0 as false for boolean option (only nil).
1421 Pass failed option and value to report_file_error.
7146d1c1 1422 (Fset_network_process_options): Replace by Fset_network_process_option.
e9c50801
KS
1423 (Fset_network_process_option): New function to set just one option.
1424 (Fmake_network_process): Allow :coding arg to be a cons.
1425 Allow :server arg to be an integer specifying backlog size.
1426 Remove :options arg, and allow options to be specified directly
1427 as :KEY, VALUE pairs. Parse these options before binding socket.
1428 As before, :reuseaddr t is default for a server process, but this
1429 can now be disabled by specifying :reuseaddr nil.
1430 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
1431 (init_process): Availability of network options is now checked with
1432 simpler syntax (featurep 'make-network-process :OPTION); use loop to
1433 setup features.
1434 (syms_of_process): Fix defsubr's for the replaced functions.
1435
a0fc3644
DL
14362003-09-16 Dave Love <fx@gnu.org>
1437
1438 * Makefile.in: Depend on coding.h.
1439
6df2a645
KS
14402003-09-14 Kim F. Storm <storm@cua.dk>
1441
1442 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
1443 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
1444 (syms_of_process): Defsubr them.
1445
1446 * config.in: Regenerate.
7146d1c1
SM
1447
14482003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
1449
1450 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
1451 * m/news-r6.h (XUNMARK): Remove.
1452 * m/mips.h (XUNMARK): Remove.
1453 * m/mips-siemens.h (XUNMARK): Remove.
1454 * m/iris4d.h (XUNMARK): Remove.
1455 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
1456
0930c1a1
SM
14572003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
1458
31003b9e
SM
1459 * lisp.h (VALBITS): Don't remove 1 for the markbit.
1460 (union Lisp_Object): Use unsigned int for types. Remove markbit.
1461 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
1462 (XTYPE): Use unsigned right-shift.
1463 (XMARKBIT, XMARK, XUNMARK): Remove.
1464
0930c1a1
SM
1465 * alloc.c (init_intervals, init_symbol, init_marker):
1466 Don't preallocate anything.
1467 (Fgarbage_collect, mark_object): Ignore the markbit.
1468
1469 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
1470
19bb0fcd 14712003-09-08 Lute Kamstra <lute@gnu.org>
5df034de
LK
1472
1473 * xdisp.c (pint2hrstr): New function.
1474 (decode_mode_spec): Add `%i' and `%I' specs.
1475 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
1476 for `mode-line-format'.
1477
03bb6a06
AS
14782003-09-07 Andreas Schwab <schwab@suse.de>
1479
1480 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
1481 avoid warning.
1482
2063d89c
EZ
14832003-09-07 Eli Zaretskii <eliz@elta.co.il>
1484
0930c1a1 1485 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
2063d89c 1486
ed159bbf
KS
14872003-09-03 Kim F. Storm <storm@cua.dk>
1488
1489 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
1490 change (superseded by 2002-08-30 change); the default blink-off
1491 cursor is now again "no cursor".
1492
fe64a394
JR
14932003-09-01 Jason Rumney <jasonr@gnu.org>
1494
1495 * makefile.w32-in (alloca.o): Remove.
1496 (coding.o): Depend on intervals.h
1497 (emacs.o, bytecode.o): Depend on window.h
1498
c0175e24
DL
14992003-09-01 Dave Love <fx@gnu.org>
1500
1501 * Makefile.in (alloca.o): Remove commands.
1502 (coding.o): Depend on intervals.h composite.h window.h.
1503 (emacs.o): Depend on window.h keyboard.h keymap.h.
1504 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
1505 (bytecode.o): Depend on window.h.
1506
a24d4cb2
JR
15072003-08-31 Jason Rumney <jasonr@gnu.org>
1508
4bc2315e
JR
1509 * w32term.c (w32_per_char_metric): Allow cached metrics to be
1510 returned even when font_type is unknown.
1511
a24d4cb2
JR
1512 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
1513
9d35adc7
JD
15142003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1515
1516 * xterm.c (x_term_init): Initialize new fields in x_display_info.
1517
1518 * xterm.h (struct x_display_info): Add red/green/blue_bits and
1519 *_offset.
1520
1521 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
1522 calculate pixel value.
1523
6f68b035
GM
15242003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
1525
0930c1a1
SM
1526 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
1527 Don't tell redisplay display is accurate when it's actually been
1528 paused for pending input.
6f68b035 1529
4828b4d7
RS
15302003-08-29 Richard M. Stallman <rms@gnu.org>
1531
1532 * dispnew.c (adjust_glyph_matrix): Call window_box
1533 whenever W is nonzero.
1534
1535 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
1536 (Fkill_local_variable, Fmake_variable_frame_local)
0930c1a1 1537 (Flocal_variable_p, Flocal_variable_if_set_p):
4828b4d7
RS
1538 Use indirect_variable to trace thru variable aliases.
1539
1540 * config.in: Updated.
1541
1542 * callint.c (Fcall_interactively): Save and restore
1543 Vthis_command, Vthis_original_command, real_this_command,
1544 and current_kboard->Vlast_command.
1545
1546 * abbrev.c (Fexpand_abbrev): Insert before deleting.
1547
e019878d
GM
15482003-08-29 Gerd Moellmann <gerd@gnu.org>
1549
1550 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
1551
85478bc6
KH
15522003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
1553
0930c1a1 1554 * coding.c (decode_coding_iso2022): Initialize local variable c2.
85478bc6
KH
1555 (decode_coding_sjis_big5): Likewise.
1556
07ce82d3
JR
15572003-08-27 Jason Rumney <jasonr@gnu.org>
1558
d3703de3
JR
1559 * w32.c (sys_pipe): Protect against file descriptor overflow.
1560
ee4a01d1
JR
1561 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
1562
07ce82d3
JR
1563 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
1564
72d19c66
LK
15652003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
1566
1567 * xfns.c (Vgtk_version_string): New variable.
1568 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
1569
5459e42a
EZ
15702003-08-24 Eli Zaretskii <eliz@elta.co.il>
1571
0930c1a1 1572 * term.c (term_init): Remove `const' from buffer_size's declaration.
3d8714e7 1573
5459e42a
EZ
1574 * Makefile.in (msdos.o): Depend on intervals.h.
1575
0930c1a1 1576 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
5459e42a 1577
231d6cfb
JD
15782003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1579
1580 * xterm.h (struct x_display_info): New fields: client_leader_window
1581 and Xatom_wm_client_leader.
1582
1583 * xterm.c (x_initialize): Move call to x_session_initialize to ...
1584 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
1585
1586 * xsmfns.c (create_client_leader_window): New function.
1587 (x_session_initialize): Call create_client_leader_window, take
1588 dpyinfo as argument.
1589
1590 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
1591
1592 * Makefile.in (xsmfns.o): Add more depenedencies.
1593
afa88464
DL
15942003-08-21 Dave Love <fx@gnu.org>
1595
1596 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
1597
f730033e
KH
15982003-08-21 Kenichi Handa <handa@m17n.org>
1599
1600 * term.c (term_init): Fix previous change; don't rely on the
1601 length of `buffer' if TERMINFO is defined.
1602
6dca786c
DL
16032003-08-20 Dave Love <fx@gnu.org>
1604
1605 * atimer.h: Include lisp.h.
1606
1607 * lisp.h (EMACS_LISP_H): New.
1608 (popup_activated_flag): Don't declare.
1609
1610 * alloca.c: Some merging with gnulib. Change logic and doc
1611 concerning (x)malloc/(x)free -- no longer Emacs-specific.
1612 [DO_BLOCK_INPUT]: Don't include lisp.h.
1613 (xmalloc, xfree): Declare.
1614 (malloc): Don't declare.
1615
0930c1a1 1616 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
6dca786c
DL
1617 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
1618 atimer.h, blockinput.h.
1619
1620 * alloc.c (lisp_align_malloc): Change type of `aligned'.
1621
1622 * alloca.s: Removed.
1623
3a06a6d9
RS
16242003-08-19 Gerd Moellmann <gerd@gnu.org>
1625
1626 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
1627 use -lncurses.
1628
1629 * term.c (term_init): Use a buffer of size 4096 for tgetent since
1630 FreeBSD returns something longer than 2044. Abort if the end of
1631 the buffer is overwritten.
1632
27eeee55
MB
16332003-08-19 Miles Bader <miles@gnu.org>
1634
1635 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
1636
2f297815
GM
16372003-08-19 Gerd Moellmann <gerd@gnu.org>
1638
f4446bbf
GM
1639 * alloc.c (lisp_align_malloc): Check for memory full when
1640 allocating ablocks, which also avoids freeing a pointer into an
1641 ablocks structure.
1642
1643 * puresize.h (BASE_PURESIZE): Increase to 1100000.
1644
0930c1a1 1645 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
2f297815 1646
0e7d7aae
RS
16472003-08-16 Richard M. Stallman <rms@gnu.org>
1648
1649 * editfns.c (Fencode_time): Doc fix.
1650
16512003-08-16 David Ponce <david@dponce.com>
1652
1653 * fileio.c (Fwrite_region): Fix conditional expression to issue
1654 the right message.
1655
16562003-08-16 Juri Linkov <juri@jurta.org> (tiny change)
1657
1658 * syntax.c (Fforward_word): Argument changed to optional.
0930c1a1 1659 Set default value to 1.
0e7d7aae 1660
5d551295
KH
16612003-08-15 Kenichi Handa <handa@m17n.org>
1662
1663 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
1664 what autoscaled.
1665 (best_matching_font): Once we find a better scalable font, set
1666 non_scalable_has_exact_height_p to 1.
1667 (try_font_list): Call try_alternative_families to try any family
1668 with the given registry.
1669
1661e56b
AS
16702003-08-09 Andreas Schwab <schwab@suse.de>
1671
f29181dc
AS
1672 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
1673
1661e56b
AS
1674 * print.c (print_string): Fix printing of multibyte string with
1675 nontrivial printcharfun.
1676
465aa50a
JD
16772003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1678
1679 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
1680
1681 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
1682
e430e5ba
KH
16832003-07-31 Kenichi Handa <handa@m17n.org>
1684
1685 * process.c (read_process_output): Return the actually read bytes
1686 instead of the result of decoding.
1687
97e7188e
KH
16882003-07-31 Kenichi Handa <handa@m17n.org>
1689
1690 * xterm.h (struct x_bitmap_record): New member have_mask.
1691
1692 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
1693 to 0.
1694 (x_create_bitmap_from_file): Likewise.
1695 (x_destroy_bitmap): Check have_mask member before freeing a mask.
1696 (x_destroy_all_bitmaps): Likewise.
1697 (x_create_bitmap_mask): Set have_mask member to 1.
1698
b53094d6
RS
16992003-07-30 Richard M. Stallman <rms@gnu.org>
1700
1701 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
1702
631f2082
JD
17032003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1704
1705 * gtkutil.c (xg_mark_data): Update calls to mark_object.
1706
c855f2ca
RS
17072003-07-29 Richard M. Stallman <rms@gnu.org>
1708
1709 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
1710 Conditionalize XIM code on HAVE_XIM.
1711
1712 * fns.c (Fclear_string): New function.
1713 (syms_of_fns): defsubr it.
1714
17e6d491
KH
17152003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> (tiny change)
1716
0930c1a1 1717 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
17e6d491 1718
29ea8ae9
SM
17192003-07-22 Stefan Monnier <monnier@cs.yale.edu>
1720
1721 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
1722
1723 * buffer.c (delete_all_overlays): New function.
1724 * buffer.h (delete_all_overlays): Declare.
1725 * coding.c (run_pre_post_conversion_on_str):
1726 * print.c (temp_output_buffer_setup):
1727 * fileio.c (Finsert_file_contents):
1728 * minibuf.c (get_minibuffer): Use it.
1729
1dd7ccf2
AC
17302003-07-22 Andrew Choi <akochoi@shaw.ca>
1731
1732 * unexmacosx.c (unexec_regions_sort_compare):
1733 (unexec_regions_merge): New functions. Sort and merge unexec
1734 regions before dumping them.
1735
f57bd967
DL
17362003-07-22 Dave Love <fx@gnu.org>
1737
1738 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
1739
7cdee936
SM
17402003-07-21 Stefan Monnier <monnier@cs.yale.edu>
1741
1742 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
1743 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
1744 MARKBIT as the gcmarkbit for strings.
1745
e50886d3
RS
17462003-07-21 Richard M. Stallman <rms@gnu.org>
1747
1748 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
1749
29ea8ae9 1750 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
e50886d3
RS
1751 (syms_of_fns): Corresponding change.
1752
1753 * alloc.c (syms_of_alloc): Doc fixes.
1754
17552003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
1756
1757 * s/netbsd.h: Use -Wl syntax.
1758
fdc39b59
RS
17592003-07-17 Richard M. Stallman <rms@gnu.org>
1760
1761 * xterm.c (xim_initialize): Redo 6/24 change.
1762
9c53385f
SM
17632003-07-15 Stefan Monnier <monnier@cs.yale.edu>
1764
1765 * buffer.c (copy_overlays): Use EMACS_INT for positions.
1766 (Fswitch_to_buffer): Don't signal an error when switching to the same
1767 buffer in a dedicated window.
1768
1769 * alloc.c: Use bitmaps for cons, as was done for floats.
1770 (init_float, init_cons): Let the normal code allocate the first block.
1771 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
1772 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
1773 New macros.
1774 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
1775 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
1776 (live_cons_p): Check the pointer is not past the `conses' array.
1777 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
1778 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
1779 (survives_gc_p): Use CONS_MARKED_P and simplify.
1780 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
1781
dde13196
PE
17822003-07-13 Paul Eggert <eggert@twinsun.com>
1783
1784 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
1785 puts it into BSS instead, at least on Solaris 8 and 9.
1786 This is a valid optimization, and it may occur on other platforms,
1787 so Emacs should not assume that initializing a static variable to
1788 zero puts it into data.
1789 * alloc.c (pure, staticvec):
1790 Initialize these arrays to nonzero, so that they're not
1791 put into BSS by that optimization.
1792
a801bc34
SM
17932003-07-13 Stefan Monnier <monnier@cs.yale.edu>
1794
1795 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
1796 (lisp_align_malloc): Use posix_memalign is available.
1797 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
1798 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
1799 for consistency. Update users.
1800
0c8b2afa
RS
18012003-07-13 Richard M. Stallman <rms@gnu.org>
1802
1803 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
1804
668c2ab0
JB
18052003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
1806
1807 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
1808 and use the Gtk+ function gtk_window_icon_from_file if available.
1809
1810 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
1811 handle mask of bitmaps.
1812 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
1813 mask property.
1814 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
1815
1816 * xterm.h (xg_set_icon): New function.
1817
800bebe3
RS
18182003-07-12 Paul Eggert <eggert@twinsun.com>
1819
1820 * unexelf.c (unexec): Consider a section to precede the .bss
1821 section if its addresses overlap that of .bss.
1822
69e38995
RS
18232003-07-12 Richard M. Stallman <rms@gnu.org>
1824
1825 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
1826
1827 * config.in (HAVE_CRTIN): Add #undef.
1828 (INLINE): Really inline only if OPTIMIZE is defined.
1829
1830 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
1831 END_FILES_1.
1832 (START_FILES_1, END_FILES_1): New macros (conditional).
a801bc34 1833 (LD_SWITCH_SYSTEM_TEMACS): Define.
69e38995
RS
1834
1835 * s/openbsd.h: Don't include bsd4-3.h.
a801bc34
SM
1836 (TERMINFO): Define.
1837 (LIBS_TERMCAP): Define.
1838 (LD_SWITCH_SYSTEM): Define (two definitions).
69e38995
RS
1839
1840 * xfns.c: Include libpng/png.h instead of png.h.
1841
f1d0c238
AS
18422003-07-11 Andreas Schwab <schwab@suse.de>
1843
1844 * buffer.c (modify_overlay): Update prototype.
1845 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
1846 Likewise.
1847
5f6bf5fe
SM
18482003-07-09 Stefan Monnier <monnier@cs.yale.edu>
1849
1850 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
1851 (struct interval): Move to intervals.h.
1852 (struct Lisp_Marker): Use EMACS_INT for position info.
1853 (forward_point): Remove prototype of defunct function.
1854 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
1855 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
1856 (syms_of_textprop, set_text_properties): Remove prototypes that are
1857 already in intervals.h.
1858
1859 * intervals.h (struct interval): Move from lisp.h.
1860 Use EMACS_INT for position and size info.
1861
1862 * coding.c: Include intervals.h for Fset_text_properties.
1863
1864 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
1865 position and length information.
1866
2765b457
SM
18672003-07-09 Stefan Monnier <monnier@cs.yale.edu>
1868
1869 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
1870 position and length information.
1871
2410d73a
SM
18722003-07-09 Stefan Monnier <monnier@cs.yale.edu>
1873
1874 Change overlays_after and overlays_before so the overlays themselves
1875 are linked into lists, rather than using cons cells. After all each
1876 Lisp_Misc already occupies 5 words, so we can add a `next' field to
1877 Lisp_Overlay for free and save up one cons cell per overlay (not
1878 to mention one indirection when traversing the list of overlay).
1879
1880 * lisp.h (struct Lisp_Overlay): New field `next'.
1881
1882 * buffer.h (struct buffer): Change overlays_before and overlays_after
1883 from Lisp lists of overlays to pointers to overlays.
1884
1885 * buffer.c (overlay_strings, recenter_overlay_lists):
1886 Fix typo in eassert in last commit.
1887 (unchain_overlay): New function.
1888 (add_overlay_mod_hooklist): Use AREF.
1889 (copy_overlays, reset_buffer, overlays_at, overlays_in)
1890 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
1891 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
1892 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
1893 (report_overlay_modification, evaporate_overlays, init_buffer_once):
1894 Adjust to new type of overlays_(before|after).
1895
1896 * alloc.c (mark_object): Mark the new `next' field of overlays.
1897 (mark_buffer): Manually mark the overlays_(after|before) fields.
1898
1899 * coding.c (run_pre_post_conversion_on_str):
1900 * editfns.c (overlays_around):
1901 * xdisp.c (load_overlay_strings):
1902 * fileio.c (Finsert_file_contents):
1903 * indent.c (current_column):
1904 * insdel.c (signal_before_change, signal_after_change):
1905 * intervals.c (set_point_both):
1906 * print.c (temp_output_buffer_setup): Use new type for
1907 overlays_(before|after).
1908
04812929
SM
19092003-07-08 Stefan Monnier <monnier@cs.yale.edu>
1910
1911 * buffer.c (report_overlay_modification): Don't run hooks while
1912 traversing the list of overlays.
1913
1914 * buffer.h (struct buffer): Use an int for overlay_center.
1915 (overlays_at, evaporate_overlays, recenter_overlay_lists)
1916 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
1917
1918 * buffer.c (reset_buffer, recenter_overlay_lists)
1919 (adjust_overlays_for_insert, adjust_overlays_for_delete)
1920 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
1921 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
1922 (overlays_at, evaporate_overlays, recenter_overlay_lists)
1923 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
1924
1925 * xdisp.c (fast_find_position): Remove unused var.
1926
1927 * cmds.c (Qexpand_abbrev): New sym.
1928 (syms_of_cmds): Initialize it.
1929 (internal_self_insert): Use it to call expand-abbrev.
1930
2e7ecf15
KS
19312003-07-09 Kim F. Storm <storm@cua.dk>
1932
1933 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if emacs
1934 was configured with --without-xim.
42f81f64 1935 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
2e7ecf15 1936
c6de56a0
RS
19372003-07-07 Richard M. Stallman <rms@gnu.org>
1938
1939 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
1940
1941 * alloc.c (Fgarbage_collect): Doc fix.
1942
b93fb365
KH
19432003-07-07 Nozomu Ando <nand@mac.com> (tiny change)
1944
1945 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
1946
bfe1a3f7
SM
19472003-07-06 Stefan Monnier <monnier@cs.yale.edu>
1948
04812929
SM
1949 * minibuf.c (read_minibuf): UNGCPRO before returning.
1950 (Ftry_completion, Fall_completions): Doc fix.
1951
bfe1a3f7
SM
1952 * alloc.c (live_float_p): Check that p is not past the `floats' array,
1953 now that `floats' is not the last element of the struct any more.
1954
ee79d1aa
JR
19552003-07-06 Jason Rumney <jasonr@gnu.org>
1956
1957 * w32term.h (ClipboardSequence_Proc): New type.
1958
1959 * w32fns.c (clipboard_sequence_fn): New variable.
1960 (globals_of_w32fns): Initialize it.
1961
1962 * w32select.c (last_clipboard_sequence_number): New variable.
1963 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
1964 number if possible.
1965
49723c04
SM
19662003-07-06 Stefan Monnier <monnier@cs.yale.edu>
1967
4698665f
SM
1968 * m/amdx86-64.h (MARKBIT):
1969 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
1970 MARKBIT and ARRAY_MARK_FLAG any more.
1971
1972 * m/hp800.h (XSETMARKBIT):
1973 * m/sr2k.h (XSETMARKBIT):
1974 * lisp.h (XSETMARKBIT): Remove unused macro.
1975
49723c04
SM
1976 * lisp.h (mark_object): Change prototype.
1977
1978 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
1979 (last_marked): Change accordingly.
1980 (mark_interval, mark_maybe_object, mark_maybe_pointer)
1981 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
1982 (mark_buffer): Update calls to mark_object.
1983
1984 * bytecode.c (mark_byte_stack):
1985 * fns.c (sweep_weak_table):
1986 * keyboard.c (mark_kboards): Update calls to mark_object.
1987
1d660eca
JR
19882003-07-06 Jason Rumney <jasonr@gnu.org>
1989
1990 * alloc.c (struct ablock): Only include padding when there is some.
1991
618b5ae4
SM
19922003-07-04 Stefan Monnier <monnier@cs.yale.edu>
1993
1994 * alloc.c (ALIGN): Add casts to simplify usage.
1995 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
1996 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
1997 (struct ablock, struct ablocks): New types.
1998 (free_ablock): New global var.
1999 (lisp_align_malloc, lisp_align_free): New functions.
2000 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
2001 (struct float_block): Reorder and add gcmarkbits.
2002 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
2003 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
2004 (init_float, make_float): Use lisp_align_malloc.
2005 (free_float, live_float_p): Don't use `type' any more.
2006 (make_float): Use FLOAT_UNMARK to access to mark bit.
2007 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
2008 Use FLOAT_MARKED_P to access the mark bit.
2009 (pure_alloc): Simplify use of ALIGN.
2010 (mark_object): Use FLOAT_MARK to access the mark bit.
2011 (gc_sweep): Use new macros to access the float's mark bit.
2012 (init_alloc_once): Init free_ablock.
2013
2014 * lisp.h (struct Lisp_Float): Remove unused field `type'.
2015
3ef06d12
SM
20162003-06-27 Stefan Monnier <monnier@cs.yale.edu>
2017
2018 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
2019 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
2020 (allocate_buffer): Move.
2021 (string_bytes): Don't mask markbit of `size_byte'.
2022 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
2023 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
2024 Use the `size' field of buffers (rather than the `name' field) for
2025 the mark bit, as is done for all other vectorlike objects.
2026 Use the new macros to access the mark bit of vectorlike objects.
2027
e81043aa
RS
20282003-06-26 Richard M. Stallman <rms@gnu.org>
2029
2030 * puresize.h (BASE_PURESIZE): Increment base size.
2031
2032 * xdisp.c (fast_find_position): Enable Gerd's new definition.
2033
2034 * xterm.c (xim_initialize): Undo previous change.
2035
2d0834cc
SM
20362003-06-26 Stefan Monnier <monnier@cs.yale.edu>
2037
2038 * alloc.c (survives_gc_p): Simplify.
2039
2040 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
2041
2042 * window.c (Fset_window_dedicated_p): Simplify.
2043 (display_buffer_1): Don't raise the win from which minibuf was entered.
2044 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
2045 (Fminibuffer_selected_window): Simplify.
2046
2047 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
2048
2049 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
2050 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
2051
2052 * insdel.c (check_markers, adjust_markers_for_delete)
2053 (adjust_markers_for_insert, adjust_markers_for_replace)
2054 (prepare_to_modify_buffer, RESTORE_VALUE):
2055 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
2056 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
2057 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
2058 * alloc.c (Fmake_marker, free_marker, gc_sweep):
2059 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
2060 * editfns.c (save_excursion_restore, transpose_markers):
2061 * window.c (delete_window):
2062 * xdisp.c (message_dolog): Update for new types.
2063
d54ae3d8
JD
20642003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2065
a5f696ac
JD
2066 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
2067 (realize_default_face): Use default_face_done_p for the force_p
2d0834cc 2068 argument to set_lface_from_font_name. Set default_face_done_p to one.
a5f696ac
JD
2069
2070 * frame.c (make_frame): Initialize default_face_done_p.
2071
2072 * frame.h (struct frame): Add default_face_done_p.
2073
d54ae3d8
JD
2074 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
2075 will be defined.
2076
2336fe58
SM
20772003-06-25 Stefan Monnier <monnier@cs.yale.edu>
2078
2079 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
2080 Initialize the new field `gcmarkbit'.
2081 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
2082 (mark_interval_tree): Don't mark the tree separately from the nodes.
2083 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
2084 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
2085 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
2086
2087 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
2088 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
2089 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
2090 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
2091 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
2092
bcea31c2
DL
20932003-06-24 Dave Love <fx@gnu.org>
2094
2095 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
2096
2097 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
2098 from gnulib.
2099
2601f59e
RS
21002003-06-21 Richard M. Stallman <rms@gnu.org>
2101
2102 * fileio.c (Fwrite_region): Alternate messages
2103 for append and partial write.
2104
2105 * keyboard.c (read_key_sequence): When converting upcase fn key to
2106 downcase, update fkey and keytran so `backspace' gets translated.
2107
2108 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
2109
2110 * process.c (wait_reading_process_input): Don't signal SIGIO
2111 in batch mode.
2112
b5d2c621
KH
21132003-06-17 Kenichi Handa <handa@m17n.org>
2114
2115 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
2116 composite.h.
2117
2118 * xselect.c: Don't include charset.h, coding.h, composite.h.
2119 (Qforeign_selection): New variable.
2120 (syms_of_xselect): Intern and static it.
2121 (selection_data_to_lisp_data): Return a unibyte string made from
2122 data with `foreign-selection' text property.
2123
6793bc63
SM
21242003-06-15 Stefan Monnier <monnier@cs.yale.edu>
2125
2126 * termhooks.h (EVENT_INIT): New macro.
2127
2128 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
2129
2130 * alloc.c (mark_kboards): Move to keyboard.c.
2131
2132 * keyboard.c (record_asynch_buffer_change, read_avail_input):
2133 * xterm.c (x_dispatch_event):
2134 * xmenu.c (find_and_call_menu_selection):
2135 * xdisp.c (handle_tool_bar_click):
2136 * w32menu.c (menubar_selection_callback):
2137 * sysdep.c (kbd_input_ast, read_input_waiting):
2138 * msdos.c (dos_rawgetc):
2139 * macterm.c (mac_check_for_quit_char):
2140 * macmenu.c (menubar_selection_callback):
2141 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
2142 data to kbd_buffer_store_event.
2143
b3ea810c
KS
21442003-06-15 Kim F. Storm <storm@cua.dk>
2145
2146 * xdisp.c (x_fix_overlapping_area): Always use area relative X
6793bc63 2147 to fix redisplay problem with tall characters (such as \e,AC\e(B).
b3ea810c 2148
b8f75eda
KG
21492003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
2150
2151 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
2152
ba92ce48
KH
21532003-06-12 Kenichi Handa <handa@m17n.org>
2154
2155 * fileio.c (Fwrite_region): Save and restore restriction.
2156
b80263be
DL
21572003-06-12 Dave Love <fx@gnu.org>
2158
2159 * alloca.c (alloca): Declare arg as size_t.
2160
6793bc63
SM
2161 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
2162 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
b80263be 2163
b23c0a83
DL
21642003-06-11 Dave Love <fx@gnu.org>
2165
2166 * search.c (shrink_regexp_cache): Use xrealloc.
2167 (syms_of_search): Use xmalloc.
2168
700e47c2
KS
21692003-06-10 Kim F. Storm <storm@cua.dk>
2170
2171 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
2172 Adjust phys_cursor.x to be relative to window box, rather than
2173 text area before checking -- to ensure cursor is redrawn when
2174 exposing window.
2175 Note: This also fixes a similar (older) bug if display margins
2176 are present.
2177
f11aa0b2
KH
21782003-06-06 Kenichi Handa <handa@m17n.org>
2179
2180 * coding.c (encoding_buffer_size): If coding->type is
2181 coding_type_ccl, double magnification on CRLF encoding.
2182
3d143690
JR
21832003-06-06 Jason Rumney <jasonr@gnu.org>
2184
2185 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
2186 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
2187
2188 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
2189 Mac too.
2190
f16205ca
DL
21912003-06-05 Dave Love <fx@gnu.org>
2192
b23c0a83
DL
2193 * strftime.c: Merge changes from gnulib.
2194
f16205ca
DL
2195 * mktime.c (__mktime_internal): Merge changes from gnulib
2196 involving year 69 and dst2.
2197
2198 Changes to merge with gnulib version and be consistent with the
2199 autoconf test:
2200
6793bc63
SM
2201 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
2202 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
f16205ca
DL
2203 [HAVE_LOCALE_H]: Include locale.h.
2204 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
2205
9b87a0bc
KS
22062003-06-05 Kim F. Storm <storm@cua.dk>
2207
2208 * window.c (coordinates_in_window): Convert X and Y to window
2209 relative coordinates inside mode-line and header-line parts.
2210 Convert X and Y to margin area relative coordinates inside left
2211 and right display margin parts.
2212
5a8a15ec
JR
22132003-06-05 Jason Rumney <jasonr@gnu.org>
2214
2215 * w32fns.c (add_system_logical_colors_to_map): New function.
2216 (Fx_open_connection): Use it.
2217
01ed8ff1
SM
22182003-06-04 Stefan Monnier <monnier@cs.yale.edu>
2219
2220 * process.c (allocate_pty): Revert part of the previous patch.
2221 (Faccept_process_output): Simplify.
2222
b427b65d
JR
22232003-06-04 Jason Rumney <jasonr@gnu.org>
2224
2225 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
2226
2227 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
2228 (lispy_mouse_wheel_names): Remove.
2229 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
2230 Always define drag_and_drop_syms.
2231
2232 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
2233 WHEEL_EVENT events.
2234
914a8c47
SM
22352003-06-03 Stefan Monnier <monnier@cs.yale.edu>
2236
01ed8ff1
SM
2237 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
2238
914a8c47
SM
2239 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
2240
adcb132c
JD
22412003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2242
2243 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
2244 menu item label.
2245
be781fa7
RS
22462003-06-03 Richard M. Stallman <rms@gnu.org>
2247
2248 * window.c (Fwindow_edges): Doc fix.
2249 (Fwindow_pixel_edges, Fwindow_inside_edges)
2250 (Fwindow_inside_pixel_edges): New functions.
2251 (syms_of_window): defsubr them.
2252
2253 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
2254 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
2255
914a8c47
SM
22562003-06-02 Stefan Monnier <monnier@cs.yale.edu>
2257
2258 * dispnew.c (Fsit_for): Don't lie about the number of args.
2259
5b07197a
DL
22602003-06-02 Dave Love <fx@gnu.org>
2261
2262 * callproc.c: Use HAVE_FCNTL_H, not USG5.
2263 (syms_of_callproc) <process-environment>: Doc fix.
2264
2265 * doc.c: Use HAVE_FCNTL_H, not USG5.
2266
2267 * xfaces.c (font_rescale_ratio): Fix for K&R.
2268
2269 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
2270
2271 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
2272
2273 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
2274
2275 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
2276 (xg_create_frame_widgets): Use ENCODE_UTF_8.
2277
d7107586 2278 * xterm.c (Qutf_8): Move to coding.c
5b07197a
DL
2279
2280 * xmenu.c (ENCODE_MENU_STRING): New.
2281 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
2282 Use it.
2283
2284 * coding.h (ENCODE_UTF_8): New.
2285 (Qutf_8): Declare.
2286
2287 * coding.c (Qutf_8): New.
2288 (syms_of_coding): Intern it.
2289
2290 * fns.c: Doc fixes.
2291
7335b336
KH
22922003-06-02 Kenichi Handa <handa@m17n.org>
2293
2294 * buffer.c (Fset_buffer_multibyte): Fix previous change.
2295
914a8c47
SM
22962003-06-01 Stefan Monnier <monnier@cs.yale.edu>
2297
2298 * lread.c (openp): Make sure STR is a string.
2299
9862c135
JR
23002003-06-01 David Ponce <david@dponce.com>
2301
2302 * termhooks.h (enum event_kind): Added new WHEEL_EVENT event.
2303 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
2304
2305 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
2306 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
2307 (discard_mouse_events): Discard WHEEL_EVENT events too.
2308 (lispy_wheel_names, wheel_syms): New.
2309 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
2310 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX
2311 defined.
914a8c47 2312 (make_lispy_event): Add WHEEL_EVENT handler.
9862c135
JR
2313
2314 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
2315 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
2316 WHEEL_EVENT events.
2317
f984e73e
JPW
23182003-05-31 John Paul Wallington <jpw@gnu.org>
2319
2320 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
2321 timer are in lisp/emacs-lisp.
2322
1efcd78f
KH
23232003-05-31 Kenichi Handa <handa@m17n.org>
2324
458c8af4
KH
2325 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
2326 region when a buffer is changed to unibyte.
2327
1efcd78f
KH
2328 * charset.h (VALID_LEADING_CODE_P): New macro.
2329 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
2330
778e2804
KH
2331 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
2332 is nonzero, accept multibyte form of eight-bit-control chars.
2333 (decode_composition_emacs_mule): Likewise.
2334 (decode_coding_emacs_mule): Likewise.
2335 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
2336 multibyte form of eight-bit-control chars.
2337
2338 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
2339 (Finsert_file_contents): If coding-system-for-read is bound to
2340 Qauto_save_coding, use the coding system emacs-mule with special
2341 setting for recovering a file.
2342 (choose_write_coding_system): On auto saving, use the coding
2343 system emacs-mule with special setting for auto saving.
2344 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
2345
034060e4
KH
23462003-05-30 Kenichi Handa <handa@m17n.org>
2347
2348 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
2349 properly before calling ccl_driver.
2350
778e2804 2351 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
034060e4
KH
2352
2353 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is
2354 nonzero.
2355 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
2356 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
2357
595f5aa5
GM
23582003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
2359
2360 * xfaces.c (realize_default_face): Do not abort if lface is
2361 non-existent - reverts change from 2003-05-19.
2362
103e0180
KH
23632003-05-29 Kenichi Handa <handa@m17n.org>
2364
2365 * coding.c (decode_coding_iso2022): Pay attention to the byte
2366 sequence of CTEXT extended segment, and retain those bytes as is.
2367
23682003-05-28 Kenichi Handa <handa@m17n.org>
2369
2370 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjusted for the name change
2371 of CODING_REPLACEMENT_CHARACTER.
2372 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
2373 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
2374 check this flag on encoding.
2375 (encode_coding_sjis_big5): Check
2376 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
2377 (Fset_terminal_coding_system_internal): Set
2378 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
2379 instead of setting CODING_FLAG_ISO_SAFE flag in
2380 terminal_coding.flags.
2381
2382 * coding.h (CODING_REPLACEMENT_CHARACTER): Renamed from
2383 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
2384 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
2385
ff6a3bfb 23862003-05-28 Richard M. Stallman <rms@gnu.org>
45f266dc 2387
ff6a3bfb
RS
2388 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
2389
2390 * eval.c (unbind_to): Move init of this_binding to separate statement.
45f266dc 2391
1963c428
KS
23922003-05-28 Kim F. Storm <storm@cua.dk>
2393
2394 * xdisp.c (expose_window): Fix error in calculation of
2395 window relative coordinates of area to redisplay.
2396
2b5d4601
JR
23972003-05-27 Jason Rumney <jasonr@gnu.org>
2398
2399 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
2400
1c64a4a2
JB
24012003-05-27 David Ponce <david@dponce.com>
2402
2403 Handle W32 mouse wheel events as mouse click events, like in X.
2404
2405 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
2406 MOUSE_WHEEL_EVENT anymore.
2407
2408 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
2409 Scrolling down/up the mouse wheel is respectively mapped to mouse
2410 button 4 and 5.
2411 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
2412 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
2413 WM_MOUSEWHEEL events.
2414
2d031b89
AS
24152003-05-27 Andreas Schwab <schwab@suse.de>
2416
20464fdf
AS
2417 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
2418
2d031b89
AS
2419 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
2420 partially visible line.
2421
2422 * alloc.c (Fgarbage_collect): Fix last change.
2423
97bc76d4
JPW
24242003-05-26 John Paul Wallington <jpw@gnu.org>
2425
2426 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
2427
56613f06
SM
24282003-05-25 Stefan Monnier <monnier@cs.yale.edu>
2429
2430 * window.c (Fset_window_buffer): Add type of `keep_margins'.
2431 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
2432
2433 * window.h (window_box_text_cols): Declare.
2434
2435 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
2436 (x_draw_vertical_border): Remove unused var `f'.
2437
2438 * xfaces.c (build_scalable_font_name): Remove `unused var
2439 pixel_size' warning.
2440
2441 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
2442
2443 * unexelf.c (unexec): Remove `unused var n' warning.
2444
2445 * strftime.c (my_strftime_localtime_r): Remove `defined but
2446 unused' warning.
2447
2448 * process.c (allocate_pty): Remove `unused var stb' and
2449 `cp might be used uninitialized' warnings.
2450
2451 * dispnew.c (mode_line_string): Remove unused var `f'.
2452
2453 * coding.c (find_safe_codings): Remove unused var `i'.
2454
2455 * bytecode.c (Fbyte_code): Remove `unused val' warning.
2456
2457 * buffer.c (Fkill_buffer): Remove unused var `list'.
2458
2459 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
2460
93421a1f
JD
24612003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2462
2463 * frame.c (make_frame): Condition want_fullscreen with
2464 HAVE_WINDOW_SYSTEM.
2465
c4b8aebc
JB
24662003-05-25 Juanma Barranquero <lektu@terra.es>
2467
2468 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
2469 (Fwindow_scroll_bars): Fix typo in docstring.
2470
0416870b
KS
24712003-05-24 Kim F. Storm <storm@cua.dk>
2472
2473 The following changes serve several purposes:
2474
2475 1) Swap the position of fringes and display margins in windows, i.e.
2476 the fringes are now displayed between the margins and the text area
2477 (by default).
2478
2479 2) Allow fringe and scroll bar parameters to be set per-buffer and
2480 per-window (like display margins). Such settings are now stored
2481 in window configurations, preserved when frames are resized, and
9018a88e 2482 copied when windows are split vertically or horizontally.
0416870b
KS
2483 Several bugs related to display margins have been fixed.
2484
2485 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
9018a88e 2486
0416870b
KS
2487 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
2488 rather than FRAME_WIDTH (FRAME_FONT (f)).
2489
2490 5) Introduce a consistent naming of variables, members and macros
2491 depending on whether their value is measured in pixels or in
2492 canonical columns/lines. Pixel dimensions are named *_width and
2493 *_height, while canonical columns/lines are named *_cols and
2494 *_lines. Pixel positions are named *_x and *_y, while column/line
2495 positions are named *_col and *_line.
2496
2497 6) Consolidate more of the X, W32, and MAC gui code by moving
2498 common data into struct frame, and generalize it for the non-gui
2499 case by using suitable defaults.
2500
2501 7) Cleanup and consolidate the macros controlling frame and window
2502 layout into frame.h and window.h, and generalize the use of the
2503 various window_box_* functions (enhanced to handle the new fringe
2504 position and the per-window fringe and scroll bar settings).
2505
2506 * frame.h (struct frame): Rename members height to text_lines,
2507 width to text_cols, window_height to total_lines, window_width to
2508 total_cols, new_height to new_text_lines, new_width to
2509 new_text_cols. All uses changed.
2510 (struct frame): New members which consolidate common members of
2511 x_output, w32_output, and mac_output structures: left_pos,
2512 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
2513 win_gravity, size_hint_flags, border_width, internal_border_width,
2514 line_height, fringe_cols, left_fringe_width, right_fringe_width,
2515 want_fullscreen. All uses changed.
2516 (struct frame): New member column_width contaning the canonical
2517 column width, analogue to line_height. All uses changed.
2518 (struct frame): Rename members scroll_bar_pixel_width to
2519 config_scroll_bar_width, and scroll_bar_cols to
2520 config_scroll_bar_cols. All uses changed.
2521 (struct frame): New member scroll_bar_actual_width which
2522 consolidates and renames the vertical_scroll_bar_extra member of
2523 x_output, w32_output, and mac_output structures. All uses changed.
2524 (FRAME_PIXEL_HEIGHT): Renamed from PIXEL_HEIGHT and moved
2525 from x/w32/macterm.h files. All uses changed. Also change code
2526 which referred to f->output_data...->pixel_height.
2527 (FRAME_PIXEL_WIDTH): Renamed from PIXEL_WIDTH and moved
2528 from x/w32/macterm.h files. All uses changed. Also change code
2529 which referred to f->output_data...->pixel_width.
2530 (FRAME_LINES): Renamed from FRAME_HEIGHT. All uses changed.
2531 Also change code which referred to f->height.
2532 (FRAME_COLS): Renamed from FRAME_WIDTH. All uses changed.
2533 Also change code which referred to f->width.
2534 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
2535 to update new_text_lines and new_text_cols members directly.
2536 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Renamed from
2537 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
2538 (FRAME_CONFIG_SCROLL_BAR_COLS): Renamed from
2539 FRAME_SCROLL_BAR_COLS. All uses changed.
2540 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
2541 Renamed from FRAME_LEFT_SCROLL_BAR_WIDTH and
2542 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
2543 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
2544 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
2545 (FRAME_TOTAL_COLS): Renamed from FRAME_WINDOW_WIDTH.
2546 (SET_FRAME_COLS): Renamed from SET_FRAME_WIDTH.
2547 (FRAME_TOTAL_COLS_ARG): Renamed from FRAME_WINDOW_WIDTH_ARG.
2548 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
2549 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
2550 (FRAME_LINE_HEIGHT): Renamed from CANON_Y_UNIT. Unconditionally
2551 return line_height member (it now has proper value also for
2552 non-window frames).
2553 (FRAME_COLUMN_WIDTH): Renamed from CANON_X_UNIT. Unconditionally
2554 return new column_width member (rather than the default font width).
2555 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
2556 (FRAME_RIGHT_FRINGE_WIDTH): Renamed from FRAME_X_... and moved
2557 from x/w32/macterm.h files. Unconditionally return corresponding
2558 member of frame structure (they now have proper values also for
2559 non-window frames).
2560 (FRAME_TOTAL_FRINGE_WIDTH): Renamed from FRAME_FRINGE_WIDTH.
2561 Calculate return value from left and right widths.
2562 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
2563 internal_border_width member (has proper value for non-window frame).
2564 (FRAME_PIXEL_X_FROM_CANON_X): Renamed from PIXEL_X_FROM_CANON_X.
2565 (FRAME_PIXEL_Y_FROM_CANON_Y): Renamed from PIXEL_Y_FROM_CANON_Y.
2566 (FRAME_CANON_X_FROM_PIXEL_X): Renamed from CANON_X_FROM_PIXEL_X.
2567 (FRAME_CANON_Y_FROM_PIXEL_Y): Renamed from CANON_Y_FROM_PIXEL_Y.
2568 (FRAME_LINE_TO_PIXEL_Y): Renamed from CHAR_TO_PIXEL_ROW,
2569 consolidated from xterm.h, macterm.h, and w32term.h.
2570 (FRAME_COL_TO_PIXEL_X): Renamed from CHAR_TO_PIXEL_COL,
2571 consolidated from xterm.h, macterm.h, and w32term.h.
2572 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Renamed from
2573 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
2574 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Renamed from
2575 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
2576 (FRAME_PIXEL_Y_TO_LINE): Renamed from PIXEL_TO_CHAR_ROW
2577 consolidated from x/mac/w32term.h.
2578 (FRAME_PIXEL_X_TO_COL): Renamed from PIXEL_TO_CHAR_COL
2579 consolidated from x/mac/w32term.h.
2580 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Renamed from
2581 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
2582 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Renamed from
2583 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
2584
2585 * window.h (struct window): Rename members left to left_col,
2586 top to top_line, height to total_lines, width to total_cols,
2587 left_margin_width to left_margin_cols, right_margin_width to
2588 right_margin_cols, orig_height to orig_total_lines, orig_top to
2589 orig_top_line. All uses changed.
2590 (struct window): New members left_fringe_width, right_fringe_width,
2591 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
2592 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
2593 New macros primarily used to simplify other macros.
2594 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
2595 referred to XINT (w->width).
2596 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
2597 referred to XINT (w->height).
2598 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
2599 referred to XINT (w->width) * canon_x_unit.
2600 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
2601 referred to XINT (w->height) * canon_y_unit.
2602 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
2603 referred to XINT (w->left).
2604 (WINDOW_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_EDGE. Change
2605 all uses and code that referred to XINT (w->left) + XINT (w->width).
2606 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
2607 referred to XINT (w->top).
2608 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
2609 referred to XINT (w->top) + XINT (w->height).
2610 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
2611 referred to XINT (w->left) * canon_x_unit.
2612 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
2613 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
2614 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
2615 referred to XINT (w->top) * canon_y_unit.
2616 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
2617 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
2618 (WINDOW_LEFTMOST_P): New macro.
2619 (WINDOW_BOX_LEFT_EDGE_COL): Renamed from WINDOW_LEFT_MARGIN.
2620 All uses changed.
2621 (WINDOW_BOX_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_MARGIN.
2622 All uses changed.
2623 (WINDOW_BOX_LEFT_EDGE_X): Renamed from
2624 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
2625 Do not exclude left fringe width.
2626 (WINDOW_BOX_RIGHT_EDGE_X): Renamed from
2627 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
2628 Do not exclude fringe widths.
2629 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
2630 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
2631 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
2632 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
2633 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
2634 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
2635 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
2636 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
2637 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
2638 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
2639 New macros. Change code which referenced corresponding
2640 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
2641 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
2642 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
2643 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
2644 allow per-window scroll-bar settings.
2645 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
2646 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
2647 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
2648 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
2649 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
2650 FRAME_SCROLL_BAR_WIDTH.
2651 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
9018a88e 2652 (WINDOW_SCROLL_BAR_AREA_X): New macros.
0416870b
KS
2653 (WINDOW_HEADER_LINE_HEIGHT): Renamed from
2654 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
2655 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Renamed from
2656 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
2657 (WINDOW_BOX_TEXT_HEIGHT): Renamed from
2658 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
2659 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
2660 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
2661 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Moved here from dispextern.h.
2662 (WINDOW_LEFT_MARGIN_WIDTH): Renamed from
2663 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
2664 (WINDOW_RIGHT_MARGIN_WIDTH): Renamed from
2665 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
2666 (window_from_coordinates): Update prototype.
2667 (Fset_window_buffer): Update EXFUN.
2668 (set_window_buffer): Update prototype.
9018a88e 2669
0416870b 2670 * dispextern.h (struct glyph_matrix): Rename members window_left_x
9018a88e 2671 to window_left_col, window_top_y to window_top_line. All uses
0416870b
KS
2672 changed.
2673 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
2674 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
2675 internal_border_width is now set to 0 for non-window frames.
2676 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
2677 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
2678 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
2679 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
2680 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
2681 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
2682 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
2683 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
2684 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
9018a88e 2685 Move to window.h and renamed [see window.h changes].
0416870b
KS
2686 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
2687 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
9018a88e
SM
2688 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
2689 Use WINDOW_TOTAL_LINES.
0416870b
KS
2690 (frame_update_line_height): Remove prototype.
2691
2692 * buffer.h (struct buffer): Rename members measured in columns:
2693 left_margin_width to left_margin_cols, right_margin_width to
2694 right_margin_cols. All uses changed.
2695 New members left_fringe_width, right_fringe_width,
2696 fringes_outside_margins for per-buffer fringe settings.
2697 New members scroll_bar_width and vertical_scroll_bar_type for
2698 per-buffer scroll bar settings.
2699
2700 * buffer.c (init_buffer_once): Set buffer_defaults and
2701 buffer_local_flags for new buffer-local variables
2702 left_fringe_width, right_fringe_width, fringes_outside_margins,
2703 scroll_bar_width, and vertical_scroll_bar_type.
2704 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
2705 default-* variables for them.
2706
2707 * dispnew.c: Make (many) trivial substitutions for renamed and
2708 new macros in dispextern.h, frame.h and window.h.
2709 (mode_line_string): No need to adjust width for mode lines, as it
2710 is already adjusted by the caller.
2711 (marginal_area_string): Handle fringes inside/outside margins.
9018a88e 2712
0416870b
KS
2713 * frame.c: Make (many) trivial substitutions for renamed and
2714 new macros in dispextern.h, frame.h and window.h.
2715 (make_frame): Initialize left_fringe_width, right_fringe_width,
2716 fringe_cols, scroll_bar_actual_width, border_width,
2717 internal_border_width, column_width, line_height, x_pixels_diff,
2718 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
2719 members with values suitable for a non-window frames.
2720
2721 * gtkutil.c: Make (many) trivial substitutions for renamed and
2722 new macros in dispextern.h, frame.h and window.h.
9018a88e 2723
0416870b
KS
2724 * indent.c: Make (few) trivial substitutions for renamed and
2725 new macros in dispextern.h, frame.h and window.h.
2726
2727 * keyboard.c: Make (many) trivial substitutions for renamed and
2728 new macros in dispextern.h, frame.h and window.h.
2729 (make_lispy_event): Use window positions returned from
2730 window_from_coordinates when constructing the lisp event for
2731 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
2732 (incorrect) values locally.
2733 (make_lispy_movement): Use window positions returned from
2734 window_from_coordinates when constructing the lisp event, rather
2735 than calculating (incorrect) values locally.
2736
2737 * scroll.c: Make (some) trivial substitutions for renamed and
2738 new macros in dispextern.h, frame.h and window.h.
2739
2740 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
2741 scroll-bars.
2742
2743 * sysdep.c: Make (few) trivial substitutions for renamed and
2744 new macros in dispextern.h, frame.h and window.h.
2745
2746 * term.c: Make (some) trivial substitutions for renamed and
2747 new macros in dispextern.h, frame.h and window.h.
2748
2749 * widget.c: Make (few) trivial substitutions for renamed and
2750 new macros in dispextern.h, frame.h and window.h.
2751
2752 * window.c: Make (many) trivial substitutions for renamed and
2753 new macros in dispextern.h, frame.h and window.h.
2754 (make_window): Initialize new members
2755 left_margin_cols, right_margin_cols, left_fringe_width,
2756 right_fringe_width, fringes_outside_margins, scroll_bar_width,
2757 and vertical_scroll_bar_type.
2758 (coordinates_in_window): Adapted to new fringe/margin positions
9018a88e 2759 and per-window fringes and scroll-bars.
0416870b 2760 Fix bug related to incorrectly adjusting coordinates by
9018a88e 2761 frame's internal_border_width (the effect normally negible since
0416870b
KS
2762 the internal_border_width is typically 0 or 1 pixel, but very
2763 noticeable for an internal_border_width of e.g. 25 pixels).
2764 Upon successful return (other than ON_NOTHING), the coordinates
2765 are now always properly converted to window relative for the
2766 given display element.
2767 (window_from_coordinates): Add new parameters wx and wy to
2768 return the window relative x and y position in the returned
2769 window and part. A null arg means, don't return the position.
2770 All callers changed.
2771 (adjust_window_margins): New function which may reduce the width
2772 of the display margins if a window's text area is too small after
2773 resizing or splitting windows.
2774 (size_window): Fix bug that did not account for display margin
2775 widths when checking the minimum width of a window; use
2776 adjust_window_margins.
2777 (set_window_buffer): Call Fset_window_fringes and
2778 Fset_window_scroll_bars to setup per-window elements.
2779 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
2780 existing display margin, fringe widths, and scroll bar settings
9018a88e
SM
2781 (e.g. after splitting a window or resizing the frame).
2782 All callers changed.
0416870b
KS
2783 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
2784 (Fsplit_window): Duplicate original window's display margin,
2785 fringe, and scroll-bar settings; then call Fset_window_buffer with
2786 KEEP_MARGINS non-nil. This fixes a bug which caused a split
2787 window to only preserve the display margins in one of the windows.
c4b8aebc 2788 When splitting horizontally, call adjust_window_margins on both
0416870b
KS
2789 windows to ensure that the text area of the new windows is non too
2790 narrow. This fixes a bug which could cause emacs to trap if the
2791 width of the split window was less than the width of the display
2792 margins.
9018a88e
SM
2793 (window_box_text_cols): Renamed from window_internal_width.
2794 All uses changed. Adapt to per-window fringes and scroll bars.
0416870b
KS
2795 Fix bug that caused vertical separator to be subtracted also on
2796 window frames. Fix another bug that did not reduce the returned
2797 value by the columns used for display margins.
2798 (window_scroll_line_based): Fix bug related to scrolling too much
2799 when display margins are present (implicitly fixed by the fix to
2800 window_box_text_cols).
2801 (scroll_left, scroll_right): Fix bug related to scrolling too far
2802 by default when display margins are present (implicitly fixed by
2803 the fix to window_box_text_cols).
2804 (struct saved_window): Rename members left to left_col, top to
2805 top_line, width to total_cols, height to total_lines, orig_top to
2806 orig_top_line, orig_height to orig_total_lines. All uses changed.
2807 New members left_margin_cols, right_margin_cols,
2808 left_fringe_width, right_fringe_width, fringes_outside_margins,
2809 scroll_bar_width, and vertical_scroll_bar_type for saving
2810 per-window display elements.
2811 (Fset_window_configuration): Restore display margins, fringes,
2812 and scroll bar settings. This fixes a bug which caused display
2813 margins to be discarded when saving and restoring a window
2814 configuration.
2815 (save_window_save): Save display margins, fringes, and scroll bar
2816 settings. This fixes a bug which caused display margins to be
2817 discarded when saving and restoring a window configuration.
2818 (Fset_window_margins): Do nothing if display margins are not
2819 really changed. Otherwise, call adjust_window_margins to ensure
2820 the text area doesn't get too narrow. This fixes a bug which
2821 could cause emacs to trap if setting display margins wider than
2822 the width of the window.
2823 (Fset_window_fringes): New defun to allow user to specifically set
2824 this window's fringe widths and position vs. display margins.
2825 (Fwindow_fringes): New defun to return window's actual fringe
2826 settings.
2827 (Fset_window_scroll_bars): New defun to allow user to specifically
2828 set this window's scroll bar width and position.
2829 (Fwindow_scroll_bars): New defun to return window's actual scroll
2830 bar settings.
2831 (compare_window_configurations): Also compare display margins,
2832 fringes, and scroll bar settings.
2833 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
2834
2835 * xdisp.c: Make (many) trivial substitutions for renamed and
2836 new macros in dispextern.h, frame.h and window.h.
2837 (window_box_width): Adapt to per-window fringes and scroll bars,
2838 and new fringe vs. display margin position. Note that returned
2839 value is no longer guaranteed to be a whole multiple of the frame
2840 column width, since per-window fringes may now be any width.
2841 (window_box_left_offset): New function like window_box_left, but
2842 value is relative to left border of window (rather than frame).
2843 (window_box_right_offset): New function like window_box_right,
2844 but value is relative to left border of window.
2845 (window_box_left): Adapt to per-window fringes and scroll bars,
2846 and new fringe vs. display margin position. Simplify by using
2847 WINDOW_LEFT_EDGE_X and window_box_left_offset.
2848 (window_box): Allow null args for unnecessary return values;
2849 change/simplify relevant callers.
2850 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
9018a88e
SM
2851 and new fringe vs. display margin position.
2852 Use window_box_left_offset and window_box_right_offset
0416870b 2853 (get_glyph_string_clip_rect): Adapt to per-window fringes and
9018a88e
SM
2854 scroll bars, and new fringe vs. display margin position.
2855 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
0416870b
KS
2856 (draw_fringe_bitmap): Rework to handle per-window fringes and new
2857 fringe vs. display margin position.
2858 (hscroll_window_tree): Use window_box_width instead of window_box.
2859 (redisplay_window): Adapt to per-window scroll bars.
2860 (draw_glyphs): Rework to handle per-window fringes and scroll
9018a88e
SM
2861 bars, and new fringe vs. display margin position.
2862 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
0416870b
KS
2863 (x_clear_end_of_line): Adapt to per-window fringes and scroll
2864 bars, and new fringe vs. display margin position. Fix bug which
2865 increased total width of full_width rows by width of scroll bars
2866 although window's total width already includes that.
2867 (x_fix_overlapping_area): Simplify using window_box_left_offset.
2868 (expose_area): Simplify using window_box_left_offset.
2869 (x_draw_vertical_border): Handle per-window scroll bar settings,
2870 mixing windows with left, right and no scroll bars.
2871
2872 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
2873 where it's used in x_list_fonts (for clarity).
2874 (frame_update_line_height): Remove unused function; functionality
2875 is now done directly when setting the default font in x_set_font.
2876
2877 * xfns.c: Make (many) trivial substitutions for renamed and
2878 new macros in dispextern.h, frame.h and window.h.
2879
2880 * xmenu.c: Make (some) trivial substitutions for renamed and
2881 new macros in dispextern.h, frame.h and window.h.
2882
2883 * xterm.h (struct x_output): Move members left_pos, top_pos,
2884 border_width, pixel_height, pixel_width, line_height,
2885 internal_border_width, vertical_scroll_bar_extra,
2886 left_fringe_width, right_fringe_width, fringe_cols,
2887 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
2888 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
2889 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
2890 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
2891 (PIXEL_WIDTH, PIXEL_HEIGHT)
2892 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
2893 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
2894 frame.h and renamed [see frame.h changes].
2895 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
2896 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
2897 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
2898 and renamed [see frame.h changes].
9018a88e 2899
0416870b
KS
2900 * xterm.c: Make (several) trivial substitutions for renamed and
2901 new macros in dispextern.h, frame.h and window.h.
2902 (x_draw_glyph_string_box): Adapt to per-window fringes and
2903 scroll-bars.
2904 (scroll_run): Adapt to new fringe position.
2905 (glyph_rect): Use window coordinates returned from
2906 window_from_coordinates rather than frame_to_window_pixel_xy.
2907 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
2908 scroll-bars.
2909 (handle_one_xevent): Simplify a USE_GTK conditional.
2910 (x_clip_to_row): Remove superfluous whole_line_p arg and code
2911 (fringes are now inside margins, i.e. always in the clipping area).
2912 All callers changed.
2913 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
2914 directly, then call compute_fringe_widths. Don't call
2915 frame_update_line_height.
2916
2917 * w32term.h (struct w32_output): Move members left_pos, top_pos,
2918 border_width, pixel_height, pixel_width, line_height,
2919 internal_border_width, vertical_scroll_bar_extra,
2920 left_fringe_width, right_fringe_width, fringe_cols,
2921 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
2922 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
2923 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
2924 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
2925 (PIXEL_WIDTH, PIXEL_HEIGHT)
2926 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
2927 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
2928 frame.h and renamed [see frame.h changes].
2929 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
2930 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
2931 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
2932 and renamed [see frame.h changes].
9018a88e 2933
0416870b
KS
2934 * w32term.c: Make (several) trivial substitutions for renamed and
2935 new macros in dispextern.h, frame.h and window.h.
2936 (x_draw_glyph_string_box): Adapt to per-window fringes and
2937 scroll-bars.
2938 (glyph_rect): Use window coordinates returned from
2939 window_from_coordinates rather than frame_to_window_pixel_xy.
2940 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
2941 scroll-bars.
2942 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
2943 (fringes are now inside margins, i.e. always in the clipping area).
2944 All callers changed.
2945 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
2946 directly, then call compute_fringe_widths. Don't call
2947 frame_update_line_height.
2948
2949 * w32console.c: Make (few) trivial substitutions for renamed and
2950 new macros in dispextern.h, frame.h and window.h.
2951
2952 * w32fns.c: Make (many) trivial substitutions for renamed and
2953 new macros in dispextern.h, frame.h and window.h.
2954
2955 * w32menu.c: Make (few) trivial substitutions for renamed and
2956 new macros in dispextern.h, frame.h and window.h.
2957
2958 * macterm.h (struct mac_output): Move members left_pos, top_pos,
2959 border_width, pixel_height, pixel_width, line_height,
2960 internal_border_width, vertical_scroll_bar_extra,
2961 left_fringe_width, right_fringe_width, fringe_cols,
2962 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
2963 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
2964 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
2965 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
2966 (PIXEL_WIDTH, PIXEL_HEIGHT)
2967 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
2968 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
2969 frame.h and renamed [see frame.h changes].
2970 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
2971 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
2972 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
2973 and renamed [see frame.h changes].
9018a88e 2974
0416870b
KS
2975 * macterm.c: Make (several) trivial substitutions for renamed and
2976 new macros in dispextern.h, frame.h and window.h.
2977 (x_draw_glyph_string_box): Adapt to per-window fringes and
2978 scroll-bars.
2979 (glyph_rect): Use window coordinates returned from
2980 window_from_coordinates rather than frame_to_window_pixel_xy.
2981 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
2982 scroll-bars.
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 * macfns.c: Make (several) trivial substitutions for renamed and
2991 new macros in dispextern.h, frame.h and window.h.
9018a88e 2992 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
0416870b
KS
2993
2994 * macmenu.c: Make (few) trivial substitutions for renamed and
2995 new macros in dispextern.h, frame.h and window.h.
2996
2997 * msdos.h (struct x_output): Remove members left_pos, top_pos,
2998 and line_height, and use corresponding new members in struct
2999 frame. All uses changed.
3000 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
3001 superseeded by corresponding macros in frame.h.
3002
3003 * msdos.c: Make (several) trivial substitutions for renamed and
3004 new macros in dispextern.h, frame.h and window.h.
3005 (IT_note_mouse_highlight): Use updated window coordinates returned
9018a88e 3006 by window_from_coordinates, rather than adjusting them locally.
0416870b
KS
3007 (internal_terminal_init): No need to initialize line_height here;
3008 it now defaults to 1.
3009
9018a88e
SM
30102003-05-24 Stefan Monnier <monnier@cs.yale.edu>
3011
3012 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
3013 dropping `down' events.
3014
016bd3c0
AS
30152003-05-24 Andreas Schwab <schwab@suse.de>
3016
3017 * coding.c (find_safe_codings): Fix last change.
3018
4dacadcc
TTN
30192003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
3020
3021 * xfns.c (x_window): Fix typo from 2003-05-21 change.
3022
319830ce
SM
30232003-05-23 Stefan Monnier <monnier@cs.yale.edu>
3024
9018a88e
SM
3025 * xdisp.c (display_mode_element): Increase max depth.
3026 Simplify the error handling code. Use a different error string
3027 for the case where we hit the depth limit.
3028
319830ce
SM
3029 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
3030
3031 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
3032
30332003-05-21 Stefan Monnier <monnier@cs.yale.edu>
3034
3035 * intervals.c (get_local_map): Don't get char-property of previous
3036 point any more: get_pos_property already does it and better.
3037
c67de8ba
DL
30382003-05-21 Dave Love <fx@gnu.org>
3039
3040 [Merged from unicode branch.]
3041
3042 * xfns.c (x_window, x_window): Use use_xim.
3043
3044 * xterm.c (use_xim): Initialize.
3045 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
3046 (x_term_init): Maybe set use_xim.
3047
3048 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
3049
edd3ff1d
JR
30502003-05-21 Jason Rumney <jasonr@gnu.org>
3051
3052 * unexw32.c (_start): Remove _fmode initialization.
3053
3054 * emacs.c (main) [WINDOWSNT]: Move it here.
3055
463f55ee
DL
30562003-05-20 Dave Love <fx@gnu.org>
3057
3058 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
3059
af253914
RS
30602003-05-19 Richard M. Stallman <rms@gnu.org>
3061
3062 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
3063 as value for QCfont attribute.
3064 (realize_default_face): lface should already exist; crash if not.
3065 Specify 0 for FORCE_P when calling set_lface_from_font_name.
3066
3067 * frame.c (Fignore_event): Doc fix.
3068
1d211019
KH
30692003-05-19 Kenichi Handa <handa@m17n.org>
3070
3071 * coding.c (decode_coding_string): Handle post-read-conversion
3072 even if the coding doesn't require decoding.
3073
4dd68254
RS
30742003-05-18 Richard M. Stallman <rms@gnu.org>
3075
3076 * callproc.c (Fcall_process_region): Doc fix.
3077
14d87dc9
SM
30782003-05-17 Stefan Monnier <monnier@cs.yale.edu>
3079
deca5d96
SM
3080 * lread.c (Fload): Print a message if package is obsolete.
3081
14d87dc9
SM
3082 * window.c (Fselect_window): Add optional `norecord' arg.
3083 (select_window_1): Fold into Fselect_window.
3084 (select_window_norecord): New function.
3085 (temp_output_buffer_show): Use it. Preserve current buffer.
3086
3087 * window.h (Fselect_window): Update declaration.
3088
3089 * window.c (delete_window, Fother_window, Fset_window_configuration):
3090 * minibuf.c (read_minibuf):
3091 * macterm.c (x_new_focus_frame):
3092 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
3093 * callint.c (Fcall_interactively):
3094 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
3095
3096 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
3097
78f52183
DK
30982003-05-17 David Kastrup <dak@gnu.org>
3099
3100 * process.c (read_process_output): Back out change from 2003-03-09.
3101
14d87dc9
SM
31022003-05-17 Stefan Monnier <monnier@cs.yale.edu>
3103
3104 * editfns.c (get_pos_property): Don't assume that `object' = nil.
3105
3106 * textprop.c (text_property_stickiness): New arg `buffer'.
3107
3108 * intervals.h (text_property_stickiness): New arg `buffer'.
3109 (get_pos_property): Declare.
3110
3111 * intervals.c (get_local_map): Use get_pos_property, to obey
3112 stickiness and empty overlays.
3113 (create_root_interval, graft_intervals_into_buffer): Use BEG.
3114 (merge_properties, intervals_equal, merge_properties_sticky):
3115 Use XCAR, XCDR.
3116 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
3117
1fd1cc2f
RS
31182003-05-17 Richard M. Stallman <rms@gnu.org>
3119
4f9f637a
RS
3120 * minibuf.c (read_minibuf): If buffer is empty, record the default
3121 in the history.
3122 (Fminibuffer_complete_word): When deleting the overlap, take account
3123 of its real position.
3124
3125 * fns.c (map_char_table): Fix previous change.
3126
1fd1cc2f
RS
3127 * syntax.c (find_defun_start):
3128 When open_paren_in_column_0_is_defun_start,
3129 return beginning of buffer.
3130
3131 * lisp.h (map_char_table): Declare added arg.
3132
3133 * fns.c (map_char_table): New arg TABLE gets the master table.
3134 All calls changed.
3135 Process default and inheritance, resorting to Faref if necessary.
3136
3137 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
3138 (Faccessible_keymaps): Pass new arg to map_char_table.
3139
3140 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
3141
3142 * casetab.c (set_case_table): Pass new arg to map_char_table.
3143
3144 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
3145
3146 * lisp.h (specbinding_func): New typedef.
3147 (struct specbinding): Use specbinding_func, to put the `volatile'
3148 in the right place.
3149
3150 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
3151 to avoid GCC warning.
14d87dc9 3152
b4bd27c5
RS
31532003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org> (tiny change)
3154
14d87dc9 3155 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
b4bd27c5 3156
35fb885d
SM
31572003-05-15 Stefan Monnier <monnier@cs.yale.edu>
3158
3159 * keyboard.c (apply_modifiers): Don't fill the other cache.
3160
9a274fbd
SM
31612003-05-14 Stefan Monnier <monnier@cs.yale.edu>
3162
c55b5fad
SM
3163 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
3164
9a274fbd
SM
3165 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
3166 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
3167 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
3168 (Fset_window_configuration, Fcurrent_window_configuration)
3169 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
3170 (Fpos_visible_in_window_p, mark_window_cursors_off)
3171 (window_internal_height, window_internal_width, Frecenter)
3172 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
3173 (replace_buffer_in_all_windows, init_window_once, init_window)
3174 (syms_of_window, keys_of_window): Move from lisp.h.
3175 * lisp.h: Move window.c declarations to window.h.
3176
3177 * bytecode.c: Include window.h.
3178 * emacs.c: Include window.h.
3179
14d87dc9 3180 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
9a274fbd
SM
3181 (keyremap): Add `parent' field.
3182 (keyremap_step): Use it. Remove `parent' argument.
3183 (read_key_sequence): Setup and use the new `parent' field.
3184
fd93e331
SM
31852003-05-11 Stefan Monnier <monnier@cs.yale.edu>
3186
3187 * keyboard.c (adjust_point_for_property): Ensure termination.
3188
1c4001a1
SM
31892003-05-10 Stefan Monnier <monnier@cs.yale.edu>
3190
3191 * keyboard.c (follow_key): Remove dead variable `did_meta'.
3192 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
3193 duplicated handling of function-key-map and key-translation-map
3194 in read_key_sequence.
3195 (read_key_sequence): Use them.
3196
3197 * keyboard.c (adjust_point_for_property): Try harder to move point
3198 to the non-sticky end of an invisible property.
3199
3200 * xdisp.c (single_display_prop_intangible_p): Make `space' display
3201 property intangible as well.
3202
780379b1
AS
32032003-05-10 Andreas Schwab <schwab@suse.de>
3204
3205 * xmenu.c (single_menu_item): Change last parameter to void* to
3206 avoid warning.
3207
ca2de342
RS
32082003-05-09 Richard M. Stallman <rms@gnu.org>
3209
3210 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
3211 Bind Qinhibit_modification_hooks to t so there will be no GC.
3212 Rename local `tem' to `save_deactivate_mark'.
3213
3214 * eval.c (specpdl_ptr): Declare volatile.
3215 (unbind_to): Copy the whole binding and decrement specpdl_ptr
3216 before doing the work of unbinding it.
3217
3218 * lisp.h (struct specbinding): Declare elements volatile.
3219 (specpdl_ptr): Declare volatile.
3220
3221 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
3222
3223 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
3224 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
3225
347003be
DL
32262003-05-08 Dave Love <fx@gnu.org>
3227
3228 * coding.c (Vlast_coding_system_used): Doc fix.
3229
5adcec23
JR
32302003-05-07 Jason Rumney <jasonr@gnu.org>
3231
3232 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
3233 when system does not support them.
3234
5fe3b8a4
SM
32352003-05-05 Stefan Monnier <monnier@cs.yale.edu>
3236
3237 * fileio.c (Qwrite_region_annotate_functions): New var.
3238 (build_annotations): Use it to process the global part of the hook.
3239 (syms_of_fileio): Init and staticpro it.
3240
3241 * keyboard.c (safe_run_hooks_error): Display a message instead of
3242 silently ignoring the error.
3243
32442003-05-03 Stefan Monnier <monnier@cs.yale.edu>
3245
3246 * keyboard.c (input_available_signal): Mark static.
3247 (menu_bar_items): Use map_keymap.
3248 (menu_bar_one_keymap): Remove.
3249 (menu_bar_item): Adjust arglist (for use in map_keymap).
3250 Properly hide a second binding when not both are keymaps.
3251
3252 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
3253 (single_keymap_panes): Use it and map_keymap.
3254 (single_menu_item): Use skp as well.
3255
3256 * keymap.h (map_keymap_function_t): New type.
3257 (map_keymap): Declare.
3258
3259 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
3260 (map_keymap_call, Fmap_keymap): New functions.
3261 (syms_of_keymap): Defsubr map-keymap.
3262
4b1b4443
JD
32632003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3264
3265 * gtkutil.c (create_dialog, make_widget_for_menu_item)
3266 (make_menu_item, create_menus, xg_update_menu_item): Don't call
3267 ..._with_mnemonic functions for menu items.
3268
1f816871
KH
32692003-05-01 Kenichi Handa <handa@m17n.org>
3270
3271 * coding.c (coding_system_accept_latin_extra_p): Delete this
3272 function.
3273 (find_safe_codings): Pay attention to
3274 the property tranlsation-table-for-encode of each codings.
3275 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
3276
5ed6ba5b
SM
32772003-05-01 Stefan Monnier <monnier@cs.yale.edu>
3278
3279 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
3280
32c06229
SM
32812003-04-30 Stefan Monnier <monnier@cs.yale.edu>
3282
3283 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
3284
3285 * lisp.h (CHECK): Wrap args in parenthesis.
3286 (specbind): Fix doc: symbol = Qnil is not supported any more.
3287
3288 * bytecode.c (Fbyte_code) <unwind-protect>:
3289 Use Fprogn rather than 0 and Qnil.
3290
3291 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
3292 `double', and `triple' modifiers as well.
3293
ed3c3314
RS
32942003-04-30 Richard M. Stallman <rms@gnu.org>
3295
3296 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
3297
3298 * alloc.c (abort_on_gc): New variable.
3299 (Fgarbage_collect): Abort if abort_on_gc is set.
3300
3301 * lisp.h (abort_on_gc): Add decl.
3302
3303 * eval.c (Fsignal): Clear abort_on_gc.
3304
3305 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
32c06229 3306 Reinit FORMAT_START and END before second scan.
ed3c3314
RS
3307
3308 * xdisp.c (move_it_vertically_backward): Do the final big else
3309 even if nlines is 0.
3310
3311 * xdisp.c (redisplay_internal): Finish the per-frame loop
3312 even if redisplay is suspended by input.
3313
0b325c12
AC
33142003-04-24 Andrew Choi <akochoi@shaw.ca>
3315
3316 * macterm.c (x_list_fonts): Return all fonts that match if
3317 maxnames = -1.
3318
4e837cd0
KH
33192003-04-25 Kenichi Handa <handa@m17n.org>
3320
3321 * syntax.c (skip_chars): Fix previous change.
3322
9af7511a
KH
33232003-04-24 Kenichi Handa <handa@m17n.org>
3324
3325 * syntax.c (skip_chars): Make the code faster by using the common
3326 technique of *p, *stop, and *endp.
3327
e3b2c21f
JD
33282003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3329
3330 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
32c06229 3331 tool_bar_items so GTK tool bar expose callback does not access items
e3b2c21f
JD
3332 being updated.
3333
32c06229
SM
33342003-04-19 Stefan Monnier <monnier@cs.yale.edu>
3335
3336 * eval.c (Fapply): Undo last change and add a comment about why.
3337
c6464167
MB
33382003-04-18 Miles Bader <miles@gnu.org>
3339
3340 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
3341 pickier PARSE_MULTIBYTE_SEQ.
3342
e509f168
SM
33432003-04-17 Stefan Monnier <monnier@cs.yale.edu>
3344
3345 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
3346 Use XCDR, XCAR, CONSP.
3347 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
3348 (Fapply): Remove unnecessary GCPRO.
3349
3350 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
3351
3352 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
3353
3354 * buffer.h: Don't hardcode BEG==1.
3355
3356 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
3357
5ceea398
RS
33582003-04-16 Richard M. Stallman <rms@gnu.org>
3359
3360 * xdisp.c (try_window, try_window_reusing_current_matrix):
3361 When at end of window, set window_end_pos to Z-ZV.
3362
3363 * buffer.c (Foverlay_recenter): Doc fix.
3364
e509f168
SM
33652003-04-14 Stefan Monnier <monnier@cs.yale.edu>
3366
3367 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
3368
d243e605
AC
33692003-04-14 Andrew Choi <akochoi@shaw.ca>
3370
3371 * macterm.c (mac_check_for_quit_char): Don't check more often than
3372 once a second.
3373
6901b111
SM
33742003-04-11 Stefan Monnier <monnier@cs.yale.edu>
3375
3376 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
3377 specially, so that they can't hide an implicit switch-frame event.
3378 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
3379 (head_table): Use switch-frame as event_kind for select-window.
3380 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
3381
3382 * editfns.c (Fformat): Lisp_Object/int mixup.
3383 (format2): Remove unused var numargs.
3384
e301806f 33852003-04-11 Kenichi Handa <handa@m17n.org>
aa95b710 3386
6901b111 3387 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
aa95b710
KH
3388 (Qafter_insert_file_set_coding): New variable.
3389 (syms_of_fileio): Initialize and staticpro it. Delete declaration
3390 for after-insert-file-adjust-coding-function.
3391 (Finsert_file_contents): Call Qafter_insert_file_set_coding
3392 instead of Vafter_insert_file_adjust_coding_function.
3393
38914424
KH
33942003-04-11 Kenichi Handa <handa@m17n.org>
3395
3396 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
3397
3398 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
3399 string. Callers changed.
3400
34012003-04-10 Kenichi Handa <handa@m17n.org>
a288d979 3402
6901b111 3403 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
a288d979 3404 (syms_of_fileio): Declare it as a lisp variable.
6901b111
SM
3405 (Finsert_file_contents):
3406 Call Vafter_insert_file_adjust_coding_function before calling
a288d979
KH
3407 decode-format.
3408
f979dc05
JD
34092003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3410
3411 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
3412 get GtkAdjustment as widget now is a GtkRange.
3413
3414 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
3415 GtkRange to avoid memory leak.
3416
f8c6b4c2 34172003-04-09 Kenichi Handa <handa@m17n.org>
cb98871c 3418
50ebc53d
KH
3419 * xfaces.c (Vface_font_rescale_alist): New variable.
3420 (struct font_name): New member rescale_ratio.
3421 (font_rescale_ratio): New function.
6901b111 3422 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
50ebc53d
KH
3423 (better_font_p): On comparing point sized, pay attention to
3424 recale_ratio member of fonts.
3425 (build_scalable_font_name): Reflect font->rescale_ratio in the
3426 font name.
6901b111 3427 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
50ebc53d 3428
cb98871c
KH
3429 * lread.c (read1): Before calling index, check if the 2nd
3430 arguemnt is in ASCII range.
3431
4773b8ca
RS
34322003-04-08 Richard M. Stallman <rms@gnu.org>
3433
b0ada147
RS
3434 * fileio.c (Ffile_symlink_p): Doc fix.
3435
3436 * editfns.c (Fformat): Translate positions of text properties
3437 in the format string to apply them to the result.
3438
4773b8ca
RS
3439 * fileio.c (Finsert_file_contents): Doc fix.
3440 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
3441
34422003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
6901b111 3443
4773b8ca
RS
3444 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
3445
e8f25745 34462003-04-08 Steven Tamm <steventamm@mac.com>
b0ada147 3447
e8f25745
ST
3448 * mac.c (init_mac_osx_environment): Switch libexec and bin so
3449 that self-contained application finds libexec files.
3450
f8c6b4c2 34512003-04-08 Kenichi Handa <handa@m17n.org>
2310d84c 3452
6901b111
SM
3453 * coding.c (code_convert_region_unwind):
3454 Set Vlast_coding_system_used to the argument.
2310d84c
KH
3455 (code_convert_region): If post-read-conversion function changed
3456 the value of last-coding-sytem, keep the new value in
3457 coding->symbol so that it won't be overridden.
3458 (run_pre_post_conversion_on_str): Likewise.
7c086845
KH
3459 (coding_system_accept_latin_extra_p): New function.
3460 (find_safe_codings): Pay attention to characters registered in
3461 latin-extra-code-table.
2310d84c 3462
39c9a034
TTN
34632003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
3464
3465 * Makefile.in (md5.o): Add missing dependency info.
3466
eb67c5d6
RS
34672003-04-06 Richard M. Stallman <rms@gnu.org>
3468
3469 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
3470
3471 * marker.c (verify_bytepos): New function.
3472
3473 * intervals.c (set_intervals_multibyte_1): When becoming
3474 multibyte, adjust right and left child sizes to a whole set of
3475 characters. If an interval gets zero total-length, delete it.
3476 If an interval consists of just its children, delete one of them.
3477
3478 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
3479 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
39c9a034 3480
eb67c5d6
RS
3481 * alloc.c: (VALIDATE_LISP_STORAGE): Macro deleted.
3482 All calls deleted.
3483 (lisp_malloc): Do the work here directly.
3484
b1f81fc5
JB
34852003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
3486
3487 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
3488 char tables.
3489
34902003-04-04 Kenichi Handa <handa@m17n.org>
aa8b70ae
KH
3491
3492 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
3493 destructively change "%S" to "%s".
3494
774666fb
MB
34952003-04-03 Miles Bader <miles@gnu.org>
3496
3497 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
3498 always set.
3499
19c37f01
DL
35002003-04-01 Dave Love <fx@gnu.org>
3501
3502 * xfns.c (xpm_lookup_color): Grok "opaque".
3503
2f4b24c3
AC
35042003-03-31 Andrew Choi <akochoi@shaw.ca>
3505
3506 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
3507 parent window ID.
3508
3509 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
3510
3511 * macterm.h (struct mac_output): Define x_pixels_diff and
3512 y_pixels_diff.
b1f81fc5 3513
9443fcf6
JB
35142003-03-31 Juanma Barranquero <lektu@terra.es>
3515
3516 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
3517 blockinput.h and files included from it.
3518
e072891b
KS
35192003-03-31 Kim F. Storm <storm@cua.dk>
3520
3521 The following changes consolidates the common code related to
3522 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
3523 files into frame.c.
9443fcf6 3524
e072891b
KS
3525 * frame.c: Include blockinput.h.
3526 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
3527 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
3528 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
3529 related vars here.
3530 (struct frame_parm_table, frame_parms): New table for describing
3531 frame parameters and their associated Q-variable.
3532 The order of the parameters corresponds to the sequence of the
3533 frame_parm_handlers table in redisplay_interface.
3534 (x_fullscreen_move, x_set_frame_parameters)
3535 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
3536 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
3537 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
3538 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
3539 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
3540 Generic functions for processing of frame parameters.
3541 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
3542 (display_x_get_resource, x_get_resource_string): Functions for
3543 generic access to X resources.
3544 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
3545 (x_default_parameter, Fx_parse_geometry): Functions for generic
3546 access to frame parameters.
6901b111
SM
3547 (x_figure_window_size): Generic calculation of frame size.
3548 Fixed to add space needed for tool bar. Also setup size_hint_flags.
e072891b
KS
3549 (syms_of_frame): Intern and staticpro frame parameter variables.
3550 Defvar_lisp Vx_resource_class and Vx_resource_name here.
3551 Defsubr Sx_get_resource and Sx_parse_geometry.
9443fcf6 3552
e072891b
KS
3553 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
3554 parameter related vars defined in frame.c.
3555 (EMACS_CLASS): Define here.
3556 (enum FULLSCREEN_*): Define here.
3557 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
3558 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
3559 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
3560 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
3561 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
3562 (x_set_visibility, x_set_autoraise, x_set_autolower)
3563 (x_set_unsplittable, x_set_vertical_scroll_bars)
3564 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
3565 (x_figure_window_size): Add prototypes.
3566
3567 * dispextern.h (frame_parm_handler): New typedef.
3568 (struct redisplay_interface): New member frame_parm_handlers.
3569 (enum resource_types): Move declaration here.
3570 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
3571 (x_default_parameter): Add prototypes.
3572
3573 * window.c: Remove extern decl for frame parameter vars.
3574 (change_window_heights): New generic function;
3575 replaces x_change_window_heights. All users changed.
3576
3577 * window.h (change_window_heights): Add prototype.
3578
3579 * xfaces.c: Remove extern decl for frame parameter vars.
3580
3581 * xterm.h (EMACS_CLASS): Remove. Use generic define.
3582 (struct w32_display_info): Fix type of xrdb member.
3583 (enum FULLSCREEN_*): Remove.
3584 Remove prototypes for generic functions (in frame.h).
3585
3586 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
3587 parameters now defined in frame.h and frame.c.
3588 (Vx_resource_name): Remove. Use generic var.
3589 (enum x_frame_parms): Remove (bogus, unused enum).
3590 (check_x_display_info): Make non-static (for frame.c).
3591 (struct x_frame_parm_table, x_frame_parms): Remove.
3592 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
3593 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
3594 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
3595 (x_change_window_heights, x_set_autoraise, x_set_autolower)
3596 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
3597 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
3598 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
3599 Remove. Use generic functions instead.
3600 (enum resource_types): Remove.
3601 (x_set_scroll_bar_default_width): New global function (for frame.c).
3602 (Fx_create_frame): Depend on x_figure_window_size to add space for
3603 toolbar and setup size_hint_flags.
3604 (x_frame_parm_handlers): New table for redisplay_interface.
3605 (syms_of_xfns): Don't intern/staticpro removed vars.
9443fcf6 3606
e072891b
KS
3607 * xterm.c: Remove unnecessary extern declarations.
3608 (x_fullscreen_adjust): Remove. Use generic instead.
3609 (x_redisplay_interface): Add x_frame_parm_handlers member.
3610
3611 * w32gui.h (XrmDatabase): New (dummy) typedef.
3612
3613 * w32term.h (EMACS_CLASS): Remove. Use generic define.
3614 (struct w32_display_info): Fix type of xrdb member.
3615 (enum FULLSCREEN_*): Remove.
3616 (x_fullscreen_adjust): Remove prototype.
3617
3618 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
3619 parameters now defined in frame.h and frame.c.
3620 (Vx_resource_name): Remove. Use generic var.
3621 (enum x_frame_parms): Remove (bogus, unused enum).
3622 (check_x_display_info): Make non-static (for frame.c).
3623 (struct x_frame_parm_table, x_frame_parms): Remove.
3624 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
3625 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
3626 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
3627 (x_change_window_heights, x_set_autoraise, x_set_autolower)
3628 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
3629 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
3630 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
3631 Remove. Use generic functions instead.
3632 (enum resource_types): Remove.
3633 (x_set_scroll_bar_default_width): New global function (for frame.c).
3634 (Fx_create_frame): Depend on x_figure_window_size to add space for
3635 toolbar and setup size_hint_flags.
3636 (w32_frame_parm_handlers): New table for redisplay_interface.
3637 (syms_of_w32fns): Don't intern/staticpro removed vars.
9443fcf6 3638
e072891b
KS
3639 * w32term.c: Remove unnecessary extern declarations.
3640 (x_fullscreen_adjust): Remove. Use generic instead.
3641 (x_redisplay_interface): Add w32_frame_parm_handlers member.
3642
3643 * w32reg.c (x_get_string_resource): Use XrmDatabase.
3644
3645 * macgui.h (XrmDatabase): New (dummy) typedef.
3646
3647 * macterm.h (EMACS_CLASS): Remove.
3648 (struct mac_display_info): Add xrdb member.
3649 (struct mac_output): Add want_fullscreen member.
3650
3651 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
3652 parameters now defined in frame.h and frame.c.
3653 (Vx_resource_name): Remove. Use generic var.
3654 (check_x_display_info): Make non-static (for frame.c).
3655 (struct x_frame_parm_table, x_frame_parms): Remove.
3656 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
3657 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
3658 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
3659 (x_change_window_heights, x_set_autoraise, x_set_autolower)
3660 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
3661 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
3662 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
3663 Remove. Use generic functions instead.
3664 (enum resource_types): Remove.
3665 (x_set_scroll_bar_default_width): New global function (for frame.c).
3666 (mac_frame_parm_handlers): New table for redisplay_interface.
3667 (syms_of_macfns): Don't intern/staticpro removed vars.
9443fcf6 3668
e072891b
KS
3669 * macterm.c: Remove unnecessary extern declarations.
3670 (x_redisplay_interface): Add mac_frame_parm_handlers member.
3671
3e6a560b
KS
3672 * Makefile.in (frame.o): Add dependency on blockinput.h and files
3673 included from it (atimer.h and systime.h).
3674
7b7b454e
AS
36752003-03-30 Andreas Schwab <schwab@suse.de>
3676
3677 * xdisp.c (x_insert_glyphs): Fix swapped width and height
3678 parameters for shift_glyphs_for_insert.
3679
3680 * macterm.c (x_redisplay_interface): Add missing entry for
3681 draw_vertical_window_border.
3682
beb402de
KG
36832003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
3684
3685 * fileio.c (Fexpand_file_name): In the no-handler case, after
3686 expanding, look again for a handler and invoke it. This is needed
3687 for filenames like "/foo/../user@host:/bar/../baz" -- the first
3688 expansion produces "/user@host:/bar/../baz" which needs to be
3689 expanded again for the finame result "/user@host:/baz".
3690
b676f356
JD
36912003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3692
3693 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
3694 of area to be redrawn for better performance.
3695
3c671a56
SM
36962003-03-28 Stefan Monnier <monnier@cs.yale.edu>
3697
3698 * xterm.c (take_vertical_position_into_account): Remove.
3699 (xt_action_hook): Call set_vertical_scroll_bar if needed.
3700 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
3701 (xm_scroll_callback, x_create_toolkit_scroll_bar)
3702 (x_set_toolkit_scroll_bar_thumb): Simplify.
3703 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
3704 (XTread_socket): Remove unused var.
3705 (x_make_frame_invisible): Replace goto with else.
3706
3707 * xdisp.c (set_vertical_scroll_bar): New fun.
3708 (redisplay_window): Use it.
3709
84f2e615
RS
37102003-03-26 Richard M. Stallman <rms@gnu.org>
3711
3712 * xdisp.c (update_tool_bar): Recompute tool bar if
3713 update_mode_lines is set. Set w->update_mode_line
3714 only if the tool bar contents actually change.
3715 (update_menu_bar): Undo previous change.
3716
70b6104c
JD
37172003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3718
5fd6f727
JD
3719 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
3720 (xg_frame_set_char_size): Calculate scroll bar width before frame
3721 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
3722 (xg_separator_p): Check for all documented separator types.
3723 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
3724 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
3725
70b6104c
JD
3726 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
3727 so tool bar gets updated.
3728
d9b36d19
SM
37292003-03-26 Stefan Monnier <monnier@cs.yale.edu>
3730
3731 * data.c (store_symval_forwarding): Re-instate part of the code
3732 that was deleted with too much enthusiasm.
3733
37342003-03-25 Stefan Monnier <monnier@cs.yale.edu>
3735
3736 * data.c (store_symval_forwarding): Delete special read-only
3737 hack for type == -1, since we now use ->constant instead.
3738 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
3739
3740 * buffer.c (overlays_in): Declare static.
3741 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
3742 `constant' field rather than the variable's `type' field.
3743
365fa1b3
AC
37442003-03-24 Andrew Choi <akochoi@shaw.ca>
3745
3746 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
3747
3748 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
3749
3750 * fns.c [MAC_OSX]: Do not redefine vector.
3751
3752 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
3753
3754 * macgui.h: Remove definition of No_Cursor.
3755
d9b36d19 3756 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
365fa1b3
AC
3757
3758 * xdisp.c: Define No_Cursor.
3759 (x_write_glyphs, notice_overwritten_cursor)
3760 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
3761 (note_mouse_highlight): Remove Mac-specific code.
3762 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
d9b36d19 3763
c0bcce6f
JPW
37642003-03-24 John Paul Wallington <jpw@gnu.org>
3765
3766 * xdisp.c (redisplay_window): If mini window's buffer is not
3767 empty, then redisplay it like other windows.
3768
a526b96c
KS
37692003-03-23 Kim F. Storm <storm@cua.dk>
3770
3771 * w32term.c (w32_draw_window_cursor): Fix last change.
3772
37ab321e
KH
37732003-03-23 Kenichi Handa <handa@m17n.org>
3774
a526b96c
KS
3775 * alloc.c (make_string_from_bytes, make_specified_string):
3776 Add `const' for the arg CONTENTS.
37ab321e
KH
3777
3778 * lisp.h (make_string_from_bytes, make_specified_string):
3779 Prototypes adjusted.
3780
7863d625
JD
37812003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3782
a526b96c 3783 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
fd4c9408 3784
7863d625
JD
3785 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
3786 (XG_SB_RANGE): New define.
3787
3788 * gtkutil.c (xg_fixed_handle_expose): New function.
3789 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
3790 expose events.
3791 (xg_update_scrollbar_pos): Take two more arguments, left and width
3792 of scroll bar including borders.
3793 Clear left and right part outside scroll bar separately as some
3794 themes have bars that are not an even number of pixels.
d9b36d19 3795 Don't set reallocate_redraws, don't call
7863d625
JD
3796 gdk_window_process_all_updates.
3797 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
3798 so no need to change it. Calculate size and value with XG_SB_RANGE.
3799
d9b36d19
SM
3800 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
3801 Pass left and width of scroll bar including borders to
7863d625
JD
3802 xg_update_scrollbar_pos.
3803
af0ad939
TTN
38042003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
3805
3806 * Makefile.in: Make sure space precedes end-of-line backslashes.
3807
b22139fd
KS
38082003-03-22 Kim F. Storm <storm@cua.dk>
3809
3810 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
3811 Add generic versions here. Remove system specific versions
3812 defined elsewhere.
3813
3814 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
3815 Add prototypes.
3816
6e6410cf
KS
3817 * xterm.h (STORE_NATIVE_RECT): New macro.
3818
5c9cc435
KS
38192003-03-21 Kim F. Storm <storm@cua.dk>
3820
00c64fab
SM
3821 * xdisp.c (get_glyph_string_clip_rect):
3822 Use FRAME_INTERNAL_BORDER_WIDTH.
5c9cc435
KS
3823
3824 * dispextern.h (struct redisplay_interface): Add active_p
3825 argument to draw_window_cursor member. All uses changed.
3826
acd37560
KS
38272003-03-21 Kim F. Storm <storm@cua.dk>
3828
3829 The following changes consolidate code related to writing and
3830 inserting glyphs, exposing frame, the tool bar, the mouse face,
3831 the output cursor, and help echo from xterm.c, w32term.c and
3832 macterm.c into xdisp.c. It also generalizes the use of the
3833 window_part enum instead of using numeric values throughout.
af0ad939 3834
acd37560
KS
3835 * xdisp.c: Consolidate gui-independent code here.
3836 Include keymap.h.
3837 (Qhelp_echo): Import.
3838 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
3839 (help_echo_string, help_echo_window, help_echo_object)
3840 (previous_help_echo_string, help_echo_pos): Declare here.
3841 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
3842 (estimate_mode_line_height): Define here. Handle windowing
3843 systems directly (without using estimate_mode_line_height_hook).
3844 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
3845 (update_window_cursor, update_cursor_in_window_tree)
3846 (fast_find_position, fast_find_string_pos)
3847 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
3848 (expose_area, expose_line, expose_overlaps, expose_window)
3849 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
3850 declared static as they are only used locally in xdisp.c.
3851 (draw_glyphs): Rename from x_draw_glyphs and make static.
3852 (tool_bar_item_info, notice_overwritten_cursor): Make static.
3853 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
3854 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
af0ad939 3855 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
acd37560
KS
3856 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
3857 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
3858 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
3859 (note_mouse_highlight, x_clear_window_mouse_face)
3860 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
3861 (x_intersect_rectangles): New generic functions for use by xdisp.c
3862 and GUI front-ends.
3863 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
3864 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
3865
3866 * dispextern.h (Display_Info): Generic typedef for *_display_info.
3867 (NativeRectangle): Generic typedef for rectangle type.
3868 (enum window_part): Move here from window.c.
3869 (struct redisplay_interface): New members flush_display_optional,
3870 define_frame_cursor, clear_frame_area, draw_window_cursor,
3871 draw_vertical_window_border, shift_glyphs_for_insert.
3872 Rename member clear_mouse_face to clear_window_mouse_face.
3873 (estimate_mode_line_height_hook): Remove hook.
3874 (auto_raise_tool_bar_buttons_p): Don't declare extern.
3875 (tool_bar_item_info): Remove prototype.
3876 (help_echo_string, help_echo_window, help_echo_object)
3877 (previous_help_echo_string, help_echo_pos)
3878 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
3879 (x_stretch_cursor_p, output_cursor): Declare extern.
3880 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
3881 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
3882 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
3883 (display_and_set_cursor, set_output_cursor, x_cursor_to)
3884 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
3885 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
3886 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
3887 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
3888 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
3889 Add prototypes.
3890 (mode_line_string, marginal_area_string): Fix prototypes.
3891
3892 * window.c (enum window_part): Move to dispextern.h.
3893 (coordinates_in_window): Use enum window_part member names
3894 instead of numbers to describe return value.
3895 (struct check_window_data): Change part member to window_part.
3896 (check_window_containing): Return window_part unaltered.
3897 (window_from_coordinates): Change part arg from int to enum
3898 window_part. Allow part arg to be null. All users changed.
3899
3900 * window.h (window_from_coordinates): Fix prototype.
3901
3902 * term.c (estimate_mode_line_height): Move to xdisp.c.
3903
3904 * keyboard.c (make_lispy_event): Use enum window_part.
3905
3906 * dispnew.c (mode_line_string, marginal_area_string): Use enum
3907 window_part instead of int in arg list. Users changed.
3908
3909 * xterm.h (No_Cursor): Declare as None for X.
3910 (struct mac_output): Replace member cross_cursor by hand_cursor.
af0ad939 3911
acd37560
KS
3912 * xterm.c: Remove consolidated defines and code.
3913 (BETWEEN): Remove unused macro.
3914 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
3915 (x_define_frame_cursor, x_clear_frame_area)
3916 (x_draw_window_cursor): New X-specific functions for RIF.
3917 (x_redisplay_interface): Add new members.
3918
3919 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
3920
3921 * w32term.h (struct w32_output): Remove cross_cursor member.
3922
3923 * w32term.c: Remove consolidated defines and code.
3924 (BETWEEN): Remove unused macro.
3925 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
3926 (w32_define_frame_cursor, w32_clear_frame_area)
3927 (w32_draw_window_cursor): New W32-specific functions for RIF.
3928 (w32_redisplay_interface): Add new members.
3929
3930 * w32gui.h (No_Cursor): Define as 0 for W32.
3931 (XRectangle): Add X compatible rectangle type.
3932 (NativeRectangle): Declare as RECT for W32.
3933 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
3934
3935 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
3936
3937 * w32console.c: Remove consolidated defines and code.
af0ad939 3938
acd37560
KS
3939 * msdos.h (Display_Info): Add generic typedef.
3940
3941 * msdos.c: Remove consolidated defines and code.
3942 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
3943
3944 * macterm.h (struct mac_output): Replace member cross_cursor by
3945 hand_cursor.
3946 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
3947
3948 * macterm.c: Remove consolidated defines and code.
3949 (BETWEEN): Remove unused macro.
3950 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
3951 (mac_define_frame_cursor, mac_clear_frame_area)
3952 (mac_draw_window_cursor): New Mac-specific functions for RIF.
3953 (x_redisplay_interface): Add new members.
3954
3955 * macgui.h (No_Cursor): Define as 0 for Mac.
3956 (XRectangle): Add X compatible rectangle type.
3957 (NativeRectangle): Declare as Rect for Mac.
3958 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
3959
204ccab1
KS
3960 * macfns.c (x_set_mouse_color): Setup hand_cursor.
3961 (x_set_cursor_color): Use x_display_and_set_cursor.
acd37560 3962
9443fcf6 3963 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
acd37560
KS
3964 included from it. Add dependency on keymap.h.
3965
3966 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
3967
8ba01a70 39682003-03-21 Kenichi Handa <handa@m17n.org>
3f817c73
KH
3969
3970 * fileio.c (Fexpand_file_name): Fix previous change.
3971
8ba01a70 39722003-03-19 Kenichi Handa <handa@m17n.org>
4f497b0a
KH
3973
3974 * fileio.c (Ffile_name_directory): Reconstruct file name by
3975 make_specified_string.
3976 (Ffile_name_nondirectory, Ffile_name_as_directory)
3977 (Fdirectory_file_name, Fexpand_file_name)
3978 (Fsubstitute_in_file_name): Likewise.
3979 (Fread_file_name): Compare decoded homedir with DIR and
3980 DEFAULT_FILENAME.
3981
3982 * alloc.c (make_specified_string): If NCHARS is negative, count
3983 the number of characters.
3984
19536747
JD
39852003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3986
de38ae5a
JD
3987 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
3988 all widgets.
3989
19536747
JD
3990 * gtkutil.h: Removed xg_ignore_next_thumb.
3991
37ab321e 39922003-03-18 Kenichi Handa <handa@m17n.org>
cb0d4562
KH
3993
3994 * coding.c (Vchar_coding_system_table): Remove this variable.
3995 (Vcoding_system_safe_chars): New variable.
3996 (intersection): Remove this function.
3997 (find_safe_codings): Don't use Vchar_coding_system_table, but try
3998 all codings in SAFE_CODINGS.
00c64fab 3999 (Ffind_coding_systems_region_internal): Adjust for the change of
cb0d4562
KH
4000 find_safe_codings. Get generic coding systems from
4001 Vcoding_system_safe_chars.
4002 (Fdefine_coding_system_internal): New function.
4003 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
4004 Initialize and staticpro Vcoding_system_safe_chars.
4005
17097258
JD
40062003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4007
2a2071c3
JD
4008 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
4009 equal old values before updating.
4010
17097258
JD
4011 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
4012
4013 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
4014
40152003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4016
4017 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
4018 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
4019 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
4020 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
4021 (xg_create_scroll_bar): Pass bar to button event callback.
4022 (xg_find_top_left_in_fixed): New function.
4023 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
4024 whole scroll bar area. Get old position with
4025 xg_find_top_left_in_fixed, calculate and only clear needed areas.
4026 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
4027 dragging is in progress. Calculate whole as for Motif.
4028 Remove code that saved last values. Call gtk_range functions to
4029 set scroll bar sizes.
4030
4031 * gtkutil.h: Removed xg_ignore_next_thumb.
4032
8cb9dfbf
JB
40332003-03-17 Juanma Barranquero <lektu@terra.es>
4034
4035 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
4036 and files included from it.
4037
00c64fab
SM
40382003-03-18 Stefan Monnier <monnier@cs.yale.edu>
4039
4040 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
4041 multiple occurrences of the same keymap under different prefixes.
4042 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
4043
c45bb3b2
JR
40442003-03-16 Jason Rumney <jasonr@gnu.org>
4045
4046 * w32gui.h: Use HDC for Display.
4047
4048 * w32term.c (w32_encode_char): Prevent double-byte chars from
4049 crashing Emacs.
4050
4051 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
4052 as binary.
4053
2a6d0874
JB
40542003-03-16 Juanma Barranquero <lektu@terra.es>
4055
4056 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
4057
03eb5fab
KS
40582003-03-16 Kim F. Storm <storm@cua.dk>
4059
4060 The following changes consolidate some of the gui-independent
4061 parts of the processing and drawing of "glyph strings" from
4062 xterm.c, w32term.c, and macterm.c into xdisp.c.
2a6d0874 4063
03eb5fab
KS
4064 * dispextern.h (struct glyph): Reduce face_id member from 22 to
4065 21 bits (this reduces number of faces from 4M to 2M).
4066 Replace W32 specific w32_font_type member (2 bits) by generic
4067 font_type member (3 bits) for portability.
4068 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
4069 (enum draw_glyphs_face): Define here.
4070 (struct glyph_string): Define here. Merge W32 and X versions.
4071 (struct redisplay_interface): New members per_char_metric,
4072 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
4073 (VCENTER_BASELINE_OFFSET): Define here.
4074 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
4075 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
4076
4077 * xdisp.c: Consolidate gui-independent "glyph string" code here.
4078 (dump_glyph_string): Moved here.
4079 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
4080 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
4081 (fill_composite_glyph_string, fill_glyph_string)
4082 (fill_image_glyph_string, fill_stretch_glyph_string)
4083 (left_overwritten, left_overwriting, right_overwritten)
4084 (right_overwriting, get_char_face_and_encoding)
4085 (set_glyph_string_background_width, compute_overhangs_and_x)
4086 (append_glyph, append_composite_glyph, produce_image_glyph)
4087 (take_vertical_position_into_account, append_stretch_glyph)
4088 (produce_stretch_glyph): New generic functions (based on X version).
4089 Call platform specific functions through rif.
4090 (INIT_GLYPH_STRING): New macro, hides W32 details.
4091 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
4092 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
4093 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
4094 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
4095 (notice_overwritten_cursor):
4096 Generic functions exported to platform modules. Users changed.
4097
4098 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
4099 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
4100 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
fad49844 4101 New macros for consolidated code.
2a6d0874 4102
03eb5fab
KS
4103 * xterm.c: Remove consolidated defines and code.
4104 (x_per_char_metric, x_encode_char)
4105 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
4106 (x_redisplay_interface): Add new members.
4107
4108 * w32gui.h (Display): Add dummy typedef for consolidation.
4109 (XChar2b): Define alias for wchar_t for consolidation.
4110 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
4111
4112 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
2a6d0874 4113 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
03eb5fab
KS
4114 New macros for consolidation.
4115
fad49844 4116 * w32term.c: Remove consolidated defines and code.
03eb5fab
KS
4117 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
4118 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
4119 (w32_per_char_metric): Change font_type arg to int for RIF.
4120 (w32_encode_char): Return int according to RIF requirements.
4121 (w32_compute_glyph_string_overhangs): Adapt to RIF.
4122 (w32_get_glyph_overhangs): New function for RIF. Uses generic
4123 x_get_glyph_overhangs.
4124 (w32_redisplay_interface): Add new members.
4125
4126 * macgui.h (XChar2b): Move typedef here for consolidation.
4127 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
4128
4129 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
4130 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
4131 consolidation.
4132
4133 * macterm.c: Remove consolidated defines and code.
4134 (mac_per_char_metric): New function for RIF.
00c64fab 4135 (mac_encode_char): Adapt to new RIF requirements.
03eb5fab
KS
4136 (mac_compute_glyph_string_overhangs): Adapt for RIF.
4137 (x_redisplay_interface): Add new members.
4138
00c64fab
SM
41392003-03-15 Stefan Monnier <monnier@cs.yale.edu>
4140
4141 * keymap.c (Vmenu_events): New var.
4142 (syms_of_keymap): Initialize it.
4143 (where_is_internal): Check more carefully what is a menu event.
4144
225c7a07
RS
41452003-03-14 Richard M. Stallman <rms@gnu.org>
4146
4147 * lread.c (read1): After #!, exit loop on eof.
4148
cea9be54
JD
41492003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4150
9ea0e54d
JD
4151 * gtkutil.h: Add declaration for xg_frame_cleared.
4152
0cb35f4e
JD
4153 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
4154
cea9be54
JD
4155 * gtkutil.c (struct xg_last_sb_pos): New structure.
4156 (handle_fixed_child): New function.
4157 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
4158 and force a redraw on them.
4159 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
4160 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
4161 so we can avoid unneeded redraws.
4162 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
4163 and force a redraw on the scroll bar.
4164 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
4165 if xg_last_sb_pos shows the positions are up to date.
0cb35f4e 4166 (xg_frame_cleared): New function.
cea9be54 4167
20b853f3
KH
41682003-03-13 Kenichi Handa <handa@m17n.org>
4169
4170 * coding.c (Fdetect_coding_region): Fix docstring.
4171 (Fdetect_coding_string): Fix docstring.
4172
7a555aff
AS
41732003-03-13 Andreas Schwab <schwab@suse.de>
4174
25cc0080
AS
4175 * gtkutil.c: Add prototype for create_menus.
4176
30225431
AS
4177 * data.c (long_to_cons): Fix type of top.
4178
4179 * xselect.c (selection_data_to_lisp_data): Use int instead of
4180 long for an integer of size 4.
4181
7a555aff 4182 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
30225431 4183 (xg_tool_bar_help_callback): Likewise.
7a555aff 4184
a3e4741f
AS
41852003-03-12 Andreas Schwab <schwab@suse.de>
4186
4187 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
4188
9668be7c
KS
41892003-03-12 Kim F. Storm <storm@cua.dk>
4190
03eb5fab 4191 The following changes consolidate the fringe handling from
9668be7c 4192 xterm.c, w32term.c, and macterm.c into xdisp.c.
00a88f32 4193
9668be7c
KS
4194 * xdisp.c: Consolidate fringe handling code here.
4195 (left_bits, right_bits, continued_bits, continuation_bits)
4196 (ov_bits, zv_bits): Define fringe bitmaps.
4197 (fringe_bitmaps): New array holding fringe bitmaps.
4198 (draw_fringe_bitmap): Draw a specific bitmap; call display
4199 specific drawing routine via rif->draw_fringe_bitmap.
4200 (draw_row_fringe_bitmaps): Generic replacement for
4201 x_draw_row_fringe_bitmaps; all callers changed.
4202 (compute_fringe_widths): Generic replacement for
4203 x_compute_fringe_widths; all callers changed.
4204
4205 * dispextern.h (enum fringe_bitmap_type): Define here.
4206 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
4207 (fringe_bitmaps): Declare extern.
4208 (struct redisplay_interface): New member draw_fringe_bitmap.
4209 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
4210
4211 * xterm.c: Remove generic fringe code.
4212 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
4213 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
4214
4215 * w32term.c: Remove generic fringe code.
4216 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
4217 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
00a88f32 4218
9668be7c
KS
4219 * macterm.c: Remove generic fringe code.
4220 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
4221 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
4222
00a88f32
SM
42232003-03-11 Stefan Monnier <monnier@cs.yale.edu>
4224
4225 * print.c (Fprin1_to_string): Return unibyte string if possible.
4226
1d1de695
DK
42272003-03-09 David Kastrup <dak@gnu.org>
4228
4229 * process.c (read_process_output): We have allocated enough space
4230 for readmax and carryover, so actually use the alloted space.
4231
257f40f2
JD
42322003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4233
4234 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
4235 toolkit scrollbar click.
4236
4237 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
4238 for USE_GTK.
4239 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
4240 also.
4241 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
4242 scrollbar and control is pressed, call x_scroll_bar_handle_click.
00a88f32 4243
257f40f2
JD
4244 * gtkutil.h: Declare xg_get_scroll_id_for_window.
4245
4246 * gtkutil.c (xg_get_scroll_id_for_window): New function.
4247 (xg_tool_bar_item_expose_callback): New function.
4248 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
4249 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
4250 on the tool bar widget.
4251 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
4252 to expose on the tool bar item widgets.
4253
15213141
JD
42542003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4255
26b74a0b 4256 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
00a88f32 4257 struct image* when deciding to update (struct image* may have been
26b74a0b
JD
4258 deleted from the image cache).
4259
15213141
JD
4260 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
4261 the event isn't for a frame (i.e. for dialogs).
4262
20b853f3 42632003-03-07 Kenichi Handa <handa@m17n.org>
cb681b34
KH
4264
4265 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
4266 composition components reaches the limit, terminate composing.
4267 (COMPOSITION_OK): New macro.
00a88f32 4268 (detect_coding_iso2022): Use it if an escape sequence for
cb681b34
KH
4269 composition is found.
4270 (coding_restore_composition): Adjust the number of composition
4271 components if it is not sane.
4272
c9029fe5
JB
42732003-03-06 Juanma Barranquero <lektu@terra.es>
4274
4275 * w32term.h (struct w32_display_info): Add xrdb member to support
4276 passing resources via -xrm on Windows.
4277
4278 * w32term.c (w32_make_rdb): New function.
4279 (w32_term_init): Use it to initialize xrdb member of w32_display_info
4280 struct. Delete leftover code.
4281
4282 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
4283 for resources passed on the command line.
4284
4285 * w32reg.c (w32_get_rdb_resource): New function.
4286 (x_get_string_resource): Use it, so resources passed with -xrm
4287 supercede the ones in the registry.
4288
9d00001f
JD
42892003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4290
4291 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
4292 instead of x_top_window_to_frame.
4293
ca2417b9
JD
42942003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4295
4296 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
4297 when restarting Emacs.
4298
5b20caf0
RS
42992003-03-03 Richard M. Stallman <rms@gnu.org>
4300
4301 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
4302 to run kill-buffer-query-functions.
4303 (Qkill_buffer_query_functions): New var.
4304 (syms_of_buffer): Init and staticpro it.
4305
58e91b77
JD
43062003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4307
4308 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
4309
932357b4
KS
43102003-02-25 Kim F. Storm <storm@cua.dk>
4311
4312 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
4313 If centering point failed to make whole line visible and vscroll
4314 is non-zero, disable vscroll and try centering point again.
4315
4316 * lread.c (read1): Accept `single space' syntax like (? x).
4317
bb8db7e1
JD
43182003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4319
4320 * keyboard.c (cancel_hourglass_unwind): Surround with
4321 #ifdef HAVE_X_WINDOWS
4322
47d77aab
KH
43232003-02-25 Kenichi Handa <handa@m17n.org>
4324
4325 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
4326 process only when "subprocesses" is defined.
4327
6a097c0c
SM
43282003-02-24 Stefan Monnier <monnier@cs.yale.edu>
4329
4330 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
4331
0b063c27
JB
43322003-02-24 Juanma Barranquero <lektu@terra.es>
4333
d1135afc
JB
4334 * callint.c (fix_command): Declare as static void and move before
4335 Fcall_interactively.
4336
0b063c27
JB
4337 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
4338 (syms_of_xdisp): Don't initialize Qwhen.
4339
0af912f0
JD
43402003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4341
4342 * keyboard.c (cancel_hourglass_unwind): New function.
4343 (command_loop_1): Cancel hourglass with unwind-protect.
4344
120d0a23
RS
43452003-02-23 Richard M. Stallman <rms@gnu.org>
4346
4347 * callint.c (fix_command): New subroutine, from Fcall_interactively.
4348 Detect (when ... (region-beginning)) etc.
4349 (Fcall_interactively): Call fix_command.
4350 (Qif, Qwhen): New variables.
4351 (syms_of_callint): Init and staticpro them.
0b063c27 4352
120d0a23
RS
4353 * regex.c (print_partial_compiled_pattern): Output to stderr.
4354
4ece81a6
KG
43552003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
4356
4357 * dired.c (directory_files_internal): Don't expand directory.
4358 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
4359 instead. From Lars Hansen <larsh@math.ku.dk>.
4360
e52bd6b7
SM
43612003-02-22 Stefan Monnier <monnier@cs.yale.edu>
4362
4363 * fns.c (string_to_multibyte): Remove unused var i.
4364 (Flanginfo): Fix int/Lisp_Object mixup.
4365 (void_call2): New fun.
4366 (Fmap_char_table): Use it in place of call2.
4367
4368 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
4369
4370 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
4371
4372 * keymap.c (copy_keymap_1): Make it static.
4373
4374 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
4375
c33ef7c4
JB
43762003-02-22 David Ponce <david@dponce.com>
4377
4378 * lread.c (Fload): Don't check STRING_MULTIBYTE.
4379
16782258
JD
43802003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4381
4382 * process.h: Removed subtty field from struct Lisp_Process.
4383
4384 * process.c (create_process): Remove setting of subtty.
4385 (emacs_get_tty_pgrp): New function.
e52bd6b7
SM
4386 (Fprocess_running_child_p, process_send_signal):
4387 Call emacs_get_tty_pgrp instead of ioctl.
16782258
JD
4388 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
4389
3abeca61
KG
43902003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
4391
4392 * keymap.c (Fdefine_key): Doc fix.
4393
92a8ce63
JB
43942003-02-21 Juanma Barranquero <lektu@terra.es>
4395
4396 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
4397
4398 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
4399 POLLING_PROBLEM_IN_SELECT.
4400
4401 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
4402 Delete #undef of POLLING_PROBLEM_IN_SELECT.
4403
4404 * s/hpux10-20.h: New file.
4405
e52bd6b7
SM
4406 * process.c (wait_reading_process_input):
4407 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
92a8ce63 4408
20f1ef2e
KH
44092003-02-20 Kenichi Handa <handa@m17n.org>
4410
32d0a9dc
KH
4411 * fontset.c (check_fontset_name): If NAME is nil, return the
4412 default fontset.
4413 (override_font_info): New function.
e52bd6b7 4414 (Fset_fontset_font): Document that NAME nil means the default fontset.
32d0a9dc
KH
4415 (Ffontset_info): If FONTSET is not the default fontset, merge
4416 FONTSET onto the copy of the default fontset, and work on that
4417 copy. Document that NAME nil means the default fontset.
4418 (Ffontset_font): Document that NAME nil means the default fontset.
4419
20f1ef2e
KH
4420 * process.c (setup_process_coding_systems): If the process's
4421 in/out descriptor is -1, do nothing.
4422
77d1daf2
AS
44232003-02-19 Andreas Schwab <schwab@suse.de>
4424
e52bd6b7
SM
4425 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
4426 Add prototypes.
77d1daf2 4427
f9a45bb3
KH
44282003-02-19 Kenichi Handa <handa@m17n.org>
4429
4430 * xfaces.c (try_alternative_families): Try all scalable fonts if
4431 Vscalable_fonts_allowed is not Qt.
4432
72ecb43c
JD
44332003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4434
4435 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
4436
ee5be7c3
JD
44372003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4438
4439 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
4440 names.
4441
4442 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
e52bd6b7 4443 (sorted_font_list): Move allocation of struct font_name to
ee5be7c3
JD
4444 x_face_list_fonts.
4445 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
4446 (Fx_list_fonts): Set maxnames to -1 to get all font names.
4447
4cd519a7
KS
44482003-02-18 Kim F. Storm <storm@cua.dk>
4449
068f9882
KS
4450 * lread.c (read1): Fix last change.
4451 "`" is not always special. Allow "?" after a character constant.
4cd519a7 4452
7290a344
AC
44532003-02-18 Andrew Choi <akochoi@shaw.ca>
4454
4455 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
4456
1f7fa69b
AS
44572003-02-18 Andreas Schwab <schwab@suse.de>
4458
4459 * window.c (window_scroll_pixel_based): Move outside a
4460 multi-glyph character before setting new window start.
4461
4462 * xdisp.c (in_display_vector_p): New function.
4463 * dispextern.h (in_display_vector_p): Declare.
4464
23e21195
KS
44652003-02-18 Kim F. Storm <storm@cua.dk>
4466
4467 * lread.c (read1): Fix and relax read syntax.
4468 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
4469 Only recognize "," after dotted-pair dot if inside backquote.
4470 Never include "`" or "," (inside backquote) in a symbol.
4471 Allow dotted-pair dot after a character constant.
4472 Allow "`" and "," (inside backquote) after a character constant.
92a8ce63 4473
f098b121
JD
44742003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4475
4476 * gtkutil.c (xg_tool_bar_expose_callback): New function.
4477 (xg_create_tool_bar): Force style of tool bar to be horizontal with
4478 icons. Set name of tool bar to emacs-toolbar.
4479 (update_frame_tool_bar): Connect expose event to
4480 xg_tool_bar_expose_callback.
4481
63020c46
RS
44822003-02-17 Richard M. Stallman <rms@gnu.org>
4483
4484 * keyboard.c (this_command_key_count_reset): New variable.
4485 Initiatize to 0 where this_command_key_count is set.
4486 (read_char): Save and restore this_command_key_count_reset
4487 around input method code.
4488 (read_char): If this_command_key_count_reset, echo reread commands.
4489 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
4490
fb4452cc
KH
44912003-02-17 Kenichi Handa <handa@m17n.org>
4492
4493 * fns.c (string_to_multibyte): Always return a multibyte string.
4494
bd11cc09
JR
44952003-02-16 Jason Rumney <jasonr@gnu.org>
4496
e52bd6b7
SM
4497 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
4498 Negative max_fonts parameter means list all.
bd11cc09 4499
4cdf4bde
DL
45002003-02-14 Dave Love <fx@gnu.org>
4501
4502 * fns.c (Flanginfo): Doc fix.
4503
023b93f6
KS
45042003-02-13 Kim F. Storm <storm@cua.dk>
4505
37cd4238
KS
4506 * lread.c (read_escape): Interpret \s as a SPACE character, except
4507 for \s-X in a character constant which still is the super modifier.
4508 (read1): Signal an `invalid read syntax' error if a character
4509 constant is immediately followed by a digit or symbol character.
4510
140a6b7e
KS
4511 * search.c (Fmatch_data): Doc fix. Explicitly state that
4512 match-data is undefined if last search failed.
4513
023b93f6
KS
4514 * keymap.c (Fcommand_remapping): Renamed from Fremap_command.
4515 All uses changed.
4516
7d5c86e5
JB
45172003-02-12 Juanma Barranquero <lektu@terra.es>
4518
4519 * eval.c (Fdefmacro): Fix typo.
4520
295fff2c
KS
45212003-02-12 Kim F. Storm <storm@cua.dk>
4522
4523 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
4524 macro is a string, convert meta modifiers in string when copying
4525 the string into a vector.
4526
60f3202d
KS
45272003-02-11 Kim F. Storm <storm@cua.dk>
4528
4529 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
4530
61cb0b53
KH
45312003-02-11 Kenichi Handa <handa@m17n.org>
4532
4533 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
4534
7392e23c
KS
45352003-02-10 Kim F. Storm <storm@cua.dk>
4536
4537 * process.c: Doc fixes.
4538 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
4539
ce4254bd
KH
45402003-02-10 Kenichi Handa <handa@m17n.org>
4541
9c7a329a
KH
4542 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
4543
ce4254bd
KH
4544 * process.c (QCfilter_multibyte): New variable.
4545 (setup_process_coding_systems): New function.
e52bd6b7
SM
4546 (Fset_process_buffer, Fset_process_filter):
4547 Call setup_process_coding_systems.
ce4254bd
KH
4548 (Fstart_process): Initialize the member `filter_multibyte' of
4549 struct Lisp_Process.
4550 (create_process): Call setup_process_coding_systems.
4551 (Fmake_network_process): New keyward `:filter-multibyte'.
4552 Initialize the member `filter_multibyte' of struct Lisp_Process.
4553 Call setup_process_coding_systems.
4554 (server_accept_connection): Call setup_process_coding_systems.
4555 (read_process_output): If the process has a filter, decide the
4556 multibyteness of a string to given to the filter by
4557 `filter_multibyte' member of the process. If the process doesn't
4558 have a filter and the result of conversion is unibyte, use
4559 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
4560 multibyte form.
4561 (Fset_process_coding_system): Call setup_process_coding_systems.
4562 (Fset_process_filter_multibyte): New function.
4563 (Fprocess_filter_multibyte_p): New function.
4564 (syms_of_process): Intern and staticpro QCfilter_multibyte.
4565 Defsubr Sset_process_filter_multibyte and
4566 Sprocess_filter_multibyte_p.
4567
4568 * process.h (struct Lisp_Process): New member filter_multibyte.
4569
4570 * lisp.h (setup_process_coding_systems): Add prototype.
4571
4572 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
4573 process, update coding systems for the process.
4574
b08d5f59
KH
45752003-02-09 Kenichi Handa <handa@m17n.org>
4576
4577 * fns.c (string_to_multibyte): New function.
4578 (Fstring_to_multibyte): New function.
4579 (syms_of_fns): Defsubr it.
4580
0dfd93c0
AS
45812003-02-08 Andreas Schwab <schwab@suse.de>
4582
4583 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
4584 instead of the substitution.
4585
7b76ca1c
JD
45862003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4587
4588 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
4589
4590 * xmenu.c (menu_position_func): Adjust menu popup position so that
4591 the menu is fully visible.
7b76ca1c 4592
2436a4e4
JD
45932003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4594
4595 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
e52bd6b7
SM
4596 (x_make_frame_invisible, x_wm_set_icon_position):
4597 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
2436a4e4
JD
4598
4599 * xfns.c (x_set_name, x_set_title): Ditto.
4600
37d1e680
RS
46012003-02-04 Richard M. Stallman <rms@gnu.org>
4602
4603 * keyboard.c (echo_now): Update before_command_echo_length.
4604 (Freset_this_command_lengths): Reset this_command_key_count etc.
4605 immediately rather than arranging to do it later.
4606 (before_command_key_count_1, before_command_echo_length_1)
4607 (before_command_restore_flag): Vars deleted.
4608 (add_command_key): Don't handle before_command_restore_flag.
4609 (read_char, record_menu_key): Don't update before_command_key_count or
4610 before_command_echo_length.
4611 (read_char): Don't handle before_command_restore_flag.
4612
4613 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
4614 in direct-output clauses if it wouldn't be called in the ordinary case.
4615
578846a3
KS
46162003-02-04 Kim F. Storm <storm@cua.dk>
4617
4618 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
4619
49853a4d
JD
46202003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4621
4622 * gtkutil.c (remove_from_container): Copying list is not needed.
4623 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
4624 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
4625 on list returned from gtk_container_get_children to avoid memory leak.
4626
8b53dc06
JR
46272003-02-01 Jason Rumney <jasonr@gnu.org>
4628
5d54d177
JR
4629 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
4630 local malloc.
4631 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
4632 definitions in xpm.h.
4633 (init_xpm_functions): New function.
4634 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
4635 (init_external_image_libraries): Try to load libXpm.dll.
4636
8b53dc06
JR
4637 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
4638 timestamp.
4639
b222e415
DL
46402003-01-31 Dave Love <fx@gnu.org>
4641
4642 * syntax.c (Fskip_chars_forward)
4643 (open-paren-in-column-0-is-defun-start): Doc fix.
4644
c60ee5e7
JB
46452003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
4646
4647 * fileio.c: Support // at start of name for Cygwin (just added proper
4648 preprocessor tests).
4649
4650 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
4651
4652 * Makefile.in: Use @EXEEXT@ for Cygwin.
4653
4654 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
4655
4656 * s/cygwin.h: Added for Cygwin port.
4657
53b37591
JB
46582003-01-31 Juanma Barranquero <lektu@terra.es>
4659
4660 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
4661 when including gif_lib.h.
fe929957
JB
4662 (init_gif_functions, init_tiff_functions): New functions.
4663 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
4664 Windows. Disable color table lookups. Call library functions
53b37591 4665 through pointers determined at runtime.
fe929957
JB
4666 (init_external_image_libraries): Try to load libungif.dll and
4667 libtiff.dll.
53b37591 4668
45415a8f
KH
46692003-01-31 Kenichi Handa <handa@m17n.org>
4670
4671 * xdisp.c (SKIP_GLYPHS): New macro.
e52bd6b7 4672 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
45415a8f 4673
a97e4138
JD
46742003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4675
e52bd6b7 4676 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
a97e4138 4677
6eed9bed
DL
46782003-01-30 Dave Love <fx@gnu.org>
4679
4680 * alloc.c (Vgc_elapsed, gcs_done): New variables.
4681 (Fgarbage_collect): Use them.
4682 (init_alloc, syms_of_alloc): Set them up.
4683
100dcd40
JB
46842003-01-30 Juanma Barranquero <lektu@terra.es>
4685
4686 * w32fns.c (init_external_image_libraries): Add missing operator.
4687
fbd852af
JR
46882003-01-29 Jason Rumney <jasonr@gnu.org>
4689
4690 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
4691 an alternative name for jpeg.dll.
4692
8a2d8020
KH
46932003-01-29 Kenichi Handa <handa@m17n.org>
4694
4695 * xdisp.c (set_cursor_from_row): Pay attention to string display
4696 properties.
4697
058c18c7
AC
46982003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
4699
4700 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
4701 <escape>.
4702 (keycode_to_xkeysym_table): Reformat and add more comments.
4703 (XTread_socket): Drop special case for backspace.
4704
385f11cf
AC
47052003-01-28 Andrew Choi <akochoi@shaw.ca>
4706
4707 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
4708 values in old-style RGB specs.
4709
c922a224
JB
47102003-01-27 Juanma Barranquero <lektu@terra.es>
4711
4712 * w32fns.c (init_external_image_libraries): Try alternate names for the
4713 jpeg dll.
4714
0a1d6de0
JD
47152003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4716
4717 * gtkutil.c (create_dialog, xg_separator_p)
4718 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
4719 before calling strcmp or strlen.
4720
a97e4138 47212003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1d1885fc
JD
4722
4723 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
4724 and handle image load failure.
4725
28908312
JR
47262003-01-26 Jason Rumney <jasonr@gnu.org>
4727
4728 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
4729 New functions.
4730 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
4731 Disable color table lookups. Call jpeg library functions
4732 through pointers determined at runtime.
4733 (init_external_image_libraries): Try to load jpeg.dll.
4734
84e47416
RS
47352003-01-25 Richard M. Stallman <rms@gnu.org>
4736
4737 * lisp.h: Declare format2 instead of format1.
4738
4739 * fileio.c (barf_or_query_if_file_exists):
4740 Call format2 instead of format1.
4741
4742 * editfns.c (format2): New function, replaces format1
4743 but takes exactly two Lisp Objects as format args.
4744
4745 * buffer.c (Fkill_buffer): Call format2 instead of format1.
4746
a97e4138 47472003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1fcfb866
JD
4748
4749 * xterm.h: Change to return value of x_dispatch_event to int.
4750
4751 * xterm.c (x_filter_event): New function.
4752 (event_handler_gdk, XTread_socket): Call x_filter_event.
4753 (x_dispatch_event): Change to return value of finish.
4754 (event_handler_gdk): Use return value from x_dispatch_event.
4755
4756 * xfns.c (x_window): Call create_frame_xic for GTK version to
4757 initialize input methods.
4758
4759 * gtkutil.h: Add (void) prototypes.
4760
4761 * gtkutil.c (create_menus): Remove code that puts the help menu to
4762 the right.
4763
54eefef1
JR
47642003-01-25 Jason Rumney <jasonr@gnu.org>
4765
4766 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
4767 [HAVE_PNG]: Sync with xfns.c version.
4768 (png_load): Adjust colors for Windows. Use Windows
4769 bitmaps. Disable color table lookups.
c262430d
JR
4770 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
4771 (init_png_functions): New function.
4772 (png_read_from_memory, png_load): Call png library functions
4773 through pointers determined at runtime.
4774 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
4775 (init_external_image_libraries): New function.
4776 (init_xfns): Call it.
54eefef1 4777
1a9e275b
AS
47782003-01-24 Andreas Schwab <schwab@suse.de>
4779
4780 * minibuf.c (Fminibuffer_message): Verify type of parameter.
4781
a97e4138 47822003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
81e302ef
JD
4783
4784 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
4785 of static initializer.
4786
422eec7e
DL
47872003-01-24 Dave Love <fx@gnu.org>
4788
4789 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
4790 architectures.
4791
4792 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
4793 Use __alignof__.
4794
2a026b04
KH
47952003-01-24 Kenichi Handa <handa@m17n.org>
4796
4797 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
e52bd6b7 4798 It it is nonzero, don't pretend that an invisible area doesn't exist.
2a026b04
KH
4799 (command_loop_1): Call adjust_point_for_property with proper
4800 second arg.
4801
a18bb28d
JR
48022003-01-22 Jason Rumney <jasonr@gnu.org>
4803
4804 Sync changes with xterm.c and xfns.c.
4805
4806 * w32term.c (x_draw_glyph_string_foreground)
4807 (x_draw_composite_glyph_string_foreground): Implement overstriking.
4808
4809 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
4810 phys_cursor's hpos is overwritten. This is still not completely
4811 correct, as it doesn't really make sense to use hpos at all to
4812 get the cursor glyph (as that is relative to the width of the
4813 characters on the line, which may have changed during the update).
4814
4815 * w32term.c (notice_overwritten_cursor): Handle the special case
4816 of the cursor being in the first blank non-text line at the
4817 end of a window.
4818
4819 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
4820 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
4821 Compute from the x position returned by x_draw_glyphs.
4822
4823 (x_display_and_set_cursor): Don't set phys_cursor_width here,
4824 except for NO_CURSOR and system caret, to make phys_cursor_width
4825 contain what its name suggests.
4826 (notice_overwritten_cursor): Consider the cursor image erased if
4827 the output area intersects the cursor image in y-direction.
4828
6a097c0c
SM
4829 * w32term.c (note_mode_line_or_margin_highlight): Rename from
4830 note_mode_line_highlight and extend.
a18bb28d
JR
4831
4832 * w32term.c (last_window): New variable.
4833 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
4834 (note_mouse_movement): Remove reimplemented code in #if 0.
4835
4836 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
4837 not update_mode_lines, and always set it to 1.
4838
ac6e47ef
JR
48392003-01-21 Jason Rumney <jasonr@gnu.org>
4840
4841 * w32fns.c (IDC_HAND): Define it if system headers don't.
4842
48432003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
4844
4845 * w32term.h (struct w32_output): New member hand_cursor.
4846 (WM_EMACS_SETCURSOR): New message definition.
4847
4848 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
4849 function w32_define_cursor.
4850 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
4851 position, change member name output_data.x to output_data.w32 and
4852 add function w32_define_cursor.
4853 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
4854 and change member name output_data.x to output_data.w32.
e52bd6b7
SM
4855 (w32_initialize_display_info):
4856 Setup dpyinfo->vertical_scroll_bar_cursor.
ac6e47ef
JR
4857
4858 * w32fns.c (Vx_hand_shape): New variable.
4859 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
4860 WM_EMACS_SETCURSOR.
4861 (x-create-frame): Setup Cursor types.
4862
ceb39a17
JB
48632003-01-21 David Ponce <david@dponce.com>
4864
ac6e47ef
JR
4865 * w32term.c (w32_encode_char): For DIM=1 charset, set
4866 ccl->reg[2] to -1 before calling ccl_driver. (Sync. with xterm.c
4867 x_encode_char change by Kenichi Handa <handa@m17n.org> on
ceb39a17 4868 2002-09-30.)
ac6e47ef
JR
4869 (w32_draw_relief_rect): Declare all args.
4870 (w32_define_cursor): New.
4871
4872 * w32fns.c (w32_load_cursor): New function.
4873 (w32_init_class): Use it.
4874 (x_put_x_image): Declare all args.
4875
46cf0bed
JB
48762003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
4877
4878 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
4879
a97e4138 48802003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e8794476
JD
4881
4882 * gtkutil.c: Must include stdio.h before termhooks.h
4883
83fc9c63
DL
48842003-01-21 Dave Love <fx@gnu.org>
4885
4886 * alloc.c (Fgc_status): Print zombie list.
4887 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
4888 Fix assignment of zombies.
4889 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
4890 Don't take car of non-cons.
4891
4892 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
4893
4894 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
4895
fe04b8c8
JR
48962003-01-20 David Ponce <david@dponce.com>
4897
4898 * w32menu.c (digest_single_submenu): Declare all args.
4899
4900 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
4901 changes in xmenu.c:
4902
4903 (parse_single_submenu): Use individual keymap's prompt
4904 string as pane name, if there is one.
4905 (set_frame_menubar): Save menu_items_n_panes from each call to
4906 parse_single_submenu and use it when calling digest_single_submenu.
4907
539e69a9
ST
49082003-01-20 Steven Tamm <steventamm@mac.com>
4909
4910 * macterm.c (XTread_socket): Checks for valid, visible window
4911 before sending a scroll-wheel event.
4912
675d000f
RS
49132003-01-20 Richard M. Stallman <rms@gnu.org>
4914
4915 * xdisp.c (redisplay_window): If mini window's buffer is not
4916 a minibuffer, then redisplay it like other windows.
4917
a97e4138 49182003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
22174d10
JD
4919
4920 * gtkutil.c (xg_create_frame_widgets): Check if there is an
4921 external tool bar before setting tool bar height.
4922
048addec
JD
49232003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4924
4925 * xterm.c (handle_one_xevent): Surround popup_activated
4926 with #ifdef:s for non-toolkit version.
4927
4928 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
4929 (gtkutil.o): New file.
4930 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
4931 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
4932
4933 * gtkutil.c: New file for GTK version.
4934
4935 * gtkutil.h: New file for GTK version.
4936
4937 * xterm.h: Add xt_or_gtk_widget.
4938 Include gtk files for USE_GTK.
4939 (struct x_output): Add toolbar_height.
4940 (struct x_output): Add GTK widgets and Gdk size_hints.
4941 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
4942 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
4943 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
4944
4945 * xterm.c: Include gtkutil.h for USE_GTK.
4946 Declare extern void free_frame_menubar for USE_GTK.
4947 (note_mouse_highlight): Check popup_activated for USE_GTK.
4948 (xt_action_hook): Don't compile if USE_GTK.
4949 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
4950 (xg_scroll_callback): New function.
4951 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
4952 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
4953 for USE_GTK.
4954 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
4955 xg_show_scroll_bar for USE_GTK.
4956 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
4957 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
4958 (event_handler_gdk): New function for USE_GTK.
4959 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
4960 (handle_one_xevent): Make sure widget is mapped before
4961 calling x_real_positions for USE_GTK.
4962 (XTread_socket): Add GTK event loop for USE_GTK.
4963 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
4964 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
4965 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
4966 (x_iconify_frame): Add code for USE_GTK.
4967 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
4968 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
4969 is in gtkutil.c.
4970 (x_term_init): Add initialization for GTK.
4971 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
4972
4973 * xmenu.c: Include gtkutil.h for USE_GTK.
4974 (Fx_popup_menu): Use current position if x and y is NIL.
6bdb309a
SM
4975 (single_menu_item, single_menu_item, Fx_popup_dialog):
4976 Check for USE_GTK.
048addec
JD
4977 (popup_widget_loop): New function for USE_GTK.
4978 (x_activate_menubar): Add code for USE_GTK.
4979 (popup_activate_callback, popup_deactivate_callback)
6bdb309a
SM
4980 (menu_highlight_callback, menubar_selection_callback):
4981 Add USE_GTK versions.
048addec
JD
4982 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
4983 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
4984 (free_frame_menubar): Only compile if not USE_GTK. GTK version
4985 is in gtkutil.c.
4986 (popup_selection_callback): New version for USE_GTK.
4987 (create_and_show_popup_menu): New fuction, one USE_GTK version and
6bdb309a 4988 one USE_X_TOOLKIT version.
048addec
JD
4989 (xmenu_show): Call create_and_show_popup_menu.
4990 (dialog_selection_callback): New version for USE_GTK.
4991 (create_and_show_dialog): New fuction, one USE_GTK version and
6bdb309a 4992 one USE_X_TOOLKIT version.
048addec
JD
4993 (xdialog_show): Call create_and_show_dialog.
4994
4995 * xfns.c: Include gtkutil for USE_GTK.
4996 (x_window_to_frame, x_any_window_to_frame)
4997 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
4998 (x_top_window_to_frame): Add code for USE_GTK.
4999 (x_set_background_color): Call xg_set_background_color for GTK.
5000 (x_set_menu_bar_lines): Check for USE_GTK.
5001 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
5002 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
5003 (x_window): Call xg_create_frame_widgets for USE_GTK.
5004 (Fx_create_frame): Check for USE_GTK
5005 (Fx_file_dialog): New implementation for USE_GTK.
5006
5007 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
5008 (update_menu_bar): Add check for USE_GTK.
5009 (update_tool_bar): Add check for USE_GTK and external tool bar.
5010 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
5011 (redisplay_internal): Add check for USE_GTK and popup_activated.
5012 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
5013 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
5014 (display_menu_bar): Add check for USE_GTK
5015
5016 * lisp.h: Declare Vx_resource_name extern.
5017
5018 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
5019 for USE_GTK.
5020 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
5021
5022 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
5023 (FRAME_EXTERNAL_TOOL_BAR): New macro.
5024 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
5025
5026 * fileio.c (Fread_file_name): Add check for USE_GTK.
5027
6bdb309a
SM
5028 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
5029 Add check for USE_GTK.
048addec
JD
5030
5031 * config.in: Added HAVE_GTK
5032
5033 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
5034
50352003-01-18 Stefan Monnier <monnier@cs.yale.edu>
5036
5037 * charset.h (Funibyte_char_to_multibyte): Export.
5038
50392003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5040
5041 * xmenu.c (mouse_position_for_popup): New function.
5042 (Fx_popup_menu): Call mouse_position_for_popup for X and
5043 mouse_position_hook for others.
5044
50452003-01-17 Kim F. Storm <storm@cua.dk>
5046
5047 * editfns.c (Finsert): Mention `string-make-multibyte' and
5048 `string-as-multibyte' in doc string.
5049
50502003-01-17 Kenichi Handa <handa@m17n.org>
5051
5052 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
3c02a6f5 5053
048addec
JD
5054 * editfns.c (Fformat): Convert an unibyte char argument that is
5055 formatted by "%c" to multibyte if the total result must be a
5056 multibyte string.
cd7df9c0 5057
048addec 50582003-01-16 Kim F. Storm <storm@cua.dk>
cd7df9c0 5059
048addec
JD
5060 * process.c (set-process-filter): Document unibyte/multibyte-ness
5061 of string argument.
56210ecd 5062
048addec 50632003-01-16 Kenichi Handa <handa@m17n.org>
56210ecd 5064
048addec 5065 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
56210ecd 5066
048addec
JD
5067 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
5068 (re_search_2): Likewise.
6df8b9fe 5069
048addec 50702003-01-15 Kenichi Handa <handa@m17n.org>
6df8b9fe 5071
048addec
JD
5072 * xdisp.c (message_dolog): Fix bug of the case that *Message*
5073 buffer is unibyte.
292ddc31 5074
048addec 50752003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
292ddc31 5076
048addec 5077 * fns.c (Fsubstring): Clarify doc string.
292ddc31 5078
048addec
JD
5079 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
5080 (Fprevious_char_property_change)
5081 (Fnext_single_char_property_change)
5082 (Fprevious_single_char_property_change, Fnext_property_change)
5083 (Fnext_single_property_change, Fprevious_property_change)
5084 (Fprevious_single_property_change, Fadd_text_properties)
5085 (Fput_text_property, Fset_text_properties)
5086 (Fremove_text_properties, Fremove_list_of_text_properties)
5087 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
63e4e4c6 5088
048addec 50892003-01-14 Kim F. Storm <storm@cua.dk>
63e4e4c6 5090
048addec
JD
5091 * process.h (struct Lisp_Process): New member plist replaces old
5092 member private_vars. All uses changed.
63e4e4c6 5093
048addec 5094 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
6bdb309a 5095 (QCplist): Rename from QCvars. Change all uses.
048addec 5096 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
6bdb309a 5097 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
048addec 5098 (syms_of_process): Intern, staticpro, defsubr these.
6bdb309a 5099 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
7ed16567 5100
048addec 51012003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
7ed16567 5102
6bdb309a 5103 * m/delta.h: Remove (obsolete).
e833850f 5104
048addec 51052003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
e833850f 5106
048addec
JD
5107 * fileio.c (Fdelete_directory, Fdelete_file): Document the
5108 behaviour in front of symlinks.
5109 (Fdelete_file): Raise an error on directories.
817cb127 5110
048addec 51112003-01-13 Dave Love <fx@gnu.org>
817cb127 5112
048addec 5113 * fns.c (Freverse): Use QUIT.
3e8cf2ea 5114
048addec 51152003-01-13 Richard M. Stallman <rms@gnu.org>
3e8cf2ea 5116
048addec
JD
5117 * minibuf.c (minibuffer_completion_contents):
5118 Error if point is inside prompt.
3e8cf2ea 5119
048addec
JD
5120 * keyboard.c (command_loop_1): Don't redisplay directly
5121 if there's a post-command-hook.
3e8cf2ea 5122
048addec
JD
5123 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
5124 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
2c10f029 5125
048addec 51262003-01-12 Kim F. Storm <storm@cua.dk>
94e8ffca 5127
048addec 5128 * process.h (struct Lisp_Process): New member private_vars.
94e8ffca 5129
048addec
JD
5130 * process.c (QCvars): New variable.
5131 (syms_of_process): Intern and staticpro it.
5132 (Fset_process_contact): Removed function.
5133 (Fprocess_variable, Fset_process_variable): New functions.
5134 (syms_of_process): Defsubr them.
5135 (Fstart_process): Initialize private_vars plist to nil.
5136 (Fmake_network_process): New arg :vars to setup the private
5137 variables for new network process.
5138 (server_accept_connection): Copy server's private variables to
5139 client process.
2c10f029 5140
048addec
JD
5141 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
5142 crashes). Code rewritten and simplified. Now directly aligns the
5143 pointer and recalculates pure_bytes_used, rather than aligning the
5144 size and adjusting the pointer.
b8a76c6c 5145
048addec 51462003-01-11 Kim F. Storm <storm@cua.dk>
b8a76c6c 5147
048addec
JD
5148 * process.c (Fset_process_contact): New function.
5149 (syms_of_process): defsubr it.
5150 (make-network-process): Update doc.
3a8d0899 5151
048addec 51522003-01-10 Andreas Schwab <schwab@suse.de>
3a8d0899 5153
048addec
JD
5154 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
5155 Reported by Berthold Gunreben <b.gunreben@web.de>.
4abc7470 5156
048addec 51572003-01-10 Dave Love <fx@gnu.org>
4abc7470 5158
048addec 5159 * composite.c (syms_of_composite): Make composition_hash_table weak.
b809d662 5160
048addec 51612003-01-09 Kim F. Storm <storm@cua.dk>
b809d662 5162
048addec
JD
5163 * process.c (Fmake_network_process): Convert new port number
5164 to host byte order for `:service t' case. From Mario Lang.
bf338245 5165
048addec 51662003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
bf338245 5167
048addec
JD
5168 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
5169 instead of XtAppProcessEvent.
bf338245 5170
048addec
JD
5171 * xterm.c (handle_one_xevent): New function.
5172 (x_dispatch_event): New function.
5173 (XTread_socket): Call handle_one_xevent.
bf338245 5174
048addec 5175 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
e833850f 5176
048addec
JD
5177 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
5178 call XQueryPointer to get coordinates.
5179 (popup_get_selection): Do not set popup_activated_flag to zero,
5180 let popup_deactivate_callback do that. Needed for Motif.
5181 Call x_dispatch_event instead of XtDispatchEvent.
5182 (xmenu_show): Calculate root coordinate from frame top/left position.
c4af2bce 5183
048addec 51842003-01-08 Kim F. Storm <storm@cua.dk>
c4af2bce 5185
6bdb309a 5186 * process.c (server_accept_connection): Fix recording of new
048addec
JD
5187 connection's local address in :local property of contact info.
5188 (Fmake_network_process): Record local network address for new
5189 client processes in :local property of contact info.
6bdb309a 5190 (format-network-address): Add arg OMIT-PORT. Change callers.
00e3ab56 5191
048addec 51922003-01-07 Dave Love <fx@gnu.org>
00e3ab56 5193
048addec 5194 * Makefile.in (fns.o): Depend on coding.h.
f387e1fd 5195
048addec 51962003-01-07 Markus Rost <rost@math.ohio-state.edu>
f387e1fd 5197
048addec 5198 * minibuf.c (Fread_variable): Doc fix.
f387e1fd 5199
048addec
JD
5200 * eval.c (Fuser_variable_p): Doc change. For custom variables,
5201 use the same test as for custom-variable-p.
8c6d74c6 5202
048addec 52032003-01-05 Richard M. Stallman <rms@gnu.org>
e833850f 5204
048addec
JD
5205 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
5206 Count LAST_LINE_MISFIT in scroll margin for end of window.
5207 Move label too_near_end before setting SCROLL_MARGIN_POS.
5208 Set LAST_LINE_MISFIT before jumping there.
8c6d74c6 5209
048addec
JD
5210 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
5211 scroll_conservatively case. If scrolling that much doesn't change
5212 STARTP, move it down one line.
e833850f 5213
048addec
JD
5214 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
5215 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
8c6d74c6 5216
048addec
JD
5217 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
5218 selected frame.
8c6d74c6 5219
048addec
JD
5220 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
5221 (syms_of_keymap): staticpro them.
5222 (Fapropos_internal): Initialize them and clear them out.
5223 Don't GCPRO them.
8c6d74c6 5224
048addec
JD
5225 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
5226 Doc fixes.
8c6d74c6 5227
048addec
JD
5228 * lisp.h: New misc type Lisp_Save_Value.
5229 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
5230 (XSAVE_VALUE): New macro.
5231 (struct Lisp_Save_Value): New data type.
5232 (union Lisp_Misc): Add u_save_value alternative.
5233 (make_save_value): Declared.
8c6d74c6 5234
048addec 5235 * alloc.c (make_save_value): New function.
8c6d74c6 5236
048addec
JD
5237 * xterm.c (x_catch_errors): Save dpy using make_save_value.
5238 (x_catch_errors_unwind): Call XSync.
8c6d74c6 5239
048addec 52402003-01-01 Richard M. Stallman <rms@gnu.org>
8c6d74c6 5241
048addec 5242 * window.c (window_scroll_pixel_based): Partially undo last change.
8c6d74c6 5243
048addec
JD
5244 * keyboard.c (command_loop_1): Call adjust_point_for_property
5245 in direct action cases for Qforward_char and Qbackward_char.
5246 Set already_adjusted so it won't be done twice.
8c6d74c6 5247
048addec 52482002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
8c6d74c6 5249
048addec
JD
5250 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
5251 type definition of size_t.
8c609cff 5252
048addec 52532003-01-02 Steven Tamm <steventamm@mac.com>
8c609cff 5254
048addec
JD
5255 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
5256 distinguish Carbon GUI builds from X11 builds on darwin.
b37113a1 5257
048addec 52582002-12-30 Steven Tamm <steventamm@mac.com>
b37113a1 5259
048addec
JD
5260 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
5261 to default to t.
fa634a5e 5262
048addec 52632002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
fa634a5e 5264
048addec 5265 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
ce0669d4 5266
048addec 52672002-12-28 Steven Tamm <steventamm@mac.com>
ce0669d4 5268
048addec
JD
5269 * Makefile.in (macosx-bundle): Fixes to Mac OS X/Carbon port to
5270 allow building in a different directory than source. Uses some
5271 GNU Make extensions, but there is no other make on Mac OS X.
2308af15 5272
048addec 52732002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
2308af15 5274
048addec
JD
5275 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
5276 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
5277 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
5278 (Fstring_to_number): Mention the returned value in the doc strings.
2155ecf3 5279
048addec 52802002-12-23 Richard M. Stallman <rms@gnu.org>
2155ecf3 5281
048addec
JD
5282 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
5283 <scroll-down-aggressively>: Doc fix.
2155ecf3 5284
048addec
JD
5285 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
5286 string as pane name, if there is one.
5287 (set_frame_menubar): Save menu_items_n_panes from each call to
5288 parse_single_submenu and use it when calling digest_single_submenu.
2155ecf3 5289
048addec
JD
5290 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
5291 Don't try to make last line fully visible if it is past end of window.
61f1d295 5292
048addec 52932002-12-22 Steven Tamm <steventamm@mac.com>
61f1d295 5294
048addec
JD
5295 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
5296 (mac_menu_show): Add support for hierarchical popup menus.
5297 (add_menu_item): Remove indentation support.
5298 (fill_submenu, fill_menu): Create hierarchical menus
5299 instead of using indentation.
0b17a217 5300
048addec 53012002-12-22 Richard M. Stallman <rms@gnu.org>
0b17a217 5302
048addec
JD
5303 * xdisp.c (try_cursor_movement): Don't call try_window here.
5304 (redisplay_window): Never redisplay minibuffer when inactive.
0b17a217 5305
048addec 5306 * window.c (select_window_1): Undo 9/21 change.
402e4f8b 5307
048addec 53082002-12-22 Steven Tamm <steventamm@mac.com>
402e4f8b 5309
048addec
JD
5310 * macterm.c (XTread_socket): Call KeyTranslate for control and
5311 meta to deal correctly shifted non-alpha characters, like C-S-5
5312 being treated like C-%. Does not look for shift key to deal
5313 with masking off control-key with mac-reverse-ctrl-meta.
f02cac82 5314
048addec 53152002-12-21 Richard M. Stallman <rms@gnu.org>
f02cac82 5316
048addec
JD
5317 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
5318 If it is non-nil, run timers. Use an unwind-protect to requeue
5319 the events that were read ahead.
5320 (popup_get_selection_unwind): New subroutine.
5321 (popup_get_selection_queue): File-scope variable now holds that queue.
5322 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
5323 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
5324 Use an unwind-protect to pop down the dialog box.
5325 (xdialog_show_unwind): New subroutine implements that.
f02cac82 5326
048addec
JD
5327 * xdisp.c (row_containing_pos): Change exit test using last_y.
5328 (try_window_id): Abort if row_containing_pos returns null.
f02cac82 5329
048addec
JD
5330 * lread.c (load_error_handler): New function.
5331 (Fload): Handle errors in Fsubstitute_in_file_name.
5332 Don't expect Fsignal to return.
f02cac82 5333
048addec
JD
5334 * eval.c: Errors and throws work right with interrupt blocking.
5335 (struct catchtag): New elt interrupt_input_blocked.
5336 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
5337 (internal_catch, Fcondition_case, internal_condition_case)
5338 (internal_condition_case_1, internal_condition_case_2): Save it.
5339 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
f02cac82 5340
048addec 5341 * editfns.c (Fformat): Add parens.
f02cac82 5342
048addec
JD
5343 * dired.c (file_name_completion): Fix that change.
5344 Delete special quit-handling code; just use QUIT.
f02cac82 5345
048addec 53462002-12-21 Tak Ota <Takaaki.Ota@am.sony.com> (tiny change)
f02cac82 5347
048addec
JD
5348 * dired.c (file_name_completion): Close directory on error
5349 just as in directory_files_internal.
1a590729 5350
048addec 53512002-12-19 David Kastrup <David.Kastrup@t-online.de>
1a590729 5352
048addec
JD
5353 * window.c (Fset_window_configuration): Set old_point to correct
5354 value when new_current_buffer == current_buffer.
f02cac82 5355
048addec 53562002-12-17 Ben Key <bkey1@tampabay.rr.com>
2308af15 5357
048addec
JD
5358 Revisited my earlier fix for the following entry in etc/PROBLEMS:
5359 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
5360 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
9785d95b 5361
048addec
JD
5362 These changes were in part based upon suggestions made by Peter
5363 'Luna' Runestig [peter@runestig.com].
9785d95b 5364
048addec
JD
5365 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token,
5366 g_b_init_get_token_information, g_b_init_lookup_account_sid,
6bdb309a 5367 g_b_init_get_sid_identifier_authority ): Add several static
048addec 5368 global variables.
9785d95b 5369
048addec
JD
5370 * w32.c (globals_of_w32): New function. Used to initialize those
5371 global variables that must always be initialized on startup even
5372 when the global variable initialized is non zero. Its primary
5373 purpose at this time is to set the global variables
5374 g_b_init_is_windows_9x, g_b_init_open_process_token,
5375 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
5376 g_b_init_get_sid_identifier_authority to 0 on startup.
5377 Called from main.
9785d95b 5378
048addec
JD
5379 * w32.c (is_windows_9x): Perform initialization only if
5380 g_b_init_is_windows_9x is equal to 0. On initialization set
5381 g_b_init_is_windows_9x equal to 1.
2308af15 5382
048addec
JD
5383 * w32.c (open_process_token): Perform initialization only if
5384 g_b_init_open_process_token is equal to 0. On initialization set
5385 g_b_init_open_process_token equal to 1.
2308af15 5386
048addec
JD
5387 * w32.c (get_token_information): Perform initialization only if
5388 g_b_init_get_token_information is equal to 0. On initialization
5389 set g_b_init_get_token_information equal to 1.
9785d95b 5390
048addec
JD
5391 * w32.c (lookup_account_sid): Perform initialization only if
5392 g_b_init_lookup_account_sid is equal to 0. On initialization
5393 set g_b_init_lookup_account_sid equal to 1.
9785d95b 5394
048addec
JD
5395 * w32.c (get_sid_identifier_authority): Perform initialization
5396 only if g_b_init_get_sid_identifier_authority is equal to 0.
5397 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
9785d95b 5398
048addec
JD
5399 * w32fns.c (globals_of_w32fns): New function. Used to initialize
5400 those global variables that must always be initialized on startup
5401 even when the global variable initialized is non zero.
5402 Its primary purpose at this time is to initialize the global variable
5403 track_mouse_event_fn.
9785d95b 5404
048addec
JD
5405 * w32fns.c (w32_wnd_proc): Remove initialization of
5406 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
9785d95b 5407
048addec 5408 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
9785d95b 5409
048addec
JD
5410 * w32menu.c (globals_of_w32menu): New function. Used to
5411 initialize those global variables that must always be initialized
5412 on startup even when the global variable initialized is non zero.
5413 Its primary purpose at this time is to initialize the global
5414 variables get_menu_item_info and set_menu_item_info.
9785d95b 5415
048addec
JD
5416 * w32menu.c (initialize_frame_menubar): Remove initialization of
5417 get_menu_item_info and set_menu_item_info.
9785d95b 5418
048addec 5419 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
9785d95b 5420
048addec
JD
5421 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
5422 Declare them.
9785d95b 5423
048addec
JD
5424 * emacs.c (main): Call globals_of_w32 prior to calling
5425 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
5426 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
5427 is defined.
9785d95b 5428
048addec
JD
5429 * w32term.c (x_update_window_begin): Fix Windows API error
5430 detected by BoundsChecker. Test to determine if
5431 w32_system_caret_hwnd is NULL prior to attempting to use
5432 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
2308af15 5433
048addec
JD
5434 * w32term.c (x_update_window_end): Fix Windows API error
5435 detected by BoundsChecker. Test to determine if
5436 w32_system_caret_hwnd is NULL prior to attempting to use
5437 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
b6da19ef 5438
048addec 54392002-12-17 Kenichi Handa <handa@m17n.org>
b6da19ef 5440
048addec
JD
5441 * coding.c (coding_system_require_warning): New variable.
5442 (syms_of_coding): DEFVAR it.
b6da19ef 5443
048addec 5444 * coding.h (coding_system_require_warning): Extern it.
b6da19ef 5445
048addec
JD
5446 * fileio.c (choose_write_coding_system): Even if
5447 Vcoding_system_for_write is non-nil, if
5448 coding_system_require_warning is nonzero, call
5449 Vselect_safe_coding_system_function.
bfcf6dbe 5450
048addec 54512002-12-17 Markus Rost <rost@math.ohio-state.edu>
bfcf6dbe 5452
048addec
JD
5453 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
5454 (lisp): Add font-core.
2c568af5 5455
048addec 54562002-12-13 Stefan Monnier <monnier@cs.yale.edu>
2c568af5 5457
048addec
JD
5458 * textprop.c (text_read_only): New arg `propval'.
5459 (get_char_property_and_overlay): Remove unused var `next_overlay'.
5460 (verify_interval_modification): Use text_read_only's new arg.
b8c6225c 5461
048addec 54622002-12-13 Kenichi Handa <handa@m17n.org>
b8c6225c 5463
048addec 5464 * coding.c (Funencodable_char_position): Set pend correctly.
706ddb8f 5465
048addec 54662002-12-12 Jason Rumney <jasonr@gnu.org>
706ddb8f 5467
048addec
JD
5468 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
5469 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
5470 Be more careful about when help_events are generated.
96720f09 5471
048addec 54722002-12-12 Steven Tamm <steventamm@mac.com>
96720f09 5473
048addec
JD
5474 * macterm.c (mac_check_for_quit_char): Correctly set the
5475 modifiers of the event to 0.
5476 * mac.c (sys_select): Duplicate rfds before calling select to
5477 ensure that rfds survive the while loop.
e5ae1c49 5478
048addec 54792002-12-11 Kim F. Storm <storm@cua.dk>
e5ae1c49 5480
048addec
JD
5481 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
5482 row_containing_pos returned NULL.
2eb46b2d 5483
048addec 54842002-12-10 Steven Tamm <steventamm@mac.com>
2eb46b2d 5485
6bdb309a 5486 * mac.c (sys_read): Fix sys_read to not call select if IO is
048addec 5487 non-blocking.
6bdb309a 5488 (sys_select): Fix sys_select to not use a timeout larger than
048addec 5489 the one given.
b11f1d8a 5490
048addec 54912002-12-10 Juanma Barranquero <lektu@terra.es>
b11f1d8a 5492
048addec 5493 * editfns.c (Fformat): Use alloca, not _alloca.
d8528226 5494
048addec 54952002-12-09 Richard M. Stallman <rms@gnu.org>
d8528226 5496
048addec
JD
5497 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
5498 as the last thing.
a4ac5b17 5499
048addec 55002002-12-09 Dave Love <fx@gnu.org>
a4ac5b17 5501
048addec 5502 * s/sol2-8.h: Removed. (Not necessary.)
ac42d7b9 5503
048addec 55042002-12-09 Matthew Swift <swift@alum.mit.edu>
ac42d7b9 5505
048addec
JD
5506 * editfns.c (Fformat): Handle precision in string conversion
5507 specifiers like libc functions do (ie, print at most that many
5508 characters).
85cce843 5509
048addec 55102002-12-08 Richard M. Stallman <rms@gnu.org>
85cce843 5511
048addec
JD
5512 * xdisp.c (row_containing_pos): Check more carefully
5513 whether charpos is really in the row before returning it.
0d4d26a7 5514
048addec 55152002-12-07 Steven Tamm <steventamm@mac.com>
0d4d26a7 5516
048addec 5517 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
b11f1d8a 5518
048addec
JD
5519 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
5520 each stack frame. This may change as it could be time consuming.
0d4d26a7 5521
048addec
JD
5522 * macterm.c (mac_check_for_quit_char, quit_char_comp)
5523 (init_quit_char_handler, mac_determine_quit_char_modifiers)
6bdb309a 5524 (mac_initialize): Add code to check for pressing of quit_char
048addec 5525 in the OS event queue.
b11f1d8a 5526
048addec
JD
5527 * mac.c (sys_select): Call mac_check_for_quit_char every second
5528 while blocking on select.
0d4d26a7 5529
048addec
JD
5530 * mac.c (sys_read): Use sys_select to test for input first
5531 before calling read, to allow C-g to break.
9252f7bc 5532
048addec 55332002-12-07 Richard M. Stallman <rms@gnu.org>
9252f7bc 5534
048addec 5535 * minibuf.c (Fcompleting_read): Doc fix.
9252f7bc 5536
048addec 5537 * lread.c (syms_of_lread) <load-history>: Doc fix.
9252f7bc 5538
048addec 5539 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
9252f7bc 5540
048addec
JD
5541 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
5542 autoload.
9252f7bc 5543
048addec 5544 * data.c (Fdefalias): Record in load-history redefining an autoload.
9252f7bc 5545
048addec 5546 * alloca.c: Undo ifdef change accidentally made on 12-04.
bfa261c0 5547
048addec 55482002-12-06 Francesco Potorti` <pot@gnu.org>
bfa261c0 5549
048addec 5550 * xfns.c (png_load): Avoid double gamma correction for PNG images.
c5992177 5551
048addec 55522002-12-04 Richard M. Stallman <rms@gnu.org>
c5992177 5553
048addec 5554 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 5555
048addec 5556 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 5557
048addec 5558 * alloca.c: Don't use #error.
02d588e2 5559
048addec 55602002-12-03 Dave Love <fx@gnu.org>
02d588e2 5561
048addec
JD
5562 * buffer.c (Qucs_set_table_for_input): New.
5563 (Fget_buffer_create): Use it.
5564 (Qset_buffer_major_mode_hook): Deleted.
5565 (Fset_buffer_major_mode): Revert previous change.
5566 (init_buffer_once): Intern ucs-set-table-for-input.
5567 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
5568 Add &Qucs_set_table_for_input.
451e2697 5569
048addec 55702002-12-03 Andreas Schwab <schwab@suse.de>
451e2697 5571
048addec
JD
5572 * callint.c (Fcall_interactively): Use next_event only if less
5573 than key_count.
72742a99 5574
048addec 55752002-12-02 Andrew Choi <akochoi@shaw.ca>
72742a99 5576
048addec
JD
5577 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
5578 names to 255 characters.
72742a99 5579
048addec
JD
5580 * macterm.c (XTread_socket): If all frames have been collapsed,
5581 expand the first one before handling drag-and-drop events.
72742a99 5582
048addec
JD
5583 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
5584 which is detected by autoconf.
40e6ff95 5585
048addec 55862002-12-01 Steven Tamm <steventamm@mac.com>
40e6ff95 5587
048addec
JD
5588 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
5589 offset in two hints table to allow prebinding to be redone and
5590 allow the executable to be stripped.
c02138c6 5591
048addec 55922002-11-29 Dave Love <fx@gnu.org>
c02138c6 5593
048addec
JD
5594 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
5595 already provided.
0e47bbf7 5596
048addec 55972002-11-29 Richard M. Stallman <rms@gnu.org>
0e47bbf7 5598
048addec
JD
5599 * xdisp.c (start_display): Check more intelligently for
5600 whether the line is continued.
5601 (move_it_vertically_backward): Clear it->continuation_lines_width.
44129dcb 5602
048addec 56032002-11-28 Dave Love <fx@gnu.org>
44129dcb 5604
048addec
JD
5605 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
5606 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
f707342d 5607
048addec 56082002-11-27 Steven Tamm <steventamm@mac.com>
f707342d 5609
048addec
JD
5610 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
5611 more descriptive error output from lread.c:Fload upon most require
5612 cycles during boostrapping.
1637fd2c 5613
048addec 56142002-11-27 Jason Rumney <jasonr@gnu.org>
1637fd2c 5615
048addec
JD
5616 * fileio.c (Finsert_file_contents): Give a more appropriate error
5617 for files bigger than 2Gb when off_t is 32 bit.
1637fd2c 5618
048addec
JD
5619 * dired.c (Ffile_attributes): Don't return negative file sizes for
5620 files bigger than 2Gb when off_t is 32 bit.
540c2788 5621
048addec 56222002-11-27 Dave Love <fx@gnu.org>
6b2fd6ea 5623
048addec 5624 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
6b2fd6ea 5625
048addec
JD
5626 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
5627 Test GETPGRP_VOID instead.
5628 [BSD_TERMIOS]: Remove definitions (never used).
6b2fd6ea 5629
048addec
JD
5630 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
5631 Don't define.
5632 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
540c2788 5633
048addec 5634 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
8cc03716 5635
048addec 56362002-11-25 Jason Rumney <jasonr@gnu.org>
8cc03716 5637
048addec
JD
5638 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
5639 supported.
4042a81a 5640
048addec 56412002-11-25 Dave Love <fx@gnu.org>
4042a81a 5642
048addec 5643 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
4042a81a 5644
048addec 5645 * Makefile.in (TEMACS_LDFLAGS): Update last change.
be4ee72f 5646
048addec 56472002-11-25 Andreas Schwab <schwab@suse.de>
be4ee72f 5648
048addec 5649 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
82122254 5650
048addec 56512002-11-24 Steven Tamm <steventamm@mac.com>
82122254 5652
048addec
JD
5653 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
5654 determine the size of pointers alloced in unexed space instead
5655 of using possibly invalid emacs_zone pointers. This fixes the
5656 binary incompatibility problems caused by updates to libSystem.B.
c1ee53bc 5657
048addec 56582002-11-24 Richard M. Stallman <rms@gnu.org>
c1ee53bc 5659
048addec 5660 * search.c (Fstring_match): Doc fix.
c1ee53bc 5661
048addec
JD
5662 * callint.c (Fcall_interactively): If a command fails because
5663 `*' detects a read-only buffer, but RECORD_FLAG is set,
5664 record it anyway if the args don't actually do tty input.
5598c32e 5665
048addec 56662002-11-22 Dave Love <fx@gnu.org>
5598c32e 5667
048addec 5668 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
5598c32e 5669
048addec
JD
5670 * keyboard.c (interrupt_signal): Provide forward declaration.
5671 (kbd_buffer_store_event): Don't declare interrupt_signal.
5598c32e 5672
048addec 5673 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
97b14e22 5674
048addec 56752002-11-21 Richard M. Stallman <rms@gnu.org>
97b14e22 5676
048addec
JD
5677 * eval.c (interactive_p): Skip any number of bytecode
5678 and special form frames, in any order.
516eea8e 5679
048addec 56802002-11-20 Jason Rumney <jasonr@gnu.org>
516eea8e 5681
048addec
JD
5682 * w32fns.c (convert_mono_to_color_image): New function.
5683 (xbm_load, xbm_load_image): Use it when foreground or background
5684 is explicitly set.
04dbfa08 5685
048addec 56862002-11-19 Dave Love <fx@gnu.org>
04dbfa08 5687
048addec 5688 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
b4aebae3 5689
048addec 56902002-11-18 Jason Rumney <jasonr@gnu.org>
b4aebae3 5691
048addec
JD
5692 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
5693 (XPutPixel): Swap blue and red.
5694 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
5695 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
5696 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
5697 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
1998560a 5698
048addec 56992002-11-18 Dave Love <fx@gnu.org>
d824beee 5700
048addec 5701 * m/orion105.h (HAVE_ALLOCA): Don't define.
d824beee 5702
048addec 5703 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
d824beee 5704
048addec 5705 * m/intel386.h: Don't include alloca.h or define alloca.
d824beee 5706
048addec
JD
5707 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
5708 malloc, realloc, calloc.
d824beee 5709
048addec
JD
5710 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
5711 (bcmp): Don't define.
d824beee 5712
048addec 5713 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
d824beee 5714
048addec 5715 * m/amdahl.h: Don't define LIB_STANDARD.
d824beee 5716
048addec 5717 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
d824beee 5718
048addec 5719 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
d824beee 5720
048addec
JD
5721 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
5722 Don't include alloca.h.
d824beee 5723
048addec 5724 * s/aix3-2.h (HAVE_FSYNC): Don't define.
1998560a 5725
048addec 5726 * regex.c (_GNU_SOURCE): Don't define.
1998560a 5727
048addec 5728 * process.c (_GNU_SOURCE): Don't define.
1998560a 5729
048addec 5730 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
8704a6ab 5731
048addec 57322002-11-18 Markus Rost <rost@math.ohio-state.edu>
8704a6ab 5733
048addec 5734 * s/sol2-8.h: Include sol2-6.h.
6ae2cd57 5735
048addec 57362002-11-18 Miles Bader <miles@gnu.org>
6ae2cd57 5737
048addec
JD
5738 * dispextern.h (struct face): Add `overstrike' field.
5739 * xterm.c (x_draw_glyph_string_foreground)
5740 (x_draw_composite_glyph_string_foreground): Implement overstriking.
5741 * xfaces.c (load_face_font): Set `face->overstrike' based on
5742 result from choose_face_font.
5743 (best_matching_font, choose_face_font): Add `needs_overstrike'
5744 argument, and use it to return whether overstriking is desirable
5745 for this face/font combo.
5746 (set_font_frame_param: Pass new argument to choose_face_font.
6ae2cd57 5747
048addec 57482002-11-17 Ben Key <BKey1@tampabay.rr.com>
3582b6a3 5749
048addec
JD
5750 This change is my fix for the following entry in etc/PROBLEMS:
5751 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
5752 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
f60ae425 5753
048addec
JD
5754 * w32.c: Added wrapper functions around the win32 API functions
5755 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
5756 GetSidIdentifierAuthority. These wrapper functions serve two
5757 purposes:
5758 1. They ensure that the wrapped function can never be called
5759 when Emacs is running on an operating system on which they are
5760 not supported (Microsoft Windows 95 / 98 / ME).
5761 2. They call the wrapped functions via function pointers rather
5762 than calling them directly. This avoids taking advantage of the
5763 undocumented fact that although these functions are not supported
5764 in the 9x branch of Microsoft Windows, the functions do exist in
5765 the version of advapi32.dll that is found in the 9x branch of
5766 Microsoft Windows.
f60ae425 5767
6bdb309a 5768 * w32.c (init_user_info): Replace the calls to the win32 API
048addec
JD
5769 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
5770 and GetSidIdentifierAuthority with calls to the newly added
5771 wrapper functions.
f60ae425 5772
048addec
JD
5773 * w32.h: Added extern declarations for the following functions:
5774 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
5775 syms_of_w32menu, and void syms_of_fontset.
f60ae425 5776
6bdb309a 5777 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
048addec
JD
5778 function pointer track_mouse_event_fn in the handler for the
5779 WM_SETFOCUS message.
3582b6a3 5780
6bdb309a 5781 * w32menu.c (initialize_frame_menubar): Add code to
048addec
JD
5782 reinitialize the function pointers set_menu_item_info and
5783 get_menu_item_info.
f60ae425 5784
048addec 57852002-11-17 Ben Key <BKey1@tampabay.rr.com>
f60ae425 5786
048addec
JD
5787 * sound.c: Added a partial implementation of play-sound-internal
5788 for Microsoft Windows. Added various #ifdef / #else / #endif
5789 code blocks to separate the code that will compile under
5790 Microsoft Windows from the code that is specific to Gnu/Linux.
5791 Moved several blocks of code around to make this separation of code
5792 into Windows compatible and Gnu/Linux compatible code blocks easier.
f60ae425 5793
048addec 5794 * makefile.w32-in: Include sound.c and link with WinMM.lib.
a0f0878d 5795
048addec
JD
5796 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
5797 added support for play-sound-internal under Windows would be
5798 included in the build of Emacs.
517f42a0 5799
048addec 58002002-11-16 Jason Rumney <jasonr@gnu.org>
517f42a0 5801
048addec 5802 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
517f42a0 5803
048addec 5804 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
a0f0878d 5805
048addec 58062002-11-15 Stefan Monnier <monnier@cs.yale.edu>
a0f0878d 5807
048addec
JD
5808 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
5809 (adjust_point_for_property): Move out of display and invisible even if
5810 we were already inside before (in case a property was added while
5811 we weren't looking). Be more careful when handling invisible props.
5812 Skip invisible text as if it really wasn't there at all.
aab83f91 5813
048addec 58142002-11-15 Jason Rumney <jasonr@gnu.org>
aab83f91 5815
048addec
JD
5816 * w32term.c (x_draw_image_foreground)
5817 (w32_draw_image_foreground_1): Use standard copy and invert
5818 operations to draw images.
aab83f91 5819
048addec
JD
5820 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
5821 depth of 1.
5822 (xbm_read_bitmap_data): Invert bits as xbm is read in.
5823 (XPutPixel): Don't invert bits here.
a4478a76 5824
048addec 58252002-11-15 Jason Rumney <jasonr@gnu.org>
a4478a76 5826
048addec
JD
5827 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
5828 (w32_draw_image_foreground_1): Handle image masks.
5829 (x_draw_image_glyph_string): Don't BitBlt transparently.
a4478a76 5830
048addec
JD
5831 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
5832 (x_from_xcolors): Adjust RGB values for W32.
5833 (image_background, image_background_transparent)
5834 (postprocess_image, x_to_xcolors, x_disable_image)
5835 (x_build_heuristic_mask): Adapt for W32 and enable.
5836 (x_create_x_image_and_pixmap): Mark images with palettes as such.
5837 (xbm_load): Remove unused variable.
03670a65 5838
048addec 58392002-11-14 Richard M. Stallman <rms@gnu.org>
03670a65 5840
048addec 5841 * buffer.c (syms_of_buffer): Doc fix.
59daa29a 5842
048addec 58432002-11-14 Dave Love <fx@gnu.org>
59daa29a 5844
048addec 5845 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
59daa29a 5846
048addec
JD
5847 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
5848 * xmenu.c (unuse_menu_items, digest_single_submenu):
5849 * xfns.c (x_put_x_image):
5850 * xdisp.c (message2_nolog, set_message):
5851 * undo.c (record_point):
5852 * terminfo.c (tparam):
5853 * syntax.c (scan_sexps_forward):
5854 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
5855 * composite.c (update_compositions):
5856 * cm.c (calccost, cmgoto):
5857 * charset.c (c_string_width): Declare all args (per C99).
59daa29a 5858
048addec 5859 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
59daa29a 5860
048addec
JD
5861 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
5862 Don't declare.
59daa29a 5863
048addec 5864 * emacs.c (main) [!VMS]: Avoid third arg.
59daa29a 5865
048addec
JD
5866 * fns.c (Fcopy_sequence): Doc fix.
5867 (Fmap_char_table): Cast `call2'.
3947677c 5868
048addec
JD
58692002-11-14 Francesco Potorti` <pot@gnu.org>
5870
5871 * s/sol2-8.h: New file.
5872
58732002-11-14 Kim F. Storm <storm@cua.dk>
5874
5875 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
5876 dependency on `risky-local-variable' and the :propertize form.
5877
58782002-11-12 Stefan Monnier <monnier@cs.yale.edu>
5879
5880 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
5881
5882 * syntax.c (scan_sexps_forward): Undo last patch.
5883 Use a more obvious fix: check eob before updating the syntax table.
5884
58852002-11-09 Stefan Monnier <monnier@cs.yale.edu>
5886
5887 * syntax.c (scan_sexps_forward): Update syntax table before reading
5888 a char rather than after so we don't update the table past eob.
5889
58902002-11-09 Dave Love <fx@gnu.org>
5891
5892 * buffer.c (Fset_buffer_major_mode): Fix last change.
5893
5894 * regex.c (regexec): Fix pmatch declaration.
5895
5896 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
5897
5898 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
5899 to self-inserting characters.
5900 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
5901
5902 * coding.c (Vtranslation_table_for_input): New.
5903 (syms_of_coding): DEFVAR it.
5904
59052002-11-08 Juanma Barranquero <lektu@terra.es>
5906
5907 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
5908 window.
5909
59102002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
5911
6bdb309a 5912 * process.c (Fformat_network_address): Remove unused locals p,
048addec
JD
5913 cp, and i.
5914
59152002-11-06 Dave Love <fx@gnu.org>
5916
5917 * buffer.c (Qset_buffer_major_mode_hook): New.
5918 (Fset_buffer_major_mode): Use it.
5919
59202002-11-06 Richard M. Stallman <rms@gnu.org>
5921
5922 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
5923 and stop_polling.
5924
5925 * process.c (wait_reading_process_input):
5926 Test POLLING_PROBLEM_IN_SELECT, not hpux.
5927 Avoid initialization for auto Lisp_Object var.
5928
5929 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
5930
5931 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
5932
59332002-11-05 Richard M. Stallman <rms@gnu.org>
5934
5935 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
5936
5937 * callint.c (Fcall_interactively): New local filter_specs.
5938 (Fcall_interactively): Check for progn as well as let.
5939 Add a gcpro.
5940 (Qprogn): New variable.
5941 (syms_of_callint): Staticpro and init Qprogn.
5942
59432002-11-04 John Paul Wallington <jpw@shootybangbang.com>
5944
5945 * lread.c (Feval_buffer): Doc fix.
5946
59472002-11-04 Dave Love <fx@gnu.org>
5948
5949 * keyboard.c (read_char): Always translate iff
5950 Vkeyboard_translate_table is a char table and c is valid.
5951
5952 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
5953 and fix C types.
5954
59552002-11-03 Stefan Monnier <monnier@cs.yale.edu>
5956
5957 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
5958
5959 * editfns.c (get_pos_property): Don't hardcode Qfield.
5960
5961 * keyboard.c (adjust_point_for_property): Handle `display' prop on
5962 overlays. Also handle `invisible' prop.
5963
59642002-11-02 Stefan Monnier <monnier@cs.yale.edu>
5965
5966 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
5967 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
5968
59692002-11-01 Andreas Schwab <schwab@suse.de>
5970
5971 * editfns.c (Fmessage): Revert last change to properly handle %%.
5972
59732002-11-01 Stefan Monnier <monnier@cs.yale.edu>
5974
5975 * xmenu.c (unuse_menu_items): New fun.
5976 (menu_items_inuse): New var.
5977 (syms_of_xmenu): Initialize it.
5978 (init_menu_items): Use it to detect re-entrance.
5979 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
5980 (Fx_popup_menu): Remove spurious XSETFRAME.
5981
5982 * editfns.c (find_field): Make an exception for nil fields.
5983
59842002-11-01 Dave Love <fx@gnu.org>
5985
5986 * m/gec63.h: Deleted.
5987
59882002-10-31 Dave Love <fx@gnu.org>
5989
5990 * xterm.c (XTread_socket): Fix last change.
5991 (xaw_scroll_callback): Cast call_data to long to avoid warning.
5992
59932002-10-31 Stefan Monnier <monnier@cs.yale.edu>
5994
5995 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
5996
59972002-10-30 Stefan Monnier <monnier@cs.yale.edu>
5998
5999 * editfns.c (overlays_around, get_pos_property): New funs.
6000 (find_field): Use them.
6001 Also be careful not to modify POS before its last use.
6002 (Fmessage): Don't Fformat if there's nothing to format.
6003
60042002-10-30 Dave Love <fx@gnu.org>
6005
6006 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
6007 [HAVE_PTY_H]; Include pty.h.
6008
6009 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
6010
6011 * xterm.c (Qeql): Declare.
6012 (Vx_keysym_table): New.
6013 (syms_of_xterm): Initialize it.
6014 (XTread_socket): Use it. Deal with ASCII keysyms.
6015 (XSetIMValues) [HAVE_X11R6]: Prototype.
6016
6017 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
6018 (lispy_kana_keys): Comment out.
6019 (make_lispy_event) [XK_kana_A]: Comment out.
6020 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
6021 Fix sprintf call.
6022
6023 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
6024 regexp.h change).
6025 (TERMINFO, LIBS_TERMCAP): Define.
6026
6027 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
6028 (bcmp): Define conditional on HAVE_BCMP.
6029 (NO_SIOCTL_H): Don't define.
6030 (TIOCSIGSEND): Don't make conditional on IRIX6.
6031
6032 * s/sol2-5.h: Don't include strings.h.
6033 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
6034
6035 * s/irix6-0.h (IRIX6): Don't define.
6036 (bcopy, bcmp, bzero): Don't undef.
6037
6038 * s/irix6-5.h: Don't include strings.h.
6039 (IRIX6): Don't define.
6040 (bcopy, bcmp, bzero): Don't undef.
6041
6042 * syntax.c (Fforward_comment): Doc fix.
6043
60442002-10-29 Kim F. Storm <storm@cua.dk>
6045
6046 * process.c (Fsignal_process): Allow PROCESS to be specified by
6047 name in addition to pid (as integer or string).
6048
60492002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
6050
6051 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
6052 environments.
6053
60542002-10-27 Kim F. Storm <storm@cua.dk>
6055
6056 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
6057
6058 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
6059
6060 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
6061
6062 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
6063
60642002-10-26 Richard M. Stallman <rms@gnu.org>
6065
6066 * editfns.c (Fformat): Detect invalid format letters for floats.
6067
60682002-10-25 Kenichi Handa <handa@m17n.org>
6069
6070 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
6071 (x_set_title): Likewise.
6072
60732002-10-25 Juanma Barranquero <lektu@terra.es>
6074
6075 * macgui.h:
6076 * w32gui.h: Remove definition of XColor.
6077
6078 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
6079
60802002-10-24 Kim F. Storm <storm@cua.dk>
6081
6082 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
6083 Callers changed (supply dummy arg).
6084
6085 * lisp.h (get_window_cursor_type): Update prototype.
6086
6087 * w32term.c (x_display_and_set_cursor): Get active_cursor from
6088 get_window_cursor_type to track system caret.
6089
60902002-10-24 Kim F. Storm <storm@cua.dk>
6091
6092 * process.c (Fformat_network_address): New function.
6093 (syms_of_process): Defsubr it.
6094 (list_processes_1): Use it to format :local/:remote address if
6095 service/host is not set; before emacs would crash in that case.
6096 (Fmake_network_process): Don't use Ffind_operation_coding_system
6097 to setup coding system if host or service is not set.
6098
60992002-10-23 Juanma Barranquero <lektu@terra.es>
6100
6101 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
6102
6103 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
6104 COLORREF.
6105
6106 * macgui.h:
6107 * w32gui.h: Add definition of XColor.
6108
6109 * macfns.c:
6110 * w32fns.c:
6111 * xfaces.c: Remove definition of XColor.
6112
61132002-10-22 Stefan Monnier <monnier@cs.yale.edu>
6114
6115 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
6116
6117 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
6118 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
6119 window if it is dedicated.
6120 (Fshrink_window): Add preserve_before as was done for enlarge_window.
6121 (Vspecial_display_function): Update docstring.
6122
6123 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
6124 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
6125 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
6126
61272002-10-21 Stefan Monnier <monnier@cs.yale.edu>
6128
6129 * casefiddle.c (casify_region): Don't treat a prefix char as part
6130 of a word when at the beginning.
6131
61322002-10-17 Juanma Barranquero <lektu@terra.es>
6133
6134 * lread.c (syms_of_lread): Fix typos.
6135
61362002-10-17 Dave Love <fx@gnu.org>
6137
6138 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
6139
61402002-10-16 Richard M. Stallman <rms@gnu.org>
6141
6142 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
6143
61442002-10-14 Juanma Barranquero <lektu@terra.es>
6145
6146 * w16select.c (syms_of_win16select): Fix docstring for
6147 `selection-coding-system'.
6148
6149 * w32select.c (syms_of_w32select): Likewise.
6150
61512002-10-14 Stefan Monnier <monnier@cs.yale.edu>
6152
6153 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
6154 a backslash-quoted char.
6155 (scan_lists, scan_sexps_forward): Pacify the compiler.
6156
61572002-10-13 Richard M. Stallman <rms@gnu.org>
6158
6159 * window.c (window_scroll): Set immediate_quit.
6160
6161 * print.c (print): When backquote form is the car of a list,
6162 output in old style. Use old_backquote_output to output all
6163 comma forms inside it in old style too.
6164
6165 * buffer.h (struct buffer): Move `undo_list' down below `name'.
6166
61672002-10-11 Markus Rost <rost@math.ohio-state.edu>
6168
6169 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
6170 batch mode).
6171
6172 * lread.c (Fload): Doc fix (load-suffixes).
6173
61742002-10-10 Steven Tamm <steventamm@mac.com>
6175
6176 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
6177 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
6178 Also switch the default to Qnil from Qt.
6179
61802002-10-08 Kenichi Handa <handa@m17n.org>
6181
6182 * coding.c (code_convert_region): When we need more GAP for
6183 conversion, pay attention to the case that coding->produced is not
6184 greater than coding->consumed.
6185
61862002-10-07 Richard M. Stallman <rms@gnu.org>
6187
6188 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
6189
61902002-10-06 Andrew Choi <akochoi@shaw.ca>
6191
6192 * macmenu.c (mac_menu_show): Add j to count menu items; match
6193 menu_item_selection to it to find selected item.
6194
61952002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6196
6197 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
6198 cases. The correct fix is to pass ReparentNotify to Xt.
6199 The shell widget interprets ConfigureNotify differently depending
6200 on if it has been reparented or not.
6201
62022002-10-05 Markus Rost <rost@math.ohio-state.edu>
6203
6204 * editfns.c (Fformat_time_string): Doc fix.
6205
62062002-10-05 John Paul Wallington <jpw@shootybangbang.com>
6207
6208 * fns.c (Flength): Doc fix.
6209
62102002-10-04 Stefan Monnier <monnier@cs.yale.edu>
6211
6212 * keyboard.c (keyremap): New struct.
6213 (read_key_sequence): Use it: globally replace keytran_foo with
6214 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
6215 keytran_next and fkey_next to just `next'.
6216
62172002-10-04 Steven Tamm <steventamm@mac.com>
6218
6219 * macterm.c (keycode_to_xkeysym_table): Change return to be
6220 treated like an X keysym.
6221
62222002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6223
6224 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
6225 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
6226 This is to also handle x/y changes that occur because of a resize.
6227
62282002-10-02 John Paul Wallington <jpw@shootybangbang.com>
6229
6230 * frame.c (Vdelete_frame_functions): New variable.
6231 (syms_of_frame): Initialize and defvar it.
6232 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
6233 it when frame's `tooltip' parameter is non-nil.
6234
6235 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
6236
6237 * w32fns.c (x_create_tip_frame): Likewise.
6238
6239 * macfns.c (x_create_tip_frame): Likewise.
6240
62412002-09-30 Kenichi Handa <handa@m17n.org>
6242
6243 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
6244 -1 before calling ccl_driver.
6245
6246 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
6247 Only when it is non-nil, handle composition sequence.
6248 (setup_coding_system) <0>: Don't force composition handling.
6249
6250 * Makefile.in (lisp, shortlisp): Add utf-16.elc
6251
62522002-09-29 Richard M. Stallman <rms@gnu.org>
6253
6254 * search.c (Freplace_match): Adjust match data for the substitution
6255 just made in the buffer.
6256
6257 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
6258 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
6259
62602002-09-27 Richard M. Stallman <rms@gnu.org>
6261
6262 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
6263 (read_char): Use them. Do all exits thru the end of the function.
6264
62652002-09-27 Kenichi Handa <handa@etl.go.jp>
6266
6267 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
6268 is nil.
6269
62702002-09-26 Richard M. Stallman <rms@gnu.org>
6271
6272 * regex.h (__restrict_arr): Don't define if already defined.
6273
6274 * coding.c (run_pre_post_conversion_on_str):
6275 Save and restore Vdeactivate_mark.
6276
62772002-09-26 John Paul Wallington <jpw@shootybangbang.com>
6278
6279 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
6280
62812002-09-26 Kenichi Handa <handa@etl.go.jp>
6282
6283 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
6284 nonzero, try face's family at first. Otherwise try FAMILY at first.
6285 (choose_face_font): If C is a single byte char or latin-1, call
6286 try_font_list with PREFER_FACE_FAMILY 1.
6287
62882002-09-21 Richard M. Stallman <rms@gnu.org>
6289
6290 * window.c (select_window_1): Don't select frame.
6291 Set frame's selected window only when frame itself is selected.
6292 (Fselect_window): Doc fix.
6293
62942002-09-18 Kim F. Storm <storm@cua.dk>
6295
6296 * process.c (make-network-process): Doc fix (there is no
6297 network-server-log-function hook).
6298
62992002-09-18 Richard M. Stallman <rms@gnu.org>
6300
6301 * print.c (print): Clear out the unused parts of Vprint_number_table.
6302 (syms_of_print): Doc fix for `print-number-table'.
6303
6304 * unexelf.c (unexec): Undo previous change.
6305
63062002-09-17 Andreas Schwab <schwab@suse.de>
6307
6308 * m/alpha.h [LINUX]: Don't define DATA_START.
6309
63102002-09-16 Dave Love <fx@gnu.org>
6311
6312 * unexelf.c (unexec): Deal with .got, reinstating change from
6313 25-08-1999.
6314
63152002-09-13 Richard M. Stallman <rms@gnu.org>
6316
6317 * s/sol2-6.h (UNEXEC): Comment out definition.
6318
6319 * unexsol.c (unexec): Don't downcase first letter of error msg.
6320
6321 * xfaces.c (Fcolor_supported_p): Just one arg is required.
6322
63232002-09-12 Markus Rost <rost@math.ohio-state.edu>
6324
6325 * unexsol.c: Include buffer.h, charset.h, coding.h.
6326
63272002-09-11 Richard M. Stallman <rms@gnu.org>
6328
6329 * unexsol.c: Don't use report_file_error; do it by hand
6330 using dlerror.
6331
6332 * process.c (wait_reading_process_input, both versions):
6333 Before calling turn_on_atimers, call stop_polling.
6334
6335 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
6336
6337 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
6338 we go to too_near_end, call clear_glyph_matrix.
6339 (redisplay_window): After make_cursor_line_fully_visible,
6340 call clear_glyph_matrix and bypass `goto done'.
6341
6342 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
6343 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
6344
63452002-09-10 Richard M. Stallman <rms@gnu.org>
6346
6347 * fileio.c (Fdo_auto_save): Catch error making directory.
6348 Only call push_message if we need to.
6349 At the same time, make an unwind-protect to pop it.
6350 Rename local message_p to old_message_p.
6351 (do_auto_save_make_dir, do_auto_save_eh): New functions.
6352 (do_auto_save_unwind): Don't call pop_message.
6353
6354 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
6355
6356 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
6357
6358 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
6359
6360 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
6361
63622002-09-10 Stefan Monnier <monnier@cs.yale.edu>
6363
6364 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
6365 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
6366 (re_match_2_internal): Be more careful with infinite loops.
6367
63682002-09-10 Kim F. Storm <storm@cua.dk>
6369
6370 * macros.c (end_kbd_macro): New function.
6371 (Fend_kbd_macro): Use it.
6372
6373 * macros.h (end_kbd_macro): Declare extern.
6374
6375 * keyboard.c (Fdiscard_input): If defining keyboard macro,
6376 end and save it instead of discarding it.
6377
63782002-09-09 Markus Rost <rost@math.ohio-state.edu>
6379
6380 * s/sol2-6.h: Fix typo. Add comment.
6381
63822002-09-09 Richard M. Stallman <rms@gnu.org>
6383
6384 * regex.c (regnum_t): Use signed int, not unsigned int.
6385
6386 * s/sol2-6.h: New file.
6387
6388 * s/sol2-5.h (UNEXEC): Definition deleted.
6389
63902002-09-08 Kim F. Storm <storm@cua.dk>
6391
6392 * macros.c (executing_macro_index): Change type to EMACS_INT.
6393 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
6394
6395 * macros.h (executing_macro_index): Change type to EMACS_INT.
6396
63972002-09-06 Richard M. Stallman <rms@gnu.org>
6398
6399 * casetab.c (set_case_table): Make canon table point to eqv table.
6400
64012002-09-06 Juanma Barranquero <lektu@terra.es>
6402
6403 * coding.c (syms_of_coding): Fix spacing.
6404
6405 * composite.c (Fcompose_region_internal)
6406 (Fcompose_string_internal): Likewise.
6407
6408 * data.c (Flsh): Likewise.
6409
6410 * fontset.c (Fset_fontset_font): Likewise.
6411
6412 * macfns.c (Fx_server_max_request_size): Likewise.
6413
6414 * w16select.c (syms_of_win16select): Likewise.
6415
6416 * w32select.c (syms_of_w32select): Likewise.
6417
6418 * xselect.c (syms_of_xselect): Likewise.
6419
64202002-09-05 Richard M. Stallman <rms@gnu.org>
6421
6422 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
6423 call EXTEND_RANGE_TABLE and return a proper value.
6424 (set_image_of_range): Don't call set_image_of_range_1
6425 if no TRANSLATE or if range includes all of Latin-1.
6426 Only call it for the Latin-1 part of the range.
6427 For other cases, make two separate ranges,
6428 one for the original specified characters and one for
6429 their case-conversions.
6430
64312002-09-04 Richard M. Stallman <rms@gnu.org>
6432
6433 * s/sol2-5.h (UNEXEC): Use unexsol.o.
6434
6435 * window.c (displayed_window_lines): Correct for one-off bug
6436 in HEIGHT on non-window displays.
6437
6438 * regex.c (set_image_of_range_1): New function.
6439 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
6440 Return a value to indicate running out of memory.
6441 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
6442 (extend_range_table_work_area): New subroutine.
6443 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
6444 Different calling conventions, and used from set_image_of_range{,_1}.
6445 (IMMEDIATE_QUIT_CHECK): Definitions moved.
6446
64472002-09-04 Juanma Barranquero <lektu@terra.es>
6448
6449 * makefile.w32-in: All dependencies updated.
6450
64512002-09-01 Richard M. Stallman <rms@gnu.org>
6452
6453 * unexsol.c: New file.
6454
6455 * xfns.c (Qbox): Declare external, don't define.
6456
6457 * xdisp.c (redisplay_window) <force-start case>:
6458 If point is on semi-visible last line, reposition
6459 it at previous line.
6460
6461 * alloc.c (display_malloc_warning): Use display-warning.
6462 (malloc_warning_1): Function deleted.
6463
6464 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
6465
6466 * lread.c (read1): Handle #! by skipping the line.
6467
64682002-08-31 Richard M. Stallman <rms@gnu.org>
6469
6470 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
6471 Don't include LDFLAGS.
6472 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
6473
64742002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
6475
6476 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
6477 member of x_display_info unless we compile for some window system.
6478
64792002-08-31 Kim F. Storm <storm@cua.dk>
6480
6481 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
6482 (get_window_cursor_type): Don't use them.
6483 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
6484
64852002-08-30 Kenichi Handa <handa@etl.go.jp>
6486
6487 * xdisp.c (get_next_display_element): Fix previous change.
6488
64892002-08-30 Andrew Choi <akochoi@shaw.ca>
6490
6491 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
6492 (expose_window): Use it to fix the display of overlapping
6493 rows (merge code from xterm.c).
6494
6495 * macfns.c (Qbox): Add extern declaration.
6496
64972002-08-30 Juanma Barranquero <lektu@terra.es>
6498
6499 * w32fns.c (Qbox): Make extern.
6500 (syms_of_w32fns): Remove initialization of Qbox.
6501
65022002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
6503
6504 * xfns.c (Fx_open_connection): Fix error message.
6505
65062002-08-30 Kim F. Storm <storm@cua.dk>
6507
6508 The following changes consolidates the handling of the cursor
6509 type in xdisp.c, moving duplicate code and functionality from
6510 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
6511
6512 * frame.h (enum text_cursor_kinds): Consolidated here.
6513 Added DEFAULT_CURSOR value.
6514 (struct frame) <desired_cursor, cursor_width>
6515 <blink_off_cursor, blink_off_cursor_width>: New fields.
6516 Consolidated from output_x, output_w32 and output_mac structs.
6517 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
6518 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
6519
6520 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
6521 Variables consolidated here.
6522 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
6523 (Vcursor_in_non_selected_windows): Renamed from
6524 cursor_in_non_selected_windows and changed to Lisp_Object.
6525 (syms_of_xdisp): Define and staticpro new and moved variables.
6526 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
6527 consolidated here. Recognize Qhollow setting.
6528 (set_frame_cursor_types): New function to set frame cursor types
6529 based on the frame parameters.
6530 (get_window_cursor_type): New function to calculate new cursor
6531 type and width for the specified window. Based on duplicated
6532 code consolidated here.
6533 Enhancements: cursor-in-non-selected-windows may be a cursor type,
6534 check buffer-local alternate-cursor-type and blink-cursor-alist
6535 before using built-in blink off methods.
6536
6537 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
6538
6539 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
6540 (get_specified_cursor_type, get_window_cursor_type)
6541 (set_frame_cursor_types): Added prototypes.
6542
6543 * macfns.c (x_specified_cursor_type): Removed.
6544 (x_set_cursor_type): Use set_frame_cursor_types.
6545 (Qbar, Qbox): Removed.
6546 (syms_of_macfns): Don't intern or staticpro them.
6547
6548 * macterm.c (x_specified_cursor_type): Remove prototype.
6549 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
6550 (x_display_and_set_cursor): Use get_window_cursor_type.
6551 Remove unused local variables cursor_non_selected, active_cursor.
6552 Redraw cursor if hbar cursor width changes.
6553 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
6554
6555 * macterm.h (enum text_cursor_kinds): Removed.
6556 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
6557 <blink_off_cursor, blink_off_cursor_width>: Members removed.
6558 (FRAME_DESIRED_CURSOR): Macro removed.
6559
6560 * w32fns.c (Vblink_cursor_alist): Removed.
6561 (Qbar, Qhbar, Qbox, Qhollow): Removed.
6562 (syms_of_w32fns): Don't intern, staticpro, or define them.
6563 (x_specified_cursor_type): Removed.
6564 (x_set_cursor_type): Use set_frame_cursor_types.
6565
6566 * w32term.c (x_specified_cursor_type): Remove prototype.
6567 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
6568 (x_display_and_set_cursor): Use get_window_cursor_type.
6569 Remove unused local variables cursor_off_state.
6570 Redraw cursor if hbar cursor width changes.
6571 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
6572
6573 * w32term.h (enum text_cursor_kinds): Removed.
6574 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
6575 <blink_off_cursor, blink_off_cursor_width>: Members removed.
6576 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
6577 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
6578 (struct w32_display_info) <x_highlight_frame>: Renamed member from
6579 w32_highlight_frame.
6580
6581 * xfns.c (Vblink_cursor_alist): Removed.
6582 (Qbar, Qhbar, Qbox, Qhollow): Removed.
6583 (syms_of_xfns): Don't intern, staticpro, or define them.
6584 (x_specified_cursor_type): Removed.
6585 (x_set_cursor_type): Use set_frame_cursor_types.
6586
6587 * xterm.c (x_specified_cursor_type): Remove prototype.
6588 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
6589 (x_display_and_set_cursor): Use get_window_cursor_type.
6590 Remove unused local variables cursor_off_state.
6591 Redraw cursor if hbar cursor width changes.
6592
6593 * xterm.h (enum text_cursor_kinds): Removed.
6594 (struct output_x) <current_cursor, desired_cursor, cursor_width>
6595 <blink_off_cursor, blink_off_cursor_width>: Members removed.
6596 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
6597 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
6598 (x_specified_cursor_type): Remove prototype.
6599
66002002-08-28 Richard M. Stallman <rms@gnu.org>
6601
6602 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
6603 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
6604 (Vblink_cursor_alist): New variable.
6605 (syms_of_w32fns): Initialize and defvar it.
6606 (x_specified_cursor_type): Recognize Qbox for filled box.
6607 Exceptions are hollow boxes.
6608 (Qbox, Qhollow): New variables.
6609 (syms_of_w32fns): Initialize and staticpro them.
6610
6611 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
6612 New macros.
6613 (struct w32_output): New fields blink_off_cursor,
6614 blink_off_cursor_width.
6615 (FRAME_CURSOR_WIDTH): New macro.
6616
6617 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
6618 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
6619
6620 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
6621 for bar cursor.
6622
6623 * w32term.c (expose_overlaps): New function.
6624 (expose_window): Use it to fix the display of overlapping rows.
6625
66262002-08-28 Simon Josefsson <jas@extundo.com>
6627
6628 * xfns.c (Fx_open_connection): Improve help when X connection
6629 fails, xhost is insecure and xauth is better.
6630
66312002-08-28 Juanma Barranquero <lektu@terra.es>
6632
6633 * makefile.w32-in: Add missing dependencies on w32term.h and
6634 composite.h.
6635
6636 * emacs.c (USAGE1): Add missing newline.
6637
66382002-08-27 Andrew Choi <akochoi@shaw.ca>
6639
6640 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
6641
66422002-08-27 Richard M. Stallman <rms@gnu.org>
6643
6644 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
6645 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
6646 (Vblink_cursor_alist): New variable.
6647 (syms_of_xfns): Initialize and defvar it.
6648 (x_specified_cursor_type): Recognize Qbox for filled box.
6649 Exceptions are hollow boxes.
6650 (Qbox, Qhollow): New variables.
6651 (syms_of_xfns): Initialize and staticpro them.
6652
6653 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
6654 New macros.
6655 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
6656
6657 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
6658 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
6659
6660 * emacs.c (main): Handle --script.
6661 (USAGE1): Mention --script.
6662 (standard_args): Define sort order for --script.
6663
66642002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
6665
6666 * xdisp.c (redisplay_updating_p): Variable removed.
6667 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
6668 New variables.
6669 (init_iterator): Don't free realized faces if
6670 inhibit_free_realized_faces is set.
6671 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
6672 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
6673 initialize Qinhibit_free_realized_faces.
6674
6675 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
6676 when iterator is adding glyphs to a glyph matrix.
6677
66782002-08-27 Kenichi Handa <handa@etl.go.jp>
6679
6680 * xdisp.c (get_next_display_element): In unibyte case, don't use
6681 octal form for such eight-bit characters that can be converted to
6682 multibyte char.
6683
66842002-08-26 Kim F. Storm <storm@cua.dk>
6685
6686 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize foreground
6687 and background colors. From Joe Buehler (tiny change).
6688
66892002-08-26 Miles Bader <miles@gnu.org>
6690
6691 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
6692
66932002-08-25 Andrew Choi <akochoi@shaw.ca>
6694
6695 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
6696 defined instead of MAC_OSX.
6697
6698 * s/darwin.h (select): Define select to sys_select only if
6699 HAVE_CARBON is defined.
6700 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
6701 (DONT_REOPEN_PTY): #def it.
6702
6703 * macterm.c (XTread_socket): Remove code to call
6704 SendEventToEventTarget for keys with command modifiers when
6705 mac_command_key_is_meta is nil.
6706
67072002-08-24 Andreas Schwab <schwab@suse.de>
6708
6709 * eval.c (Fdefvar): Fix last change.
6710
67112002-08-23 Richard M. Stallman <rms@gnu.org>
6712
6713 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
6714 Record variables in load history as (defvar . VAR).
6715 (Fdefvar): Don't record in load history if no initial value.
6716 (Qdefvar): New variable.
6717 (syms_of_eval): Init and staticpro it.
6718
6719 * lread.c (syms_of_lread): Doc fix.
6720 (build_load_history): Use Fmember to see if a definition
6721 is already in the Vload_history element.
6722
6723 * process.c (Fstart_process): Remove /: from program name.
6724
6725 * emacs.c (decode_env_path): Don't add /: if file name handler
6726 has a `safe-magic' property.
6727
6728 * callproc.c (Fcall_process): Remove /: from program name.
6729
67302002-08-23 Stefan Monnier <monnier@cs.yale.edu>
6731
6732 * regex.c (PATFETCH): Remove the translating fetch.
6733 (PATFETCH_RAW): Rename to PATFETCH.
6734 (set_image_of_range): New fun.
6735 (SET_RANGE_TABLE_WORK_AREA): Use it.
6736 (regex_compile): Don't translate the pattern chars so eagerly.
6737 Only do it when inserting an `exactn' bytecode or when handling
6738 a char-range.
6739 (mutually_exclusive_p): Avoid empty statement.
6740
67412002-08-22 Kim F. Storm <storm@cua.dk>
6742
6743 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
6744 end up on a partially visible line; this reverts a specific part
6745 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
6746 display error which has been reported several times now.
6747 However it introduces the problem that changes was supposed to fix.
6748 See my comments in the source if you want to debug this further.
6749
67502002-08-20 Kenichi Handa <handa@etl.go.jp>
6751
6752 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
6753
67542002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
6755
6756 * msdos.c (croak): Add `void' to definition.
6757
6758 * sysdep.c [MSDOS] (request_sigio, unrequest_sigio):
6759 Don't define them, they are defined in msdos.c.
6760
6761 * mem-limits.h [MSDOS]: Declare etext.
6762
6763 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
6764 `const' since CORRECT_DIR_SEPS modifies its target.
6765
67662002-08-19 Kim F. Storm <storm@cua.dk>
6767
6768 * keyboard.c (Fclear_this_command_keys): Added optional arg
6769 KEEP-RECORD to avoid clearing lossage when we just want to clear
6770 the current key sequence (kmacro needs this).
6771
67722002-08-19 Kenichi Handa <handa@localhost>
6773
6774 * composite.c (run_composition_function): Call FUNC if it is fboundp.
6775
6776 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
6777 cons, return Qnil.
6778
67792002-08-17 Richard M. Stallman <rms@gnu.org>
6780
6781 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
6782
6783 * sysdep.c [!VMS]: Include sys/files.h.
6784
6785 * editfns.c (save_restriction_restore): Defend from unchained marker.
6786
6787 * buffer.c (overlays_at): Handle extending vec uniformly.
6788 (overlays_in): Handle extending vec from length 0 as in overlays_at.
6789
67902002-08-15 Andrew Choi <akochoi@shaw.ca>
6791
6792 * mac.c (init_mac_osx_environment): New function.
6793
6794 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
6795
67962002-08-14 Kim F. Storm <storm@cua.dk>
6797
6798 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
6799 executing macro before appending to it (when used from Lisp).
6800 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
6801 which is called prior to each iteration of macro (for kmacro.el).
6802 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
6803
6804 * lisp.h (Fexecute_kbd_macro): Update prototype.
6805
6806 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
6807
68082002-08-14 Kenichi Handa <handa@etl.go.jp>
6809
6810 * xselect.c (QUTF8_STRING): New variable.
6811 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
6812 (x_atom_to_symbol): Likewise.
6813 (x_get_local_selection): New argument local_request. If it is
6814 nonzero, call handler_fn with the second arg nil.
6815 (x_handle_selection_request): Call x_get_local_selection with
6816 local_request 0.
6817 (lisp_data_to_selection_data): Don't encode the string here.
6818 (Fx_get_selection_internal): Call x_get_local_selection with
6819 local_request 1.
6820 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
6821
6822 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
6823
6824 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
6825
68262002-08-13 Richard M. Stallman <rms@gnu.org>
6827
6828 * minibuf.c (Fminibufferp): New function.
6829 (syms_of_minibuf): Defsubr it.
6830 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
6831
68322002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
6833
6834 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
6835
68362002-08-12 Richard M. Stallman <rms@gnu.org>
6837
6838 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
6839 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
6840 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
6841 already.
6842
6843 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
6844
68452002-08-11 Andrew Choi <akochoi@shaw.ca>
6846
6847 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
6848 (Vmac_pass_command_to_system): New variable.
6849 (Vmac_pass_control_to_system): New variable.
6850 (do_mouse_moved): Check wp with is_emacs_window.
6851 (XTread_socket): Check window_ptr with is_emacs_window.
6852 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
6853 events back to Mac Toolbox for processing, depending on values of
6854 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
6855 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
6856 Vmac_pass_control_to_system.
6857
68582002-08-10 Kenichi Handa <handa@etl.go.jp>
6859
6860 * coding.c (unencodable_char_position): New function.
6861 (Funencodable_char_position): New function.
6862 (syms_of_coding): Defsubr Funencodable_char_position.
6863
68642002-08-10 Andrew Choi <akochoi@shaw.ca>
6865
6866 * mac.c (sys_select) [MAC_OSX]: New function.
6867
6868 * macterm.c (MakeMeTheFrontProcess): New function.
6869 (mac_initialize): Call MakeMeTheFrontProcess.
6870
6871 * s/darwin.h: Define select to sys_select.
6872
68732002-08-09 Richard M. Stallman <rms@gnu.org>
6874
6875 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
6876
68772002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
6878
6879 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
6880 end of the buffer.
6881
68822002-08-08 Ken Raeburn <raeburn@mit.edu>
6883
6884 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
6885
6886 * puresize.h (BASE_PURESIZE): Increase to 910000.
6887
68882002-08-08 Kenichi Handa <handa@etl.go.jp>
6889
6890 * coding.c (Ffind_operation_coding_system): For write-region, if
6891 VISIT is a filename, make it the target.
6892
68932002-08-07 Richard M. Stallman <rms@gnu.org>
6894
6895 * alloc.c (mark_object): Detect long lists for debugging.
6896 (mark_object_loop_halt): New variable.
6897
6898 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
6899
6900 * data.c (Fmake_variable_frame_local): Doc fix.
6901
69022002-08-01 David Ponce <david@dponce.com>
6903
6904 * w32menu.c (local_heap, local_alloc, local_free): New macros.
6905 (malloc_widget_value, free_widget_value)
6906 (w32_free_submenu_strings): Use them.
6907
6908 (push_submenu_start, push_submenu_end, push_left_right_boundary)
6909 (push_menu_pane, push_menu_item, single_keymap_panes)
6910 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
6911 (single_submenu, set_frame_menubar)
6912 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
6913
6914 (Fx_popup_menu): Don't show pop up menu until preceding one is
6915 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
6916
6917 * w32menu.c: Changes adapted from xmenu.c
6918 (set_frame_menubar): First parse all submenus,
6919 then make widget_value trees from them.
6920 Don't allocate any widget_value objects
6921 until we are done with the parsing.
6922 (parse_single_submenu): New function.
6923 (digest_single_submenu): New function.
6924 (single_submenu): Function deleted, replaced by those two.
6925
69262002-08-04 Andrew Choi <akochoi@shaw.ca>
6927
6928 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
6929 returns a valid window pointer before proceeding for keyDown and
6930 autoKey events.
6931
69322002-08-03 Andrew Choi <akochoi@shaw.ca>
6933
6934 * macterm.c (USE_CARBON_EVENTS): New macro.
6935 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
6936 (x_iconify_frame): Call CollapseWindow.
6937 (Vmac_reverse_ctrl_meta): New variable.
6938 (Vmac_wheel_button_is_mouse_2): New variable.
6939 (init_mac_drag_n_drop): New function.
6940 (mac_do_receive_drag): New function.
6941 (mac_handle_service_event): New function.
6942 (init_service_handler): New function.
6943 (mac_to_emacs_modifiers): New function.
6944 (mac_event_to_emacs_modifiers): New function.
6945 (mac_get_mouse_btn): New function.
6946 (mac_convert_event_ref): New function.
6947 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
6948 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
6949 mac_get_mouse_btn.
6950 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
6951
6952 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
6953 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
6954 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
6955 TOOL_BAR_EVENT for MAC_OS as well.
6956 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
6957 as for WINDOWS_NT.
6958 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
6959
6960 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
6961
69622002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
6963
6964 * xdisp.c (forward_to_next_line_start): Fix a condition that
6965 lead to a newline being skipped.
6966
69672002-08-02 Andrew Choi <akochoi@shaw.ca>
6968
6969 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
6970
69712002-08-01 Richard M. Stallman <rms@gnu.org>
6972
6973 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
6974
69752002-07-31 Andrew Choi <akochoi@shaw.ca>
6976
6977 * macfns.c: #undef init_process before #define-ing it.
6978
6979 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
6980 HAVE_CARBON is defined.
6981
69822002-07-31 Richard M. Stallman <rms@gnu.org>
6983
6984 * xmenu.c (set_frame_menubar): First parse all submenus,
6985 then make widget_value trees from them.
6986 Don't allocate any widget_value objects
6987 until we are done with the parsing.
6988 (parse_single_submenu): New function.
6989 (digest_single_submenu): New function.
6990 (single_submenu): Function deleted, replaced by those two.
6991
69922002-07-30 Juanma Barranquero <lektu@terra.es>
6993
6994 * w32proc.c (syms_of_ntproc): Fix docstring of
6995 `w32-get-true-file-attributes'.
6996
69972002-07-28 Richard M. Stallman <rms@gnu.org>
6998
6999 * s/hpux8.h (HPUX8): Define this before including hpux.h.
7000 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
7001
7002 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
7003
7004 * keyboard.c (make_lispy_event):
7005 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
7006 Explicitly clear up_modifier in event->modifiers.
7007
70082002-07-27 Richard M. Stallman <rms@gnu.org>
7009
7010 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
7011
7012 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
7013 for bar cursor.
7014
70152002-07-26 Kenichi Handa <handa@etl.go.jp>
7016
7017 * coding.c (detect_coding_iso2022): While checking a byte sequence
7018 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
7019 it in the normal loop.
7020
70212002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
7022
7023 * xterm.c (expose_overlaps): New function.
7024 (expose_window): Use it to fix the display of overlapping rows.
7025
7026 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
7027
70282002-07-23 Ken Raeburn <raeburn@gnu.org>
7029
7030 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
7031 since it only depends on XUINT.
7032
7033 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
7034 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
7035 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
7036 Macros deleted.
3947677c 7037
77d1daf2
AS
7038 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
7039 its value over other approaches.
7040 * sysdep.c (start_of_data): Don't define the function if a macro
7041 form has been defined.
8a8e19a3 7042
048addec
JD
70432002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
7044
7045 * xdisp.c (redisplay_updating_p): New variable.
7046 (init_iterator): Don't free realized faces when
7047 redisplay_updating_p is set.
7048 (redisplay_internal): Set redisplay_updating_p while updating
7049 the display.
7050
70512002-07-23 Richard M. Stallman <rms@gnu.org>
7052
7053 * editfns.c (Fmessage): Treat "" like nil.
7054
70552002-07-23 Kenichi Handa <handa@etl.go.jp>
7056
7057 * xdisp.c (face_before_or_after_it_pos):
7058 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
7059
70602002-07-22 Juanma Barranquero <lektu@terra.es>
7061
7062 * callproc.c (init_callproc) [DOS_NT]:
7063 Initialize Vshared_game_score_directory to nil.
7064 (syms_of_callproc) [DOS_NT]: Likewise.
7065
70662002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
7067
7068 * xdisp.c (display_line): Replace an abort with xassert.
7069
70702002-07-21 Richard M. Stallman <rms@gnu.org>
7071
7072 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
7073 and END_UNCHANGED when setting buffer_unchanged_p.
7074 Use current_matrix_up_to_date_p to decide whether to use
7075 try_cursor_movement.
7076
7077 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
7078
7079 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
7080
7081 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
7082 Set to nil if dir does not exist.
7083 (syms_of_callproc): Init unconditionally and simply.
7084
7085 * buffer.c (Fbuffer_list): Doc fix.
7086
70872002-07-21 Ken Raeburn <raeburn@gnu.org>
7088
7089 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
7090
7091 * buffer.c (mmap_realloc): When shrinking, make sure number of
7092 pages to unmap is rounded towards zero.
7093
7094 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
7095 (XSETINT): Deleted.
7096
7097 * m/att3b.h (XINT): Don't define.
7098 (VALBITS, VALMASK, XTYPE): Deleted.
7099 (DATA_SEG_BITS): Define.
7100 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
7101 ARRAY_MARK_FLAG): Deleted.
7102 (DATA_SEG_BITS): Define.
7103 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
7104 (DATA_SEG_BITS): Define.
7105
71062002-07-20 Richard M. Stallman <rms@gnu.org>
7107
7108 * print.c (print_error_message): New args CONTEXT and CALLER.
7109 Calls changed.
7110
7111 * lisp.h (print_error_message): Declare new args.
7112
7113 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
7114 and CONTEXT to print_error_message, don't print them here.
7115 For a Quit, don't use Vsignaling_function.
7116 Call message_log_maybe_newline.
7117
7118 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
7119
71202002-07-20 Kim F. Storm <storm@cua.dk>
7121
7122 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
7123
71242002-07-19 Ken Raeburn <raeburn@gnu.org>
7125
7126 * bytecode.c (struct byte_stack): Pointers into byte string now
7127 point to const.
7128 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
7129 const.
7130 * charset.h (BCOPY_SHORT): Source pointer now points to const.
7131 * coding.c (encode_eol, detect_coding, detect_eol):
7132 (decode_coding, encode_coding, detect_coding_system):
7133 Source strings now treated as const.
7134 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
7135 modify Lisp string contents.
7136 * coding.h (decode_coding, encode_coding, detect_coding,
7137 detect_eol): Declarations updated.
7138 * composite.c (compose_chars_in_text): Treat Lisp string contents
7139 as const.
7140 * dispnew.c (safe_bcopy): Source pointer now points to const.
7141 * lisp.h (STRING_COPYIN): New macro.
7142 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
7143 (internal_with_output_to_temp_buffer): Declarations updated.
7144 * print.c (temp_output_buffer_setup):
7145 (internal_with_output_to_temp_buffer): Buffer name argument is now
7146 pointer to const.
7147 * sound.c (struct sound_device): Function pointer field "write"
7148 buffer argument now points to const.
7149 (vox_write): Buffer argument points to const.
7150 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
7151 contents as const.
7152 * sysdep.c (emacs_write): Buffer pointer now const.
7153 * term.c (encode_terminal_code): Buffer pointer now const.
7154 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
7155 (x_face_list_fonts, x_update_menu_appearance):
7156 (hash_string_case_insensitive): Treat Lisp string contents as const.
7157
71582002-07-19 Juanma Barranquero <lektu@terra.es>
7159
7160 * fileio.c (Ffile_name_as_directory): Fix argument name in docstring.
7161 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
7162
7163 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
7164
7165 * fileio.c (syms_of_fileio): Likewise.
7166
71672002-07-18 Richard M. Stallman <rms@gnu.org>
7168
7169 * data.c (Fdefalias): Doc fix.
7170
71712002-07-17 Dave Love <fx@gnu.org>
7172
7173 * intervals.h (text_property_stickiness): Use P_.
7174
7175 * ccl.c: Remove `emacs' conditionals.
7176 (ccl_backtrace_table): Fix size spec.
7177 (ccl_driver): Fix type errors.
7178
71792002-07-16 Ken Raeburn <raeburn@gnu.org>
7180
7181 * alloc.c (xstrdup, make_string, make_unibyte_string)
7182 (make_multibyte_string, build_string): String pointer args now
7183 point to const.
7184 * charset.c (find_charset_in_text, c_string_width):
7185 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
7186 * fileio.c (report_file_error):
7187 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
7188 (count_combining_before, count_combining_after, insert_1_both):
7189 (insert, insert_and_inherit, insert_string):
7190 (insert_before_markers, insert_before_markers_and_inherit):
7191 * lread.c (intern, oblookup, hash_string):
7192 * minibuf.c (temp_echo_area_glyphs):
7193 * search.c (fast_c_string_match_ignore_case):
7194 * sysdep.c (emacs_open, set_file_times):
7195 * xfaces.c (xstricmp):
7196 * xdisp.c (store_frame_title, string_char_and_length):
7197 (message_dolog, message2, message2_nolog, set_message): Likewise.
7198 (set_message_1): Cast message string argument to const pointer.
7199 * editfns.c (general_insert_function): Insertion function now
7200 takes pointer to const for input data.
7201 * charset.h (find_charset_in_text, c_string_width):
7202 (parse_str_as_multibyte): Declarations updated.
7203 * dispextern.h (xstricmp): Declaration updated.
7204 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
7205 (count_size_as_multibyte, count_combining_before):
7206 (count_combining_after, insert_1, insert_1_both, message_dolog):
7207 (insert, insert_and_inherit, insert_before_markers)
7208 (insert_before_markers_and_inherit, set_message, message2):
7209 (message2_dolog, build_string, make_string, make_unibyte_string):
7210 (make_multibyte_string, intern, oblookup, report_file_error):
7211 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
7212 (emacs_open, xstrdup): Declarations updated.
7213 * systime.h (set_file_times): Declaration updated.
7214
7215 * charset.c (find_charset_in_text, lisp_string_width): Use const
7216 for pointer to lisp string data.
7217 * charset.h (FETCH_STRING_CHAR_ADVANCE):
7218 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
7219 * coding.c (Ffind_coding_systems_region_interval):
7220 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
7221 (Fmake_directory_internal, Fdelete_directory):
7222 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
7223 * fontset.c (font_family_registry, fs_query_fontset):
7224 (list_fontsets):
7225 * frame.c (Fframe_parameter):
7226 * keyboard.c (cmd_error_internal):
7227 * keymap.c (Fdescribe_buffer_bindings):
7228 * lread.c (complete_filename_p, openp):
7229 * minibuf.c (Fminibuffer_complete_word):
7230 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
7231 (face_before_or_after_it_pos, next_element_from_string):
7232 (get_overlay_arrow_glyph_row, display_mode_element):
7233 (decode_mode_spec_coding):
7234 * xterm.c (same_x_server): Likewise.
7235
7236 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
7237 settings of non-existent fields.
7238
7239 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
7240 copy a lisp value.
7241
7242 * lread.c (Fintern_soft): Use string macros instead of
7243 Lisp_String fields.
7244 * keyboard.c (echo_char, parse_modifiers_uncached):
7245 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
7246 * textprop.c (validate_interval_range, interval_of): Likewise.
7247
7248 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
7249
7250 * charset.h (FETCH_STRING_CHAR_ADVANCE)
7251 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
7252 XSTRING()->size_byte.
7253
7254 * lisp.h (SDATA, SREF): Produce rvalue.
7255 (SSET): New macro.
7256 * alloc.c (make_event_array): Use SSET for storing into a string.
7257 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
7258 a string.
7259 * casefiddle.c (casify_object): Use SSET.
7260 * charset.h (FETCH_STRING_CHAR_ADVANCE)
7261 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
7262 address of string contents.
7263 * data.c (Faref): Use SDATA.
7264 (Faset): Use SDATA, SSET.
7265 * dired.c (directory_files_internal): Use SSET.
7266 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
7267 (Fread_file_name): Use SREF, SSET.
7268 * fns.c (concat): Use SSET.
7269 (concat, Fdelete): Use SDATA.
7270 * insdel.c (insert_from_string_1): Use SDATA.
7271 * keyboard.c (Fevent_convert_list): Use SREF.
7272 * lread.c (Fload): Use SDATA, SSET.
7273 * macfns.c (validate_x_resource_name): Use SSET.
7274 * process.c (status_message): Use SSET.
7275 * search.c (wordify): Use SDATA.
7276 (Freplace_match): Use SREF.
7277 * w32fns.c (validate_x_resource_name): Use SSET.
7278 * xfns.c (validate_x_resource_name): Use SSET.
7279 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
7280
72812002-07-16 Richard M. Stallman <rms@gnu.org>
7282
7283 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
7284
7285 * xdisp.c (reconsider_clip_changes):
7286 Don't test prevent_redisplay_optimizations_p.
7287 (redisplay_internal): Test prevent_redisplay_optimizations_p
7288 along with clip_changed in some cases.
7289 (try_window_id): Likewise.
7290 (redisplay_window): New local var buffer_unchanged_p.
7291
7292 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
7293
7294 * process.c (create_process): Test USG_SUBTTY_WORKS.
7295 (process_send_signal): Clean up handling of GID.
7296 Detect errors in ioctls meant to set GID.
7297
7298 * window.c (temp_output_buffer_show):
7299 Don't set prevent_redisplay_optimizations_p.
7300
73012002-07-15 Juanma Barranquero <lektu@terra.es>
7302
7303 * eval.c (Fdefvaralias): Add docstring argument.
7304
73052002-07-15 Ken Raeburn <raeburn@gnu.org>
7306
7307 * lisp.h (STRING_INTERVALS): Produce rvalue.
7308 (STRING_SET_INTERVALS): New macro.
7309 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
7310 * fns.c (Fstring_as_multibyte): Likewise.
7311 * intervals.c (balance_possible_root_interval, delete_interval)
7312 (create_root_interval, copy_intervals_to_string): Likewise.
7313 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
7314 instead of 0.
7315
73162002-07-14 Ken Raeburn <raeburn@gnu.org>
7317
7318 * lisp.h (STRING_SET_CHARS): New macro.
7319 (SCHARS, SBYTES): Produce rvalues.
7320 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
7321 * fns.c (concat): Likewise.
7322 * lread.c (read_vector): Likewise.
7323
7324 * lisp.h (SMBP): Deleted. All uses changed to STRING_MULTIBYTE.
7325 (STRING_SET_UNIBYTE): New macro.
7326 (SET_STRING_BYTES): Deleted. Callers (all of which supplied a
7327 length of -1) changed to use STRING_SET_UNIBYTE.
7328 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
7329 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
7330 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
7331 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
7332 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
7333 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
7334 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
7335 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
7336 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
7337 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
7338 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
7339 STRING_BYTES or indirection changed to SCHARS, SBYTES,
7340 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
7341 unchanged for now.
7342
73432002-07-13 Kim F. Storm <storm@cua.dk>
7344
7345 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
7346
73472002-07-12 Richard M. Stallman <rms@gnu.org>
7348
7349 * fileio.c (Fwrite_region): Doc fix.
7350
7351 * print.c (print_error_message): Don't handle Vsignaling_function here.
7352
7353 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
7354 (command_loop_1): Avoid certain actions after memory-full error.
7355
7356 * eval.c (Fsignal): Don't call cancel_hourglass.
7357 For a memory-full error, don't call Vsignal_hook_function
7358 and don't set Vsignaling_function.
7359
7360 * process.c (process_send_signal): Add abort call.
7361
73622002-07-11 Markus Rost <rost@math.ohio-state.edu>
7363
7364 * keymap.c (Fkey_binding): Fix typo.
7365
73662002-07-11 Richard M. Stallman <rms@gnu.org>
7367
7368 * alloc.c (Vmemory_full): New variable.
7369 (Vmemory_signal_data): Renamed from memory_signal_data.
7370 Uses changed.
7371 (syms_of_alloc): Defvar them.
7372 (memory_full, buffer_memory_full): Set Vmemory_full.
7373
7374 * lisp.h (Vmemory_full): Add declaration.
7375 (current_column, indented_beyond_p): Change declaration.
7376
7377 * indent.c (last_known_column): Declare as double, not float.
7378 (current_column, current_column_1, string_display_width)
7379 (position_indentation): Return `double'.
7380 (indented_beyond_p): Arg `column' is `double'. Callers changed.
7381
7382 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
7383 (back_to_previous_visible_line_start)
7384 (reseat_at_next_visible_line_start, next_element_from_buffer):
7385 Use `double', not `float', when calling indented_beyond_p.
7386
7387 * s/hpux11.h (BROKEN_SA_RESTART): Defined.
7388
7389 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
7390
73912002-07-11 Juanma Barranquero <lektu@terra.es>
7392
7393 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
7394 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
7395 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
7396 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
7397 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
7398 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
7399
74002002-07-10 Juanma Barranquero <lektu@terra.es>
7401
7402 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE. All callers
7403 changed.
7404
74052002-07-09 Stefan Monnier <monnier@cs.yale.edu>
7406
7407 * data.c (Fdefalias): Add an optional `docstring' argument.
7408 (set_internal, Fsetq_default): Use XCAR/XCDR.
7409
7410 * composite.c (HASH_VALUE, HASH_KEY):
7411 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
7412
74132002-07-09 Kenichi Handa <handa@etl.go.jp>
7414
7415 * callproc.c (Fcall_process): Fix previous change.
7416
74172002-07-07 Stefan Monnier <monnier@cs.yale.edu>
7418
7419 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
7420 Add support for hash-tables.
7421 (Ftry_completion): Return t even if the string appears multiple times.
7422
7423 * fns.c (Fnconc): Use XCDR.
7424 (Fprovide): Use CONSP and XCDR.
7425 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
7426 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
7427 (Fmake_hash_table): Accept `:size nil'.
7428 (Fmakehash): Delete: moved to subr.el.
7429 (syms_of_fns): Don't defsubr makehash.
7430
7431 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
7432 (HASH_TABLE_SIZE): Move from fns.c.
7433
74342002-07-07 Richard M. Stallman <rms@gnu.org>
7435
7436 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
7437 Instead just return 0 when there is something to be done.
7438 (try_scrolling): If make_cursor_line_fully_visible returns 0,
7439 retry scrolling as if cursor were off the bottom.
7440 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
7441 return CURSOR_MOVEMENT_MUST_SCROLL.
7442 (redisplay_window): If make_cursor_line_fully_visible returns 0,
7443 go to try_to_scroll.
7444
7445 * buffer.c (Fbuffer_local_value): Store current value into its binding
7446 so we get the up-to-date value for the binding that is loaded.
7447
7448 * eval.c (Fdefmacro): Doc fix.
7449
74502002-07-05 Dave Love <fx@gnu.org>
7451
7452 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
7453 correctly.
7454
7455 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
7456 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
7457 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
7458 CCL_LookupCharConstTbl.
7459 (syms_of_ccl): Defvar translation-hash-table-vector.
7460
74612002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7462
7463 * xdisp.c: Remove unused variable `face'.
7464
74652002-07-04 Juanma Barranquero <lektu@terra.es>
7466
7467 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
7468 obsolescence information.
7469
74702002-07-03 Andrew Choi <akochoi@shaw.ca>
7471
7472 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
7473 pattern. Search cache first.
7474 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
7475 for Japanese font.
7476 (XLoadQueryFont): Use it.
7477
74782002-07-02 Richard M. Stallman <rms@gnu.org>
7479
7480 * keymap.c (Fdefine_key): Doc fix.
7481
7482 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
7483
74842002-07-02 Juanma Barranquero <lektu@terra.es>
7485
7486 * keymap.c (syms_of_keymap): Fix typo.
7487
74882002-07-01 Andrew Choi <akochoi@shaw.ca>
7489
7490 * s/darwin.h: Define POSIX_SIGNALS.
7491
7492 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
7493 and FSRefMakePath to convert FSSpec returned with Apple Event to
7494 Posix pathname.
7495 (mac_initialize) [TARGET_API_MAC_CARBON]:
7496 Call init_required_apple_events and disable the `Quit' menu item
7497 provided automatically by the Carbon Toolbox.
7498
74992002-07-01 Dave Love <fx@gnu.org>
7500
7501 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
7502 for K&R.
7503
7504 * xterm.c: Fix prototype for K&R.
7505
7506 * term.c (costs_set): Declare static, non-initialized for pcc.
7507
75082002-07-01 Richard M. Stallman <rms@gnu.org>
7509
7510 * keyboard.c (timer_last_idleness_start_time): New variable.
7511 (timer_start_idle): Set that.
7512 (read_key_sequence): Use that to reset timer_idleness_start_time
7513 to previous value.
7514
7515 * window.c (Frecenter): With arg, set optional_new_start.
7516
7517 * xdisp.c (redisplay_internal): Make optional_new_start really work.
7518
7519 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
7520 buffer for completion.
7521
75222002-06-29 Ken Raeburn <raeburn@gnu.org>
7523
7524 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
7525
75262002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7527
7528 * keyboard.c (readable_filtered_events): New function that filters
7529 FOCUS_IN_EVENT depending on parameter.
7530 (readable_events): Calls readable_filtered_events, not filtering
7531 FOCUS_IN_EVENT.
7532 (get_filtered_input_pending): New function, filtering parameter passed
7533 to readable_filtered_events.
7534 (get_input_pending): Calls get_filtered_input_pending, not filtering
7535 FOCUS_IN_EVENT.
7536 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
7537 FOCUS_IN_EVENT.
7538
7539 * xterm.h (struct x_output): Add focus_state.
7540
7541 * xterm.c (x_focus_changed): New function.
7542 (x_detect_focus_change): New function.
7543 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
7544 EnterNotify and LeaveNotify to track X focus changes.
7545
75462002-06-28 Andreas Schwab <schwab@suse.de>
7547
7548 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
7549
75502002-06-27 Kim F. Storm <storm@cua.dk>
7551
7552 * xdisp.c: (mode_line_string_list, mode_line_string_face)
7553 (mode_line_string_face_prop): New variables.
7554 (store_mode_line_string): New function.
7555 (display_mode_element): Use store_mode_line_string to
7556 add mode-line string elements to mode_line_string_list
7557 when mode_line_string_list is non-nil.
7558 (Fformat_mode_line): Now returns propertized string by
7559 default. New arg NO-PROPS to ignore properties.
7560 (decode_mode_spec): Only add two dashes for %- in propertized
7561 mode-line string.
7562 (syms_of_xdisp): Init and staticpro mode_line_string_list.
7563
75642002-06-27 Stefan Monnier <monnier@cs.yale.edu>
7565
7566 * minibuf.c (minibuffer_completion_contents): Add return type.
7567
75682002-06-27 Juanma Barranquero <lektu@terra.es>
7569
7570 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
7571
75722002-06-26 Juanma Barranquero <lektu@terra.es>
7573
7574 * fileio.c (read_file_name_cleanup): Add missing return.
7575
75762002-06-26 Richard M. Stallman <rms@gnu.org>
7577
7578 * window.c (Frecenter): Don't set force_start flag.
7579
7580 * minibuf.c (do_completion, Fminibuffer_complete_word)
7581 (Fminibuffer_completion_help): Complete just the text before point.
7582 (minibuffer_completion_contents): New function.
7583
7584 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
7585
7586 * frame.c (frames_bury_buffer): Function deleted.
7587
75882002-06-25 Miles Bader <miles@gnu.org>
7589
7590 * callint.c (Fcall_interactively): When checking to see if doprnt hit
7591 the end of callint_message, allow for a terminating '\0'.
7592
75932002-06-24 Juanma Barranquero <lektu@terra.es>
7594
7595 * w32select.c: Include composite.h
7596
7597 * w16select.c: Likewise.
7598
75992002-06-24 Kenichi Handa <handa@etl.go.jp>
7600
7601 * callproc.c (Fcall_process): If code detection is necessary,
7602 call detect_coding directly here.
7603
7604 * coding.c (detect_eol): Preserve coding->cmp_data.
7605
7606 * w16select.c (Fw16_get_clipboard_data):
7607 * w32fns.c (w32_to_x_font):
7608 * w32select.c (Fw32_get_clipboard_data):
7609 * xselect.c (selection_data_to_lisp_data):
7610 * xterm.c (XTread_socket): Disable composition handling.
7611
76122002-06-24 Stefan Monnier <monnier@cs.yale.edu>
7613
7614 * print.c (temp_output_buffer_setup): Kill all local variables.
7615
76162002-06-22 Stefan Monnier <monnier@cs.yale.edu>
7617
7618 * lread.c (Fread): Remove redundant and imprecise declaration.
7619
7620 * xfns.c (check_x_display_info): Use check_x_frame.
7621
7622 * .gdbinit (xprintsym): Use the new `xname' field.
7623 (xsymbol): Use it.
7624
76252002-06-22 Jason Rumney <jasonr@gnu.org>
7626
7627 * w32fns.c (file_dialog_callback): New function.
7628 (Fx_file_dialog): Allow selecting directories as well as files.
7629
76302002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7631
7632 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
7633 OpenBSD. Add support for mipseb-*-netbsd* machines.
7634
76352002-06-17 Andrew Choi <akochoi@shaw.ca>
7636
7637 * macterm.c (mac_scroll_area): Set foreground and backcolor to
7638 black and white before scrolling. Restore frame background and
7639 foreground color after scrolling.
7640 (do_window_update): Call XClearWindow before calling expose_frame.
7641 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
7642 FRAME_FOREGROUND_PIXEL of frame.
7643
7644 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
7645 test Mac command key as <ALT> key.
7646
76472002-06-17 Stefan Monnier <monnier@cs.yale.edu>
7648
7649 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
7650
7651 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
7652 Lookup keys in function-key-map immediately so that key-translation-map
7653 can be applied earlier.
7654 Remove function_key_possible and key_translation_possible, replaced
7655 by checking `keytran_start < t'.
7656
7657 * .gdbinit (xsymbol): Use the new `xname' field.
7658
76592002-06-17 Andrew Choi <akochoi@shaw.ca>
7660
7661 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
7662 test Mac command key as <ALT> key.
7663
7664 * mac.c (do_applescript): Call initialize_applescript if necessary
7665 when first called. Dispose of result_desc only when there is no error.
7666 (Fdo_applescript): Use %d format specifier instead of %ld.
7667
76682002-06-16 Andrew Choi <akochoi@shaw.ca>
7669
7670 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
7671 of FrontWindow for cases keyDown and autoKey.
7672
7673 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
7674 Vdefault_fontset to Monaco with mac-roman coding.
7675
7676 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
7677 init_process before and after inclusion of Carbon/Carbon.h, resp.
7678
7679 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
7680 cursor_gc.
7681 (add_font_name_table_entry): New function.
7682 (init_font_name_table): Use add_font_name_table_entry; add italic,
7683 bold, and bold-italic entries for truetype fonts.
7684
7685 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
7686 for Mac too.
7687 (try_font_list) [MAC_OS]: If no font matches given registry, try
7688 fonts with any registry matching face_family.
7689 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
7690
7691 * s/darwin.h: If autoconf detects the Ncurses library, define
7692 LIBS_TERMCAP to -lncurses to use it.
7693
76942002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
7695
7696 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
7697
76982002-06-15 Richard M. Stallman <rms@gnu.org>
7699
7700 * window.c (Fset_window_configuration): Explicitly preserve
7701 the point value that new_current_buffer had at the start.
7702
77032002-06-14 Juanma Barranquero <lektu@terra.es>
7704
7705 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
7706 Fix typos.
7707
77082002-06-14 Kim F. Storm <storm@cua.dk>
7709
7710 * insdel.c (insert_1_both, insert_from_string_1)
7711 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
7712 insert happened in the end_unchanged region. Otherwise, the
7713 redisplay may be confused and duplicate the last line in the
7714 buffer [seen after save-buffer when require-final-newline==t].
7715
77162002-06-13 Jason Rumney <jasonr@gnu.org>
7717
7718 * w32.c (init_environment): Remove EMACSLOCKDIR.
7719 (stat): Swap _S_IFDIR and _S_IFREG.
7720
77212002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7722
7723 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
7724 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
7725 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
7726 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
7727 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
7728 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
7729 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
7730 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
7731 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
7732 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
7733 SELECTION_REQUEST_EVENT, selection_clear_event to
7734 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
7735 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
7736 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
7737 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
7738 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
7739 no_event to NO_EVENT.
7740
77412002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7742
7743 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
7744
77452002-06-12 Stefan Monnier <monnier@cs.yale.edu>
7746
7747 * intervals.c (textget): Don't forget to `return'.
7748 (lookup_char_property): Use XCAR/XCDR.
7749
77502002-06-12 Juanma Barranquero <lektu@terra.es>
7751
7752 * xdisp.c (Fformat_mode_line): Fix typo.
7753
77542002-06-12 Kim F. Storm <storm@cua.dk>
7755
7756 * xdisp.c (Fformat_mode_line): New function.
7757 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
7758 (store_frame_title_char, store_frame_title): Use unconditionally.
7759 (init_xdisp): Defsubr Fformat_mode_line.
7760 Initialize frame_title_buf etc. unconditionally.
7761
77622002-06-11 Stefan Monnier <monnier@cs.yale.edu>
7763
7764 * keyboard.c (read_key_sequence):
7765 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
7766 things through those maps after downcasing events.
7767 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
7768 applies after function-key-map.
7769 Make sure that keytran can be done in the middle in the sequence.
7770 Be careful not to throw away events past the one we downcase.
7771
7772 * lread.c (read_integer): Remove unused var `tem'.
7773 (read1): Fix int/Lisp_Object mixup.
7774
7775 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
7776
77772002-06-11 Richard M. Stallman <rms@gnu.org>
7778
7779 * keyboard.c (readable_events): Ignore any number of
7780 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
7781
77822002-06-09 Miles Bader <miles@gnu.org>
7783
7784 * xfaces.c (Ftty_supports_face_attributes_p): New function.
7785 (parse_rgb_list, tty_lookup_color): New functions.
7786 (tty_defined_color): Use `tty_lookup_color' to do all the work.
7787 (color_distance, Fcolor_distance): New functions.
7788 (TTY_SAME_COLOR_THRESHOLD): New macro.
7789 (Qtty_color_standard_values): New variable.
7790 (syms_of_xfaces): Initialize new vars & functions.
7791
77922002-06-08 Colin Walters <walters@verbum.org>
7793
7794 * textprop.c (Vchar_property_alias_alist): New variable.
7795 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
7796
7797 * intervals.c (lookup_char_property): New function for looking up
7798 overlay and text properties, created from textget.
7799 (textget): Use it.
7800
7801 * intervals.h (lookup_char_property): Declare.
7802 (Vchar_property_alias_alist): Declare.
7803
7804 * buffer.c (Foverlay_get): Use lookup_char_property.
7805
78062002-06-07 Sam Steingold <sds@gnu.org>
7807
7808 * xselect.c (lisp_data_to_selection_data): Fix last change:
7809 *data_ret is not a Lisp string, while unibyte_string is.
7810
78112002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
7812
7813 * xselect.c (lisp_data_to_selection_data): Fix last change:
7814 set size_ret.
7815
78162002-06-07 Andreas Schwab <schwab@suse.de>
7817
7818 * m/amdx86-64.h: New file.
7819
78202002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
7821
7822 * fns.c (Fstring_make_unibyte): Doc fix.
7823
7824 * xselect.c (lisp_data_to_selection_data): If the requested type
7825 is STRING, call string_make_unibyte to encode the selected text
7826 as a string.
7827
7828 * window.c (Fset_window_hscroll): Doc fix.
7829
78302002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7831
7832 * fileio.c (choose_write_coding_system):
7833 Call select-safe-coding-system properly.
7834
78352002-06-03 Richard M. Stallman <rms@gnu.org>
7836
7837 * xdisp.c (message_with_string): Error if STRING is not a string.
7838
7839 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
7840
7841 * fileio.c (choose_write_coding_system): Pass FILE arg to
7842 Vselect_safe_coding_system_function.
7843
78442002-06-03 Ken Raeburn <raeburn@gnu.org>
7845
7846 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
7847
78482002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
7849
7850 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
7851 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
7852 * keymap.c (describe_command): Likewise.
7853 * minibuf.c (read_minibuf): Likewise.
7854
7855 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
7856 Cast `current_column' return value to int.
7857 (back_to_previous_visible_line_start)
7858 (reseat_at_next_visible_line_start, next_element_from_buffer):
7859 Cast `indented_beyond_p' 3rd arg to float.
7860
7861 * indent.c (last_known_column): Now a float.
7862 (current_column_1, position_indentation, current_column)
7863 (string_display_width): Return float.
7864 (Fcurrent_column): Cast `current_column' return value to int.
7865 (Fcurrent_indentation): Cast `position_indentation' retval to int.
7866 (indented_beyond_p): Third arg now a float.
7867 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
7868
7869 * lisp.h (current_column): Now returns float.
7870 (indented_beyond_p): 3rd arg now a float.
7871
78722002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
7873
7874 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
7875 is Qcompound_text_with_extensions.
7876
7877 * xselect.c (lisp_data_to_selection_data): Always set selection
7878 type as string if x_encode_text returns streingp non-NULL.
7879
7880 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
7881
78822002-05-30 Richard M. Stallman <rms@gnu.org>
7883
7884 * window.c (Fset_window_configuration): Correct the handling
7885 of point in current buffer, to work with multiple windows.
7886
78872002-05-29 Colin Walters <walters@verbum.org>
7888
7889 * lread.c (Fread_from_string): Don't depend on order of evaluation
7890 for C function parameters.
7891
78922002-05-28 Richard M. Stallman <rms@gnu.org>
7893
7894 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
7895 way for blinked-off state and for a nonselected window.
7896
7897 * window.c (window_scroll_pixel_based): Don't call Fbolp;
7898 instead, see if the new start pos is at beginning of line.
7899
7900 * fileio.c (Fwrite_region): If START is a string, don't
7901 make any annotations.
7902
7903 * eval.c (syms_of_eval): Doc fix.
7904
79052002-05-28 Colin Walters <walters@debian.org>
7906
7907 * emacs.c (USAGE1): Add --no-splash.
7908 (standard_args): Ditto.
7909
79102002-05-28 Colin Walters <walters@gnu.org>
7911
7912 * lread.c (readchar_count): New variable.
7913 (readchar): Increment it.
7914 (unreadchar): Decrement it.
7915 (read_multibyte): Decrement it.
7916 (Vread_with_symbol_positions): New variable.
7917 (Vread_symbol_positions_list): New variable.
7918 (read_internal_start): New function, created from Fread and
7919 Fread_from_string. Handle Vread_symbol_positions_list and
7920 Vread_with_symbol_positions.
7921 (readevalloop, Fread, Fread_from_string): Use it.
7922 (read1): Use readchar_count to add symbol positions to
7923 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
7924 (syms_of_lread): DEFVAR_LISP and initialize them.
7925
7926 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
7927 (substitute_object_recurse, substitute_object_in_subtree)
7928 (substitute_in_interval): Prototype.
7929 (read_multibyte): Return c if it's less than zero.
7930
79312002-05-28 Kim F. Storm <storm@cua.dk>
7932
7933 * fileio.c (Fread_file_name_internal): Added brute-force
7934 speed up for using predicate file-directory-p.
7935
79362002-05-28 Kim F. Storm <storm@cua.dk>
7937
7938 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
7939 New variables.
7940 (syms_of_fileio): DEFVAR_LISP them.
7941 (read_file_name_cleanup): New unwind function.
7942 (Fread_file_name_internal): Only return completions satifying
7943 Vread_file_name_predicate. Temporarily unwind protect and rebind
7944 default-directory while checking completions against the predicate.
7945 (Fread_file_name): Added PREDICATE argument. Specbind it to
7946 Vread_file_name_predicate during completion.
7947 Call Vread_file_name_function to read the file name if non-nil.
7948
7949 * lisp.h (Fread_file_name): Now has 6 args.
7950
7951 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
7952 predicate for Fread_file_name when reading directory name.
7953 Supply Qnil for predicate in other calls to Fread_file_name.
7954
79552002-05-26 Miles Bader <miles@gnu.org>
7956
7957 * term.c (tty_capable_p): New function.
7958 * dispextern.h (tty_capable_p): New function declaration.
7959 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
7960 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
7961
79622002-05-23 Stefan Monnier <monnier@cs.yale.edu>
7963
7964 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
7965 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
7966 (Vwrite_region_annotate_functions): Docstring fix.
7967
79682002-05-23 Kim F. Storm <storm@cua.dk>
7969
7970 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
7971 phys_cursor's hpos is overwritten. This is still not completely
7972 correct, as it doesn't really make sense to use hpos at all to
7973 get the cursor glyph (as that is relative to the width of the
7974 characters on the line, which may have changed during the update).
7975
79762002-05-22 Jason Rumney <jasonr@gnu.org>
7977
7978 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
7979 Lisp_Object.
7980 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
7981 Use modified enumfont_t struct.
7982
7983 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
7984
7985 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
7986 Handle the `hbar' cursor type.
7987 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
7988
7989 * w32fns.c (Qhbar): New variable.
7990 (x_specified_cursor_type): Use it.
7991
79922002-05-21 Ken Raeburn <raeburn@gnu.org>
7993
7994 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
7995 now, when the address is needed.
7996
79972002-05-21 Colin Walters <walters@gnu.org>
7998
7999 * Makefile.in (shortlisp): Add font-core.el.
8000
80012002-05-20 Richard M. Stallman <rms@gnu.org>
8002
8003 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
8004
8005 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
8006 equivalent key bindings here.
8007
80082002-05-20 Ken Raeburn <raeburn@gnu.org>
8009
8010 Change symbol structure to contain a lisp object for the symbol
8011 name:
8012 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
8013 object field named "xname".
8014 (SYMBOL_NAME): New macro.
8015 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
8016 name field.
8017 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
8018 (mark_object, gc_sweep): Use symbol xname field and XSTRING
8019 instead of name field.
8020 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
8021 SYMBOL_NAME instead of XSYMBOL and name field.
8022 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
8023 instead of XSYMBOL and name field.
8024 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
8025 and SYMBOL_NAME instead of XSYMBOL and name field.
8026 * coding.c (Fread_coding_system, code_convert_region1)
8027 (code_convert_string1, code_convert_string_norecord)
8028 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
8029 XSYMBOL and name field.
8030 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
8031 (Fmake_variable_buffer_local, Fmake_local_variable)
8032 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
8033 of XSYMBOL and name field.
8034 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
8035 XSYMBOL and name field.
8036 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
8037 instead of XSYMBOL and name field.
8038 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
8039 XSYMBOL and name field.
8040 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
8041 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
8042 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
8043 instead of XSYMBOL and name field.
8044 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
8045 (parse_modifiers, apply_modifiers, Fevent_convert_list)
8046 (parse_solitary_modifier, Fexecute_extended_command):
8047 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
8048 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
8049 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
8050 of XSYMBOL and name field.
8051 (describe_command, describe_translation): Use SYMBOL_NAME and
8052 assignment instead of XSYMBOL and name field and XSETSTRING.
8053 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
8054 instead of XSYMBOL and name field.
8055 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
8056 name field and XSETSTRING.
8057 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
8058 of XSYMBOL and name field.
8059 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
8060 assignment instead of XSYMBOL and name field and XSETSTRING.
8061 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
8062 XSTRING instead of XSYMBOL and name field.
8063 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
8064 and XSTRING instead of XSYMBOL and name field.
8065 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
8066 and XSTRING instead of XSYMBOL and name field.
8067 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
8068 XSTRING instead of XSYMBOL and name field.
8069 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
8070 of XSYMBOL and name field.
8071 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
8072 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
8073
80742002-05-19 Ken Raeburn <raeburn@gnu.org>
8075
8076 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
8077 and XCDR real rvalues in most configurations.
8078
8079 * buffer.c (fix_overlays_in_range, fix_overlays_before):
8080 Don't take the address of the cdr part of a cons cell; instead, track
8081 the parent cell and call XSETCDR, or set the variable for the head
8082 of the list if we haven't started down the list yet.
8083
80842002-05-19 Richard M. Stallman <rms@gnu.org>
8085
8086 * doc.c (reread_doc_file): Don't ask for confirmation.
8087
80882002-05-18 Jason Rumney <jasonr@gnu.org>
8089
8090 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
8091 (xbm_load_image): Use it.
8092 (xbm_load): Ditto.
8093 (xbm_read_bitmap_data): Reverted to xfns.c version.
8094 From David Ponce <david@dponce.com>.
8095
80962002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
8097
8098 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
8099 2.02 and later.
8100
81012002-05-16 Juanma Barranquero <lektu@terra.es>
8102
8103 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
8104
81052002-05-15 Stefan Monnier <monnier@cs.yale.edu>
8106
8107 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
8108 meaningful test.
8109 (read_char_minibuf_menu_prompt): Fix typo.
8110
81112002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
8112
8113 * eval.c (Fcommandp): Doc fix.
8114
81152002-05-13 Stefan Monnier <monnier@cs.yale.edu>
8116
8117 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
8118 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
8119 (Fset_keymap_parent): Gcpro a bit more.
8120 (access_keymap): Gcpro around meta_map call and around the main loop.
8121 (get_keyelt): Gcpro when following indirect references.
8122 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
8123 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
8124 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
8125 Remove useless ad-hoc remap code.
8126
81272002-05-13 Richard M. Stallman <rms@gnu.org>
8128
8129 * search.c (search_buffer): Give up boyer moore search if inverse
8130 translation change charset_base.
8131
81322002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
8133
8134 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
8135 characters is carried over from the previous block of text, adjust
8136 coding->produced to account for the extra character.
8137
81382002-05-11 Andreas Schwab <schwab@suse.de>
8139
8140 * coding.c (intersection): Keep the elements of the returned list
8141 in the same order as in the first list.
8142
81432002-05-11 Kim F. Storm <storm@cua.dk>
8144
8145 * keymap.c (current_minor_maps): Fixed resizing of cmm_maps;
8146 only update cmm_size if realloc actually succeeds.
8147 Testing with initial size of 2 elements revealed that using
8148 realloc on GNU/Linux would cause a random trap in xmalloc
8149 later on, so I rewrote the code to use malloc/bcopy/free instead
8150 of realloc.
8151
81522002-05-10 Jason Rumney <jasonr@gnu.org>
8153
8154 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
8155
81562002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
8157
8158 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
8159 parens, to ensure correct evaluation order.
8160
81612002-05-10 Kim F. Storm <storm@cua.dk>
8162
8163 * keymap.c (Vemulation_mode_map_alists): New variable.
8164 (syms_of_keymap): DEFVAR_LISP it.
8165 (current_minor_maps): Process keymap alists in that list before
8166 minor-mode-overriding-map-alist and minor-mode-map-alist.
8167
81682002-05-09 Richard M. Stallman <rms@gnu.org>
8169
8170 * search.c (Freplace_match): Doc fix.
8171
81722002-05-09 Kim F. Storm <storm@cua.dk>
8173
8174 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
8175 Enlarge cursor rectangle drawn around image with non-zero relief.
8176
8177 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
8178 Enlarge cursor rectangle drawn around image with non-zero relief.
8179
8180 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
8181 Enlarge cursor rectangle drawn around image with non-zero relief.
8182
81832002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
8184
8185 * xselect.c (lisp_data_to_selection_data): Don't set selection
8186 type if comes from the Lisp object's car. If the selection
8187 contains a pure ASCII text, always return QSTRING as its type.
8188
81892002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8190
8191 * mac.c (mac-cut-function): Doc fix.
8192
81932002-05-05 Richard M. Stallman <rms@gnu.org>
8194
8195 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
8196
81972002-05-04 Jason Rumney <jasonr@gnu.org>
8198
8199 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
8200 for event-click-count.
8201
8202 * process.c (init_process): Only add server subfeature if we can
8203 use non-blocking I/O.
8204
82052002-05-04 Andrew Choi <akochoi@shaw.ca>
8206
8207 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
8208 repeatedly.
8209
82102002-05-03 Jason Rumney <jasonr@gnu.org>
8211
8212 * process.c (Fmake_network_process): Only support server sockets
8213 when we can make them non-blocking.
8214
8215 * s/ms-w32.h (HAVE_SELECT): Define.
8216
8217 * w32.h (FILE_NDELAY): New flag.
8218
8219 * w32.c (sys_getpeername, fcntl): New functions.
8220 (_sys_read_ahead): Temporarily block on non-blocking sockets.
8221
8222 * w32proc.c: include sys/file.h.
8223
82242002-05-03 Colin Walters <walters@verbum.org>
8225
8226 * callproc.c (Vgame_score_directory): Renamed to
8227 Vshared_game_score_directory.
8228
82292002-04-30 Richard M. Stallman <rms@gnu.org>
8230
8231 * s/gnu.h [emacs]: Include stdio.h.
8232 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
8233
8234 * eval.c (do_autoload): Error if called while preparing to dump.
8235
8236 * fns.c (Frequire): Error if need to load while preparing to dump.
8237
82382002-04-28 Colin Walters <walters@verbum.org>
8239
8240 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
8241 Default to "~/.emacs.d/games".
8242
82432002-04-29 Stefan Monnier <monnier@cs.yale.edu>
8244
8245 * lread.c (openp): Change arg exec_only to predicate.
8246 (build_load_history): Use XCAR/XCDR.
8247 (Flocate_file_internal): New fun.
8248 (syms_of_lread): Defsubr it.
8249 (Fload): Update call to openp.
8250
8251 * lisp.h (openp): Update prototype.
8252
8253 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
8254 * w32proc.c (sys_spawnve):
8255 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
8256 * w32.c (check_windows_init_file):
8257 * sound.c (Fplay_sound_internal):
8258 * process.c (Fstart_process):
8259 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
8260 * mac.c (run_mac_command):
8261 * emacs.c (init_cmdargs):
8262 * callproc.c (Fcall_process): Update call to openp.
8263
8264 * textprop.c (remove_properties): Don't use XCAR without CONSP.
8265
8266 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
8267
82682002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8269
8270 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
8271 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
8272
82732002-04-28 Richard M. Stallman <rms@gnu.org>
8274
8275 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
8276
8277 * eval.c (Fcommandp): New arg for_call_interactively.
8278 * lisp.h (Fcommandp): Declare new arg.
8279
82802002-04-28 Jason Rumney <jasonr@gnu.org>
8281
8282 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
8283
8284 * w32.c (stat, fstat): Use file index information to generate
8285 inodes for directories where available.
8286
82872002-04-26 Andrew Choi <akochoi@shaw.ca>
8288
8289 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
8290 [HAVE_CARBON]: Include Mac object files.
8291
8292 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
8293 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
8294 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
8295 MAC_OSX, and MAC_OS instead of macintosh.
8296
8297 * editfns.c [MAC_OS8]: Include stdio.h.
8298
8299 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
8300
8301 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
8302 Apple Monaco.
8303
8304 * process.c: Declare QCfamily and QCfilter as extern.
8305 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
8306 calling select.
8307
8308 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
8309
8310 * tparam.c [MAC_OSX]: Don't define BC and UP.
8311
8312 * config.in [HAVE_CARBON]: Add.
8313
8314 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
8315 Move here from mac/src and mac/inc.
8316
8317 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
8318
83192002-04-26 Gerd Moellmann <gerd@gnu.org>
8320
8321 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
8322 Compute phys_cursor_width from the x position returned
8323 by x_draw_glyhs, which is cheaper.
8324 (x_display_and_set_cursor): Compute the buffer-local value
8325 of `cursor-in-non-selected-windows' only when needed.
8326
83272002-04-25 Gerd Moellmann <gerd@gnu.org>
8328
8329 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
8330 cursor on a stretch glyph has a width that depends on
8331 x_stretch_cursor_p.
8332
83332002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8334
8335 * abbrev.c (abbrev-start-location): Doc fix.
8336
8337 * indent.c (Fvertical_motion): Fix last change.
8338
83392002-04-25 Gerd Moellmann <gerd@gnu.org>
8340
8341 * indent.c (Fvertical_motion): Move to the start of the line
8342 containing PT before moving up or down.
8343
83442002-04-24 Gerd Moellmann <gerd@gnu.org>
8345
8346 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
8347 case of writing a whole row, more or less analogous to the case of
8348 writing only parts of a row.
8349
8350 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
8351 0 for NO_CURSOR.
8352
8353 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
8354
83552002-04-23 Colin Walters <walters@verbum.org>
8356
8357 * buffer.c (syms_of_buffer): Doc fix.
8358
83592002-04-23 Gerd Moellmann <gerd@gnu.org>
8360
8361 * xterm.c (notice_overwritten_cursor): Handle the special case
8362 of the cursor being in the first blank non-text line at the
8363 end of a window.
8364
8365 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
8366 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
8367 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
8368 bar cursors only, to make phys_cursor_width contain what its name
8369 suggests.
8370 (notice_overwritten_cursor): Consider the cursor image erased if
8371 the output area intersects the cursor image in y-direction.
8372
83732002-04-23 Simon Marshall <simon@gnu.org>
8374
8375 * xfns.c (x_set_mouse_color): Change default for cross_cursor
8376 to XC_hand2.
8377
83782002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8379
8380 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
8381
83822002-04-22 Kim F. Storm <storm@cua.dk>
8383
8384 * textprop.c (remove_properties): Fixed trap for malformed plist.
8385
83862002-04-22 Richard M. Stallman <rms@gnu.org>
8387
8388 * cmds.c (Fend_of_line): Handle intangible text in mid line.
8389
8390 * window.c (make_window): Initialize height_fixed_p,
8391 last_cursor_off_p, and p->cursor_off_p slots.
8392
83932002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8394
8395 * fns.c (use-dialog-box): Doc fix.
8396
83972002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8398
8399 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
8400 variables `row', `i' and `area'.
8401 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
8402 toolkit library.
8403
84042002-04-19 Stefan Monnier <monnier@cs.yale.edu>
8405
8406 * xfaces.c (clear_font_table): Don't free the default font of
8407 a frame even if it's on another display.
8408 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
8409 that could be Qt.
8410
84112002-04-19 Juanma Barranquero <lektu@terra.es>
8412
8413 * indent.c (Fmove_to_column): Remove unused local variable
8414 `next_boundary_byte'.
8415 (current_column_1): Likewise.
8416
84172002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
8418
8419 * msdos.c (Qhbar): New variable.
8420 (syms_of_msdos): Intern and staticpro it.
8421 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
8422 cursor type.
8423
84242002-04-19 Dave Lambert <dlambert@acm.org>
8425
8426 Theses change implement an underscore-like (`hbar') cursor.
8427
8428 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
8429
8430 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
8431 Handle the `hbar' cursor type.
8432 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
8433
8434 * xfns.c (Qhbar): New variable.
8435 (syms_of_xfns): Intern and staticpro it.
8436 (x_specified_cursor_type): Handle `hbar' cursor.
8437
8438 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
8439 not defined.
8440
84412002-04-18 Richard M. Stallman <rms@gnu.org>
8442
8443 * textprop.c (remove_properties): New arg LIST allows scanning
8444 either a list or a plist.
8445 (interval_has_some_properties_list): New function, like
8446 interval_has_some_properties using list instead of plist.
8447 All callers changed.
8448 (Fremove_list_of_text_properties): New function.
8449 (syms_of_textprop): Defsubr it.
8450
84512002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
8452
8453 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
8454
84552002-04-17 Juanma Barranquero <lektu@terra.es>
8456
8457 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
8458
84592002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
8460
8461 * window.c (coordinates_in_window): Don't report on margin area
8462 if its width is zero.
8463
84642002-04-16 Jason Rumney <jasonr@gnu.org>
8465
8466 * w32fns.c (Fx_file_dialog): Decode file name before using.
8467
8468 * w32term.c (construct_drag_n_drop): Likewise.
8469
84702002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
8471
8472 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
8473 store load-history in pure space.
8474
8475 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
8476
84772002-04-16 Stefan Monnier <monnier@cs.yale.edu>
8478
8479 * xterm.c (Qlatin_1, Qutf_8): New vars.
8480 (syms_of_xterm): Initialize them.
8481 (XTread_socket): Eliminate incorrect optimization that tried to avoid
8482 decoding the output of X*LookupString.
8483 Always use latin-1 to decode the output of XLookupString.
8484 Try Xutf8LookupString if XmbLookupString failed.
8485
8486 * region-cache.c (new_region_cache): Use BEG.
8487
84882002-04-16 Gerd Moellmann <gerd@gnu.org>
8489
8490 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
8491 configuration files.
8492 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
8493 returns 0.
8494
84952002-04-15 Andreas Schwab <schwab@suse.de>
8496
8497 * config.in: Regenerated using autoheader.
8498
8499 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
8500 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
8501 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
8502 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
8503 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
8504 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
8505 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
8506 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
8507 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
8508 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
8509 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
8510 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
8511 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
8512 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
8513 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
8514 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
8515 STACK_DIRECTION, now set by autoconf.
8516
85172002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8518
8519 * dispnew.c (marginal_area_string): Sort arguments.
8520
8521 * dispextern.h (marginal_area_string): Add prototype.
8522
85232002-04-13 Richard M. Stallman <rms@gnu.org>
8524
8525 * fileio.c (Finsert_file_contents):
8526 Don't call temp_output_buffer_setup--do just part, by hand.
8527
8528 * coding.c (run_pre_post_conversion_on_str):
8529 Don't call temp_output_buffer_setup--do just part, by hand.
8530
8531 * keyboard.c (command_loop_1): Don't call start_hourglass
8532 or cancel_hourglass when executing a macro.
8533
8534 * marker.c (count_markers): New function.
8535
8536 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
8537 grow without limit. Move recently used elements to the front.
8538
85392002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
8540
8541 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
8542
85432002-04-12 Gerd Moellmann <gerd@gnu.org>
8544
8545 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
8546 rows marginal areas.
8547 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
8548 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
8549
8550 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
8551
85522002-04-12 Dave Love <fx@gnu.org>
8553
8554 * dispnew.c (marginal_area_string): New.
8555
8556 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
8557 (Qleft_margin, Qright_margin): Declare.
8558 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
8559
8560 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
8561 note_mode_line_highlight and extended.
8562
8563 * keyboard.c (Qleft_margin, Qright_margin): Declare.
8564 (make_lispy_event): Deal with mouse events in margins.
8565
85662002-04-12 Stefan Monnier <monnier@cs.yale.edu>
8567
8568 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
8569
8570 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
8571 than deactivating the mark if tmm is set to `lambda'.
8572 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
8573 Use a single event for HELP_EVENT.
8574 (Fexecute_extended_command): Save last_point_position.
8575
85762002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8577
8578 * lisp.h (Fpropertize): Add prototype.
8579
8580 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
8581
85822002-04-10 Colin Walters <walters@verbum.org>
8583
8584 * config.in: Add HAVE_SHARED_GAME_DIR.
8585
8586 * callproc.c: (Vgame_score_directory): New variable.
8587 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
8588
85892002-04-10 Richard M. Stallman <rms@gnu.org>
8590
8591 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
8592
85932002-04-09 Stefan Monnier <monnier@cs.yale.edu>
8594
8595 * minibuf.c (read_minibuf): Use empty_string.
8596 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
8597 Short-circuit the search as soon as it "failed".
8598 (Fall_completions): Allow lambda forms and lists of strings for alist.
8599 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
8600 when require_match is nil.
8601 (Ftest_completion): Rename from `test_completion' and export to elisp.
8602 Call the predicate also when alist is a list.
8603 Obey Vcompletion_regexp_list.
8604 (do_completion, Fminibuffer_complete_and_exit): Use it.
8605 (Fassoc_string): Rename from `assoc_for_completion'.
8606 Allow list of strings as well and export to elisp.
8607
86082002-04-08 Stefan Monnier <monnier@cs.yale.edu>
8609
8610 * puresize.h (BASE_PURESIZE): Increase to 900KB.
8611
86122002-04-08 Juanma Barranquero <lektu@terra.es>
8613
8614 * w32.c (sys_accept): Don't hide variable `s'.
8615
86162002-04-05 Gerd Moellmann <gerd@gnu.org>
8617
8618 * callint.c (Fcall_interactively): Use INTEGERP instead of
8619 NUMBERP for checking Vhistory_length.
8620
86212002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8622
8623 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
8624 Doc fix to reflect it.
8625
86262002-04-04 Richard M. Stallman <rms@gnu.org>
8627
8628 * xdisp.c (display_mode_element): New arg RISKY.
8629 Disregard text props found or specified within a variable
8630 that isn't marked risky-local-variable.
8631 (Qrisky_local_variable): New variable.
8632 (syms_of_xdisp): Init and staticpro it.
8633
86342002-04-04 Stefan Monnier <monnier@cs.yale.edu>
8635
8636 * undo.c (record_point): New fun.
8637 (record_delete, record_insert): Use it.
8638
86392002-04-03 Juanma Barranquero <lektu@terra.es>
8640
8641 * doc.c (Fdocumentation): Add missing parentheses.
8642 (Fdocumentation_property): Likewise.
8643
86442002-04-03 Stefan Monnier <monnier@cs.yale.edu>
8645
8646 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
8647 data is 0, just return nil.
8648
86492002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
8650
8651 * msdos.c (syms_of_msdos): Fix last change with
8652 mouse_autoselect_window.
8653
86542002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8655
8656 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
8657 mouse_autoselect_window.
8658
86592002-04-02 Stefan Monnier <monnier@cs.yale.edu>
8660
8661 * keyboard.c (make_lispy_event): Handle unknown keysyms together
8662 with system-specific keysyms. Use it also for unknown function keys.
8663
8664 * doc.c (reread_doc_file): Return whether reload was attempted.
8665 (Fdocumentation, Fdocumentation_property): Don't try to reload
8666 if the doc is 0 and only ask once.
8667
8668 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
8669
86702002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
8671
8672 * keyboard.c (read_char): If the event was Qselect_window,
8673 restore timer_idleness_start_time to its previous value.
8674
8675 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
8676
86772002-04-01 Stefan Monnier <monnier@cs.yale.edu>
8678
8679 * region-cache.c (new_region_cache): Use BEG.
8680
8681 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
8682 Use BEG and BEG_BYTE.
8683
8684 * doc.c (get_doc_string): Return nil if the location is wrong.
8685 (reread_doc_file): New fun.
8686 (Fdocumentation, Fdocumentation_property):
8687 Call it if get_doc_string fails.
8688 (Fsnarf_documentation): Make it work for a dumped Emacs.
8689
8690 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
8691 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
8692
8693 * charset.c (Fstring): Allow 0 arguments.
8694
8695 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
8696
8697 * process.c (DATAGRAM_CONN_P, list_processes_1)
8698 (Fprocess_datagram_address, Fset_process_datagram_address)
8699 (Fset_network_process_options, server_accept_connection):
8700 Fix some int/Lisp_Object confusions (thank you union types).
8701
87022002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8703
8704 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
8705
8706 * w32term.c: Likewise.
8707 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
8708
8709 * keyboard.c (Qselect_window): New symbol.
8710 (head_table): Use it.
8711 (keys_of_keyboard): Bound select-window event to handle-select-window.
8712 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
8713
8714 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
8715 (last_window): New variable.
8716 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
8717 (note_mouse_movement): Remove reimplemented code in #if 0.
8718 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
8719 Emacs windows.
8720
8721 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
8722
87232002-03-31 Gerd Moellmann <gerd@gnu.org>
8724
8725 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
8726 Callers changed.
8727
87282002-03-30 Richard M. Stallman <rms@gnu.org>
8729
8730 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
8731 loop whenever it stops making progress.
8732
8733 * widget.c (set_frame_size): Don't call change_frame_size.
8734
87352002-03-30 Gerd Moellmann <gerd@gnu.org>
8736
8737 * dispnew.c (direct_output_for_insert):
8738 Call mark_window_display_accurate.
8739
87402002-03-29 Jason Rumney <jasonr@gnu.org>
8741
8742 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
8743
87442002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
8745
8746 * Makefile.in (lread.o): Depend on coding.h.
8747
8748 * lread.c (openp, Fload): Encode the file name before passing it
8749 to `stat', `access', and `emacs_open'.
8750 (openp): GCPRO the encoded file name. Don't recompute Lisp
8751 strings unnecessarily.
8752
87532002-03-29 Kim F. Storm <storm@cua.dk>
8754
8755 * fns.c (Flax_plist_put): Doc fix.
8756
87572002-03-28 Miles Bader <miles@gnu.org>
8758
8759 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
8760
87612002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8762
8763 * process.c (set-network-process-options): Add usage.
8764 (make-network-process): Doc fix.
8765
87662002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
8767
8768 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
8769
87702002-03-26 Richard M. Stallman <rms@gnu.org>
8771
8772 * fns.c (Fsubstring_no_properties): New function.
8773 (Flax_plist_get, Flax_plist_put): New functions.
8774 (syms_of_fns): defsubr them.
8775
8776 * xdisp.c (update_menu_bar): Test only update_mode_lines;
8777 don't test or alter w->update_mode_line.
8778
8779 * window.c (Fdisplay_buffer): Doc fix.
8780
87812002-03-24 Richard M. Stallman <rms@gnu.org>
8782
8783 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
8784
87852002-03-24 Gerd Moellmann <gerd@gnu.org>
8786
8787 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
8788 (Fdefmacro): Handle `(declare ...)'.
8789 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
8790 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
8791
87922002-03-24 Jason Rumney <jasonr@gnu.org>
8793
8794 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
8795 (xbm_file_p): Add prototypes.
8796 (xbm_format, xbm_image_p): Sync with xfns.c.
8797 (reflect_byte): New function.
8798 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
8799 (xbm_load_image): Create bitmaps with a depth of 1.
8800 (init_xfns): Enable XBM images.
8801
88022002-03-23 Jason Rumney <jasonr@gnu.org>
8803
8804 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
8805 correctly. Do not pass up_modifier to keyboard buffer.
8806
8807 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
8808
88092002-03-22 Stefan Monnier <monnier@cs.yale.edu>
8810
8811 * Makefile.in (bootstrapclean): New target.
8812 (bootstrap-temacs, bootstrap-doc): Remove.
8813 (bootstrap-emacs): Use a bog-standard `temacs'.
8814 Don't bother to build a DOC file.
8815
8816 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
8817
8818 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
8819 in temacs even if !CANNOT_DUMP.
8820 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
8821
8822 * alloc.c (check_pure_size): Only output a warning.
8823
88242002-03-22 Jason Rumney <jasonr@gnu.org>
8825
8826 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
8827 supported.
8828
8829 * w32term.c (zv_bits): Declare as short, for word alignment.
8830 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
8831 (syms_of_w32term): Define x-use-underline-position-properties.
8832
8833 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
8834 (clear_image_cache): Block input, fix logic, clear matrices in
8835 all frames that share this cache.
8836
88372002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
8838
8839 * emacs.c (main): Update the Copyright year in the blurb printed
8840 by "emacs --version".
8841
8842 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
8843
8844 * xterm.c (XTread_socket): If XK_ISO_Lock and
8845 XK_ISO_Last_Group_Lock are defined, handle keysyms between
8846 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
8847
88482002-03-21 Kim F. Storm <storm@cua.dk>
8849
8850 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
8851 menu-bar bindings in keymap and local-map properties _are_ used.
8852 But try keymap property first in accordance with 2002-01-03 patch.
8853 Added comment describing why this is not always reliable.
8854 (tool_bar_items): Ditto for tool-bar.
8855
88562002-03-21 Jason Rumney <jasonr@gnu.org>
8857
8858 * w32fns.c (x_clear_image_1): Disable color table code.
8859
88602002-03-21 Kim F. Storm <storm@cua.dk>
8861
8862 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
8863 removed the wrong version of the DEFUN macro; fixed it.
8864
8865 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
8866 Fmember rather than Fmemq).
8867 (Fprovide): Check that subfeatures is a list.
8868
8869 * process.c (QCfeature, QCdatagram): Removed variables.
8870 (QCtype, Qdatagram): New variables.
8871 (network_process_featurep): Removed function.
8872 (Fmake_network_process): Removed :feature check.
8873 Use :type 'datagram instead of :datagram t to create a datagram
8874 socket. This allows us to add other connection types (e.g. raw
8875 sockets) later in a consistent manner.
8876 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
8877 supported subfeatures for feature make-network-process.
8878 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
8879 Intern and staticpro QCtype and Qdatagram.
8880 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
8881
8882 * xfns.c: (QCtype): Remove duplicate declaration and
8883 initialization (is now declared in process.c).
8884
8885 * w32fns.c: (QCtype): Remove duplicate declaration and
8886 initialization (is now declared in process.c).
8887
88882002-03-21 Richard M. Stallman <rms@gnu.org>
8889
8890 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
8891 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
8892 when jumping to `fail' to avoid undoing reg changes in the
8893 last iteration of the loop.
8894 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
8895
8896 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
8897 Depend on process.h.
8898
88992002-03-20 Jason Rumney <jasonr@gnu.org>
8900
8901 Most of the following changes are still conditional on HAVE_IMAGES
8902 which is not set by default on Windows.
8903
8904 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
8905
8906 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
8907 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
8908 (four_corners_best, x_clear_image_1, x_clear_image)
8909 (x_alloc_image_color, postprocess_image)
8910 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
8911 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
8912 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
8913
8914 * w32gui.h (struct XImage): Define.
8915
8916 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
8917 extract mouse co-ordinates.
8918
89192002-03-20 Jason Rumney <jasonr@gnu.org>
8920
8921 * w32.c (init_winsock): Dynamically load new server and UDP
8922 socket functions.
8923 (socket_to_fd): New function.
8924 (sys_socket): Use it.
8925 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
8926 (sys_recvfrom, sys_sendto): New wrapper functions.
8927
8928 * process.c (QCfamily, QCfilter): Remove duplicate declaration
8929 and initialization.
8930
8931 * makefile.w32-in (LIBS): Remove $(WSOCK32).
8932
89332002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
8934
8935 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
8936 Don't use "sun" as a variable, it's a predefined constant on Sun
8937 machines.
8938
89392002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8940
8941 * bytecode.c (Fbyte_code): Revert last change.
8942
89432002-03-19 Kim F. Storm <storm@cua.dk>
8944
8945 * makefile.w32-in (LIBS): Add $(WSOCK32).
8946 From David Ponce <dponce@voila.fr>.
8947
89482002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8949
8950 * process.c (wait_reading_process_input): Move variables `pname'
8951 and `pnamelen' down where they are used.
8952
8953 * bytecode.c (Fbyte_code): Discard unused computed value to
8954 prevent gcc warning.
8955
8956 * lisp.h (Fplist_member): Add prototype.
8957
89582002-03-18 Kim F. Storm <storm@cua.dk>
8959
8960 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
8961 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
8962
8963 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
8964 Remove explicit GNU_LINUX settings for datagram support.
8965
89662002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8967
8968 * process.c (Fmake_network_process): Remove unused variable `sa'.
8969 Doc fix. Add usage:.
8970 (set_socket_options): Remove unused variables `optnum' and `opttype'.
8971
89722002-03-17 Richard M. Stallman <rms@gnu.org>
8973
8974 * xdisp.c (cursor_type_changed): New variable.
8975 (redisplay_internal): Redisplay all windows if cursor_type_changed.
8976 Clear it when clearing windows_or_buffers_changed.
8977 (try_cursor_movement, redisplay_window, try_window_id)
8978 (try_window_reusing_current_matrix): Test cursor_type_changed
8979 along with windows_or_buffers_changed.
8980
8981 * window.h (cursor_type_changed): New variable.
8982
8983 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
8984 not update_mode_lines, and always set it to 1.
8985
8986 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
8987 if no frames needed redrawing.
8988
89892002-03-17 Kim F. Storm <storm@cua.dk>
8990
8991 The following changes add support for network server processes,
8992 datagram connections, and local (unix) sockets.
8993
8994 * process.h (struct Lisp_Process): New member log.
8995 Doc fix: Member command used to indicate stopped network process.
8996 Doc fix: Member childp contains plist for network process.
8997 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
8998
8999 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
9000 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
9001 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
9002 New variables.
9003 (NETCONN1_P): New macro.
9004 (DATAGRAM_SOCKETS): New conditional symbol.
9005 (datagram_address): New array.
9006 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
9007 (status_message): Use concat3.
9008 (Fprocess_status): Add `listen' status to doc string. Return `stop'
9009 for a stopped network process.
9010 (Fset_process_buffer): Update contact plist for network process.
9011 (Fset_process_filter): Ditto. Don't enable input for stopped
9012 network processes. Server must listen, even if filter is t.
9013 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
9014 New functions.
9015 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
9016 (Fprocess_contact): Added KEY argument. Handle datagrams.
9017 (list_processes_1): Optionally show only processes with the query
9018 on exit flag set. Dynamically adjust column widths. Omit tty
9019 column if not needed. Report stopped network processes.
9020 Identify server and datagram network processes.
9021 (Flist_processes): New optional arg `query-only'.
9022 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
9023 (conv_lisp_to_sockaddr, set_socket_options)
9024 (network_process_featurep, unwind_request_sigio): New helper functions.
9025 (Fprocess_datagram_address, Fset_process_datagram_address):
9026 (Fset_network_process_options): New lisp functions.
9027 (Fopen_network_stream): Removed. Now defined in simple.el.
9028 (Fmake_network_process): New lisp function. Code is based on previous
9029 Fopen_network_stream, but heavily reworked with new property list based
9030 argument list, support for datagrams, server processes, and local
9031 sockets in addition to old client-only functionality.
9032 (server_accept_connection): New function.
9033 (wait_reading_process_input): Use it to handle incoming connects.
9034 Do not enable input on a new connection if process is stopped.
9035 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
9036 (send_process): Handle datagram sockets.
9037 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
9038 network process is indicated by setting command field to t .
9039 (Fprocess_send_eof): No-op if datagram connection.
9040 (Fstatus_notify): Don't read input for a stream server socket or a
9041 stopped network process.
9042 (init_process): Initialize datagram_address array.
9043 (syms_of_process): Intern and staticpro new variables, defsubr new
9044 functions.
9045
90462002-03-16 Jason Rumney <jasonr@gnu.org>
9047
9048 * w32fns.c (w32_to_all_x_charsets): Return correct type in
9049 startup case.
9050
90512002-03-16 Richard M. Stallman <rms@gnu.org>
9052
9053 * xdisp.c (redisplay_internal, redisplay_windows):
9054 Use list_of_error to call internal_condition_case_1.
9055 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
9056 so as to catch all errors with no possibility of debugger redisplay.
9057 (list_of_error): New variable.
9058 (syms_of_xdisp): Init and staticpro it.
9059
9060 * print.c (print_object): Delete `\ ' from printed rep of frame.
9061
90622002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
9063
9064 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
9065 until its implementation is fixed.
9066
90672002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9068
9069 * xfns.c (png_load): Remove unused variable `gamma_str'.
9070
90712002-03-14 Richard M. Stallman <rms@gnu.org>
9072
9073 * xfns.c (x_real_positions): Handle failure in XQueryTree.
9074
90752002-03-14 Miles Bader <miles@gnu.org>
9076
9077 * intervals.c (adjust_for_invis_intang): New function.
9078 (set_point_both): Use `adjust_for_invis_intang' to do most of the
9079 work for dealing with invisible+intangible regions. Do so before
9080 and after both forward and backward movements, to handle both
9081 front-sticky and rear-sticky cases.
9082 * textprop.c (text_property_stickiness): Function moved here from
9083 `editfns.c'.
9084 * intervals.h (text_property_stickiness): New declaration.
9085 * editfns.c (char_property_eq): Function removed.
9086 (text_property_stickiness): Function moved to `textprop.c'.
9087
90882002-03-13 Jason Rumney <jasonr@gnu.org>
9089
9090 * config.in: Add STRFTIME_NO_POSIX2.
9091
9092 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
9093 and %OX when underlying strftime does not.
9094
90952002-03-13 Stefan Monnier <monnier@cs.yale.edu>
9096
9097 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
9098 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
9099 line) to avoid annoying flicker.
9100 (xm_scroll_callback): Get rid of the now unnecessary kludge.
9101 (XTread_socket): Mark it static.
9102
9103 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
9104
91052002-03-13 Kim F. Storm <storm@cua.dk>
9106
9107 * puresize.h (BASE_PURESIZE): Increase to 775000.
9108
91092002-03-12 Juanma Barranquero <lektu@terra.es>
9110
9111 * editfns.c (syms_of_editfns): Fix typo.
9112
91132002-03-12 Gerd Moellmann <gerd@gnu.org>
9114
9115 * xsmfns.c: Include stdio.h because termhooks.h needs it.
9116 Include termopt.h for interrupt_input.
9117
91182002-03-11 Andreas Schwab <schwab@suse.de>
9119
9120 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
9121
91222002-03-11 Gerd Moellmann <gerd@gnu.org>
9123
9124 * xterm.c (note_mouse_movement): Put code for
9125 x_autoselect_window_p in #if 0.
9126
9127 * lread.c (Fload): Don't assume that message_with_string uses the
9128 string it is given like a C string.
9129
91302002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9131
9132 * xterm.h (x_session_check_input, x_session_initialize): Declared.
9133
9134 * xterm.c: (XTread_socket): Add call to x_session_check_input and
9135 x_session_have_connection.
9136 (x_initialize): Add call to x_session_initialize.
9137
9138 * termhooks.h (enum event_kind): Add save_session_event.
9139
9140 * keyboard.c: Add Emacs event save_session_event.
9141
9142 * emacs.c (main): Add call to syms_of_xsmfns.
9143
9144 * lisp.h: Declare syms_of_xsmfns as extern.
9145
9146 * config.in: Add HAVE_X_SM.
9147
9148 * Makefile.in (LIBXT): Add -lSM -lICE
9149 if HAVE_X_SM and not USE_X_TOOLKIT.
9150 (XOBJ): New file xsmfns.c added.
9151
9152 * xsmfns.c: New file for X session management.
9153
91542002-03-09 Jason Rumney <jasonr@gnu.org>
9155
9156 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
9157 read-only when setting modified time.
9158
91592002-03-08 Gerd Moellmann <gerd@gnu.org>
9160
9161 * xdisp.c (move_it_vertically_backward): At the end of the function,
9162 when moving forward by lines, treat terminal frames specially.
9163
9164 * keyboard.c (echo_char): Make sure to add a separator between
9165 keys even if echo_dash hasn't been called.
9166
9167 * xdisp.c: Use new string macros.
9168 (update_echo_area): Pass number of bytes to message3 instead of
9169 number of chars.
9170 (set_message_1): Don't access a string's size_byte directly.
9171 (decode_mode_spec_coding): Use number of bytes of eoltype string
9172 instead number of chars.
9173
9174 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
9175
91762002-03-08 Juanma Barranquero <lektu@terra.es>
9177
9178 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
9179 24-bit.
9180
91812002-03-06 Jason Rumney <jasonr@gnu.org>
9182
9183 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
9184
91852002-03-06 Gerd Moellmann <gerd@gnu.org>
9186
9187 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
9188 (cancel_echoing, echo_length, echo_truncate): Changed to
9189 work with new kboard definition.
9190 (echo_now): Use message3_nolog instead of message2_nolog.
9191
9192 * alloc.c (mark_kboards): Mark echo_string.
9193
9194 * keyboard.h (ECHOBUFSIZE): Removed.
9195 (struct kboard): Member echoptr removed, member echobuf renamed
9196 to echo_string.
9197
9198 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
9199 message3 instead of message2 to display the message using STRING's
9200 text properties.
9201
92022002-03-05 Andreas Schwab <schwab@suse.de>
9203
9204 * xdisp.c (hscroll_margin): Change to EMACS_INT.
9205
92062002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
9207
9208 * frame.c (default-frame-alist): Explain that setting it doesn't
9209 affect existing frames.
9210
92112002-03-05 Stefan Monnier <monnier@cs.yale.edu>
9212
9213 * indent.c (skip_invisible): Fix my brain fart.
9214
9215 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
9216
92172002-03-04 Stefan Monnier <monnier@cs.yale.edu>
9218
9219 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
9220 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
9221 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
9222 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
9223 and variables to use EMACS_INT instead of just int.
9224
9225 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
9226
92272002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
9228
9229 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
9230 environment, pass it down with corrected value.
9231
92322002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9233
9234 * lread.c (read_filtered_event): Do not call start_hourglass
9235 before returning.
9236
92372002-03-04 Juanma Barranquero <lektu@terra.es>
9238
9239 * w32term.c (x_display_and_set_cursor): Fix typo.
9240
92412002-03-03 Richard M. Stallman <rms@gnu.org>
9242
9243 * fileio.c (Fmake_temp_name): Doc fix.
9244
92452002-03-03 Gary Wong <gtw@gnu.org>
9246
9247 * termcap.c [!emacs]: Replace ospeed for building standalone
9248 libtermcap, for binary compatibility.
9249
9250 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
9251
92522002-03-03 Richard M. Stallman <rms@gnu.org>
9253
9254 * xrdb.c (file_p): Rename arg `path' to `filename'.
9255
9256 * abbrev.c (Fexpand_abbrev): Increment plist as use count
9257 only if it is an integer.
9258
9259 * xfns.c (png_load): Set screen_gamma based on f->gamma.
9260 If png_get_sRGB gives an answer, call png_set_gamma
9261 using the default image gamma value.
9262
9263 * lread.c (read1): When reading from a file, default string to
9264 multibyte only if it has some multibyte characters.
9265
9266 * print.c (print_object): Output multibyte chars 128...255
9267 using \x even if ! print_escape_multibyte.
9268
9269 * xdisp.c (display_mode_element): Move the places where
9270 bytepos, charpos, this, and lisp_string are set.
9271 Use lisp_string to set bytepos.
9272
9273 * xdisp.c (redisplay_internal):
9274 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
9275
9276 * xdisp.c (display_mode_element): Merge properties specified with
9277 :propertize onto those that come with the string.
9278
92792002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
9280
9281 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
9282 automatic-hscrolling. Users changed.
9283 <hscroll-margin>: Renamed from automatic-hscroll-margin.
9284 Users changed.
9285 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
9286
92872002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
9288
9289 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
9290
92912002-03-02 Kim F. Storm <storm@cua.dk>
9292
9293 * window.c (Fminibuffer_selected_window): New function.
9294 (syms_of_window): Defsubr it.
9295
92962002-03-01 Kim F. Storm <storm@cua.dk>
9297
9298 * window.h (struct window): New member phys_cursor_width.
9299
9300 * window.c (make_window, replace_window): Init phys_cursor_width.
9301
9302 * xterm.c (x_display_and_set_cursor): Blink box cursor using
9303 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
9304
9305 * w32term.c (x_display_and_set_cursor): Blink box cursor using
9306 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
9307
9308 * lisp.h (GCPRO6): New macro.
9309
9310 * process.c (Fopen_network_stream): Use GCPRO6.
9311
93122002-03-01 Kim F. Storm <storm@cua.dk>
9313
9314 * process.c (Qconnect, Qfailed): New variables.
9315 (syms_of_process): Intern and staticpro them.
9316 (Fprocess_status): Document connect and failed return values.
9317 [NON_BLOCKING_CONNECT]: New conditional.
9318 (connect_wait_mask, num_pending_connects): New variables.
9319 (status_message): Convert Qfailed status.
9320 (Fopen_network_stream): Added support for non-blocking connect.
9321 New optional args: filter, sentinel, non_blocking. Doc updated.
9322 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
9323 (deactivate_process): Handle pending non-blocking connect.
9324 (wait_reading_process_input): Poll for status of non-blocking
9325 connects. Exec sentinel directly when connect succeeds.
9326 (status_notify): Don't read process output if not yet connected.
9327
93282002-02-28 Kim F. Storm <storm@cua.dk>
9329
9330 * window.c: (minibuf_selected_window): Renamed from
9331 Vminibuf_selected_window. Users changed.
9332 (syms_of_window): Staticpro it.
9333
93342002-02-26 Kim F. Storm <storm@cua.dk>
9335
9336 The following changes add a new Vminibuf_selected_window variable
9337 which is similar to Vminibuf_scroll_window, but which is only set
9338 on entry to the minibuffer (from a non-minibuffer window):
9339
9340 * window.c: (Vminibuf_selected_window): New variable.
9341 (struct save_window_data): New member minibuf_selected_window.
9342 (Fset_window_configuration): Restore Vminibuf_selected_window.
9343 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
9344 Set minibuf_scroll_window member to nil if minibuf_level is 0.
9345 (compare_window_configurations): Compare minibuf_selected_window.
9346
9347 * window.h: (Vminibuf_selected_window): Declare extern.
9348
9349 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
9350 entry to minibuffer or on entry from a non-minibuffer window.
9351
9352 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
9353 Vminibuf_selected_window instead of Vminibuf_scroll_window.
9354
9355 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
9356 instead of Vminibuf_scroll_window when deciding in which window
9357 the region should be highlighted. Consequently, the region remains
9358 highlighteded even when a completion buffer is also displayed.
9359
93602002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
9361
9362 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
9363
9364 * xselect.c (Qcompound_text_with_extensions): Renamed from
9365 Qcompound_text_no_extensions.
9366 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
9367
93682002-02-26 Juanma Barranquero <lektu@terra.es>
9369
9370 * w32proc.c (syms_of_ntproc): Doc fix.
9371
93722002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9373
9374 * intervals.h: Include "dispextern.h" unconditionally.
9375
93762002-02-24 Jason Rumney <jasonr@gnu.org>
9377
9378 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
9379 and disp-table.elc.
9380 (lisp): Add emacs-lisp/backquote.elc.
9381
93822002-02-24 Kim F. Storm <storm@cua.dk>
9383
9384 * keymap.c (Flookup_key): Fixed problem in 2001-12-28 patch:
9385 The validation of the event type was too strict as it didn't
9386 allow string events; buffer names are used in bindings for
9387 menu-bar-select-buffer (see `menu-bar-update-buffers').
9388
93892002-02-23 Kim F. Storm <storm@cua.dk>
9390
9391 The following changes rework my patch of 2002-02-06 which
9392 added command remapping by entering the commands directly into
9393 the keymaps. Now, command remapping uses an explicit `remap'
9394 prefix in the keymaps, i.e. [remap COMMAND].
9395
9396 * keymap.c (Qremap, remap_command_vector): New variables.
9397 (is_command_symbol): Removed function.
9398 (Fdefine_key): No longer accept a symbol for KEY.
9399 Added validation of [remap COMMAND] argument for KEY.
9400 The DEF is no longer required to be a symbol when remapping a command.
9401 (Fremap_command): New function to remap command through keymaps.
9402 (Flookup_key): Perform command remapping initiated by
9403 Fremap_command directly for speed.
9404 (Fkey_binding): Use Fremap_command for command remapping.
9405 (where_is_internal): Handle new command remapping representation.
9406 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
9407 staticpro them. Defsubr Fremap_command.
9408
9409 * keymap.h (Fremap_command): Declare extern.
9410 (is_command_symbol): Remove extern.
9411
9412 * keyboard.c (command_loop_1): Use Fremap_command for command
9413 remapping; now try command remapping for all symbols.
9414
94152002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
9416
9417 * coding.h (run_pre_post_conversion_on_str): Add prototype.
9418
94192002-02-23 Jason Rumney <jasonr@gnu.org>
9420
9421 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
9422 on the string before encoding it.
9423 (Fw32_get_clipboard_data): Run post-read-conversion on the string
9424 after decoding it.
9425
9426 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
9427
94282002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9429
9430 * w32term.c (enter_timestamp): Remove unused static variable to
9431 prevent warning.
9432
9433 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
9434
94352002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
9436
9437 * w16select.c (Fw16_get_clipboard_data): Fix last change.
9438
9439 * xselect.c (selection_data_to_lisp_data): Fix last change.
9440
94412002-02-22 Jason Rumney <jasonr@gnu.org>
9442
9443 * w32term.h (struct w32_output): New member menu_command_in_progress.
9444
9445 * w32menu.c (menubar_selection_callback): Free the menu and
9446 clear the menu_command_in_progress flag.
9447
9448 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
9449 (menu_free_timer): New variable.
9450 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
9451 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
9452 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
9453 menu command is in progress.
9454 <WM_COMMAND>: Set the menu_command_in_progress flag.
9455 Kill any menu_free_timer that is running.
9456
9457 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
9458 Call ExtTextOutA rather than ExtTextOut.
9459
94602002-02-22 Eli Zaretskii <eliz@gnu.org>
9461
9462 * puresize.h (BASE_PURESIZE): Increase to 755000.
9463
94642002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
9465
9466 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
9467 on the string before encoding it.
9468 (Fw16_get_clipboard_data): Run post-read-conversion on the string
9469 after decoding it.
9470
94712002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
9472
9473 Support for ICCCM Extended Segments in X selections:
9474
9475 * xselect.c <Qcompound_text_no_extensions>: New variable.
9476 (syms_of_xselect): Intern and staticpro it.
9477 (selection_data_to_lisp_data): Run post-read-conversion on decoded
9478 selection text.
9479 (lisp_data_to_selection_data): If next-selection-coding-system is
9480 compound-text-no-extensions, set the type of selection to be
9481 compound-text.
9482
9483 * xterm.h (x_encode_text): Update prototype.
9484
9485 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
9486 callers changed. If SELECTIONP is non-zero, run the
9487 pre-write-conversion function before encoding the selection text.
9488
94892002-02-21 Kim F. Storm <storm@cua.dk>
9490
9491 * frame.c (syms_of_frame): Change mouse-highlight default to t.
9492
9493 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
9494 Correct composing of language-change event.
9495
94962002-02-20 Kim F. Storm <storm@cua.dk>
9497
9498 * keyboard.c (menu_bar_items): Don't include keymap or local-map
9499 bindings at PT when building menu (the menu is not updated often
9500 enough for this to work reliable).
9501 (tool_bar_items): Likewise.
9502 (current_active_maps): Removed unused (and buggy) function.
9503
95042002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9505
9506 * xfns.c (gif_load): Use correct width and height for GIF images.
9507
95082002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
9509
9510 * floatfns.c (Fatan): Accept an optional second arg and call
9511 atan2 if passed 2 args.
9512
95132002-02-18 Jason Rumney <jasonr@gnu.org>
9514
9515 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
9516
95172002-02-17 Jason Rumney <jasonr@gnu.org>
9518
9519 * w32term.c (x_autoselect_window_p): New variable.
9520 (syms_of_w32term): DEFVAR_BOOL and initialize it.
9521 (note_mouse_movement): Use it.
9522
9523 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
9524
9525 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
9526
9527 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
9528 New variables.
9529 (syms_of_w32fns): Intern and staticpro them.
9530 (x_frame_parms) <"fullscreen">: New parameter.
9531 (x_fullscreen_move, x_set_fullscreen): New functions.
9532 (x_set_frame_parameters): Support Qfullscreen.
9533 (x_real_positions): Save x/y_pixels_diff frame params.
9534 (x_figure_window_size): Support full-screen frames.
9535 (Fx_create_frame): Default the fullscreen parameter.
9536
9537 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
9538 (x_fullscreen_adjust): New functions.
9539 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
9540 fullscreen. Call x_check_fullscreen_move, and set the
9541 want_fullscreen member of output_data.w32
9542 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
9543
9544 * w32term.h: New enum for FULLSCREEN_* constants.
9545 (struct w32_output): New members want_fullscreen, x_pixels_diff,
9546 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
9547 (x-fullscreen-adjust): New prototype.
9548
95492002-02-17 Kim F. Storm <storm@cua.dk>
9550
9551 * frame.c: (Vmouse_highlight): New variable.
9552 (syms_of_frame): DEFVAR_LISP it.
9553
9554 * frame.h: (Vmouse_highlight): Declare extern.
8a8e19a3 9555
048addec 9556 * xterm.h (struct x_display_info): Add mouse_face_hidden.
8a8e19a3 9557
048addec
JD
9558 * xterm.c (disable_mouse_highlight): Removed variable.
9559 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
9560 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
9561 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
9562 and on after keyboard input.
9563 (x_term_init): Initialize mouse_face_hidden.
8a8e19a3 9564
048addec 9565 * msdos.h (struct display_info): Add mouse_face_hidden.
8a8e19a3 9566
048addec
JD
9567 * msdos.c (disable_mouse_highlight): Removed variable.
9568 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
9569 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
9570 (internal_terminal_init): Initialize mouse_face_hidden.
9571 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
9572 and on after keyboard input.
4f1b1854 9573
048addec 9574 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
4f1b1854 9575
048addec
JD
9576 * w32term.c (disable_mouse_highlight): Removed variable.
9577 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
9578 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
9579 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
9580 and on after keyboard input.
9581 (w32_initialize_display_info): Initialize mouse_face_hidden.
4f1b1854 9582
048addec 95832002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
4f1b1854 9584
048addec
JD
9585 * msdos.c (last_mouse_window): New variable.
9586 (dos_rawgetc): Fix last change--if the mouse is in the same window
9587 as recorded in last_mouse_window, don't select this window.
5cb6905d 9588
048addec 9589 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
5cb6905d 9590
048addec
JD
9591 * msdos.c (x_autoselect_window_p): New variable.
9592 (syms_of_msdos): Defvar it.
9593 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
9594 which the last mouse movement occured, unless it is already selected.
437dfb9f 9595
048addec
JD
9596 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
9597 New variables.
9598 (syms_of_xdisp): DEVFAR them.
9599 (hscroll_window_tree): Use automatic_hscroll_margin and
9600 Vautomatic_hscroll_step to compute the amount of window scrolling.
437dfb9f 9601
048addec 96022002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9f696a00 9603
048addec
JD
9604 * xterm.c (x-autoselect-window): New variable.
9605 (note_mouse_movement): Use it.
9f696a00 9606
048addec 9607 * keyboard.c: Do not include "systime.h" twice.
d57966d7 9608
048addec 96092002-02-15 Andreas Schwab <schwab@suse.de>
d57966d7 9610
048addec 9611 * puresize.h (BASE_PURESIZE): Increase to 9/5.
d57966d7 9612
048addec 9613 * alloc.c (NSTATICS): Increase to 1280.
74779f52 9614
048addec 96152002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
74779f52 9616
048addec 9617 * alloc.c (NSTATICS): Bump to 1026.
a474d59c 9618
048addec
JD
9619 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
9620 (Vx_super_keysym): New variables.
9621 (syms_of_xterm): DEFVAR_LISP them.
9622 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
9623 variables to determine which keys to use for the various modifiers.
a474d59c 9624
048addec 96252002-02-13 Kim F. Storm <storm@cua.dk>
fbb70ad9 9626
048addec
JD
9627 * window.c: (Vmode_line_in_non_selected_windows): Removed.
9628 (mode_line_in_non_selected_windows): New variable.
9629 (syms_of_window): DEFVAR_BOOL it.
fbb70ad9 9630
048addec
JD
9631 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
9632 Use mode_line_in_non_selected_windows.
9633 (mode_line_in_non_selected_windows): Declare extern.
9634 (Vmode_line_in_non_selected_windows): Removed extern.
2d10309f 9635
048addec 96362002-02-13 Richard M. Stallman <rms@gnu.org>
2d10309f 9637
048addec
JD
9638 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
9639 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
9640 (Fclear_this_command_keys): Doc fixes.
2d10309f 9641
048addec
JD
9642 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
9643 (update_face_from_frame_parameter): Increment face_change_count
9644 and windows_or_buffers_changed to force redisplay using changed faces.
7f2cddf3 9645
048addec
JD
9646 * xdisp.c (QCpropertize): New variable.
9647 (mode_line_proptrans_alist): New variable.
9648 (display_mode_element): New arg PROPS; all calls changed.
9649 Implement this, for strings.
9650 Handle literal output of strings by sharing the
9651 main-line code for strings, using local var `literal'.
9652 Handle :propertize feature.
9653 (syms_of_xdisp): Initialze and staticpro QCpropertize and
9654 mode_line_proptrans_alist.
0b1e6b54 9655
048addec 96562002-02-11 Kim F. Storm <storm@cua.dk>
7f2cddf3 9657
048addec
JD
9658 * window.c: (Vmode_line_in_non_selected_windows): New variable.
9659 (syms_of_window): DEFVAR_LISP it.
7f2cddf3 9660
048addec
JD
9661 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
9662 (CURRENT_MODE_LINE_FACE_ID): Use it.
9663 (Vmode_line_in_non_selected_windows): Declare extern.
e17144de 9664
048addec
JD
9665 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
9666 to get mode line face.
e17144de 9667
048addec 96682002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 9669
048addec
JD
9670 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
9671 variables; cus-start.el doesn't need them anymore.
44368f8f 9672
048addec 96732002-02-09 Kim F. Storm <storm@cua.dk>
f884b6f4 9674
048addec
JD
9675 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
9676 reduction. This fixes a display problem where stray newlines were
9677 inserted in the window (corrected by C-l). Clarified code (IMHO).
6637c996 9678
048addec 96792002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 9680
048addec 9681 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
6637c996 9682
048addec 9683 * xdisp.c (display_mode_lines): Fix last change.
453c5510 9684
048addec 96852002-02-09 Jason Rumney <jasonr@gnu.org>
453c5510 9686
048addec
JD
9687 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
9688 match each other.
9689 (w32_load_system_font): Prevent Cleartype fonts from loading.
9690 (Fx_show_tip): Ensure tip frames are above other topmost windows.
d1d070e3 9691
048addec 96922002-02-09 Kim F. Storm <storm@cua.dk>
d1d070e3 9693
048addec
JD
9694 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
9695 (CURRENT_MODE_LINE_HEIGHT): Use it.
9696 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 9697
048addec
JD
9698 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
9699 (pos_visible_p, handle_face_prop): Likewise.
9700 (display_mode_lines): Likewise, but for the real selected window.
9701 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 9702
048addec
JD
9703 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
9704 in non-selected windows.
9705 (realize_basic_faces): Realize it.
9706 (syms_of_term): Intern and staticpro it.
308dd672 9707
048addec 97082002-02-08 Kim F. Storm <storm@cua.dk>
edde72f6 9709
048addec
JD
9710 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
9711 Changed mail addresses to emacs-devel@gnu.org.
308dd672 9712
048addec 97132002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
3c1e6b46 9714
048addec
JD
9715 * fileio.c (Fsubstitute_in_file_name): If the file name includes
9716 ~user, and there's no such user, don't discard everything before ~user.
03950b5b 9717
048addec 9718 * floatfns.c (Fround): Doc fix.
3c1e6b46 9719
048addec 97202002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c1e11810 9721
048addec 9722 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
c1e11810 9723
048addec 97242002-02-07 Stefan Monnier <monnier@cs.yale.edu>
1996baee 9725
048addec 9726 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
1996baee 9727
048addec 97282002-02-07 Kim F. Storm <storm@cua.dk>
0065bb74 9729
048addec
JD
9730 * keymap.c (where_is_internal): Only check whether definition is
9731 remapped if it fulfills is_command_symbol.
0065bb74 9732
048addec 97332002-02-07 Andreas Schwab <schwab@suse.de>
0065bb74 9734
048addec 9735 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
b5cb6072 9736
048addec 9737 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
b5cb6072 9738
048addec 97392002-02-06 Kim F. Storm <storm@cua.dk>
15fff01d 9740
048addec
JD
9741 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
9742 defining command remapping. Doc updated.
9743 (Flookup_key): Remap command through keymap if KEY is a symbol.
9744 (is_command_symbol): New function.
9745 (Fkey_binding): Use it. New optional argument NO-REMAP.
9746 Doc updated. Callers changed. Perform command remapping via
9747 recursive call unless that arg is non-nil.
9748 (where_is_internal): New argument no_remap. Callers changed.
9749 Call recursively to find original key bindings for a remapped
9750 comand unless that arg is non-nil.
9751 (Fwhere_is_internal): New optional argument NO-REMAP.
9752 Doc updated. Callers changed. Pass arg to where_is_internal.
0065bb74 9753
048addec
JD
9754 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
9755 (is_command_symbol): Added prototype.
0d8466cc 9756
048addec
JD
9757 * keyboard.c (Vthis_original_command): New variable.
9758 (syms_of_keyboard): DEFVAR_LISP it.
9759 (command_loop_1): Set it, and perform command remapping.
15fff01d 9760
048addec 97612002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2fae9111 9762
048addec 9763 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
2d6c1fc0 9764
048addec 97652002-02-06 Jason Rumney <jasonr@gnu.org>
07025a55 9766
048addec 9767 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
07025a55 9768
048addec 97692002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
07025a55 9770
048addec 9771 * charset.c (get_charset_id): Use if-else instead of ?:.
3a232704 9772
048addec 97732002-02-06 Richard M. Stallman <rms@gnu.org>
539e92ad 9774
048addec 9775 * filelock.c (S_ISLNK): Define if not defined.
3a232704 9776
048addec 97772002-02-03 Richard M. Stallman <rms@gnu.org>
0cb8bb48 9778
048addec 9779 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
539e92ad 9780
048addec
JD
9781 * lread.c (read1): Redesign strategy for force_multibyte and
9782 force_singlebyte. Now is_multibyte records whether read_buffer
9783 is multibyte. Encountering any multibyte character makes it so.
4e02881b 9784
048addec 97852002-02-02 Stefan Monnier <monnier@cs.yale.edu>
4e02881b 9786
048addec
JD
9787 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
9788 with the same sequence, map that sequence to f10 rather than f0.
1ab964d7 9789
048addec 97902002-02-03 Andreas Schwab <schwab@suse.de>
1ab964d7 9791
048addec
JD
9792 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
9793 latter never being defined on GNU/Linux.
749f499f 9794
048addec 97952002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
749f499f 9796
048addec
JD
9797 * xfaces.c (realize_default_face): Don't set the weight and slant of
9798 the default face to Qnormal, unless these attributes are unspecified.
b5d9aaba 9799
048addec 98002002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3a232704 9801
048addec
JD
9802 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
9803 Call cancel_hourglass unconditionally.
d0fd26dd 9804
048addec
JD
9805 * eval.c (Fsignal): Remove duplicated declaration of
9806 the variable `display_hourglass_p'.
b4c45162 9807
048addec 98082002-01-31 Richard M. Stallman <rms@gnu.org>
d0fd26dd 9809
048addec 9810 * editfns.c (region_limit): Nicer error message.
c95eaa61 9811
048addec
JD
9812 * coding.c (decode_composition_emacs_mule):
9813 Give up if NCOMPONENT gets too large to index `component'.
c95eaa61 9814
048addec
JD
9815 * callint.c (check_mark): New arg to specify clearer error message.
9816 Callers changed.
c95eaa61 9817
048addec 98182002-01-27 Richard M. Stallman <rms@gnu.org>
c95eaa61 9819
048addec 9820 * minibuf.c (Fcompleting_read): Doc fix.
c95eaa61 9821
048addec 98222002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c95eaa61 9823
048addec
JD
9824 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
9825 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
9826 Fix doc-strings.
c95eaa61 9827
048addec 98282002-01-26 Richard M. Stallman <rms@gnu.org>
c95eaa61 9829
048addec 9830 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
c95eaa61 9831
048addec
JD
9832 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
9833 and scroll_up_aggressively.
c95eaa61 9834
048addec 98352002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
31877e0a 9836
048addec 9837 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
31877e0a 9838
048addec 98392002-01-25 Stefan Monnier <monnier@cs.yale.edu>
e2c3786a 9840
048addec
JD
9841 * textprop.c (Fnext_property_change, Fnext_single_property_change)
9842 (Fprevious_property_change, Fprevious_single_property_change):
9843 Stay within the narrowed-buffer boundaries.
e2c3786a 9844
048addec 98452002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
c513fc03 9846
048addec
JD
9847 * term.c (Ftty_display_color_cells): New function.
9848 (syms_of_term): Defsubr it.
9849 (Ftty_display_color_cells, Ftty_display_color_p): Change the
9850 argument name to DISPLAY. Doc fix.
bf794306 9851
048addec
JD
9852 * dispextern.h: Add prototype for set_tty_color_mode and
9853 tty_setup_colors.
bf794306 9854
048addec 98552002-01-24 Jason Rumney <jasonr@gnu.org>
bf794306 9856
048addec
JD
9857 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
9858 If region left to draw is not what was expected, mark the frame as
9859 garbaged.
62582985 9860
048addec
JD
9861 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
9862 Combine the regions returned by BeginPaint and GetUpdateRect.
c513fc03 9863
048addec 98642002-01-23 Jason Rumney <jasonr@gnu.org>
3509a04c 9865
048addec
JD
9866 * w32term.c (x_update_window_begin): Only hide caret if
9867 w32_use_visible_system_caret is set.
9868 (x_update_window_end): Only show caret if
9869 w32_use_visible_system_caret is set.
9870 (syms_of_w32term): Handle SystemParametersInfo call failing.
3509a04c 9871
048addec 9872 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
3509a04c 9873
048addec 98742002-01-22 Richard M. Stallman <rms@gnu.org>
3509a04c 9875
048addec
JD
9876 * unexelf.c (unexec): Define n so as to cause compilation error
9877 for the code where people have often written n instead of nn.
1e9a6186 9878
048addec 9879 * .gdbinit (hookpost-run): Defined.
1e9a6186 9880
048addec 98812002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e4e34e31 9882
048addec 9883 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
e4e34e31 9884
048addec 98852002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4521d1fc 9886
048addec
JD
9887 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
9888 if fullscreen is being set.
7c75be36 9889
048addec 98902002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4521d1fc 9891
048addec
JD
9892 * minibuf.c (Fminibuffer_contents)
9893 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
9894 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
4521d1fc 9895
048addec 98962002-01-21 Richard M. Stallman <rms@gnu.org>
4521d1fc 9897
048addec 9898 * window.c (check_frame_size): Fix minimum height calculation.
93dec019 9899
048addec 99002002-01-20 Ken Raeburn <raeburn@gnu.org>
93dec019 9901
048addec
JD
9902 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
9903 height before comparison.
9904 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
905cc05a 9905
048addec 99062002-01-20 Jason Rumney <jasonr@gnu.org>
2ed06289 9907
048addec
JD
9908 * w32term.c (w32_system_caret_width): Remove.
9909 (w32_use_visible_system_caret): New user flag.
9910 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
9911 Windows reports a screen reader running.
9912 (x_update_window_begin): Hide the system caret.
9913 (x_update_window_end): Show the system caret.
9914 (x_display_and_set_cursor): Don't draw a cursor when
9915 w32_use_visible_system_caret is set. Do not adjust width.
0e79d667 9916
048addec
JD
9917 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
9918 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
9919 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
9920 the user requests it. Use system default width when creating.
9921 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
0e79d667 9922
048addec
JD
9923 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
9924 New window messages.
905cc05a 9925
048addec 99262002-01-20 Richard M. Stallman <rms@gnu.org>
82a7ab23 9927
048addec 9928 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
d75bec6a 9929
048addec 99302002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
52dcb476 9931
048addec 9932 * doprnt.c (doprnt1): Fix typos in error call.
82a7ab23 9933
048addec 99342002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
82a7ab23 9935
048addec 9936 * unexelf.c (unexec) [__sgi]: Support the .got sections.
82a7ab23 9937
048addec 99382002-01-20 Jason Rumney <jasonr@gnu.org>
4d0fa4f3 9939
048addec
JD
9940 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
9941 that Windows returns. If a double check fails, try to guess how
9942 ExtTextOut is going to act.
4d0fa4f3 9943
048addec
JD
9944 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
9945 in place of stricmp.
9946 (w32_list_synthesized_fonts): Removed.
9947 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
9948 (struct enumfont_t): New element; list.
9949 (enum_font_cb2): List all style and charset variations of a font.
9950 (Fw32_select_font): New optional argument; include_proportional.
9951 Exclude vertical fonts. Exclude proportional fonts unless
9952 include_proportional is non-nil.
9953 (w32_enable_synthesized_fonts): Change to a boolean.
9954 (Fw32_send_sys_command): Doc fix.
493faf20 9955
048addec 99562002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
493faf20 9957
048addec
JD
9958 * dispnew.c (update_frame): Move the variable `tem' to the block
9959 where it is used.
4971e491 9960
048addec 99612002-01-19 Jason Rumney <jasonr@gnu.org>
4971e491 9962
048addec
JD
9963 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
9964 call to face-set-after-frame-default.
4971e491 9965
048addec 99662002-01-18 Richard M. Stallman <rms@gnu.org>
d911a0fa 9967
048addec
JD
9968 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
9969 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
d911a0fa 9970
048addec 99712002-01-17 Richard M. Stallman <rms@gnu.org>
d911a0fa 9972
048addec
JD
9973 * window.c (enlarge_window): When exceeding size of parent,
9974 directly delete all the siblings instead of trying to resize it.
201c831a 9975
048addec 99762002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
201c831a 9977
048addec 9978 * term.c (set_tty_color_mode): Remove unused variable `tem'.
201c831a 9979
048addec 99802002-01-16 Henrik Enberg <henrik@enberg.org>
34e39c95 9981
048addec 9982 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
34e39c95 9983
048addec 99842002-01-16 Kim F. Storm <storm@cua.dk>
d77fbc16 9985
048addec
JD
9986 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
9987 is invisible. This can happen if cursor is on top line of a
9988 window, and we switch to a buffer with a header line.
d77fbc16 9989
048addec 9990 * w32term.c (x_erase_phys_cursor): Ditto.
61e3b944 9991
048addec 99922002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
61e3b944 9993
048addec
JD
9994 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
9995 `dont_resize' only when used.
61e3b944 9996
048addec 9997 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
70da46c3 9998
048addec 99992002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
70da46c3 10000
048addec
JD
10001 * xdisp.c (display_mode_element): When computing charpos, depend
10002 on multibyteness of elt, not the text in field.
8af01033 10003
048addec 100042002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8af01033 10005
048addec
JD
10006 * buffer.c (Fkill_all_local_variables):
10007 Increment `update_mode_lines' only once.
7363986a 10008
048addec 100092002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7363986a 10010
048addec
JD
10011 * lisp.h (adjust_after_replace_noundo)
10012 (Fupdate_coding_systems_internal): Add prototypes.
d9e6c4b1 10013
048addec 10014 * sound.c (Fplay_sound): Initialize header_size also for :data case.
d20fc48a 10015
048addec 100162002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
d9e6c4b1 10017
048addec
JD
10018 Support for the --color command-line argument and tty-color-mode
10019 frame parameter:
f1a85b89 10020
048addec
JD
10021 * term.c (tty_default_color_capabilities, tty_setup_colors)
10022 (set_tty_color_mode): New functions.
10023 (term_init): Call tty_default_color_capabilities.
10024 (Qtty_color_mode_alist): New variable.
10025 (syms_of_term): Intern and staticpro it.
f1a85b89 10026
048addec
JD
10027 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
10028 frames.
10029 (do_switch_frame): For termcap frames, switch the tty
10030 color mode as specified by the frame's parameters.
10031 (Qtty_color_mode): New variable.
10032 (syms_of_frame): Intern and staticpro it.
3a62677f 10033
048addec
JD
10034 * emacs.c (USAGE2): Add the --color option.
10035 (standard_args): Ditto.
72244db2 10036
048addec
JD
100372002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10038
10039 * xterm.h (struct x_output): New members want_fullscreen,
10040 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
10041 y_pixels_outer_diff.
10042 New enum for FULLSCREEN_* constants.
10043 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
10044 is NULL.
10045 (x_fullscreen_adjust): Add prototype.
3a62677f 10046
048addec
JD
10047 * emacs.c (USAGE2): Add the new full-screen arguments.
10048 (standard_args): Ditto.
3a62677f 10049
048addec
JD
10050 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
10051 New variables.
10052 (syms_of_xfns): Intern and staticpro them.
10053 (x_frame_parms) <"fullscreen">: New parameter.
10054 (x_fullscreen_move, x_set_fullscreen): New functions.
10055 (x_set_frame_parameters): Support for Qfullscreen.
10056 (x_real_positions): More accurate computation of the frame position.
10057 (x_figure_window_size): Support full-screen frames.
10058 (Fx_create_frame): Default the fullscreen parameter.
3a62677f 10059
048addec
JD
10060 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
10061 (XTread_socket) <Expose>: Call x_check_fullscreen.
10062 <ConfigureNotify>: Don't resize to fullscreen.
10063 Call x_check_fullscreen_move, and set the want_fullscreen member of
10064 output_data.x.
3a62677f 10065
048addec 100662002-01-13 Jason Rumney <jasonr@gnu.org>
9d113d9d 10067
048addec
JD
10068 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
10069 for mice with more than 3 buttons.
b8523839 10070
048addec
JD
10071 * w32term.c (parse_button): New parameter xbutton. Callers changed.
10072 (w32_read_socket): Handle new "XBUTTON" messages.
9464dea4 10073
048addec
JD
10074 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
10075 (syms_of_w32fns): DEFVAR_BOOL it.
10076 (w32_wnd_proc): Handle new "XBUTTON" messages.
9d113d9d 10077
048addec 100782002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
70ec1377 10079
048addec 10080 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
70ec1377 10081
048addec 100822002-01-13 Andreas Schwab <schwab@suse.de>
92f7dd37 10083
048addec 10084 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
92f7dd37 10085
048addec 100862002-01-12 Andreas Schwab <schwab@suse.de>
c93674bb 10087
048addec
JD
10088 * .gdbinit (xbuffer): Remove address operator since data is now a
10089 pointer.
c93674bb 10090
048addec 100912002-01-11 Richard M. Stallman <rms@gnu.org>
59b59892 10092
048addec 10093 * insdel.c (adjust_after_replace_noundo): New function.
59b59892 10094
048addec 10095 * coding.c (code_convert_region): Don't copy old text if undo disabled.
c6ea2775 10096
048addec 100972002-01-09 Jason Rumney <jasonr@gnu.org>
c6ea2775 10098
048addec
JD
10099 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
10100 when checking for multiple frames.
91175673 10101
048addec 101022002-01-08 Richard M. Stallman <rms@gnu.org>
91175673 10103
048addec
JD
10104 * window.c (delete_window): Rewrite the code for changing the
10105 selected window to handle the case where WINDOW is not a leaf.
91175673 10106
048addec 101072002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
e0fead5d 10108
048addec
JD
10109 * process.c (send_process): Set src_multibyte to 1 after the call
10110 top setup_coding_system, not before the call.
e0fead5d 10111
048addec 101122002-01-07 Jason Rumney <jasonr@gnu.org>
e0fead5d 10113
048addec
JD
10114 * xmenu.c (set_frame_menubar, xmenu_show):
10115 (xdialog_show): Initialize wv->help to Qnil.
c186cdb3 10116
048addec
JD
10117 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
10118 (w32_dialog_show): Initialize wv->help to Qnil.
c186cdb3 10119
048addec 101202002-01-06 Jason Rumney <jasonr@gnu.org>
c186cdb3 10121
048addec 10122 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
c186cdb3 10123
048addec 10124 * w32menu.c (w32_menu_display_help): Revert last change.
58cfce98 10125
048addec 10126 * xmenu.c (menu_highlight_callback): Revert last change.
58cfce98 10127
048addec 101282002-01-06 Andreas Schwab <schwab@suse.de>
62854fe2 10129
048addec
JD
10130 * insdel.c (make_gap_larger): Make sure buffer size does not
10131 overflow range of int.
62854fe2 10132
048addec 101332002-01-05 Jason Rumney <jasonr@gnu.org>
656f46bb 10134
048addec
JD
10135 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
10136 OVERLAPS_P.
656f46bb 10137
048addec 10138 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
656f46bb 10139
048addec
JD
10140 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
10141 to the left or to the right of the pointer, put it against
10142 the left screen edge.
10143 (x_frame_parms): Add missing braces around initializer.
036e218d 10144
048addec
JD
10145 * w32term.c (x_setup_relief_colors): Don't compute an image's
10146 background color if it doesn't have a Pixmap.
10147 (notice_overwritten_cursor): Don't depend on
10148 output_cursor and updated_area. Compare pixel coordinates with
10149 window's cursor pixel coordinates.
10150 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
10151 Call notice_overwritten_cursor with new arg list.
10152 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
10153 unconditionally.
10154 (x_draw_image_relief): Use predefined macro instead of
10155 constant when the value of `tool_bar_button_relief' is negative.
036e218d 10156
048addec 10157 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
7ddb2c16 10158
048addec 101592002-01-04 Richard M. Stallman <rms@gnu.org>
7ddb2c16 10160
048addec 10161 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
ace9b298 10162
048addec 101632002-01-03 Richard M. Stallman <rms@gnu.org>
90647b07 10164
048addec
JD
10165 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
10166 (Fkey_binding): Try the `keymap' property map first.
10167 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
10168 minor mode bindings.
90647b07 10169
048addec 101702002-01-03 Kim F. Storm <storm@cua.dk>
ace9b298 10171
048addec 10172 * keyboard.c (read_key_sequence): Fixed cast of submaps arg to bcopy.
ace9b298 10173
048addec 101742002-01-02 Richard M. Stallman <rms@gnu.org>
ace9b298 10175
048addec
JD
10176 * keyboard.c (read_key_sequence): Handle the keymap property
10177 before minor mode maps.
9fbc32aa 10178
048addec
JD
10179 * editfns.c (Fformat): Update thissize from field_width
10180 based on the actual width, in the string case.
036e218d 10181
048addec 101822002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fbc32aa 10183
048addec
JD
10184 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
10185 when used as truth value to prevent gcc warnings.
9fbc32aa 10186
048addec
JD
10187 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
10188 * w32proc.c: Include <config.h>.
9fbc32aa 10189
048addec 101902002-01-01 Andreas Schwab <schwab@suse.de>
9fbc32aa 10191
048addec
JD
10192 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
10193 not EMACS_INT, to make them compatible with DEFVAR_INT.
10194 * lisp.h (max_specpdl_size): Adjust declaration.
9fbc32aa 10195
048addec 101962002-01-01 Richard M. Stallman <rms@gnu.org>
9fbc32aa 10197
048addec
JD
10198 * print.c (print_object): Test print_escape_nonascii only for
10199 unibyte strings.
10200 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
10201 when outputting to a multibyte buffer.
9fbc32aa 10202
048addec 102032001-12-29 Richard M. Stallman <rms@gnu.org>
9fbc32aa 10204
048addec
JD
10205 * print.c (print_object): In multibyte string, use hex escapes.
10206 Use octal only for unibyte strings.
10207 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
0142178a 10208
048addec
JD
10209 * lread.c (read_escape): New arg BYTEREP for reporting whether
10210 escape forces unibyte or multibyte.
10211 (read1): When reading a string, take note of that info.
0142178a 10212
048addec 102132001-12-29 Ken Raeburn <raeburn@gnu.org>
d4824a5d 10214
048addec
JD
10215 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
10216 comparison to test lisp value returned by Fget.
d4824a5d 10217
048addec 102182001-12-29 Richard M. Stallman <rms@gnu.org>
b1356234 10219
048addec 10220 * lisp.h (max_specpdl_size): Add declaration.
b1356234 10221
048addec 10222 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
3ce081f5 10223
048addec
JD
10224 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
10225 Handle modifier bits. Correct typo in error message.
99e380ee 10226
048addec 102272001-12-28 Richard M. Stallman <rms@gnu.org>
3ce081f5 10228
048addec
JD
10229 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
10230 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
10231 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
10232 Update calls to Fdefine_abbrev.
10233 (write_abbrev): Update for changed data format.
10234 Don't list "system" abbrevs.
10235 (Fexpand_abbrev): Update use count with new data format.
10236 (describe_abbrev): Update for changed data format.
10237 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
66458f32 10238
048addec 10239 * config.in (HAVE_MBSINIT): Add #undef.
66458f32 10240
048addec 10241 * strftime.c (mbsinit): Define as no-op if not available.
66458f32 10242
048addec
JD
10243 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
10244 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
59a86c99 10245
048addec
JD
10246 * keymap.c (Flookup_key): Error message if key has wrong data type.
10247 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
10248 (exclude_key): New variable.
59a86c99 10249
048addec 102502001-12-28 Gerd Moellmann <gerd@gnu.org>
eb77a5f4 10251
048addec
JD
10252 * xterm.c (x_setup_relief_colors): Don't compute an image's
10253 background color if it doesn't have a Pixmap.
eb77a5f4 10254
048addec
JD
10255 * xterm.c (notice_overwritten_cursor): Don't depend on
10256 output_cursor and updated_area. Compare pixel coordinates with
10257 window's cursor pixel coordinates.
10258 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
10259 Call notice_overwritten_cursor with new arg list.
10260 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
10261 unconditionally.
eb77a5f4 10262
048addec
JD
10263 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
10264 height of the cursor line to the amount to scroll.
eb77a5f4 10265
048addec 102662001-12-27 Richard M. Stallman <rms@gnu.org>
bb313871 10267
048addec
JD
10268 * intervals.c (set_point_both): The position after an invisible,
10269 intangible character is not an acceptable stopping point.
bb313871 10270
048addec 102712001-12-27 Ken Raeburn <raeburn@gnu.org>
55b43a63 10272
048addec
JD
10273 * window.c (enlarge_window): In new preserve_before code, convert
10274 CURBEG from lisp object to integer before doing arithmetic.
6052529b 10275
048addec 102762001-12-27 Richard M. Stallman <rms@gnu.org>
3ce081f5 10277
048addec 10278 * bytecode.c (Fbyte_code): Undo previous change.
3ce081f5 10279
048addec 102802001-12-26 Kim F. Storm <storm@cua.dk>
3ce081f5 10281
048addec
JD
10282 * keyboard.c (record_char): Ignore duplicate help-echo events only
10283 separated by mouse-movement. When tracking mouse, only record
10284 first and last mouse-movement event in same window.
10285 Don't record mouse-movement events in keyboard macros.
3ce081f5 10286
048addec 102872001-12-25 Richard M. Stallman <rms@gnu.org>
55b43a63 10288
048addec
JD
10289 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
10290 (Fenlarge_window): New arg PRESERVE_BEFORE.
111ed14e 10291
048addec
JD
10292 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
10293 instead of Fstring_as_unibyte.
9fabb2f5 10294
048addec 102952001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fabb2f5 10296
048addec 10297 The following changes remove mocklisp support:
9fabb2f5 10298
048addec 10299 * mocklisp.h, mocklisp.c: Files removed.
111ed14e 10300
048addec
JD
10301 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
10302 `Qmocklisp' and `Qmocklisp_arguments'.
10303 Remove prototype of syms_of_mocklisp.
2fa0eedf 10304
048addec 10305 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
d1420435 10306
048addec
JD
10307 * callint.c: Do not include mocklisp.h.
10308 (Fcall_interactively): Do not test for mocklisp case.
2fa0eedf 10309
048addec
JD
10310 * eval.c: Remove variables `Qmocklisp_arguments',
10311 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
10312 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
10313 Do not test for mocklisp case.
10314 (Fwhile): Remove unused variable `tem'.
10315 (syms_of_eval): Remove variable `moclisp-arguments'.
ebcbef4e 10316
048addec 10317 * data.c (wrong_type_argument): Remove mocklisp case.
5c131048 10318
048addec 10319 * doc.c (Fdocumentation): Remove mocklisp case.
5c131048 10320
048addec 10321 * emacs.c (main): Do not call syms_of_mocklisp.
5c131048 10322
048addec 103232001-12-21 Richard M. Stallman <rms@gnu.org>
96d276c3 10324
048addec
JD
10325 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
10326 to the left or to the right of the pointer, put it against
10327 the left screen edge.
6108b49c 10328
048addec 103292001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
96d276c3 10330
048addec
JD
10331 * Makefile.in (distclean): Remove .gdbinit if we are building
10332 outside the source tree.
5eea19a4 10333
048addec 103342001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
5eea19a4 10335
048addec 10336 * w32.c (emacs_root_dir): New function.
5eea19a4 10337
048addec 10338 * msdos.c (emacs_root_dir): New function.
5eea19a4 10339
048addec
JD
10340 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
10341 of the current drive as the fallback for default_directory.
438e57dd 10342
048addec
JD
10343 * dired.c (file_name_completion): Run the elements of
10344 completion-ignored-extensions through ENCODE_FILE.
438e57dd 10345
048addec
JD
10346 * lisp.h (scmp): Remove prototype, since it's now a static
10347 function private to dired.c.
c88e5347 10348
048addec 103492001-12-18 Richard M. Stallman <rms@gnu.org>
c88e5347 10350
048addec
JD
10351 * dired.c (scmp): Function moved from minibuf.c.
10352 Delete multibyte handling--used only on encoded strings.
59ce1461 10353
048addec 10354 * minibuf.c (scmp): Function moved to dired.c.
59ce1461 10355
048addec 10356 * fns.c (merge): Add QUIT call.
59ce1461 10357
048addec 103582001-12-18 Dave Love <fx@gnu.org>
8727d588 10359
048addec
JD
10360 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
10361 language/georgian.el.
8727d588 10362
048addec 103632001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
cc63037e 10364
048addec
JD
10365 * Makefile.in (lisp, shortlisp): Synchronize with changes to
10366 lisp/Makefile.in:DONTCOMPILE.
cc63037e 10367
048addec 103682001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
cc63037e 10369
048addec
JD
10370 * xdisp.c (window_box_height): Do not return negative values.
10371 From Gerd Moellmann <gerd@gnu.org>.
cc63037e 10372
048addec 10373 * keyboard.c (head_table): Add missing braces around initializer.
cc63037e 10374
048addec 10375 * term.c (keys): Likewise.
deece6f5 10376
048addec 10377 * xfns.c (x_frame_parms, visual_classes): Likewise.
deece6f5 10378
048addec 103792001-12-17 Sam Steingold <sds@gnu.org>
1b944d9c 10380
048addec
JD
10381 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
10382 patch (COMPOSING_P, not COMPOSING).
28ff4293 10383
048addec 103842001-12-17 Richard M. Stallman <rms@gnu.org>
a395ef6a 10385
048addec 10386 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
a395ef6a 10387
048addec
JD
10388 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
10389 before calling decode_coding.
9b46de40 10390
048addec 10391 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
9b46de40 10392
048addec
JD
10393 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
10394 instead of only for COMPOSITION_DISABLED.
9b46de40 10395
048addec 103962001-12-16 Richard M. Stallman <rms@gnu.org>
aff37336 10397
048addec 10398 * alloc.c (pure_alloc): After overflow, allocate just a small block.
aff37336 10399
048addec 10400 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
b9937f07 10401
048addec
JD
10402 * buffer.h (struct buffer): New field `display_error_modiff'.
10403 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
b9937f07 10404
048addec 10405 * window.c (Frecenter): Clear display_error_modiff field.
2cd23960 10406
048addec
JD
10407 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
10408 Call redisplay_window, but not if display_error_modiff field says no.
10409 (redisplay_window_error): New function.
10410 (displayed_buffer): New variable.
10411 (redisplay_internal, redisplay_windows): Call the new functions
10412 instead of redisplay_window directly.
2cd23960 10413
048addec 104142001-12-15 Richard M. Stallman <rms@gnu.org>
2cd23960 10415
048addec 10416 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
2cd23960 10417
048addec 104182001-12-14 Andrew Innes <andrewi@gnu.org>
a4184c1c 10419
048addec
JD
10420 * makefile.w32-in (EMACSLOADPATH): Define.
10421 ($(EMACS)): Run `list-load-path-shadows' after dumping emacs.
10422 (bootstrap-temacs): Remove dependency on bootstrap-clean.
a4184c1c 10423
048addec 104242001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
f6fa0866 10425
048addec
JD
10426 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
10427 parameter have a numeric value all the time.
f6fa0866 10428
048addec 10429 * w32fns.c (x_report_frame_params): Likewise.
f4ca4b00 10430
048addec 104312001-12-12 Richard M. Stallman <rms@gnu.org>
f4ca4b00 10432
048addec 10433 * fileio.c (Fwrite_region): Doc fix.
f4e25f94 10434
048addec
JD
10435 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
10436 (redisplay_internal): Call clear_image_cache only for window terminals.
f4e25f94 10437
048addec 104382001-12-12 Gerd Moellmann <gerd@gnu.org>
91c153e2 10439
048addec
JD
10440 * xdisp.c (move_it_vertically_backward): Change heuristic
10441 for the case that we didn't move far enough initially.
91c153e2 10442
048addec
JD
10443 * window.c (Frecenter): Simplify computation in the case of window
10444 system frames and ARG < 0; use window_box_height.
65b7d3e7 10445
048addec 104462001-12-11 Richard M. Stallman <rms@gnu.org>
65b7d3e7 10447
048addec
JD
10448 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
10449 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
6b5f6311 10450
048addec 104512001-12-11 Andrew Innes <andrewi@gnu.org>
6b5f6311 10452
048addec
JD
10453 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
10454 arg is negative.
be676094 10455
048addec 104562001-12-11 Richard M. Stallman <rms@gnu.org>
be676094 10457
048addec
JD
10458 * m/hp800.h: Split the __hpux conditional into the parts
10459 that are right for GNU/Linux too and the parts that are not.
10460 Use the former if GNU_LINUX.
10461 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
032a857d 10462
048addec 10463 * s/gnu-linux.h (GNU_LINUX): Defined.
032a857d 10464
048addec 104652001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
032a857d 10466
048addec
JD
10467 * macros.c, msdos.c, w16select.c: Change doc-string comments to
10468 `new style' [w/`doc:' keyword].
032a857d 10469
048addec 104702001-12-10 Jason Rumney <jasonr@gnu.org>
b6270150 10471
048addec
JD
10472 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
10473 before using.
b6270150 10474
048addec 104752001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
792e5cbd 10476
048addec
JD
10477 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
10478 keyword].
98cbb9fa 10479
048addec 104802001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
98cbb9fa 10481
048addec 10482 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
98cbb9fa 10483
048addec 10484 * s/hpux10.h (srand48): Don't undefine.
98cbb9fa 10485
048addec 104862001-12-09 Jason Rumney <jasonr@gnu.org>
792e5cbd 10487
048addec
JD
10488 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
10489 Add comment to explain where the struct came from.
10490 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
10491 (add_menu_item): Process pop-up menus first to avoid memory leak.
10492 (add_menu_item, w32_menu_display_help): Use `help' field as
10493 Lisp_Object.
10494 (w32_free_submenu_strings): Only free owner-drawn strings.
fa336b91 10495
048addec 104962001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
fa336b91 10497
048addec 10498 * COPYING: Moved back.
fa336b91 10499
048addec
JD
10500 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
10501 Add parentheses around && within ||.
077907d4 10502
048addec 10503 * indent.c (compute_motion): Likewise.
aa2af83a 10504
048addec 10505 * intervals.c (merge_properties_sticky): Likewise.
60a653f1 10506
048addec
JD
10507 * coding.c (setup_coding_system, shrink_encoding_region)
10508 (Fdecode_sjis_char): Likewise.
60a653f1 10509
048addec 105102001-12-07 Andreas Schwab <schwab@suse.de>
60a653f1 10511
048addec
JD
10512 * xdisp.c (display_mode_element): Don't read past end of string if
10513 it ends with '%'.
60a653f1 10514
048addec
JD
10515 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
10516 can hold.
60a653f1 10517
048addec
JD
10518 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
10519 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
10520 type changed to Lisp_Object.
10521 (syms_of_data): DEFVAR_LISP them.
60a653f1 10522
048addec 105232001-12-07 Richard M. Stallman <rms@gnu.org>
60a653f1 10524
048addec
JD
10525 * callproc.c (init_callproc): Set Vdata_directory based on the source
10526 location whenever Emacs was run uninstalled.
60a653f1 10527
048addec 105282001-12-06 Paul Eggert <eggert@twinsun.com>
60a653f1 10529
048addec
JD
10530 * config.in (HAVE_WORKING_VFORK): New #undefs.
10531 * process.c (create_process):
10532 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
10533 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
10534 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
10535 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
10536 * m/intel386.h (HAVE_VFORK): Likewise.
10537 * m/mips-siemens.h (HAVE_VFORK): Likewise.
10538 * m/mips.h (HAVE_VFORK): Likewise.
10539 * s/freebsd.h (vfork): Remove #define.
10540 * s/lynxos.h (HAVE_VFORK): Remove #undef.
10541 * s/usg5-4-2.h: Fix comment about vfork.
60a653f1 10542
048addec 105432001-12-06 Richard M. Stallman <rms@gnu.org>
60a653f1 10544
048addec
JD
10545 * s/hpux10.h (random): Add undef.
10546 (HAVE_RANDOM): Define it just once.
60a653f1 10547
048addec 105482001-12-06 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 10549
048addec 10550 * eval.c: Undo last change: the standard syntax is not wanted.
60a653f1 10551
048addec 105522001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 10553
048addec
JD
10554 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
10555 scroll bars of the frame before deleting the frame itself. If the
10556 frame has a widget, delete the frame with XtDestroyWidget, and do
10557 not call XDestroyWindow before that.
60a653f1 10558
048addec 105592001-12-06 Kim F. Storm <storm@cua.dk>
60a653f1 10560
048addec 10561 * xfns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 10562
048addec 10563 * w32fns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 10564
048addec 105652001-12-05 Andrew Innes <andrewi@gnu.org>
60a653f1 10566
048addec
JD
10567 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
10568 excessively large.
60a653f1 10569
048addec
JD
10570 * insdel.c (make_gap_larger): New function.
10571 (make_gap_smaller): New function.
10572 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
10573 Call make_gap_smaller if arg is negative.
60a653f1 10574
048addec 105752001-12-04 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 10576
048addec
JD
10577 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
10578 Pass a dummy argument when calling interrupt_signal.
10579 (parse_menu_item): Mark disabled items before checking for empty def.
10580 (read_char_minibuf_menu_prompt): Make safety more visible.
10581 (read_key_sequence): Add a `first_unbound' variable.
10582 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
10583 unbound prefix as soon as we can detect it.
60a653f1 10584
048addec
JD
10585 * doc.c (Fsnarf_documentation): Add prototype.
10586 (get_doc_string): Handle negative arguments.
10587 (Fdocumentation): Use AREF and ASIZE.
10588 Move the calls to get_doc_string to a single place.
10589 Don't confuse an interactive-spec for a docstring reference.
10590 (Fdocumentation_property): Take advantage of the fact that
10591 get_doc_string now ignores the sign of the docstring position.
60a653f1 10592
048addec 10593 * eval.c: Use standard syntax for usage in docstrings.
60a653f1 10594
048addec 105952001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 10596
048addec 10597 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief` an option.
60a653f1 10598
048addec 105992001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 10600
048addec
JD
10601 * xterm.c (x_draw_image_relief): Use predefined macro instead of
10602 constant when the value of `tool_bar_button_relief' is negative.
60a653f1 10603
048addec 106042001-12-02 Richard M. Stallman <rms@gnu.org>
60a653f1 10605
048addec
JD
10606 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
10607 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
60a653f1 10608
048addec 10609 * fileio.c (read_non_regular): Delete Fsignal call.
60a653f1 10610
048addec 106112001-12-01 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 10612
048addec 10613 * lisp.h (run_hook_list_with_args): Undo last change.
60a653f1 10614
048addec 106152001-12-01 Gerd Moellmann <gerd@gnu.org>
60a653f1 10616
048addec 10617 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
60a653f1 10618
048addec 106192001-12-01 Jason Rumney <jasonr@gnu.org>
60a653f1 10620
048addec 10621 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
60a653f1 10622
048addec
JD
10623 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
10624 [!WM_MOUSELEAVE]: Define.
60a653f1 10625
048addec
JD
10626 * w32menu.c (current_popup_menu, get_menu_item_info):
10627 (set_menu_item_info): New vars.
10628 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
10629 (w32_menu_show): Set current_popup_menu.
10630 (add_menu_item): Allocate new strings for owner-drawn menu items
10631 and help strings.
10632 Use owner-draw for disabled menu items again.
10633 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
10634 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
60a653f1 10635
048addec
JD
10636 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
10637 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
10638 <WM_EXITMENULOOP>: Free menu strings.
10639 <WM_MOUSELEAVE>: Stop tracking mouse.
10640 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
60a653f1 10641
048addec
JD
10642 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
10643 and mouse face.
60a653f1 10644
048addec 106452001-12-01 Kim F. Storm <storm@cua.dk>
60a653f1 10646
048addec
JD
10647 The following changes add left-fringe and right-fringe
10648 frame parameters to adjust fringe widths, or remove one or
10649 both fringes.
60a653f1 10650
048addec
JD
10651 * frame.h (struct frame): Remove trunc_area_pixel_width and
10652 trunc_area_cols fields.
10653 (Qleft_fringe, Qright_fringe): Declare.
10654 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
60a653f1 10655
048addec
JD
10656 * frame.c (Qleft_fringe, Qright_fringe): New vars.
10657 (syms_of_frame): Initialize them.
60a653f1 10658
048addec
JD
10659 * window.c (coordinates_in_window): Handle separate left and right
10660 fringe widths.
60a653f1 10661
048addec
JD
10662 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
10663 and fringe_cols fields.
10664 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
10665 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
10666 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
10667 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
10668 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
10669 (x_compute_fringe_widths): Add prototype.
60a653f1 10670
048addec
JD
10671 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
10672 fill fringe evenly with small dashes.
10673 (x_draw_fringe_bitmap): Clear background if necessary. Align and
10674 clip the new ZV bitmap to avoid jitter between rows.
10675 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
10676 background. Don't draw fringe bitmaps if fringe width is zero.
10677 (x_compute_fringe_widths): New function.
10678 (x_new_font, x_set_window_size_1): Use it.
60a653f1 10679
048addec
JD
10680 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
10681 (x_set_frame_parameters): Process `font' parameter before other
10682 parameters as fringe widths depend on it.
10683 (x_set_fringe_width): New function.
10684 (x_figure_window_size): Use x_compute_fringe_widths.
10685 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
10686 parameters.
60a653f1 10687
048addec
JD
10688 * widget.c (set_frame_size): Use x_compute_fringe_widths.
10689 (EmacsFrameSetCharSize): Ditto.
60a653f1 10690
048addec
JD
10691 * w32term.h: Merged changes from xterm.h.
10692 * w32term.c: Merged changes from xterm.c.
10693 * w32fns.c: Merged changes from xfns.c.
60a653f1 10694
048addec 106952001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 10696
048addec 10697 * COPYING: Removed.
60a653f1 10698
048addec 106992001-11-29 Dave Love <fx@gnu.org>
60a653f1 10700
048addec
JD
10701 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
10702 extra extra slot.
10703 (detect_coding_mask): Fix call of detect_coding_iso2022.
60a653f1 10704
048addec 107052001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 10706
048addec
JD
10707 * fileio.c (file-name-coding-system)
10708 (default-file-name-coding-system): Doc fix (links to referenced
10709 variables added).
60a653f1 10710
048addec 107112001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 10712
048addec
JD
10713 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
10714 Add dummy uses of gcproN variables.
60a653f1 10715
048addec
JD
10716 * category.c (describe_category, describe_category_1)
10717 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
10718 (syms_of_category): Don't defsubr Sdescribe_categories.
60a653f1 10719
048addec 107202001-11-28 Richard M. Stallman <rms@gnu.org>
60a653f1 10721
048addec 10722 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
60a653f1 10723
048addec
JD
10724 * Makefile.in (lispdir): New variable, referring to build dir.
10725 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
60a653f1 10726
048addec 107272001-11-28 Andrew Innes <andrewi@gnu.org>
60a653f1 10728
048addec
JD
10729 * w32menu.c (w32_menu_display_help): Actually add the new argument
10730 OWNER.
60a653f1 10731
048addec 107322001-11-28 Jason Rumney <jasonr@gnu.org>
60a653f1 10733
048addec
JD
10734 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
10735 menu items. From David Ponce <dponce@wanadoo.fr>.
10736 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
10737 conditionally.
10738 (w32_menu_display_help): New argument OWNER. Rewritten to store a
10739 help event in the owner frame's keyboard buffer.
60a653f1 10740
048addec
JD
10741 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
10742 (Fx_show_tip): Don't subtract last width from row width.
10743
10744 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
10745 (w32_read_socket): Use EQ to compare frames.
60a653f1 10746
048addec 107472001-11-28 Gerd Moellmann <gerd@gnu.org>
60a653f1 10748
048addec
JD
10749 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
10750 OVERLAPS_P.
60a653f1 10751
048addec 107522001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 10753
048addec
JD
10754 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
10755 `gcpro3' and `gcpro4'.
60a653f1 10756
048addec 10757 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
60a653f1 10758
048addec 107592001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 10760
048addec 10761 * ccl.c: Use AREF and ASIZE.
60a653f1 10762
048addec 107632001-11-27 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 10764
048addec
JD
10765 * lisp.h (run_hook_list_with_args): Remove.
10766 (LIST_END_P): Fix call to wrong_type_argument.
10767 (make_fixnum_or_float): Use EMACS_INT rather than int.
60a653f1 10768
048addec 107692001-11-26 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 10770
048addec
JD
10771 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
10772 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
60a653f1 10773
048addec
JD
10774 * eval.c: Use AREF and ASIZE.
10775 (Ffetch_bytecode): Add the file name to the error message.
60a653f1 10776
048addec
JD
10777 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
10778 which match the end of the file-name.
10779 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
10780 is not a valid env var, but leave it as is instead.
60a653f1 10781
048addec
JD
10782 * keymap.c (access_keymap): Handle t bindings like nil bindings.
10783 Make nil bindings in char-tables transparent.
10784 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
60a653f1 10785
048addec 107862001-11-26 Richard M. Stallman <rms@gnu.org>
60a653f1 10787
048addec
JD
10788 * textprop.c (set_text_properties_1): Allow START, END in either order.
10789 Do nothing if range is empty.
60a653f1 10790
048addec 10791 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
60a653f1 10792
048addec
JD
10793 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
10794 (clean): Not here.
60a653f1 10795
048addec 107962001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 10797
048addec
JD
10798 * textprop.c (set_text_properties_1): Clearly mark that the
10799 interval should not be empty.
60a653f1 10800
048addec
JD
10801 * intervals.c (graft_intervals_into_buffer):
10802 Don't call set_text_properties_1 on an empty interval.
60a653f1 10803
048addec 108042001-11-25 Richard M. Stallman <rms@gnu.org>
60a653f1 10805
048addec 10806 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
60a653f1 10807
048addec
JD
10808 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
10809 don't lose the data in it.
60a653f1 10810
048addec 108112001-11-25 Juanma Barranquero <lektu@terra.es>
60a653f1 10812
048addec 10813 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
60a653f1 10814
048addec 10815 * buffer.c (Fkill_buffer): Use Frun_hooks, not Vrun_hooks.
60a653f1 10816
048addec 10817 * print.c (temp_output_buffer_setup): Use Frun_hooks, not Vrun_hooks.
60a653f1 10818
048addec 108192001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 10820
048addec 10821 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
60a653f1 10822
048addec 108232001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 10824
048addec
JD
10825 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
10826 Niemitalo <kon@iki.fi>.
60a653f1 10827
048addec 108282001-11-25 Jason Rumney <jasonr@gnu.org>
60a653f1 10829
048addec 10830 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
60a653f1 10831
048addec
JD
10832 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
10833 (Fx_show_tip): Block input during frame creation.
10834 (Fx_show_tip, Fx_hide_tip): Enable.
60a653f1 10835
048addec 108362001-11-24 Richard M. Stallman <rms@gnu.org>
60a653f1 10837
048addec
JD
10838 * lread.c (Fload): Detect recursive load error for more than 3
10839 nestings of the same file.
10840 (Vrecursive_load_depth_limit): Variable deleted.
10841 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
60a653f1 10842
048addec 108432001-11-24 Jason Rumney <jasonr@gnu.org>
60a653f1 10844
048addec
JD
10845 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
10846 mouse position if either left or top is not specified.
60a653f1 10847
048addec
JD
10848 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
10849 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
10850 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
10851 (my_create_tip_window): Assign tip_window.
10852 (x_create_tip_frame): Use same defaults as X.
10853 (compute_tip_xy): Remove unused variable. Use full screen width.
10854 (Fx_show_tip): Do not double height. Call ShowWindow directly.
60a653f1 10855
048addec
JD
10856 * w32term.c (x_after_update_window_line): Doc fix.
10857 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
10858 frames.
10859 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
60a653f1 10860
048addec
JD
10861 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
10862 for all Windowed systems.
60a653f1 10863
048addec 108642001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 10865
048addec
JD
10866 * msdos.c (IT_clear_screen): If the frame's faces are not yet
10867 realized, use the initial screen colors to clear the screen.
60a653f1 10868
048addec 108692001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 10870
048addec
JD
10871 * textprop.c (Fset_text_properties): Remove unused variables
10872 `unchanged', `prev_changed', `s' and `len'.
60a653f1 10873
048addec
JD
10874 * search.c (Freplace_match): Remove unused variable `inslen'.
10875
10876 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
10877
108782001-11-22 Jason Rumney <jasonr@gnu.org>
10879
10880 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
10881 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
10882 (my_create_tip_window): New function.
10883 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
10884 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
10885
108862001-11-20 Jason Rumney <jasonr@gnu.org>
10887
10888 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
10889 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
10890
10891 * w32fns.c (Vw32_system_coding_system): Remove.
10892 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
10893
108942001-11-19 Stefan Monnier <monnier@cs.yale.edu>
10895
10896 * fileio.c (Fwrite_region): Move choose_write_coding_system to
10897 after build_annotations.
10898
10899 * syntax.c (describe_syntax): Add dummy arg.
10900 (describe_syntax_1): Update call to describe_vector.
10901
10902 * category.c (describe_category): Add dummy arg.
10903 (describe_category_1): Update call to describe_vector.
10904
10905 * keymap.c (Fdescribe_vector): Add `describer' parameter.
10906 (describe_command, describe_translation): Add dummy second param.
10907 (describe_map): Call elt_describer with two arguments.
10908 (describe_vector_princ): Add `fun' parameter.
10909 Call it instead of the hardcoded `princ'.
10910 (describe_vector): Add arg `args'.
10911 Pass it as a new second argument to elt_describer.
60a653f1 10912
048addec 10913 * keymap.h (describe_vector): Update prototype.
60a653f1 10914
048addec
JD
10915 * frame.c: Don't include keymap.h any more.
10916 (keys_of_frame): Remove.
60a653f1 10917
048addec 10918 * lisp.h (keys_of_frame): Remove declaration.
60a653f1 10919
048addec 10920 * emacs.c (main): Don't call `keys_of_frame' any more.
60a653f1 10921
048addec 109222001-11-14 Andreas Schwab <schwab@suse.de>
60a653f1 10923
048addec
JD
10924 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
10925 if defined, 0 otherwise.
10926 (MAP_FAILED): Define if not defined and use it to test mmap failure.
10927 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
60a653f1 10928
048addec 109292001-11-19 Richard M. Stallman <rms@gnu.org>
60a653f1 10930
048addec 10931 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
60a653f1 10932
048addec 109332001-11-18 Jason Rumney <jasonr@gnu.org>
60a653f1 10934
048addec
JD
10935 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
10936 (x_draw_bar_cursor): If the background color of the glyph under
10937 the cursor equals the frame's cursor color, use the glyph's
10938 foreground color for drawing the bar cursor.
10939 (x_after_update_window_line): Clear internal border in different
10940 circumstances.
10941 (w32_set_vertical_scroll_bar): Check for width and height > 0.
10942 (w32_draw_relief_rect): Correct relief by 1 pixel.
10943 (x_set_glyph_string_background_width):
10944 Set extends_to_end_of_line_p if the row's fill_line_p is set and
10945 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
10946 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
10947 if cursor_in_non_selected_windows is false.
10948 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
10949 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
10950 Notice if cursor gets overwritten.
10951 (notice_overwritten_cursor): Renamed from
10952 note_overwritten_text_cursor. Rewritten to take glyph widths
10953 into account, and to take X positions as parameters.
10954 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
10955 around call to x_draw_glyphs.
10956 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
10957 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
10958 color to use for image glyph reliefs.
10959 (x_draw_image_relief): Accept zero tool_bar_button_relief.
10960 (glyph_rect): Remove unused variable `area'.
60a653f1 10961
048addec
JD
10962 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
10963 some items.
10964 (x_set_internal_border_width): Set frame garbaged when window
10965 doesn't exist yet.
10966 (Fx_create_frame): Accept zero tool_bar_button_relief.
10967 (x_clear_image_1, four_corners_best, image_background)
10968 (image_background_transparent): New functions.
10969 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
10970 (gs_format): Add `:background' entry.
10971 (lookup_image): Set IMG's background color if specified.
10972 (pbm_load, xbm_load_image, png_load): Set IMG's background field
10973 when appropriate.
10974 (x_clear_image_1): Reset `background_valid' and
10975 `background_transparent_valid' fields.
10976 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
10977 calculating it here. Set IMG's background_transparent field.
10978 (enum xpm_keyword_index): Add XPM_BACKGROUND.
10979 (enum png_keyword_index): Add PNG_BACKGROUND.
10980 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
10981 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
10982 (enum gif_keyword_index): Add GIF_BACKGROUND.
10983 (enum gs_keyword_index): Add GS_BACKGROUND.
10984 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
10985 Pre-calculate image background color where necessary.
10986 (x_create_x_image_and_pixmap, xbm_load, gs_load):
10987 Use display info's n_cbits entry for screen depth.
10988 (Fx_show_tip): Remove unused variables `buffer', `top',
10989 `left', `max_width' and `max_height'.
60a653f1 10990
048addec 10991 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
60a653f1 10992
048addec 109932001-11-18 Gerd Moellmann <gerd@gnu.org>
60a653f1 10994
048addec 10995 * puresize.h (BASE_PURESIZE): Increase to 750000.
60a653f1 10996
048addec 109972001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 10998
048addec 10999 * frame.c (Fframe_live_p): Doc fix.
60a653f1 11000
048addec 110012001-11-18 Richard M. Stallman <rms@gnu.org>
60a653f1 11002
048addec
JD
11003 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
11004 (message_dolog_marker3): New static variables hold three markers.
11005 (syms_of_xdisp): Initialize and staticpro them.
11006 (message_dolog): Use message_dolog_marker1..3 instead of
11007 allocating markers each time. Unchain them when done.
60a653f1 11008
048addec 110092001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 11010
048addec 11011 * doc.c (Fsnarf_documentation): Doc fix.
60a653f1 11012
048addec 110132001-11-17 Andreas Schwab <schwab@suse.de>
60a653f1 11014
048addec 11015 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
60a653f1 11016
048addec 110172001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 11018
048addec 11019 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
60a653f1 11020
048addec 110212001-11-17 Jason Rumney <jasonr@gnu.org>
60a653f1 11022
048addec 11023 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
60a653f1 11024
048addec 110252001-11-17 Gerd Moellmann <gerd@gnu.org>
60a653f1 11026
048addec
JD
11027 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
11028 with invalid position.
60a653f1 11029
048addec 110302001-11-16 Richard M. Stallman <rms@gnu.org>
60a653f1 11031
048addec 11032 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
60a653f1 11033
048addec
JD
11034 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
11035 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
11036 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
60a653f1 11037
048addec 11038 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
60a653f1 11039
048addec 110402001-11-16 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 11041
048addec
JD
11042 * fileio.c (build_annotations): Split off the tail.
11043 (build_annotations_2): New fun. Extracted from build_annotations.
11044 (Fwrite_region): Split the call to build_annotations into two
11045 calls to build_annotations and build_annotations_2.
077907d4 11046
048addec 110472001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
1756e2fb 11048
048addec
JD
11049 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
11050 clear_waiting_for_input with argument.
1756e2fb 11051
048addec 11052 * xterm.h (x_update_cursor): Remove duplicated prototype.
06e8f738 11053
048addec 11054 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
06e8f738 11055
048addec 11056 * xterm.c (waiting_for_input): Remove unnecessary declaration.
fa336b91 11057
048addec 11058 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
fa336b91 11059
048addec 110602001-11-16 Stefan Monnier <monnier@cs.yale.edu>
fa336b91 11061
048addec
JD
11062 * fileio.c (choose_write_coding_system): New fun, extracted
11063 from Fwrite_region.
11064 (Fwrite_region): Use it.
fa336b91 11065
048addec
JD
11066 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
11067 (funcall_lambda, run_hook_with_args): Make static and add prototype.
11068 (ml_apply, find_handler_clause): Add prototype.
fa336b91 11069
048addec 110702001-11-16 Eli Zaretskii <eliz@gnu.org>
fa336b91 11071
048addec 11072 * config.in: Add #undef HAVE_COFF_H.
fa336b91 11073
048addec
JD
11074 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
11075 Required for ISC 4.1.
fa336b91 11076
048addec 110772001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
fa336b91 11078
048addec
JD
11079 * syswait.h: (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
11080 Andrew Wiseman <a.wiseman@btclick.com>.
fa336b91 11081
048addec 110822001-11-16 Kim F. Storm <storm@cua.dk>
fa336b91 11083
048addec
JD
11084 The following changes are made to clean up the various internal
11085 references to the fringes to actually use the term `fringe' for
11086 them. Previously, they were called `flags areas', `bitmap areas',
11087 `left/right side of windows', or implicitly as `flags' or
11088 `bitmaps':
fa336b91 11089
048addec
JD
11090 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
11091 Comments fixed. Use renamed symbols.
06e8f738 11092
048addec 11093 * dispnew.c: Comment fix. Use renamed symbols.
06e8f738 11094
048addec
JD
11095 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
11096 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
11097 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
9ce647f4 11098
048addec 11099 * msdos.c: Comment fix.
9ce647f4 11100
048addec 11101 * w32fns.c: Use renamed symbols.
9b784ab8 11102
048addec
JD
11103 * w32term.c: Comment fixes. Use renamed symbols.
11104 (fringe_bitmap_type): Renamed from bitmap_type.
11105 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
11106 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
11107 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
9f7e52b4 11108
048addec
JD
11109 * w32term.h: Comment fixes. Use renamed symbols.
11110 (fringes_extra): Renamed from flags_areas_extra.
11111 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
11112 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
11113 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
11114 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
11115 (FRAME_X_LEFT_FRINGE_WIDTH):
11116 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
11117 (FRAME_X_RIGHT_FRINGE_WIDTH):
11118 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
9f7e52b4 11119
048addec 11120 * widget.c: Use renamed symbols.
9f7e52b4 11121
048addec
JD
11122 * window.c: Comment fixes. Use renamed symbols.
11123 (coordinates-in-window-p): Doc fix.
fa336b91 11124
048addec 11125 * xdisp.c: Comment fixes. Use renamed symbols.
34e5d0af 11126
048addec 11127 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
9b784ab8 11128
048addec 11129 * xfns.c: Use renamed symbols.
89512fcd 11130
048addec
JD
11131 * xterm.c: Comment fixes. Use renamed symbols.
11132 (fringe_bitmap_type): Renamed from bitmap_type.
11133 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
11134 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
11135 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
89512fcd 11136
048addec
JD
11137 * xterm.h: Comment fixes. Use renamed symbols.
11138 (fringes_extra): Renamed from flags_areas_extra.
11139 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
11140 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
11141 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
11142 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
11143 (FRAME_X_LEFT_FRINGE_WIDTH):
11144 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
11145 (FRAME_X_RIGHT_FRINGE_WIDTH):
11146 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
11147
111482001-11-15 Jason Rumney <jasonr@gnu.org>
11149
11150 * w32menu.c (add-menu-item): Make help_echo and radio buttons
11151 work for most menu items. From David Ponce
11152 <david.ponce@wanadoo.fr>.
11153
111542001-11-15 Gerd Moellmann <gerd@gnu.org>
11155
11156 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
11157 Some x_set_* function expect to be called even if old and new
11158 value are equal.
11159
11160 * xdisp.c (build_desired_tool_bar_string): Accept zero
11161 tool_bar_button_relief.
11162
11163 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
11164
11165 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
11166
11167 * xterm.c (x_draw_bar_cursor): If the background color of the
11168 glyph under the cursor equals the frame's cursor color, use
11169 the glyph's foreground color for drawing the bar cursor.
11170
11171 * dispnew.c (direct_output_forward_char): Fix character/byte
11172 position comparison.
7d18891d 11173
048addec 111742001-11-15 Miles Bader <miles@gnu.org>
d2936d21 11175
048addec
JD
11176 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
11177 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
11178 Update arguments to find_field.
11179 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
11180 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
11181 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
11182 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
7d18891d 11183
048addec 111842001-11-14 Richard M. Stallman <rms@gnu.org>
7d18891d 11185
048addec 11186 * editfns.c (Fpropertize): Allow call with 1 arg.
7d18891d 11187
048addec
JD
11188 * dispextern.h (image_background, image_background_transparent):
11189 Conditionalize on HAVE_X_WINDOWS.
7d18891d 11190
048addec 111912001-11-13 Richard M. Stallman <rms@gnu.org>
7d18891d 11192
048addec 11193 * print.c (Fprin1_to_string): Doc fix.
7d18891d 11194
048addec 11195 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
7d18891d 11196
048addec 11197 * floatfns.c (Fceiling, Ffloor): Doc fixes.
7d18891d 11198
048addec 11199 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
7d18891d 11200
048addec 11201 * fileio.c (Ffile_accessible_directory_p): Doc fix.
7d18891d 11202
048addec 11203 * eval.c (syms_of_eval): Doc fix.
7d18891d 11204
048addec 11205 * coding.c (syms_of_coding): Doc fix.
7d18891d 11206
048addec 11207 * doc.c (Fsnarf_documentation): Doc fix.
7d18891d 11208
048addec 11209 * dispnew.c (syms_of_display): Doc fix.
9474c847 11210
048addec 11211 * category.c (Fget_unused_category): Doc fix.
9474c847 11212
048addec 11213 * buffer.c (syms_of_buffer): Doc fixes.
e3059a5d 11214
048addec 112152001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
e3059a5d 11216
048addec 11217 * print.c (prin1, print): Doc fix.
e3059a5d 11218
048addec 112192001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
b3700ae7 11220
048addec
JD
11221 * fontset.h: Remove declarations of variables
11222 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
b3700ae7 11223
048addec
JD
11224 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
11225 `Vclip_large_size_font'.
eae936e2 11226
048addec 112272001-11-13 Jason Rumney <jasonr@gnu.org>
4bb962be 11228
048addec 11229 * w32fns.c: Doc fix.
ddb67bdc 11230
048addec 112312001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3467c402 11232
048addec 11233 * xfaces.c (Fface_attributes_as_vector): Doc fix.
3467c402 11234
048addec 11235 * fns.c: Doc fix.
6e1b91d7 11236
048addec 11237 * emacs.c: Doc fix.
1c1d3d69 11238
048addec 11239 * coding.c: Doc fix.
1c1d3d69 11240
048addec
JD
11241 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
11242 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
11243 `new style' [w/`doc:' keyword].
b6f4c7ba 11244
048addec 112452001-11-12 Richard M. Stallman <rms@gnu.org>
b6f4c7ba 11246
048addec
JD
11247 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
11248 LeaveNotify events. Only FocusIn and FocusOut do that now.
11249 (x_display_and_set_cursor): Do display hollow cursors in active
11250 minibuffer windows when they are not selected.
b6f4c7ba 11251
048addec 112522001-11-12 Jason Rumney <jasonr@gnu.org>
a89f435d 11253
048addec
JD
11254 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
11255 * w32term.c: Change doc-string comments to `new style'.
11256 [w/`doc:' keyword]. Doc fixes.
a89f435d 11257
048addec
JD
11258 * w32fns.c: Don't define max.
11259 (Fx_open_connection): Only execute once.
a4cd0cd7 11260
048addec 112612001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
eafb659a 11262
048addec
JD
11263 * ccl.c: Change macros to use do-while block instead of if-else.
11264 Use braces to follow GNU Coding Standards.
eafb659a 11265
048addec 112662001-11-11 Richard M. Stallman <rms@gnu.org>
a4cd0cd7 11267
048addec 11268 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
a4cd0cd7 11269
048addec 11270 * lread.c (read_escape): Use end_of_file_error for reporting eof.
a4cd0cd7 11271
048addec
JD
11272 * insdel.c (replace_range): Use adjust_markers_for_replace
11273 instead of adjust_markers_for_delete and adjust_markers_for_insert.
a4cd0cd7 11274
048addec 11275 * intervals.h: Declare set_text_properties and set_text_properties_1.
a4cd0cd7 11276
048addec
JD
11277 * textprop.c (set_text_properties_1): New subroutine
11278 broken out of set_text_properties.
11279 (set_text_properties): Use set_text_properties_1.
91823618 11280
048addec
JD
11281 * intervals.c (graft_intervals_into_buffer):
11282 Use set_text_properties_1 to clear out properties.
91823618 11283
048addec
JD
11284 * search.c (Freplace_match): Use replace_range to insert
11285 and delete. Don't request property inheritance from
11286 surrounding text.
86928dfb 11287
048addec 112882001-11-10 Jason Rumney <jasonr@gnu.org>
86928dfb 11289
048addec
JD
11290 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
11291 vertical fonts. Allow them if face name is explicitly specified.
11292 Do not give up if we find a font that cannot be converted to an xlfd.
40ef1eda 11293
048addec 112942001-11-10 Gerd Moellmann <gerd@gnu.org>
ab8469eb 11295
048addec
JD
11296 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
11297 instead of malloc/free.
a78e0303 11298
048addec 112992001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
40ef1eda 11300
048addec
JD
11301 * xfaces.c (merge_face_vectors): Use braces to follow GNU
11302 Coding Standards.
11303 (Finternal_set_lisp_face_attribute): Likewise.
fabf4a91 11304
048addec 11305 * buffer.c (Fbury_buffer): Likewise.
0c99b139 11306
048addec 11307 * indent.c (current_column_1): Remove unused variable `prev_col'.
0c99b139 11308
048addec
JD
11309 * coding.c (encode_coding): Use precomputed value of `src'.
11310 (encode_coding): Remove unused variable `src_end'.
11311 (code_convert_region): Remove unused variables `count'.
830ddd77 11312
048addec 113132001-11-07 Jason Rumney <jasonr@gnu.org>
830ddd77 11314
048addec
JD
11315 * w32term.c (x_display_and_set_cursor): Do not move system caret
11316 if cursor_glyph is NULL.
55c6d645 11317
048addec 113182001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
55c6d645 11319
048addec 11320 * keymap.c (access_keymap): Fix compilation error.
5de38842 11321
048addec 113222001-11-07 Miles Bader <miles@gnu.org>
7a4564a4 11323
048addec 11324 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
5de38842 11325
048addec 113262001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4fa23df5 11327
048addec
JD
11328 * intervals.c (graft_intervals_into_buffer):
11329 Remove #ifdef'd-out code.
11330 (graft_intervals_into_buffer): Remove unused variable `middle'.
4fa23df5 11331
048addec
JD
11332 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
11333 code (eval-current-buffer).
11334 Change doc-string comments to `new style' [w/`doc:' keyword].
7a6a97d7 11335
048addec 113362001-11-06 Richard M. Stallman <rms@gnu.org>
c191d13c 11337
048addec 11338 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
7a6a97d7 11339
048addec 113402001-11-06 Stefan Monnier <monnier@cs.yale.edu>
44dc78e0 11341
048addec 11342 * lread.c (read1): Fix behavior with nested backquoting.
44dc78e0 11343
048addec
JD
11344 * keyboard.c (make_lispy_event): Check integerness and fix
11345 Lisp_Object/int mixup.
17893c65 11346
048addec 113472001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4d994a79 11348
048addec 11349 * fns.c (copy_hash_table): Remove unused variable `v'.
d5360cc7 11350
048addec
JD
11351 * fontset.c (fontset_font_pattern): Remove unused variable
11352 `family_registry'.
d5360cc7 11353
048addec 11354 * indent.c (current_column_1): Remove unused variable `prev_col'.
d5360cc7 11355
048addec 113562001-11-05 Richard M. Stallman <rms@gnu.org>
96238a5a 11357
048addec 11358 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
96238a5a 11359
048addec
JD
11360 * buffer.c (Fkill_buffer): Don't delete auto save file
11361 if buffer is modified.
d9d54213 11362
048addec 113632001-11-05 Andrew Innes <andrewi@gnu.org>
d9d54213 11364
048addec
JD
11365 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
11366 CHECK_NUMBER_CDR.
b116830b 11367
048addec 113682001-11-05 Richard M. Stallman <rms@gnu.org>
b116830b 11369
048addec 11370 * unexelf.c (unexec): Minor changes; clean up comments.
3297e2a1 11371
048addec 113722001-11-05 Sam Steingold <sds@gnu.org>
3297e2a1 11373
048addec 11374 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
6fb8339c 11375
048addec 113762001-11-05 Andreas Schwab <schwab@suse.de>
6fb8339c 11377
048addec 11378 * sound.c (sound_perror): Save errno from being clobbered.
7dd73b78 11379
048addec 113802001-11-05 Dale Hagglund <rdh@yottayotta.com>
7dd73b78 11381
048addec
JD
11382 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
11383 the program image directly.
982f6c7e 11384
048addec 113852001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d31053f9 11386
048addec 11387 * buffer.h (Fbuffer_local_value): Add prototype.
d31053f9 11388
048addec 113892001-11-04 Richard M. Stallman <rms@gnu.org>
d31053f9 11390
048addec
JD
11391 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
11392 and CHECK_BUFFER.
d31053f9 11393
048addec
JD
11394 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
11395 (record_char): Likewise.
d31053f9 11396
048addec
JD
11397 * keyboard.c (make_lispy_event): Don't insist a drag event must
11398 move to a different buffer position. Instead, check for moving at
11399 least double_click_fuzz.
982f6c7e 11400
048addec 11401 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
830047fd 11402
048addec 11403 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
b116830b 11404
048addec
JD
11405 * indent.c (current_column_1, Fmove_to_column): Separate the code
11406 for display-table glyphs from the code for buffer text, to fix
11407 bugs in the former.
830047fd 11408
048addec 114092001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
b116830b 11410
048addec
JD
11411 * buffer.c (Fbuffer_local_value): New function.
11412 (syms_of_buffer): Defsubr it.
2df5238c 11413
048addec
JD
11414 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
11415 value of `cursor-in-non-selected-windows'.
4e397688 11416
048addec
JD
11417 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
11418 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
11419 (syms_of_xdisp): Initialize it.
48b0f3ae 11420
048addec 114212001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2df5238c 11422
048addec 11423 * xfns.c (Fx_create_frame): Doc fix.
3ecaf7e5 11424
048addec
JD
11425 * coding.c: Change doc-string comments to `new style' [w/`doc:'
11426 keyword].
3ecaf7e5 11427
048addec
JD
11428 * eval.c (top_level_value, top_level_set): Remove commented and
11429 #ifdef'd-out code.
11430 (Fdefvar): Fix usage in doc-string.
3ecaf7e5 11431
048addec 114322001-11-03 Richard M. Stallman <rms@gnu.org>
3ecaf7e5 11433
048addec 11434 * xfns.c: Include unistd.h, if it exists.
8db2e33b 11435
048addec 11436 * editfns.c: Move the include of ctype.h after unistd.h.
8db2e33b 11437
048addec 11438 * gmalloc.c: Test BROKEN_PROTOTYPES.
aed29b97 11439
048addec 114402001-11-03 Ken Raeburn <raeburn@gnu.org>
aed29b97 11441
048addec
JD
11442 * lisp.h (CHECK_STRING_CAR): New macro.
11443 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
11444 treating XCAR and XCDR as lvalues.
11445 (openp): Use CHECK_STRING_CAR.
11446 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
aed29b97 11447
048addec 114482001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
6cb16f95 11449
048addec
JD
11450 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
11451 (SIGMASKTYPE): Define.
1b1acc13 11452
048addec 11453 * syssignal.h (sigunblock): Don't define if already defined.
020f9b38 11454
048addec 114552001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
020f9b38 11456
048addec
JD
11457 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
11458 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
11459 Fix typos in comments.
6cb16f95 11460
048addec
JD
11461 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
11462 and #ifdef'd-out code.
11463 Fix and reindent comments.
6cb16f95 11464
048addec 11465 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
6cb16f95 11466
048addec
JD
11467 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
11468 argument `i' in macros.
6cb16f95 11469
048addec
JD
11470 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
11471 `i' in macros.
7e9d3c2f 11472
048addec
JD
11473 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
11474 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
11475 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
11476 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
11477 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
11478 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
11479 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
11480 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
11481 in macros.
7e9d3c2f 11482
048addec
JD
11483 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
11484 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
11485 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
11486 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
11487 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
11488 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
11489 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
11490 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
11491 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
11492 (remove unused second argument).
7e9d3c2f 11493
048addec 114942001-11-02 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 11495
048addec
JD
11496 * syntax.c (describe_syntax): New wrapper.
11497 (Finternal_describe_syntax_value): Rename from describe_syntax.
11498 Don't insert space at front and \n at the end.
11499 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
e6bff182 11500
048addec
JD
11501 * regex.c (re_wctype): Try to fix some warnings.
11502 (regcomp, regexec): Don't forget the __restrict.
9ba48103 11503
048addec 115042001-11-02 Richard M. Stallman <rms@gnu.org>
9ba48103 11505
048addec 11506 * textprop.c (Fget_char_property): Doc fix.
9ba48103 11507
048addec 115082001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9ba48103 11509
048addec 11510 * process.c (Fstart_process): Add usage to doc-string.
c22e59e1 11511
048addec 11512 * data.c (Fsetq_default): Ditto.
c22e59e1 11513
048addec 11514 * callint.c (Finteractive): Ditto.
9271ed2c 11515
048addec 115162001-11-01 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 11517
048addec
JD
11518 * macros.c: Don't include keymap.h any more.
11519
115202001-11-01 Richard M. Stallman <rms@gnu.org>
11521
11522 * data.c (Fmake_local_variable): Doc fix.
11523
11524 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
11525 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
e6bff182 11526
048addec 11527 * keymap.c (Fdescribe_buffer_bindings): Print character property
9271ed2c
RS
11528 bindings along with or instead of the buffer local map.
11529 Make the overriding maps override what they should.
11530
f00691a3 115312001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8b8bd9c6
PJ
11532
11533 * window.c (grow_mini_window): Fix typo in comment.
11534
27188d11
GM
115352001-11-01 Gerd Moellmann <gerd@gnu.org>
11536
7b49b9d2
GM
11537 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
11538 (XTset_vertical_scroll_bar): Likewise.
11539
43f7c3ea
GM
11540 * xfns.c (x_build_heuristic_mask): Use four_corners_best
11541 instead of IMAGE_BACKGROUND.
c22e59e1 11542
b350c2e5
GM
11543 * xfns.c (four_corners_best): Reindent.
11544
c22e59e1 11545 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
27188d11
GM
11546 Handle :box so that it is possible to specify sexprs.
11547
bf00d461
EZ
115482001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
11549
11550 * s/hpux11.h: New file.
11551
f00691a3 115522001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e10df59 11553
2b209b97
PJ
11554 * emacs.c (USAGE1): Show command line option --no-window-system
11555 instead of --no-windows in usage.
11556 (standard_args): Rename --no-windows to --no-window-system.
11557 (bug_reporting_address): Follow Emacs coding conventions.
11558
9dbc9081
PJ
11559 * eval.c (Fcommandp): Doc fix.
11560 Change doc-string comments to `new style' [w/`doc:' keyword].
11561
4e10df59
PJ
11562 * frame.c (Fframe_live_p): Doc fix.
11563
11564 * buffer.c (selective-display-ellipses): Doc fix.
11565
dd387b25
GM
115662001-10-31 Gerd Moellmann <gerd@gnu.org>
11567
fe957e65
GM
11568 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
11569
dd387b25
GM
11570 * xfaces.c (realize_x_face): If C is not a single-byte character,
11571 set the face's colors_copied_bitwise_p instead of the defaulted_p
11572 members which have a different meaning.
11573 (free_face_colors): Do nothing for a face whose colors have been
11574 copied bitwise.
11575
c22e59e1 11576 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
dd387b25 11577
f00691a3 115782001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2e1280f8 11579
687784e8
PJ
11580 * marker.c, mocklisp.c: Change doc-string comments to `new style'
11581 [w/`doc:' keyword].
2e1280f8 11582
b9d9a9b9
GM
115832001-10-31 Gerd Moellmann <gerd@gnu.org>
11584
11585 * fns.c (require_unwind): Return Lisp_Object.
11586
f00691a3 115872001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
48400103 11588
fa1361cb
PJ
11589 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
11590 (last-input-char): Revert doc-string to be the same as the
11591 doc-string of `last-input-event'.
11592
6c465a15 11593 * xdisp.c: Fix typos in comments.
48400103 11594
eafa3196
GM
115952001-10-31 Gerd Moellmann <gerd@gnu.org>
11596
11597 * window.c (grow_mini_window): Handle case that the root
11598 window is already smaller than the nominal mininum height.
11599
747d3f2a
SM
116002001-10-30 Stefan Monnier <monnier@cs.yale.edu>
11601
bf9bb76f
SM
11602 * emacs.c (main): Don't call keys_of_macros any more.
11603
11604 * lisp.h (keys_of_macros): Remove.
11605
11606 * macros.c (keys_of_macros): Remove.
11607
747d3f2a
SM
11608 * xfaces.c (Fface_attribute_relative_p): Declare args.
11609
5e905a57
JR
116102001-10-30 Jason Rumney <jasonr@gnu.org>
11611
11612 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
11613 (enum_font_cb2): Ignore fonts with vertical orientation.
11614
3a426197
RS
116152001-10-30 Richard M. Stallman <rms@gnu.org>
11616
11617 * keyboard.c (Finput_pending_p): Doc fix.
11618
a742d646
GM
116192001-10-30 Gerd Moellmann <gerd@gnu.org>
11620
259cf6bc
GM
11621 * xterm.c (x_after_update_window_line): Don't run the code
11622 clearing in borders for rows whose visible height is 0.
11623
3f99f948
GM
11624 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
11625 resized_p flag is set. If not set, use the much less flickering
11626 method previously used.
11627
11628 * dispnew.c (change_frame_size_1): Set frame's resized_p.
11629
11630 * frame.h (struct frame) <resized_p>: New member.
11631
b4a3be43
GM
11632 * lread.c (to_multibyte): Ensure read_buffer is at least twice
11633 as large as the number of bytes to convert.
747d3f2a 11634
a742d646
GM
11635 * lread.c (to_multibyte): New function.
11636 (read1): Use it.
11637
cacbb9e9
EZ
116382001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
11639
11640 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
11641
99cb6b2f
GM
116422001-10-30 Gerd Moellmann <gerd@gnu.org>
11643
327f42ee 11644 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
747d3f2a
SM
11645 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
11646 if the row's fill_line_p is set and drawing the last glyph with
11647 DRAW_IMAGE_{RAISED,SUNKEN}.
327f42ee 11648
99cb6b2f
GM
11649 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
11650
8e8223e2
SM
116512001-10-29 Stefan Monnier <monnier@cs.yale.edu>
11652
11653 * xmenu.c: Include coding.h and charset.h.
11654 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
11655 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
11656 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
11657 Explicitly set wv->help. Use `TRUE' rather than `True'.
11658 (menu_help_callback): Use empty_string.
11659
11660 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
11661 (Fx_popup_dialog): Explicitly init f.
11662 (w32_menu_display_help): Use empty_string.
11663
4d083a8f
RS
116642001-10-29 Richard M. Stallman <rms@gnu.org>
11665
b2304472
RS
11666 * fns.c (Frequire): Detect recursive try to require the same
11667 feature 3 or more levels deep, and get error.
11668 (require_unwind): New subroutine.
11669 (require_nesting_list): New variable.
11670 (syms_of_fns): Init and staticpro it.
11671
4d083a8f
RS
11672 * print.c (print_object): Clarify indication of insertion type.
11673
2fe41216
EZ
116742001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
11675
90480000
EZ
11676 * coding.c (syms_of_coding): Document that locale-coding-system is
11677 used for decoding input on X.
11678
2fe41216
EZ
11679 * window.c (Fscroll_left, Fscroll_right): Doc fix.
11680
f00691a3 116812001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
74e79967
PJ
11682
11683 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
11684 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
11685
60ebcfe8
GM
116862001-10-29 Gerd Moellmann <gerd@gnu.org>
11687
9a7bdceb
GM
11688 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
11689 use NO_CURSOR if cursor_in_non_selected_windows is false.
11690
3f08fcd2
GM
11691 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
11692 the slant attribute if FRAME is t.
11693
0ccfdad2
GM
11694 * xfns.c (x_set_internal_border_width): Set frame garbaged
11695 when X window doesn't exist yet.
11696
ef253080
GM
11697 * xterm.c (x_after_update_window_line): Clear internal border
11698 in different circumstances.
b116830b 11699
60ebcfe8
GM
11700 * xterm.c (XTread_socket) <KeyPress>: Don't use
11701 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
11702 <handa@etl.go.jp>.
11703
73d25f9c
EZ
117042001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
11705
11706 * m/ibms390.h: New file. From Adam Thornton
11707 <athornton@sinenomine.net>.
11708
cac1daf0
GM
117092001-10-28 Gerd Moellmann <gerd@gnu.org>
11710
053b3256 11711 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
b116830b 11712
cac1daf0
GM
11713 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
11714 a loop counter.
11715
f00691a3 117162001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13b1a09c 11717
186486eb
PJ
11718 * emacs.c: Use argv[0] instead of emacs when -t was specified.
11719
4707d2d0
PJ
11720 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
11721 keyword].
11722 Fix typos in comments.
b116830b 11723
d883731c
PJ
11724 * emacs.c (bug_reporting_address): New function.
11725 Use it when displaying usage message.
11726
04012254
PJ
11727 * minibuf.c (read_minibuf): Remove unused external declaration of
11728 variable `Qread_only'.
11729
13b1a09c
PJ
11730 * keymap.c (access_keymap): Remove unused variable `charset'.
11731
5bbf4378
MB
117322001-10-28 Miles Bader <miles@gnu.org>
11733
11734 * xfaces.c (merge_face_heights): Handle TO being relative as well.
11735 Remove #ifdef'd-out code.
11736 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
11737 (syms_of_xfaces): Initialize them.
11738
1ce1e4ee
JR
117392001-10-27 Jason Rumney <jasonr@gnu.org>
11740
11741 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
11742 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
11743 position using the system caret.
11744
11745 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
11746 (w32_system_caret_height, w32_system_caret_x)
11747 (w32_system_caret_y): New variables for tracking system caret.
11748 (w32_initialize): Initialize them.
c2d53558 11749 (x_display_and_set_cursor): Make system caret follow the active cursor.
1ce1e4ee 11750
c2d53558
SM
11751 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
11752 New messages types.
1ce1e4ee
JR
11753
11754 * w32term.c (note_mouse_highlight): Clear old help_echo.
11755
f00691a3 117562001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e30ce42 11757
bb4600a4
PJ
11758 * xterm.c: Fix typo in a comment.
11759
7db35a48
PJ
11760 * emacs.c: Fix typos in comments.
11761 Remove unnecessary spaces.
11762 Change doc-string comments to `new style' [w/`doc:' keyword].
11763 (USAGE2): Fix typos in usage string.
11764
a7248e4f
PJ
11765 * xterm.c: Fix typo in a comment.
11766
4e30ce42
PJ
11767 * lisp.h: (gdb_lisp_params): Remove code in #if 0 which is now in
11768 emacs.c.
11769
62725a92
GM
117702001-10-27 Gerd Moellmann <gerd@gnu.org>
11771
798dbe1f 11772 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
c2d53558 11773 instead of 1/2 line_height in the heuristic for skipping
798dbe1f
GM
11774 farther backward when target_y was not reached.
11775
62725a92
GM
11776 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
11777 Display errno only if non-zero.
11778 (sound_warning): New function.
11779 (vox_configure): Don't treat failing to set sample rate as error.
11780 (various places): Improve error messages.
11781
d4e34d24
EZ
117822001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
11783
944e6f60
EZ
11784 * fileio.c (Faccess_file): Run the argument filename through
11785 Fexpand_file_name, before using it.
11786
d4e34d24
EZ
11787 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
11788 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
11789
38d2af0c
GM
117902001-10-26 Gerd Moellmann <gerd@gnu.org>
11791
da80a8d5
GM
11792 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
11793
38d2af0c
GM
11794 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
11795 Fix clearing in the case of scroll bars on the right.
c2d53558 11796
45de4a6f 117972001-10-26 Juanma Barranquero <lektu@terra.es>
56f508dd
EZ
11798
11799 * w32gui.h (XImage): Add a dummy typedef.
11800
fbd5ceb2
GM
118012001-10-26 Gerd Moellmann <gerd@gnu.org>
11802
c2d53558 11803 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
fbd5ceb2 11804
b23236fb
EZ
118052001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
11806
11807 * frame.c (Fframe_parameter): Fix last change.
11808
5d991fc4
EZ
11809 * fileio.c: Revert last change (which removed old commented-out
11810 version of expand-file-name). Add a comment that explains why
11811 this old version should not be removed.
11812
879eadc3
GM
118132001-10-25 Gerd Moellmann <gerd@gnu.org>
11814
75700ff2
GM
11815 * frame.c (Fframe_parameter): Fix a bug whereby some
11816 ``artificial'' frame parameters, like `minibuffer' were not
11817 obtained by calling Fframe_parameters.
11818
dfe92a6a
GM
11819 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
11820 cursor differently.
11821
879eadc3
GM
11822 * xdisp.c (move_it_vertically_backward): Compute line height
11823 differently. Add heuristic to try to be more compatible to 20.x.
11824
e1010ebe
SM
118252001-10-25 Stefan Monnier <monnier@cs.yale.edu>
11826
d73a471b
SM
11827 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
11828
d6da5a06
GM
11829 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
11830 boolean.
e1010ebe 11831
f66bd220
MB
118322001-10-25 Miles Bader <miles@gnu.org>
11833
11834 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
11835 BG is a pointer to a structure, not a structure.
11836 (gif_format, png_format): Add missing commas.
11837
d436d538
RS
118382001-10-24 Richard M. Stallman <rms@gnu.org>
11839
11840 * xfaces.c (Fface_attributes_as_vector): New function.
c2d53558 11841 (syms_of_xfaces): Defsubr it.
d436d538 11842
f00691a3 118432001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
075c507b
PJ
11844
11845 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
11846 variable `area'.
11847
f00691a3 118482001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d492b584 11849
c2d53558 11850 * search.c (scan_newline): Remove unused variable `selective_display'.
d492b584 11851
e2a57b34
MB
118522001-10-25 Miles Bader <miles@gnu.org>
11853
11854 * dispextern.h (struct image): Add `background',
11855 `background_valid', and `background_transparent' fields.
11856 (image_background, image_background_transparent): New declarations.
11857 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
11858 * xfns.c (image_background, image_background_transparent)
11859 (four_corners_best): New functions.
c2d53558 11860 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
e2a57b34
MB
11861 (gs_format): Add `:background' entry.
11862 (lookup_image): Set IMG's background color if specified.
11863 (pbm_load, xbm_load_image, png_load): Set IMG's background field
11864 when appropriate.
11865 (x_clear_image_1): Reset `background_valid' and
11866 `background_transparent_valid' fields.
11867 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
11868 calculating it here. Set IMG's background_transparent field.
11869 (enum xpm_keyword_index): Add XPM_BACKGROUND.
11870 (enum png_keyword_index): Add PNG_BACKGROUND.
11871 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
11872 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
11873 (enum gif_keyword_index): Add GIF_BACKGROUND.
11874 (enum gs_keyword_index): Add GS_BACKGROUND.
c2d53558 11875 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
e2a57b34
MB
11876 Pre-calculate image background color where necessary.
11877 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
11878 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
11879 color to use for image glyph reliefs.
11880
b547b6e8
GM
118812001-10-24 Gerd Moellmann <gerd@gnu.org>
11882
d9e3b8c6
GM
11883 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
11884 in full-width rows.
c2d53558 11885
b547b6e8
GM
11886 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
11887 Fix clearing of area not covered by scroll bar.
11888
f00691a3 118892001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2beb36f9
PJ
11890
11891 * xterm.c: (x_insert_glyphs): Remove unused variables `real_end'
11892 and `real_start'.
c2d53558 11893 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
2beb36f9
PJ
11894 (glyph_rect): Remove unused variable `area'.
11895
76cb5e06
GM
118962001-10-24 Gerd Moellmann <gerd@gnu.org>
11897
bdbdebff 11898 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
c2d53558
SM
11899
11900 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
11901 (row_containing_pos): Take additional argument DY.
11902 Treat rows ending in middle of char differently.
62e33982
GM
11903 (display_line): Handle tabs on window systems differently.
11904
11905 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
11906 with additional argument.
11907
11908 * dispextern.h (row_containing_pos): Adjust prototype.
11909
76cb5e06
GM
11910 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
11911 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
11912 (try_window_id, try_window_reusing_current_matrix)
11913 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
6c465a15 11914 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
76cb5e06 11915
f00691a3 119162001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
996fee11 11917
c9e60620
PJ
11918 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
11919 gnuemacs).
11920 (HAVE_BOXES): Fix typo in comment.
11921 (push_menu_pane): Fix typo in comment.
11922
3b552d56
PJ
11923 * xdisp.c: (display_prop_string_p): Remove unused local declaration
11924 of `Qwhen'.
11925 (single_display_prop_string_p): Remove unused local declarations
11926 of `Qwhen' and `Qmargin'.
11927 (string_buffer_position): Remove unused variable `around'.
11928 (store_frame_title): Remove unused variable `width'.
11929
15c565ac
PJ
11930 * window.c: Don't define max.
11931 (coordinates_in_window): Remove unused variable `uy'.
11932
a8818eb9
PJ
11933 * widget.c: Don't define max.
11934
996fee11
PJ
11935 * process.c: Don't define max.
11936 (create_process): Remove unused variable `buffer'.
11937
496e1a5b
GM
119382001-10-23 Gerd Moellmann <gerd@gnu.org>
11939
c2d53558 11940 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
496e1a5b 11941
5905ae8b
EZ
119422001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
11943
11944 * xfaces.c (Finternal_set_lisp_face_attribute)
11945 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
11946 frame is on a windowed display.
11947
24db49fb
GM
119482001-10-23 Gerd Moellmann <gerd@gnu.org>
11949
c2d53558
SM
11950 * dispnew.c (sync_window_with_frame_matrix_rows):
11951 Fix handling of windows which aren't full-width, fix handling
c51488cd
GM
11952 of marginal areas.
11953
c2d53558 11954 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
24db49fb 11955
f0487f05
EZ
119562001-10-23 Andreas Schwab <schwab@suse.de>
11957
11958 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
11959 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
11960
f0a48a01
GM
119612001-10-23 Gerd Moellmann <gerd@gnu.org>
11962
c2d53558 11963 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
f0a48a01
GM
11964 REAL_END. Notice if cursor gets overwritten.
11965 (notice_overwritten_cursor): Take X positions as parameters.
11966 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
11967 around call to x_draw_glyphs.
11968
f00691a3 119692001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
a50a10a0 11970
fc11dff0
PJ
11971 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
11972 instead of C) and usage.
a50a10a0 11973
fc11dff0
PJ
11974 * editfns.c (char-to-string): Fix argument names (use CHAR instead
11975 of C) and usage.
a50a10a0
PJ
11976
11977 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
11978 `left', `max_width' and `max_height'.
11979
8738febd
GM
119802001-10-23 Gerd Moellmann <gerd@gnu.org>
11981
11982 * xdisp.c (display_line): For a tab continued to the next line,
11983 set row's ends_in_middle_of_char_p.
11984
653c329b
GM
119852001-10-22 Gerd Moellmann <gerd@gnu.org>
11986
11987 * xdisp.c (display_line): Fix computation of continuation lines
11988 width for TABs.
11989
f00691a3 119902001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
f958c5ac 11991
7ba51063
PJ
11992 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
11993 `Qlaplace'.
11994
f958c5ac
PJ
11995 * fileio.c: Remove unused code.
11996
eb360291
MB
119972001-10-22 Miles Bader <miles@gnu.org>
11998
11999 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
12000 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
12001 Remove `DOC_STRINGS_IN_COMMENTS' cases.
12002
98515cf0
JR
120032001-10-21 Jason Rumney <jasonr@gnu.org>
12004
12005 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
12006
93026d88
EZ
120072001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
12008
12009 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
12010 (Finsert_string): Avoid the multi-line string literals warning.
12011
c9a95b79
MB
120122001-10-22 Miles Bader <miles@gnu.org>
12013
12014 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
12015 (Fdocumentation): Don't use it.
12016 (syms_of_doc): Don't initialize it.
12017
12018 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
12019 * print.c (Fwith_output_to_temp_buffer): Likewise.
12020 * window.c (Fsave_window_excursion): Likewise.
c2d53558 12021 * editfns.c (Fsave_excursion, Fsave_current_buffer)
c9a95b79 12022 (Fsave_restriction): Likewise.
c2d53558
SM
12023 * eval.c (Frun_hooks, Frun_hook_with_args)
12024 (Frun_hook_with_args_until_failure)
12025 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
12026 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
12027 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
c9a95b79
MB
12028 (Funwind_protect, Fcondition_case): Likewise.
12029 * coding.c (Ffind_operation_coding_system): Likewise.
12030 * keyboard.c (Ftrack_mouse): Likewise.
12031
a3b10252
MB
120322001-10-21 Miles Bader <miles@gnu.org>
12033
c2d53558 12034 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
a3b10252
MB
12035 (Fmake_hash_table): Add usage: string to doc string.
12036 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
c2d53558 12037 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
a3b10252
MB
12038 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
12039 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
12040 (Fml_prefix_argument_loop): Likewise.
12041
f00691a3 120422001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c6f73eec 12043
c2d53558 12044 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
888ebd13 12045
c6f73eec
PJ
12046 * sysdep.c (init_sys_modes): Change doc-string comments to `new
12047 style' [w/`doc:' keyword].
12048
12049 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
12050 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
12051 comments to `new style' [w/`doc:' keyword].
12052
3cf3436e
JR
120532001-10-21 Jason Rumney <jasonr@gnu.org>
12054
12055 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
12056
c169b8f1
JR
12057 * w32term.c (remember_mouse_glyph): New function.
12058 (w32_mouse_position): Use it.
12059 (note_mouse_movement): If the mouse moved off the glyph, remember
12060 its new position.
c2d53558 12061
4fdd691b
JR
12062 * w32term.h (struct w32_output): Correct spelling of x_compatible.
12063 (w32_display_info): Add mouse_face_overlay.
12064
c169b8f1
JR
12065 * w32term.c (notice_overwritten_cursor): Renamed from
12066 note_overwritten_text_cursor. Rewritten to take glyph widths into
12067 account.
12068 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
12069 (fast_find_string_pos): New function.
12070 (fast_find_position): Return the correct vpos. Add parameter
12071 STOP. In the final row, stop before glyphs having STOP as object.
12072 Don't consider glyphs that are not from a buffer.
12073 (fast_find_position) [0]: Add a presumably more correct version
12074 for after 21.1.
12075 (expose_window_tree, expose_frame): Don't compute intersections here.
12076 (expose_window): Do it here instead.
12077 (expose_window_tree, expose_window, expose_line): Return 1 when
12078 overwriting mouse-face.
12079 (expose_window): If W is the window currently being updated, mark
12080 the frame garbaged.
12081 (expose_frame): If mouse-face was overwritten, redo it.
12082 (x_use_underline_position_properties): New variable.
12083 (syms_of_xterm): DEFVAR_BOOL it.
12084 (x_draw_glyph_string): Add comment to use it in future.
12085 (x_draw_glyph_string): Restore clipping after drawing box.
12086 Fix a computation of the underline position.
12087 (w32_get_glyph_string_clip_rect): Minor cleanup.
12088 (x_fill_stretch_glyph_string): Remove an assertion.
12089 (x_produce_glyphs): Don't convert multibyte characters
12090 to unibyte characters in unibyte buffers.
12091 (cursor_in_mouse_face_p): New function.
12092 (x_draw_stretch_glyph_string): Use it to choose a different GC
12093 when drawing a cursor within highlighted text. Don't draw
12094 background again if it has already been drawn.
12095 (x_draw_glyph_string_box): Don't draw a full-width
12096 box just because the glyph row's full_width_p flag is set.
12097 (x_draw_glyphs): Fix computation of rightmost x for
12098 full-width rows.
12099 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
12100 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
12101 change bottom shadow accordingly. Some cleanup.
12102 (x_update_window_end): Handle overwritten mouse face
12103 also for tool bar windows.
12104 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
12105 DRAW is DRAW_IMAGE_RAISED.
12106 (clear_mouse_face): Return 1 if text with mouse face was
2c568af5
SM
12107 actually redrawn. Make the function static.
12108 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
c169b8f1
JR
12109 optimize away highlighting if we pass over that same overlay again.
12110 (note_mouse_highlight): Call mouse_face_overlay_overlaps
12111 to detect a case where we have to highlight a different region
12112 despite not having left the currently highlighted region.
12113 Set mouse_face_overlay in the x_display_info. Avoid changing the
12114 mouse pointer shape when show_mouse_face has already done it, or
12115 there is no need. Handle mouse-face and help-echo in strings.
12116 (glyph_rect): New function.
12117 (w32_mouse_position): Use it to raise the threshold for mouse
12118 movement event generation.
12119 (w32_initialize_display_info): Initialize the x_display_info's
12120 mouse_face_overlay.
12121 (w32_set_vertical_scroll_bar): Don't clear a zero height
12122 or width area.
12123 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
12124 a widget to zero height.
12125
3cf3436e 12126 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
4fdd691b 12127 Protect unibyte strings created by replacing their multibyte
3cf3436e
JR
12128 equivalents in menu_items.
12129 (w32_menu_show): Don't overwrite an item's name with its key
12130 description in case the description is a multibyte string.
12131 (single_submenu): Some cleanup.
12132
12133 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
12134 (postprocess_image): New function.
12135 (lookup_image): Call it for all image types except PostScript.
12136 (x_kill_gs_process): Call postprocess_image.
12137 (tiff_error_handler, tiff_warning_handler): New functions.
12138 (tiff_load): Install them as handlers.
12139 (x_kill_gs_process): Recognize if someone has cleared the image
12140 cache under us.
12141 (valid_image_p): Protect better against invalid image
12142 specifications. Previous code could signal an error.
12143 (Fx_hide_tip, Fshow_tip): Doc fix.
12144 (Fv_max_tooltip_size): New variable.
12145 (syns_of_xfns): DEFVAR_LISP it.
12146 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
12147 window buffer to *tip* right after creating the frame. Set frame's
12148 window_width. Use a maximum tooltip size specified by
12149 Vx_max_tooltip_size, if that has valid contents.
12150 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
12151 Make sure the tooltip is completely visible.
12152 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
12153 (Fx_create_frame): Adjust the frame's height for presence
12154 of the tool bar before calling x_figure_window_size.
12155 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
12156 when the window gets smaller.
12157 (x_set_foreground_color): Set frame's cursor_pixel.
12158 (x_set_foreground_color, x_set_background_color): Cleaned up.
12159 (x_set_font): Handle case of x_new_fontset returning the same name
12160 as before, although there was a change in fontsets.
12161
386ca361
MB
121622001-10-21 Miles Bader <miles@gnu.org>
12163
c2d53558 12164 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
386ca361
MB
12165 (Flogxor): Add usage: string to doc string.
12166 * charset.c (Fstring): Likewise.
12167 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
12168 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
12169
f00691a3 121702001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14ff1ee0 12171
03be2694
PJ
12172 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
12173
12174 * alloc.c: Reindent DEFUNs with doc: keywords.
12175
12176 * abbrev.c (Finsert_abbrev_table_description): Reindent.
12177
14ff1ee0
PJ
12178 * frame.c: Change doc-string comments to `new style' [w/`doc:'
12179 keyword].
12180
2f147815 12181See ChangeLog.9 for earlier changes.
6922b018
KH
12182
12183;; Local Variables:
49b3bd82 12184;; coding: iso-2022-7bit
6922b018 12185;; End:
2a34a036 12186
2f147815 12187 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
2a34a036
GM
12188 Copying and distribution of this file, with or without modification,
12189 are permitted provided the copyright notice and this notice are preserved.
ab5796a9
MB
12190
12191;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4