editfns.c: Adding in better patch
[bpt/emacs.git] / src / ChangeLog
CommitLineData
31141c13
ST
12004-11-06 Steven Tamm <steventamm@mac.com>
2
3 * editfns.c: Need to include sys/time.h before resource.h on darwin.
4
f28c1bd9
RS
52004-11-06 Richard M. Stallman <rms@gnu.org>
6
7 * callint.c (Fcall_interactively): Avoid reusing EVENT for other data.
8
9 * xfaces.c (merge_named_face): GCPRO the face_name in the
10 named_merge_point struct that we make.
11 (merge_face_heights): Eliminate GCPRO arg. All callers changed.
12
13 * keyboard.c (command_loop_1): Change Vtransient_mark_mode
14 before deciding whether to inactivate mark.
15
59dede22
EZ
162004-11-06 Lars Brinkhoff <lars@nocrew.org>
17
18 * config.in: Regenerate (add HAVE_GETRUSAGE).
6159c232
EZ
19 * editfns.c (Fget_internal_run_time): New function.
20 (syms_of_data): Defsubr it.
21 * fns.c (sxhash): As far as possible, merge calculation of
22 hash code for symbols and strings.
59dede22 23
27540e81
EZ
242004-11-06 Eli Zaretskii <eliz@gnu.org>
25
26 * frame.c (syms_of_frame): Fix the example in the doc string.
27
df470e3b
JD
282004-11-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
29
30 * eval.c (Feval): Remove check for INPUT_BLOCKED_P.
31
32 * xmenu.c (popup_get_selection, create_and_show_popup_menu)
33 (create_and_show_dialog): Revert change from 2004-10-31.
34
4cc8522c
LT
352004-11-05 Luc Teirlinck <teirllm@auburn.edu>
36
37 * macros.c (syms_of_macros) <defining-kbd-macro>: Doc fix.
38
d4a42098
KS
392004-11-05 Kim F. Storm <storm@cua.dk>
40
a8490886
KS
41 * print.c (print_object): Print Lisp_Misc_Save_Value objects.
42
d4a42098
KS
43 * fileio.c (Ffile_modes): Doc fix.
44 (auto_save_1): Check for Ffile_modes nil value.
45
36a2b04c
KS
462004-11-05 Kim F. Storm <storm@cua.dk>
47
48 * xselect.c (struct selection_event_queue, selection_queue)
49 (x_queue_selection_requests, x_queue_event)
50 (x_start_queuing_selection_requests)
51 (x_stop_queuing_selection_requests): Add new queue for selection
52 input events to replace previous XEvent queue in xterm.c.
53 (queue_selection_requests_unwind): Adapt to new queue.
54 (x_reply_selection_request): Adapt to new queue. Unexpect
55 wait_object in case of x errors (memory leak).
56 (x_handle_selection_request, x_handle_selection_clear): Make static.
57 (x_handle_selection_event): New function. May queue selection events.
58 (wait_for_property_change_unwind): Use save_value instead of cons.
59 Clear property_change_reply_object.
60 (wait_for_property_change): Abort if already waiting.
61 Use save_value instead of cons for unwind data.
62 (x_handle_property_notify): Skip events already arrived, but don't
63 free them, as "arrived" field is checked by wait_for_property_change,
64 and it will be freed by unwind or explicit unexpect_property_change.
65 (x_get_foreign_selection): Add to new queue.
66 (receive_incremental_selection): Don't unexpect wait_object when done
67 as it has already been freed by previous wait_for_property_change.
68
69 * xterm.h (x_start_queuing_selection_requests)
70 (x_stop_queuing_selection_requests, x_handle_selection_request)
71 (x_handle_selection_clear): Remove prototypes.
72 (x_handle_selection_event): Add prototype.
73
74 * xterm.c (handle_one_xevent): Don't queue X selection events
75 here, it may be too late if we start queuing after we have already
76 stored some selection events into the kbd buffer.
77 (struct selection_event_queue, queue, x_queue_selection_requests)
78 (x_queue_event, x_unqueue_events, x_start_queuing_selection_requests)
79 (x_stop_queuing_selection_requests): Remove/move to xselect.c.
80 (x_catch_errors_unwind): Block input around final XSync.
81
82 * keyboard.h (kbd_buffer_unget_event): Add prototype.
83
84 * keyboard.c (kbd_buffer_store_event_hold): Remove obsolete code.
85 (kbd_buffer_unget_event): New function.
86 (kbd_buffer_get_event, swallow_events): Combine SELECTION events
87 and use x_handle_selection_event.
88 (mark_kboards): Don't mark x and y of SELECTION_CLEAR_EVENT.
89
9c3ad9e1
JD
902004-11-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
91
92 * xselect.c (TRACE3): New debug macro.
93 (x_reply_selection_request): Use it.
94 (receive_incremental_selection): In call to TRACE0, the name of
95 a symbol is in xname.
96
a33b89de
KS
972004-11-05 Kim F. Storm <storm@cua.dk>
98
99 * fontset.c (fontset_pattern_regexp): Use unsigned char.
100
a872928c
JD
1012004-11-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
102
88208bb8
JD
103 * fileio.c (Fnext_read_file_uses_dialog_p): New function.
104
0a4f23f3
JD
105 * gtkutil.h: Declare use_old_gtk_file_dialog.
106
107 * gtkutil.c: Make use_old_gtk_file_dialog non-static.
108 (xg_initialize): Moved DEFVAR_BOOL for use_old_gtk_file_dialog ...
109 * xfns.c (syms_of_xfns): ... to here.
110
a872928c
JD
111 * gtkutil.c (xg_get_file_with_chooser): Expand DEFAULT_FILENAME if
112 it doesn't start with /.
113
b912921c
KH
1142004-11-04 Kenichi Handa <handa@m17n.org>
115
116 * fontset.c (fontset_pattern_regexp): If '*' is preceded by '\',
117 treat it as a literal character.
118
c524d9a6
KS
1192004-11-03 Kim F. Storm <storm@cua.dk>
120
121 * .gdbinit (ppt): New function.
122
8cfd0f36
JD
1232004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
124
a11e1dce
JD
125 * xterm.c (x_window_to_scroll_bar): Only call
126 xg_get_scroll_id_for_window if toolkit scroll bars are used.
127
8cfd0f36
JD
128 * gtkutil.c (xg_get_file_with_chooser): Use GTK_STOCK_OK instead
129 of save.
130
a93563fd
AS
1312004-11-02 Andreas Schwab <schwab@suse.de>
132
133 * window.c (Fscroll_right): Fix last change.
134
2b2d59d8
KS
1352004-11-02 Kim F. Storm <storm@cua.dk>
136
137 * Makefile.in (callproc.o): Depend on blockinput.h atimer.h systime.h.
138
1392004-11-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
140
141 * callproc.c (Fcall_process): Block input around vfork.
142
ca28104d
KS
1432004-11-02 Kim F. Storm <storm@cua.dk>
144
145 * eval.c (Fcalled_interactively_p): Rename from Fcall_interactive_p.
146 (syms_of_eval): Defsubr it.
147
29bb7127
RS
1482004-11-02 Richard M. Stallman <rms@gnu.org>
149
150 * insdel.c (replace_range_2): New function.
151
152 * casefiddle.c (casify_region): Handle changes in byte-length
153 using replace_range_2.
154
155 * emacs.c (USAGE3): Delete --horizontal-scroll-bars, -hb.
156
b6189c3b 157 * xdisp.c (back_to_previous_visible_line_start):
29bb7127
RS
158 Subtract 1 from pos when checking previous newline for invisibility.
159
160 * window.c (window_scroll_pixel_based): Update preserve_y
161 for header line if any.
162 (Fscroll_left, Fscroll_right): Don't call interactive_p;
163 use a new second argument instead.
164
165 * eval.c (Fcall_interactive_p): New function.
166 (interactive_p): Don't test INTERACTIVE here.
167 (Finteractive_p): Doc fix.
168
169 * eval.c (Feval): Abort if INPUT_BLOCKED_P.
170
b6189c3b 1712004-11-02 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
a3fe4aaf
JR
172
173 * w32fns.c (w32_font_match): Use fast_string_match_ignore_case for
b6189c3b 174 comparing font names.
a3fe4aaf 175
2a00cdb4
JD
1762004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
177
f9d64bb3
JD
178 * fileio.c (Fread_file_name): Pass Qt as fifth parameter to
179 Fx_file_dialog if only directories should be read.
180
181 * lisp.h: Fx_file_dialog takes 5 parameters.
182
183 * xfns.c (Fx_file_dialog): Both Motif and GTK version: Add
184 parameter only_dir_p.
185 In Motif version, don't put DEFAULT_FILENAME in filter part of the
186 dialog, just text field part. Do not add DEFAULT_FILENAME
187 to list of files if it isn't there.
188 In GTK version, pass only_dir_p parameter to xg_get_file_name.
189
190 * macfns.c (Fx_file_dialog): Add parameter only_dir_p. Check
191 only_dir_p instead of comparing prompt to "Dired". When using
192 a save dialog, add option kNavDontConfirmReplacement, change title
193 to "Enter name", change text for save button to "Ok".
194
195 * w32fns.c (Fx_file_dialog): Add parameter only_dir_p. Check
196 only_dir_p instead of comparing prompt to "Dired".
197
198 * gtkutil.c (xg_get_file_with_chooser)
199 (xg_get_file_with_selection): New functions, only defined ifdef
200 HAVE_GTK_FILE_CHOOSER_DIALOG_NEW and HAVE_GTK_FILE_SELECTION_NEW
201 respectively.
202 (xg_get_file_name): Add parameter only_dir_p.
203 Call xg_get_file_with_chooser or xg_get_file_with_selection
204 depending on HAVE_GTK_FILE* and the value of use_old_gtk_file_dialog.
205 (xg_initialize): New DEFVAR_BOOL use_old_gtk_file_dialog.
206
207 * gtkutil.h (xg_get_file_name): Add parameter only_dir_p.
208
2a00cdb4
JD
209 * config.in: Rebuild (added HAVE_GTK_FILE_*).
210
f6749d5d
KS
2112004-11-01 Kim F. Storm <storm@cua.dk>
212
213 * process.c (connect_wait_mask, num_pending_connects): Only
214 declare and use them if NON_BLOCKING_CONNECT is defined.
bad49fc7 215 (init_process): Initialize them if NON_BLOCKING_CONNECT defined.
f6749d5d
KS
216 (IF_NON_BLOCKING_CONNECT): New helper macro.
217 (wait_reading_process_output): Only declare and use local vars
218 Connecting and check_connect when NON_BLOCKING_CONNECT is defined.
f6749d5d 219
1a99fe1a
JR
2202004-11-01 Andy Petrusenco <Igrek@star-sw.com> (tiny change)
221
222 * w32term.c (x_scroll_run): Delete region objects after use.
223
fcdb28b4
JD
2242004-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
225
495ef86b
JD
226 * xmenu.c: Add prototypes for forward function declarations.
227 (popup_get_selection): Remove parameter do_timers, remove call to
228 timer_check.
f6749d5d 229 (create_and_show_popup_menu, create_and_show_dialog): Remove
495ef86b
JD
230 parameter do_timers from call to popup_get_selection.
231
12e6566a
JD
232 * xdisp.c (update_tool_bar): Pass a copy of f->tool_bar_items to
233 tool_bar_items and assign the result to f->tool_bar_items if
234 not equal. Move BLOCK/UNBLOCK_INPUT from around call to
235 tool_bar_items to assignment of result.
236
fcdb28b4
JD
237 * atimer.c (alarm_signal_handler): Do not call set_alarm if
238 pending_atmers is non-zero.
239
1a1a0c4c
KS
2402004-10-31 Kim F. Storm <storm@cua.dk>
241
242 * dispnew.c (margin_glyphs_to_reserve): Don't use ncols_scale_factor.
243
a36f1680
JW
2442004-10-28 Will <will@glozer.net>
245
246 * macterm.c: allow user to assign key modifiers to the Mac Option
247 key via a 'mac-option-modifier' variable.
248
2d586478
SM
2492004-10-28 Stefan <monnier@iro.umontreal.ca>
250
251 * xselect.c (Vx_lost_selection_functions, Vx_sent_selection_functions):
252 Rename from Vx_lost_selection_hooks and Vx_sent_selection_hooks.
253 (x_handle_selection_request, x_handle_selection_clear)
254 (x_clear_frame_selections, syms_of_xselect): Adjust accordingly.
255
4f71c13f
RS
2562004-10-28 Richard M. Stallman <rms@gnu.org>
257
258 * w32fns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
259
260 * xfns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
261
068f3848
SM
2622004-10-27 Stefan Monnier <monnier@iro.umontreal.ca>
263
264 * syntax.c (scan_sexps_forward): Give precedence to a 2-char
265 comment-starter over a 1-char one.
266
4660a9e3
RS
2672004-10-27 Richard M. Stallman <rms@gnu.org>
268
269 * xdisp.c (get_next_display_element): In mode lines,
270 treat newline and tab like other control characters.
271
272 * editfns.c (Fmessage): Doc fix.
273
274 * indent.c (vmotion): When moving up, check the newline before.
275 Make prevline an int, not a Lisp_Object.
276
233f3db6
KS
2772004-10-27 Kim F. Storm <storm@cua.dk>
278
279 * editfns.c (Fformat): Allocate discarded table with SAFE_ALLOCA.
280 Only allocate info and discarded tables once.
281
282 * lisp.h (USE_SAFE_ALLOCA): Add and init sa_must_free integer.
283 (SAFE_ALLOCA, SAFE_ALLOCA_LISP): Increment it when malloc is used.
284 (SAFE_FREE): Test it to determine if we need to unwind to free.
285 Remove size arg. All users changed.
286 (SAFE_FREE_LISP) Remove. All users changed to use SAFE_FREE.
287
1442465d
JD
2882004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
289
290 * gtkutil.c: Put empty line between comment and function body.
068f3848
SM
291 (xg_destroy_widgets): Rename from remove_from_container.
292 Just destroy all widgets in list. Argument wcont removed.
1442465d
JD
293 (xg_update_menubar, xg_update_submenu): Call xg_destroy_widgets
294 instead of remove_from_container.
295 (xg_display_close, xg_create_tool_bar, update_frame_tool_bar)
296 (free_frame_tool_bar): Add comment.
297
298 * xfns.c (xic_create_xfontset): Check that FRAME_XIC_BASE_FONTNAME
299 is not NULL before strcmp.
300
c8636435
KS
3012004-10-26 Kim F. Storm <storm@cua.dk>
302
303 * callint.c (Fcall_interactively): Add 'U' code to get the
304 up-event discarded by a previous 'k' or 'K' argument.
305
5629f29b
DK
3062004-10-26 David Kastrup <dak@gnu.org>
307
308 * buffer.c (syms_of_buffer): Fix a few typos.
309
4f2f546e
JD
3102004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
311
312 * xsmfns.c: Put empty line between comment and function body.
313 Use two spaces before comment end.
314
fc1062f5
KH
3152004-10-25 Kenichi Handa <handa@m17n.org>
316
317 * fontset.c (fontset_pattern_regexp): Optimize for the case that
318 PATTERN is full XLFD.
319
be13f5e5
KH
3202004-10-24 Kenichi Handa <handa@m17n.org>
321
322 * regex.h (enum reg_errcode_t): New value REG_ERANGEX.
323
324 * regex.c (re_error_msgid): Add an entry for REG_ERANGEX.
325 (regex_compile): Return REG_ERANGEX if appropriate.
326
d0ee2ed3
KH
3272004-10-22 Kenichi Handa <handa@m17n.org>
328
329 * editfns.c (Ftranslate_region_internal): New function.
330 (syms_of_editfns): Defsubr it.
331
63ea8ea5
JD
3322004-10-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
333
334 * xfns.c (xic_create_xfontset): Initialize missing_list to NULL.
335
c27ed90a
JD
3362004-10-21 K\e,Aa\e(Broly L\e$,1 q\e(Brentey <lorentey@elte.hu>
337
068f3848
SM
338 * xterm.h (x_output): New member `xic_base_fontname'.
339 (FRAME_XIC_BASE_FONTNAME): New macro.
340 (xic_free_xfontset): Declare.
c27ed90a 341
068f3848
SM
342 * xfns.c (xic_create_xfontset): Share fontsets between frames
343 based on base_fontname.
344 (xic_free_xfontset): New function.
345 (free_frame_xic): Use it.
346 (xic_set_xfontset): Ditto.
c27ed90a 347
068f3848 348 * xterm.c (xim_destroy_callback): Ditto.
c27ed90a
JD
349
350
59508699
JR
3512004-10-20 B. Anyos <banyos@freemail.hu> (tiny change)
352
353 * w32term.c (x_draw_glyph_string): Use overline_color for overlines.
354
dede2792
JD
3552004-10-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
356
3aca2078
JD
357 * xterm.h (XSync): If USE_GTK, define XSync as process_all and then
358 XSync.
359
dede2792
JD
360 * emacs.c (my_heap_start, heap_bss_diff, MAX_HEAP_BSS_DIFF):
361 New variables and constant.
362 (main): Calculate heap_bss_diff. If we are dumping and the
363 heap_bss_diff is greater than MAX_HEAP_BSS_DIFF, set PER_LINUX32
364 and exec ourself again.
365 (Fdump_emacs): If heap_bss_diff is greater than MAX_HEAP_BSS_DIFF
366 print a warning.
367
368 * lastfile.c: Make my_endbss and my_endbss_static available on all
369 platforms.
370
371 * Makefile.in (RUN_TEMACS): Remove @SETARCH@.
372 * config.in (HAVE_PERSONALITY_LINUX32): Regenerate.
373
1dc5ba01
LT
3742004-10-19 Luc Teirlinck <teirllm@auburn.edu>
375
376 * data.c (Flocal_variable_if_set_p): Doc fix.
377
950090be
JR
3782004-10-19 Jason Rumney <jasonr@gnu.org>
379
380 * w32.c (init_environment): Set emacs_dir correctly when running
381 emacs from the build directory.
382
8550b998
RS
3832004-10-19 Richard M. Stallman <rms@gnu.org>
384
385 * editfns.c (Fdelete_and_extract_region):
386 If region is empty, return null string.
387
08dedea6
JD
3882004-10-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
389
1dc5ba01 390 * gtkutil.h (xg_update_scrollbar_pos): Remove arguments real_left
08dedea6 391 and canon_width.
068f3848 392 (xg_frame_cleared): Remove.
08dedea6 393
068f3848
SM
394 * gtkutil.c (xg_frame_cleared, xg_fixed_handle_expose)
395 (xg_find_top_left_in_fixed): Remove.
08dedea6
JD
396 (xg_create_scroll_bar): Put an event box widget between
397 the scroll bar widget and the edit widget.
398 (xg_show_scroll_bar): Show the parent widget (the event box).
399 (xg_remove_scroll_bar): Destroy parent (the event box) also.
400 (xg_update_scrollbar_pos): Remove arguments real_left and canon_width.
401 Move the parent (the event box) widget inside the fixed widget.
402 Move window clear to xterm.c.
403
068f3848 404 * gtkutil.h (xg_frame_cleared): Remove.
1dc5ba01 405
08dedea6 406 * xterm.c (x_clear_frame): Remove call to xg_frame_cleared
068f3848
SM
407 (x_scroll_bar_create, XTset_vertical_scroll_bar):
408 Remove arguments left and width to xg_update_scrollbar_pos.
08dedea6
JD
409 (XTset_vertical_scroll_bar): Do x_clear_area for USE_GTK also.
410
8550b998 4112004-10-19 Kenichi Handa <handa@m17n.org>
e3e55463
KS
412
413 * xdisp.c (display_mode_element): Fix display of wide chars.
e3e55463 414
84338890
JD
4152004-10-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
416
417 * gtkutil.c (xg_update_scrollbar_pos): Change XClearWindow to
418 gdk_window_clear and move gdk_window_process_all_updates after
419 clear so events are sent to the X server in correct order.
420
6e1b0d8c
KH
4212004-10-18 Kenichi Handa <handa@m17n.org>
422
423 * fontset.c (fs_load_font): Use fast_string_match_ignore_case for
424 comparing font names.
8550b998 425 (fs_query_fontset): Use fast_string_match for comparing fontset names.
6e1b0d8c
KH
426 (list_fontsets): Likewise.
427
428 * search.c (fast_string_match_ignore_case): New function.
429
430 * lisp.h (fast_string_match_ignore_case): Extern it.
431
345e75a8
KS
4322004-10-17 Kim F. Storm <storm@cua.dk>
433
434 * xdisp.c (overlay_arrow_at_row): Return overlay string rather
435 than bitmap if there is not left fringe.
436 (get_overlay_arrow_glyph_row): Also used on windows system.
437 (display_line): Display overlay string if no left fringe.
438
be13cbb7
JR
4392004-10-16 Jason Rumney <jasonr@gnu.org>
440
441 * w32fns.c (w32_font_match): Encode font name being matched.
442
c2e2ede7
RS
4432004-10-16 Richard M. Stallman <rms@gnu.org>
444
445 * window.c (Fspecial_display_p): Doc fix.
446
3584d95d
SM
4472004-10-15 Stefan <monnier@iro.umontreal.ca>
448
449 * doc.c (Fsubstitute_command_keys): Fix remap-handling.
450 Don't ignore menus, because where-is-internal already does it for us.
451
699a0392
KS
4522004-10-15 Kim F. Storm <storm@cua.dk>
453
b3c7a89b
KS
454 * xdisp.c (redisplay_window): Only update fringes and vertical
455 border on window frames.
699a0392 456
4e382b0f
AS
4572004-10-14 Andreas Schwab <schwab@suse.de>
458
459 * m/ia64.h (DATA_SEG_BITS): Don't define.
460
329a7be2
KS
4612004-10-14 Kim F. Storm <storm@cua.dk>
462
463 * xterm.h: Include Xutil.h after keysym.h to work around bug
dbb37962 464 in some X versions.
329a7be2 465
982241b1
SM
4662004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
467
468 * fns.c (map_char_table): Add missing gcpros.
469
9238467d
SM
4702004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
471
472 * keymap.c (get_keymap): An autoload form is not a keymap.
473
474 * textprop.c (syms_of_textprop): Make `syntax-table' nonsticky.
475
4440e3ca
KS
4762004-10-13 Kim F. Storm <storm@cua.dk>
477
7cfdabde
KS
478 * callproc.c (Fcall_process): Simplify handling of display arg.
479 Resume `display_on_the_fly' once a coding system is determined.
480
4440e3ca
KS
481 * xdisp.c (redisplay_preserve_echo_area): Fix last change.
482
1c8dec6a
KS
4832004-10-12 Kim F. Storm <storm@cua.dk>
484
485 * xdisp.c (redisplay_preserve_echo_area): Flush display in case
486 caller, such as call-process, is not going to poll for input.
487 (calc_line_height_property): Handle case where it->object is nil.
488
489 * xterm.c (x_redisplay_interface): Fix flush_display_optional.
490
170b174c
KH
4912004-10-12 Kenichi Handa <handa@m17n.org>
492
9238467d
SM
493 * xdisp.c (get_next_display_element):
494 If unibyte_display_via_language_environment is zero, display 8-bit
170b174c
KH
495 chars in octal in unibyte buffer.
496
b583964c
KS
4972004-10-12 Kim F. Storm <storm@cua.dk>
498
499 * doc.c (Fsubstitute_command_keys): Ignore remappings unless there
500 are no ordinary bindings.
501
29fabd8c
JD
5022004-10-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
503
9238467d 504 * xfns.c (syms_of_xfns): Defsubr x-file-dialog for GTK also.
29fabd8c 505
c3f4c690
ST
5062004-10-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
507
9238467d
SM
508 * macterm.c (x_raise_frame): Add BLOCK_INPUT around SelectWindow.
509 (x_lower_frame): Add BLOCK_INPUT around SendBehind.
c3f4c690 510 (make_mac_frame): Add BLOCK_INPUT around the making of a
9238467d
SM
511 terminal frame.
512 (mac_initialize): Add BLOCK_INPUT around carbon initialization.
513 * macgui.h (mktime): Use emacs_mktime.
c3f4c690
ST
514 * macfns.c (Fx_file_dialog): Add BLOCK_INPUT around more code.
515 Make a cancel file-open dialog be like C-g.
9238467d
SM
516 * mac.c (mktime): Use emacs_mktime.
517 (Fdo_applescript): Add BLOCK_INPUT around do_applescript.
518 (Fmac_paste_function): Add better error handling for carbon cut/paste.
c3f4c690 519
9688f9eb
KS
5202004-10-10 Kim F. Storm <storm@cua.dk>
521
522 * keyboard.c (timer_resume_idle): New function to resume idle
523 timer without resetting timers on the idle list.
524 (read_char): Use timer_resume_idle. Remove local var last_idle_start.
525 (timer_start_idle, timer_stop_idle): Declare static.
526 (read_key_sequence): Use timer_resume_idle instead of timer_start_idle.
527
528 * keyboard.h (timer_start_idle, timer_stop_idle): Remove prototypes.
529
f7f3a65f
ST
5302004-10-08 Steven Tamm <steventamm@mac.com>
531
9238467d 532 * config.in (HAVE_MALLOC_MALLOC_H): Regenerate.
f7f3a65f 533 * macterm.c (mac_check_for_quit_char): Remove warning for using
9238467d 534 NULL where 0 should be used.
f7f3a65f
ST
535 * unexmacosx.c: Use malloc/malloc.h on Tiger instead of
536 objc/malloc.h
9238467d 537 * mac.c: Include time.h for Tiger compatibility.
f7f3a65f 538
3c7d999a
KS
5392004-10-07 Kim F. Storm <storm@cua.dk>
540
541 * xdisp.c (redisplay_window): Fix flicker on vertical line between
542 windows. Update vertical line after drawing window fringes, but
543 only if actually drawing any bitmaps--or there is no fringe.
544
545 * xterm.c (x_update_window_end): Likewise.
546 * macterm.c (x_update_window_end): Likewise.
547 * w32term.c (x_update_window_end): Likewise.
548
549 * fringe.c (draw_window_fringes): Return value now indicates if
550 any fringe bitmaps were redrawn (or there are no fringes).
551
552 * dispextern.h (draw_window_fringes): Update prototype.
553
bf06c82f
ST
5542004-10-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
555
556 * macfns.c (mac_get_window_bounds): Add extern.
557 (x_real_positions): Use mac_get_window_bounds.
558
559 * macmenu.c (update_submenu_strings): Apply 2004-09-07 change for
560 xmenu.c (YAILOM).
3c7d999a 561
bf06c82f
ST
562 * macterm.c [!MAC_OSX]: Include Windows.h.
563 (front_emacs_window): Rename from mac_front_window. All uses
564 changed. Return the frontmost non-tooltip emacs window.
565 (mac_get_window_bounds): New function.
566 (x_calc_absolute_position): Use the difference of width and height
567 between the inner and outer window.
568 (x_set_offset): Specify window position by the coordinae of the
569 outer window. Adjust the position if the title bar is completely
570 outside the screen.
571 (app_is_suspended, app_sleep_time): Remove unused variables.
572 (do_app_resume, do_app_suspend): Remove their contents because
573 window-activate/deactivate events will do the job.
574 (do_zoom_window): Remove unused variables. Make compliant to the
575 standard way of zooming. Set f->left_pos and f->top_pos.
576 (XTread_socket): Don't use argument `expected'. Don't use
577 FrontWindow to determine the clicked window. Exclude unprocessed
578 mouseUp cases in the early stage. Add parentheses to fix operator
579 precedence.
580 (XTread_socket) [TARGET_API_MAC_CARBON]: Don't specify drag area.
581
582
4cbbf6b7 5832004-10-05 Jan Dj\e,Ad\e(Brv. <jan.h.d@swipnet.se>
d8b43276
JD
584
585 * config.in: Regenerate.
586
587 * Makefile.in (RUN_TEMACS): Check HAVE_RANDOM_HEAPSTART instead of
588 HAVE_EXECSHIELD.
589
b90ee8b5
JD
5902004-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
591
592 * xterm.c (x_find_modifier_meanings): Ignore any Super or Hyper for
593 a row if Alt or Meta has been found for that row. Also stop scanning
594 for Keysyms for that row.
595
904db1a2
KS
5962004-10-04 Kim F. Storm <storm@cua.dk>
597
0207b8ad
KS
598 * fringe.c (Ffringe_bitmaps_at_pos): Change return value from cons
599 to list. Include overlay arrow bitmap in return value.
600
25f7220c
KS
601 * xterm.c (XTset_vertical_scroll_bar): Improve handling of scroll
602 bars with fractional column width. If scroll bar separates two
603 windows, move it towards the window it belongs to. Only update
604 the padding area below the scroll bar widget when necessary,
605 i.e. when scroll bar widget is created, moved, or resized.
606
562020fe
KS
607 * xdisp.c (define_frame_cursor1): Do not change frame cursor
608 while tracking/dragging mouse.
609 (x_draw_vertical_border): Do not draw line if frame has scroll bars.
610
37e34af7
KS
611 * window.c (coordinates_in_window): Relax check for cursor
612 on vertial border between mode lines.
613 (Fset_window_fringes): Do not allow negative widths.
614 (Fset_window_scroll_bars): Likewise.
615
904db1a2
KS
616 * .gdbinit (pp): Shorthand for p ARG + pr.
617 (ff): New command: flush frame updates (X only).
618
38fe4f64
MA
6192004-10-03 Michael Albinus <michael.albinus@gmx.de>
620
621 * fileio.c (auto_save_1) Call Ffile_modes for remote files.
622
9de36315
KH
6232004-09-30 Kenichi Handa <handa@m17n.org>
624
07c381ad 625 * process.c (send_process): Free composition data.
9de36315 626
07c381ad 627 * fileio.c (Finsert_file_contents): Free composition data.
9de36315
KH
628
629 * coding.c (code_convert_region): Don't skip ASCIIs if there are
07c381ad
KH
630 compositions to encode.
631 (encode_coding_string): Likewise. Free composition data.
632
b6189c3b 6332004-09-30 Florian Weimer <fw@deneb.enyo.de>
07c381ad
KH
634
635 * coding.c (code_convert_region): Free composition data.
9de36315 636
f2a54fbc
KS
6372004-09-29 Kim F. Storm <storm@cua.dk>
638
dc5d6435
KS
639 * fringe.c: Remove limit on number of bitmaps.
640 (fringe_bitmaps, fringe_faces): Change to pointers.
641 (max_fringe_bitmaps): New var.
642 (Fdefine_fringe_bitmap): Expand fringe_bitmaps and fringe_faces.
643 (init_fringe): Allocate fringe_bitmaps and fringe_faces.
644
645 * dispextern.h (FRINGE_ID_BITS): Increase to 16 bits (64K bitmaps).
646 (struct glyph_row): Reorder fringe_bitmap related fields.
647 (struct it): Likewise.
648
649 * w32term.c (fringe_bmp): Change to pointer.
650 (max_fringe_bmp): New var.
651 (w32_define_fringe_bitmap): Expand fringe_bmp.
652 (w32_draw_fringe_bitmap): Check max_fringe_bmp.
653 (w32_destroy_fringe_bitmap): Likewise.
654
6552004-09-29 Kim F. Storm <storm@cua.dk>
656
657 * fringe.c: Simplify last change.
f2a54fbc
KS
658 (lookup_fringe_bitmap): New function.
659 (valid_fringe_bitmap_p, resolve_fringe_bitmap): Remove.
660 (Fdestroy_fringe_bitmap): Use lookup_fringe_bitmap.
661 Keep standard bitmaps in Vfringe_bitmaps.
662 (Fdefine_fringe_bitmap): Use lookup_fringe_bitmap.
663 (Fset_fringe_bitmap_face): Likewise.
664
665 * dispextern.h (lookup_fringe_bitmap): Add prototype.
666 (valid_fringe_bitmap_p): Remove prototype.
667
668 * xdisp.c (handle_single_display_prop): Use lookup_fringe_bitmap.
669
841a8bca
KS
6702004-09-29 Kim F. Storm <storm@cua.dk>
671
1f2da365
KS
672 * fringe.c (destroy_fringe_bitmap, init_fringe_bitmap)
673 (w32_init_fringe, w32_reset_fringes): Fix bootstrap (NULL rif).
674
841a8bca
KS
675 * dispextern.h (valid_fringe_bitmap_p): Fix prototype.
676
677 * fringe.c (Vfringe_bitmaps): New variable.
678 (syms_of_fringe): DEFVAR_LISP it.
679 (valid_fringe_bitmap_p): Rename from valid_fringe_bitmap_id_p.
680 Change arg to Lisp_Object and fail if not an integer.
681 (get_fringe_bitmap_name, resolve_fringe_bitmap)
682 (destroy_fringe_bitmap): New functions.
9238467d
SM
683 (Fdestroy_fringe_bitmap): Change arg to bitmap symbol.
684 Use destroy_fringe_bitmap. Remove symbol from Vfringe_bitmaps and
841a8bca
KS
685 clear its fringe property.
686 (init_fringe_bitmap): Use destroy_fringe_bitmap instead of
687 Fdestroy_fringe_bitmap.
688 (Fdefine_fringe_bitmap): Add BITMAP arg specifying new or existing
689 bitmap symbol; remove WHICH arg. Add symbol to Vfringe_bitmaps
690 and set fringe property. Signal error if no free slots.
691 (Fset_fringe_bitmap_face): Change arg to bitmap symbol.
692 (Ffringe_bitmaps_at_pos): Return bitmap symbols instead of numbers.
693
694 * xdisp.c (handle_single_display_prop): Fringe bitmaps are now
695 symbols with a fringe property.
696
4d965590
KS
6972004-09-27 Kim F. Storm <storm@cua.dk>
698
699 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>:
700 Doc fix. Format may now be a symbol or alist, not a cons.
701
702 * fringe.c (update_window_fringes): Handle new formats of
703 indicate-buffer-boundaries (symbol or alist). No longer
704 allow a simple cons.
705 (Ffringe_bitmaps_at_pos): Use nil value for no bitmap.
706
e888c2b3
JD
7072004-09-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
708
9238467d 709 * config.in: Rebuild.
e888c2b3 710
83f1cb94
JD
7112004-09-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
712
713 * config.in: Rebuild.
714
dd3b1d60 715 * Makefile.in: Run setarch i386 ./temacs if exec-shield is present.
83f1cb94 716
2c51754c
SM
7172004-09-18 Stefan Monnier <monnier@iro.umontreal.ca>
718
719 * xterm.c (x_term_init): Work around a bug in some X servers.
720
3df5f8aa
RS
7212004-09-18 Richard M. Stallman <rms@gnu.org>
722
557ca2c1
RS
723 * buffer.c (syms_of_buffer) <default-major-mode>: Doc fix.
724
3df5f8aa
RS
725 * xdisp.c (try_window_reusing_current_matrix):
726 Handle the case where we reach the old displayed text,
727 out of sync with the old line boundary.
728
9238467d 7292004-09-14 Stefan Monnier <monnier@iro.umontreal.ca>
4b70e2c9
SM
730
731 * fileio.c (Finsert_file_contents): Fix case of replacement in a
732 narrowed buffer.
733
bfa02563
KS
7342004-09-14 Kim F. Storm <storm@cua.dk>
735
a25fe164
KS
736 * puresize.h (PURESIZE_RATIO): Define based on BITS_PER_EMACS_INT.
737
bfa02563
KS
738 * xfaces.c (Qface_no_inherit): New var.
739 (syms_of_xfaces): Intern and staticpro it.
740 (Finternal_make_lisp_face, Finternal_set_lisp_face_attribute)
741 (Finternal_copy_lisp_face, update_face_from_frame_parameter):
742 Don't increment face_change_count when face has non-nil
743 face-no-inherit property.
744
126f9c02
SM
7452004-09-13 Stefan Monnier <monnier@iro.umontreal.ca>
746
892a8eb5
SM
747 * bytecode.c (BYTE_CODE_QUIT): Add missing AFTER_POTENTIAL_GC.
748 (Fbyte_code): Remove dead code after `wrong_type_argument'.
749
126f9c02 750 * alloc.c (Fgarbage_collect): Mark keyboards, gtk data, and specpdl
9238467d 751 before doing the mark_stack_check_gcpros since they're not on the stack.
126f9c02 752
c0ad3b38
KS
7532004-09-12 Kim F. Storm <storm@cua.dk>
754
755 * editfns.c (Fformat): Handle format strings with multiple text
756 properties. Reverse text property list from the format string,
757 so the positions are in increasing order.
758
844fc085
JD
7592004-09-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
760
761 * xselect.c (x_reply_selection_request): XSync and UNBLOCK before
762 x_uncatch_errors so that possible protocol errors are delivered.
763
b106731c
EZ
7642004-09-10 Eli Zaretskii <eliz@gnu.org>
765
21065c92
EZ
766 * Makefile.in (msdos.o): Depend on buffer.h, commands.h, and
767 blockinput.h.
768 (dosfns.o): Depend on blockinput.h, window.h, dispextern.h,
769 charset.h, and coding.h
9238467d 770 (w16select.o): Depend on buffer.h, charset.h, coding.h, and composite.h.
21065c92
EZ
771 (term.o): Depend on window.h and keymap.h.
772 (abbrev.o): Depend on syntax.h.
773 (callint.o): Depend on keymap.h.
774 (casefiddle.o): Depend on charset.h and keymap.h.
775 (category.o): Depend on keymap.h.
776 (coding.o): Depend on dispextern.h.
777 (cmds.o): Depend on keyboard.h and keymap.h.
778 (dispnew.o): Depend on indent.h and intervals.h.
779 (doc.o): Depend on keymap.h.
780 (editfns.o): Depend on frame.h.
781 (emacs.o): Depend on dispextern.h.
782 (fileio.o): Don't depend on ccl.h.
783 (filelock.o): Depend on charset.h and coding.h.
784 (frame.o): Depend on w32term.h and macterm.h.
785 (insdel.o): Depend on region-cache.h.
786 (keyboard.o): Depend on keymap.h, w32term.h, and macterm.h.
787 (minibuf.o): Depend on $(INTERVALS_SRC) and keymap.h.
788 (search.o): Depend on $(INTERVALS_SRC).
789 (syntax.o): Depend on keymap.h, regex.h, and $(INTERVALS_SRC).
790 (window.o): Depend on keymap.h, blockinput.h, $(INTERVALS_SRC),
791 xterm.h, w32term.h, and macterm.h.
792 (xdisp.o): Depend on keyboard.h, $(INTERVALS_SRC), xterm.h,
793 w32term.h, and macterm.h.
794 (xfaces.o): Depend on keyboard.h, $(INTERVALS_SRC),
795 region-cache.h, xterm.h, w32term.h, and macterm.h.
796 (bytecode.o): Depend on dispextern.h, frame.h, and xterm.h.
797 (data.o): Depend on frame.h.
798 (fns.o): Depend on keymap.h, xterm.h, and blockinput.h.
799 (print.o): Depend on termchar.h and $(INTERVALS_SRC).
800 (lread.o): Depend on $(INTERVALS_SRC), termhooks.h, and coding.h.
801 (intervals.o): Depend on keymap.h.
802
9238467d
SM
803 * msdos.c (msdos_set_cursor_shape, IT_display_cursor):
804 Add debugging print-out to termscript.
b106731c 805
64b7122d
RS
8062004-09-09 Richard M. Stallman <rms@gnu.org>
807
808 * xdisp.c (decode_mode_spec): Use current buffer for most purposes.
809
5670531e
RS
8102004-09-08 Richard M. Stallman <rms@gnu.org>
811
6cb4a892
RS
812 * window.c (Fset_window_buffer): Doc fix.
813
5670531e
RS
814 * xdisp.c (Fformat_mode_line): New arg BUFFER says which buffer to use.
815
7e388eb7
JL
8162004-09-08 Dan Nicolaescu <dann@ics.uci.edu>
817
818 * minibuf.c (history_delete_duplicates): New variable.
819 (read_minibuf): Use it.
820 (syms_of_minibuf): Create the corresponding lisp variable.
821
370e3587
KS
8222004-09-08 Kim F. Storm <storm@cua.dk>
823
824 * xdisp.c (set_cursor_from_row): Also look at 'cursor' property in
825 overlay just before point.
826
f844ba4e
LT
8272004-09-07 Luc Teirlinck <teirllm@auburn.edu>
828
829 * buffer.h (struct buffer): Add auto_save_file_format field.
9238467d
SM
830 * buffer.c (reset_buffer, init_buffer_once):
831 Handle auto_save_file_format field.
f844ba4e
LT
832 (syms_of_buffer): Add DEFVAR_PER_BUFFER for
833 `buffer-auto-save-file-format'.
f844ba4e
LT
834 * fileio.c: Delete declaration for removed Vauto_save_file_format.
835 (build_annotations): Adapt to replacement of
836 `auto-save-file-format' with the new buffer-local variable
837 `buffer-auto-save-file-format'.
838 (syms_of_fileio): Delete DEFVAR_LISP for auto-save-file-format.
839
f0f90717
JR
8402004-09-07 Jason Rumney <jasonr@gnu.org>
841
842 * w32term.h (AppendMenuW_Proc): Move declaration from w32menu.c.
843
9238467d
SM
844 * w32fns.c (w32_wnd_proc) [WM_MEASUREITEM, WM_DRAWITEM]:
845 Handle Unicode menu titles.
f0f90717 846
4e14f66c
KS
8472004-09-07 Kim F. Storm <storm@cua.dk>
848
849 * xdisp.c (set_cursor_from_row): Fix last change. Only use 'cursor'
850 property from text property or overlay strings at point.
851
9238467d 8522004-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
1806714a
SM
853
854 * xmenu.c (update_submenu_strings): YAILOM.
855 (set_frame_menubar): Make sure last_i is initialized.
856
1f06d367
JR
8572004-09-03 Jason Rumney <jasonr@gnu.org>
858
1806714a 859 * w32menu.c (_widget_value): Add lname and lkey.
1f06d367
JR
860 (digest_single_submenu): Set lname and lkey in widget_value
861 instead of name and key.
862 (update_submenu_strings): New function.
863 (set_frame_menubar): Remove call to inhibit_garbage_collection,
864 call update_submenu_strings.
865
866 * w32menu.c (globals_of_w32menu): Check for Unicode API.
867 (digest_single_submenu, w32_menu_show): Encode menu strings as
868 UTF-8 if Unicode API is available.
869 (utf8to16): New function.
870 (add_menu_item): Use it when calling Unicode API.
1806714a 871
46540080
KS
8722004-09-03 Kim F. Storm <storm@cua.dk>
873
874 * xdisp.c (set_cursor_from_row): Look for non-nil `cursor' property
875 in overlay or text-property strings; set cursor on corresponding
876 glyph rather than at end of the string.
877
9277ba61 8782004-09-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
46540080 879
9277ba61 880 * macfns.c (x_real_positions): Save the current window port and
1806714a
SM
881 set a new one before obtaining the global coordinate.
882 Use FRAME_MAC_WINDOW.
883 (x_set_name, x_set_title): Encode title to UTF8.
884 Use SetWindowTitleWithCFString.
9277ba61
ST
885 (Fx_server_version): Get correct OS version.
886
1806714a
SM
887 * macmenu.c (add_menu_item): Remove unused variable `i'.
888 Don't let separator items destroy refence constants of other menu items.
9277ba61
ST
889
890 * macterm.c (x_update_end): Move SetPortWindowPort to inside
891 BLOCK_INPUT.
892 (x_set_offset): Use FRAME_MAC_WINDOW.
893
894 * xdisp.c (note_mouse_highlight): Set the mouse pointer shape to
895 nontext_cursor if it is on a scroll bar.
896
897 * s/darwin.h (LIBS_CARBON): New define to specify libraries for
898 Carbon support.
1806714a
SM
899 (LD_SWITCH_SYSTEM_TEMACS): Don't link with unused libstdc++.
900 Use LIBS_CARBON.
9277ba61 901
b10daec7
JD
9022004-09-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
903
904 * xfns.c (x_set_name_internal): New function. Check if we shall call
905 xfree before ENCODE_UTF_8.
906 (x_set_name, x_set_title): Call x_set_name_internal.
907
f7e22385
JR
9082004-08-31 NAKAMURA Toshikazu <nr-tkz@nifty.com> (tiny change)
909
910 * w32fns.c (w32_load_font): If a BDF font is already loaded, do not
911 reload it.
912
2bf436c3
JD
9132004-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
914
1806714a 915 * macmenu.c (_widget_value): Add lname and lkey.
16ceacc2
JD
916 (single_submenu): Set lname and lkey in widget_value
917 instead of name and key.
918 (update_submenu_strings): New function.
919 (set_frame_menubar): Remove call to inhibit_garbage_collection,
920 call update_submenu_strings.
921
2bf436c3
JD
922 * xmenu.c (digest_single_submenu): Set lname and lkey in widget_value
923 instead of name and key.
924 (update_submenu_strings): New function.
925 (set_frame_menubar): Remove call to inhibit_garbage_collection,
ec867797 926 call update_submenu_strings.
2bf436c3
JD
927
928 * gtkutil.h (_widget_value): Added lname and lkey.
929
11715f92
ST
9302004-08-30 Steven Tamm <steventamm@mac.com>
931
932 * macmenu.c (mac_menu_show): Remove shadowing of menu variable
933 by using different names for inner loop variables.
934
5500be54
JD
9352004-08-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
936
059cd329
JD
937 * xmenu.c (set_frame_menubar): Reintroduce inhibit_garbage_collection
938 from 2002-07-15T00:01:34Z!raeburn@raeburn.org so that strings from ENCODE_UTF_8 isn't GC:ed before used.
939
5500be54
JD
940 * gtkutil.c (xg_create_frame_widgets): Compensate for tool bar when
941 tool bar items is 0.
942
383418e5
ST
9432004-08-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
944
945 * macmenu.c (ENCODE_MENU_STRING): Added to handle multibyte
946 strings in menu items.
947 (single_submenu): Use ENCODE_MENU_STRING
948 (mac_menu_show): Use ENCODE_MENU_STRING. Reset grabbed because
949 button release isn't passed to event loop
950 (add_menu_item): Use SetMenuItemWithCFString
951
6eb3ee72
ST
9522004-08-26 Steven Tamm <steventamm@mac.com>
953
954 * fileio.c (Fread_file_name): Call x_file_dialog on carbon on
955 tool-bar/menu click
956 * macfns.c (Fx_file_dialog): Implemented using NavServices
957
10b43ac3
JD
9582004-08-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
959
2728b5d0
JD
960 * xterm.c (x_catch_errors_unwind): Do not XSync if display has closed.
961
10b43ac3
JD
962 * xfns.c (x_window_to_frame, x_any_window_to_frame)
963 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
964 (x_top_window_to_frame): Return 0 if wdesc is None.
965
2ee3b79e
RS
9662004-08-22 Richard M. Stallman <rms@gnu.org>
967
968 * process.c (process_send_signal) [SIGNALS_VIA_CHARACTERS,
969 HAVE_TERMIOS]: If there's no char for this signal, drop through
970 and use system calls.
971
972 * bytecode.c (Fbyte_code) <unwind-protect>: Cannot GC.
973
9a1ba2ea
KS
9742004-08-20 Kim F. Storm <storm@cua.dk>
975
976 * process.c (wait_reading_process_output): Rename from
977 wait_reading_process_input. All uses changed.
978 (wait_reading_process_output_1): Rename from
979 wait_reading_process_input_1. All uses changed.
980
981 * dispnew.c (Fsleep_for): Remove obsolete code.
982
295f3b30
KH
9832004-08-20 Kenichi Handa <handa@m17n.org>
984
985 * syntax.c (skip_chars): Fix for unibyte case.
986
27615979
SM
9872004-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
988
989 * syntax.c (char_quoted): Mixup byte/char pos.
990 (back_comment): Fixup globals in all cases.
991
00267f94
JD
9922004-08-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
993
994 * xfns.c (x_set_name, x_set_title): Encode title to UTF8 before
995 passing it to gtk_window_set_title.
996
2439909e
KS
9972004-08-19 Kim F. Storm <storm@cua.dk>
998
6ba0f14c
KS
999 * process.c (wait_reading_process_input): Clean up.
1000 Add wait_for_cell, wait_proc, and just_wait_proc args
1001 to avoid overloading `read_kbd' and `do_display' args.
1002 Change read_kbd arg to int. All callers changed.
1003
2439909e
KS
1004 * process.c (process_send_signal): Use CDISABLE.
1005
1006 * sysdep.c (child_setup_tty, init_sys_modes): Use CDISABLE.
1007
101c421e
KS
10082004-08-18 Kim F. Storm <storm@cua.dk>
1009
1010 * process.c (Faccept_process_output): Add arg JUST-THIS-ONE;
1011 forward to wait_reading_process_input via DO_DISPLAY arg.
1012 (wait_reading_process_input): If DO_DISPLAY < 0 for a process
1013 object, only process output from that process; also inhibit
1014 running timers if DO_DISPLAY==-2.
1015
c438dc33
KS
10162004-08-17 Kim F. Storm <storm@cua.dk>
1017
1018 * process.c (process_send_signal): Fix last change--use
1019 _POSIX_VDISABLE instead of CVDISABLE when available.
1020
8afc13c6
RS
10212004-08-16 Richard M. Stallman <rms@gnu.org>
1022
1023 * sysdep.c (child_setup_tty) [SIGNALS_VIA_CHARACTERS]:
1024 Set VQUIT and VINTR chars to the standard ones if they are unset.
1025 [AIX]: Don't do that here. And don't force VINTR to standard
1026 when SIGNALS_VIA_CHARACTERS.
1027
c438dc33 1028 * process.c (process_send_signal)
8afc13c6
RS
1029 [SIGNALS_VIA_CHARACTERS, HAVE_TERMIOS]: Clean up.
1030 Do nothing if the character is CVDISABLE.
1031
1032 * xfaces.c (merge_face_ref): Specifying `unspecified' is a no-op.
1033
c438dc33 1034 * intervals.c (move_if_not_intangible):
8afc13c6
RS
1035 Force POSITION to be between BEGV and ZV.
1036
6dad1714
JPW
10372004-08-14 John Paul Wallington <jpw@gnu.org>
1038
1039 * buffer.c (Frestore_buffer_modified_p): Doc fix.
1040
1041 * fileio.c (Fread_file_name): Doc fix.
1042
1043 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
1044
2bd77330
LT
10452004-08-09 Luc Teirlinck <teirllm@auburn.edu>
1046
1047 * keymap.c (Fmake_keymap, Fmap_keymap, Fwhere_is_internal): Doc fixes.
1048
c90e7e43
LT
10492004-08-08 Luc Teirlinck <teirllm@auburn.edu>
1050
1051 * keyboard.c: Declare Qdisabled_command_function instead of
8392e138 1052 Qdisabled_command_hook.
c90e7e43 1053 (Fcommand_execute): Use Qdisabled_command_function instead of
8392e138 1054 Qdisabled_command_hook.
c90e7e43
LT
1055 (syms_of_keyboard): Ditto.
1056
81909a1a
LT
10572004-08-07 Luc Teirlinck <teirllm@auburn.edu>
1058
1059 * keymap.c (Flocal_key_binding, Fglobal_key_binding)
1060 (syms_of_keymap) <key-translation-map>: Doc fixes.
1061
0cedd530
SM
10622004-08-07 Stefan Monnier <monnier@iro.umontreal.ca>
1063
1725a7c9
SM
1064 * window.c (window_list_1): YAILOM.
1065
0cedd530
SM
1066 * fileio.c (make_temp_name): Handle multibyte prefixes.
1067
2515a131
LT
10682004-08-06 Luc Teirlinck <teirllm@auburn.edu>
1069
1070 * keyboard.c (syms_of_keyboard) <overriding-terminal-local-map>:
1071 Doc fix.
1072
c8b20fb7
KH
10732004-08-03 Kenichi Handa <handa@m17n.org>
1074
1075 * coding.c (decode_coding_string): Adjust coding->consumed, and
1076 etc. with shrinked_bytes.
1077
fb8b092b
KS
10782004-08-03 Kim F. Storm <storm@cua.dk>
1079
1080 * indent.c (compute_motion): Fix check for full width window
1081 in non-window case. Do not count left truncation glyph on
1082 window systems.
1083
df133612
LT
10842004-08-02 Luc Teirlinck <teirllm@auburn.edu>
1085
1086 * data.c (Finteractive_form): Doc fix.
1087
0f7a93c1
KS
10882004-08-02 Kim F. Storm <storm@cua.dk>
1089
1090 * indent.c (compute_motion): Use actual window width if WIDTH is -1,
1091 properly accounting for continuation glyph on non-window systems.
1092 (Fcompute_motion): Use actual window width if WIDTH is nil, and
1093 actual window width/height if TOPOS is nil, properly accounting for
1094 continuation glyphs on non-window systems, and optional header lines.
1095 (vmotion): Let compute_motion calculate actual window width.
1096
1097 * window.c (window_scroll_line_based): Let compute_motion
1098 calculate actual window width.
1099
f491e1ed
KS
11002004-08-02 Kim F. Storm <storm@cua.dk>
1101
1102 * process.c (read_process_output): Use whole read buffer.
1103 Don't trigger adaptive read buffering on errors.
1104
83f64226
LT
11052004-07-31 Luc Teirlinck <teirllm@auburn.edu>
1106
1107 * keymap.c (Fset_keymap_parent, Fdefine_prefix_command): Doc fixes.
1108
1109 * keyboard.c (syms_of_keyboard) <disable-point-adjustment>: Doc fix.
1110
1111 * callint.c (Fcall_interactively): Doc fix.
1112
8afc13c6
RS
11132004-07-30 Richard M. Stallman <rms@gnu.org>
1114
1115 * abbrev.c (Fexpand_abbrev): Undo previous change.
1116
7c111482
KS
11172004-07-30 Kim F. Storm <storm@cua.dk>
1118
1119 * editfns.c (Fformat): Allocate extra (dummy) element in info.
1120
ee945d08
LT
11212004-07-28 Luc Teirlinck <teirllm@auburn.edu>
1122
1123 * eval.c (Fdefvar, Fdefconst): Doc fixes.
1124
3f911c94
KS
11252004-07-27 Kim F. Storm <storm@cua.dk>
1126
1127 * xdisp.c (move_it_in_display_line_to): Check BUFFER_POS_REACHED_P after
1128 we have ensured that the glyph fits on the current line (or returned
1129 MOVE_LINE_CONTINUED otherwise).
1130
f29ff8c7
KS
11312004-07-26 Kim F. Storm <storm@cua.dk>
1132
1133 * xdisp.c (move_it_in_display_line_to): If overflow-newline-into-fringe
1134 is enabled, return MOVE_LINE_CONTINUED rather than MOVE_POS_MATCH_OR_ZV
1135 if target position is at end of display line but char is not a newline.
1136
81159bb9
RS
11372004-07-25 Richard M. Stallman <rms@gnu.org>
1138
ab431b61
RS
1139 * window.c (coordinates_in_window): Return ON_SCROLL_BAR
1140 instead of ON_VERTICAL_BORDER, when on scroll bar.
1141 (Fcoordinates_in_window_p): Handle ON_SCROLL_BAR--return nil.
1142
1143 * dispextern.h (enum window_part): Add ON_SCROLL_BAR.
1144
f29ff8c7 1145 * window.c (Fcoordinates_in_window_p):
81159bb9
RS
1146 Take account of FRAME_INTERNAL_BORDER_WIDTH.
1147
1148 * alloc.c (check_cons_list): New function (contents commented out).
1149
fc820cc5
LT
11502004-07-24 Luc Teirlinck <teirllm@auburn.edu>
1151
1152 * xfaces.c (Fcolor_supported_p): Doc fix.
1153
1154 * frame.c (Fselect_frame, Fset_frame_selected_window)
1155 (Fframe_visible_p, Fraise_frame): Doc fixes.
1156
289978b5
LT
11572004-07-24 Richard M. Stallman <rms@gnu.org>
1158
7630911d
RS
1159 * keyboard.h (not_single_kboard_state): Declared.
1160
1161 * fileio.c (Fwrite_region): Doc fix.
1162
1163 * window.c (Fwindow_at): Take account of FRAME_INTERNAL_BORDER_WIDTH.
1164
1165 * abbrev.c (Fexpand_abbrev): Run Qpre_abbrev_expand_hook
1166 only when a real abbrev is present.
1167
289978b5
LT
1168 * xfns.c (x_icon_verify): New function.
1169 (Fx_create_frame): Use it.
1170
63cc10ae
KS
11712004-07-22 Barry Fishman <barry_fishman@att.net> (tiny change)
1172
1173 * s/gnu-linux.h: Use GC_MARK_STACK if __amd64__ is defined.
1174
36f826d4
KS
11752004-07-21 Kim F. Storm <storm@cua.dk>
1176
1177 * window.h (struct glyph_matrix): New members nrows_scale_factor
1178 and ncols_scale_factor.
1179
1180 * window.c (make_window): Initialize nrows_scale_factor and
1181 ncols_scale_factor members.
1182
1183 * dispnew.c (margin_glyphs_to_reserve): Apply ncols_scale_factor.
1184 (allocate_matrices_for_frame_redisplay): Fix left/right margin mix-up.
1185 (required_matrix_height): Apply nrows_scale_factor.
1186 (required_matrix_width): Apply ncols_scale_factor.
1187
1188 * xdisp.c (display_line): Increment nrows_scale_factor and set
1189 fonts_changed_p if past last allocated row.
1190 (append_glyph, append_composite_glyph, produce_image_glyph)
1191 (append_stretch_glyph): Increment ncols_scale_factor and set
1192 fonts_changed_p if current area is full.
1193
5fc1c546
JD
11942004-07-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1195
1196 * widget.c (EmacsFrameDestroy): Don't abort if normal_gc is 0.
1197
cb7516e5
LT
11982004-07-19 Luc Teirlinck <teirllm@auburn.edu>
1199
1200 * window.c (Fpos_visible_in_window_p, Fset_window_hscroll)
1201 (Fwindow_inside_pixel_edges, Fwindow_end, Fset_window_point)
1202 (Fset_window_start, Fscroll_up, Fscroll_down)
1203 (Fother_window_for_scrolling, Fscroll_other_window)
1204 (Fsave_window_excursion, Fset_window_vscroll)
1205 (syms_of_window) <window-size-fixed>: Doc fixes.
1206
b6189c3b 12072004-07-19 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
dda741ec
JR
1208
1209 * w32fns.c (Fx_file_dialog): Use ENCODE_FILE instead of
1210 ENCODE_SYSTEM for filenames.
1211
bfcf6608
ST
12122004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1213
1214 * mac.c (sys_select): Block input around call to
1215 ReceiveNextEvent to prevent breakage. Correctly handle
1216 blocking on event queue only by calling ReceiveNextEvent
1217 instead of select (since GUI events aren't on an fd).
1218 (sys_read): Remove function
1219 * sysdep.c: Remove redefine of read to sys_read if HAVE_CARBON
1220
e082ac9d
ST
12212004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1222
1223 * mac.c (sys_select): Redo sys_select to use alarm-based
cb7516e5 1224 polling instead of 1 sec timeouts (like solaris).
e082ac9d 1225
cb7516e5 1226 * macterm.c (x_make_frame_visible): Comment in polling on
e082ac9d
ST
1227 frame creation.
1228
1229 * keyboard.c: Undef SIGIO on Carbon
1230
1231 * atimer.c (alarm_signal_handler): Call alarm handlers after
1232 scheduling.
1233
1234 * eval.c (Feval): Remove quit_char test
1235
1236 * process.c (wait_reading_process_input): Remove clearing
1237 stdin for select call on process input.
1238
4b9da0fb
LT
12392004-07-18 Luc Teirlinck <teirllm@auburn.edu>
1240
1204e81c
LT
1241 * xdisp.c (syms_of_xdisp) <window-scroll-functions>: Correct
1242 capitalization error in docstring.
4b9da0fb 1243
26503ad2
JB
12442004-07-17 Juanma Barranquero <lektu@terra.es>
1245
1246 * keyboard.c (not_single_kboard_state): Do nothing unless
1247 MULTI_KBOARD is defined.
1248
3751eb00
RS
12492004-07-17 Richard M. Stallman <rms@gnu.org>
1250
1251 * window.c (coordinates_in_window): Inside the window but outside
1252 its box to the L or R, return ON_VERTICAL_BORDER.
1253 (window_list_1): Rotate the list to start with WINDOW.
1254
1255 * print.c (print_preprocess): Test for print_depth at limit
1256 before entering in being_printed.
1257
1258 * keyboard.c (not_single_kboard_state): New function.
1259 (stuff_buffered_input): Now no-op only if no SIGTSTP.
1260
1261 * frame.c (Fdelete_frame): If we're in single_bboard_state on
1262 this kboard, and we delete its last frame, go to any_kboard_state.
1263
1264 * buffer.c (syms_of_buffer) <transient-mark-mode>: Doc fix.
1265
b6189c3b 12662004-07-15 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
62eb6ca9
JR
1267
1268 * w32fns.c (Fx_file_dialog): Encode strings in system coding
1269 system before passing them to OS functions for display.
1270
0f6af254
DK
12712004-07-15 David Kastrup <dak@gnu.org>
1272
f9253326
KS
1273 * search.c (syms_of_search): Staticpro `saved_last_thing_searched'.
1274 Apparently fixes an abort condition.
0f6af254 1275
386c8f42
LT
12762004-07-14 Luc Teirlinck <teirllm@auburn.edu>
1277
1278 * fileio.c (Fvisited_file_modtime): Return a list of two integers,
1279 instead of a cons.
1280
366511da
MB
12812004-07-14 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
1282
1283 * keyboard.c (echo_dash): Do nothing if there already is a dash
1284 at the end of the echo string.
1285
f85409d3
KS
12862004-07-12 Kim F. Storm <storm@cua.dk>
1287
1288 * alloc.c (mark_object): Only look at Lisp_Misc_Save_Value
1289 if GC_MARK_STACK.
1290
0ba2e87b
LT
12912004-07-10 Luc Teirlinck <teirllm@auburn.edu>
1292
da38045d
LT
1293 * buffer.c (Fswitch_to_buffer, Fpop_to_buffer): Doc fixes.
1294
0ba2e87b
LT
1295 * window.c (Fwindow_buffer, Fother_window, Fget_lru_window)
1296 (Fget_largest_window, Fget_buffer_window, Fdelete_windows_on)
1297 (Freplace_buffer_in_windows, Fset_window_buffer)
1298 (Fselect-window, Fdisplay-buffer, Fsplit_window): Doc fixes.
1299 (syms_of_window): Expand docstring of `display-buffer-function'.
1300
5668fbb8
LT
13012004-07-09 Luc Teirlinck <teirllm@auburn.edu>
1302
1303 * editfns.c (Ffloat_time, Fformat_time_string, Fdecode_time)
1304 (Fcurrent_time_string, Fcurrent_time_zone): Mention in docstrings
1305 that time values of the type (HIGH . LOW) are considered obsolete.
1306
a085bf9d
LT
13072004-07-06 Luc Teirlinck <teirllm@auburn.edu>
1308
669de2fb
LT
1309 * keyboard.c (syms_of_keyboard): Fix `keyboard-translate-table'
1310 docstring.
1311
bac66325 1312 * fns.c (Fclear_string): Declare `len' before call to CHECK_STRING.
a085bf9d 1313
8e975df9
JPW
13142004-07-06 John Paul Wallington <jpw@gnu.org>
1315
1316 * eval.c (Fdefmacro): Signal an error if NAME is not a symbol.
1317
fa164e6a
JPW
1318 * fns.c (Fclear_string): Signal an error if STRING is not a string.
1319
2bac9bb1
JD
13202004-07-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1321
1322 * macterm.c (mac_initialize_display_info): Use CGGetActiveDisplayList
1323 instead of CGMainDisplayID (only in OSX 10.2 and later).
1324
316ef0dc
JPW
13252004-07-04 John Paul Wallington <jpw@gnu.org>
1326
1327 * fileio.c (read_file_name_completion_ignore_case): New variable.
1328 (syms_of_fileio): Declare and initialise it.
1329 (Fread_file_name): Bind `completion-ignore-case' to respect it.
1330
2a1a35c6
EZ
13312004-07-03 Eli Zaretskii <eliz@gnu.org>
1332
1333 * msdos.c (dos_rawgetc): Use make_number to produce Lisp objects
1334 for event.x and event.y.
1335
33a72331
KH
13362004-07-01 Kenichi Handa <handa@m17n.org>
1337
1338 * w32select.c (Fw32_set_clipboard_data): Update `nbytes' correctly
1339 after getting a new string by pre-write-conversion.
1340
9238467d 13412004-06-30 Stefan Monnier <monnier@iro.umontreal.ca>
07a6ab76
SM
1342
1343 * xterm.c (x_detect_focus_change): Remove unused var `nr_events'.
1344 (x_calc_absolute_position): Remove unused var `child'.
1345
1346 * xfaces.c (x_supports_face_attributes_p)
1347 (Fdisplay_supports_face_attributes_p): YAILOM.
1348 (tty_supports_face_attributes_p): Remove unused var `i'.
1349
1350 * syntax.c (skip_chars): Remove unused labels fwd_unibyte_ok and
1351 back_unibyte_ok.
1352
1353 * search.c (match_limit, Fmatch_data, Fset_match_data): YAILOM.
1354
1355 * fontset.c (Fset_fontset_font): Remove unused vars `family' and `registry'.
1356
1357 * Makefile.in (${etc}DOC): Fix file name of make-docfile.
1358
f96ec754
AS
13592004-06-30 Andreas Schwab <schwab@suse.de>
1360
1361 * image.c (CHECK_LIB_AVAILABLE): Add third parameter LIBRARIES.
1362 (Finit_image_library): Pass LIBRARIES through to
1363 CHECK_LIB_AVAILABLE. Declare parameters. Doc fix.
1364 (lookup_image_type): Pass Qnil as second argument to
1365 Finit_image_library.
1366
1367 * lisp.h: Declare Finit_image_library.
1368
59feca74 13692004-06-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
c8d09ad8 1370
31983645
AS
1371 * macterm.c (do_window_activate, do_window_deactivate): Remove.
1372 (XTread_socket): Send mouse button events to the toolbox
1373 dispatcher even when the mouse is grabbed. Don't process window
1374 activate events for non-Emacs windows. Replace function calls to
1375 do_window_activate and do_window_deactivate with their contents.
1376 Reset mouse grabbing status when a window is deactivated.
59feca74 1377
c61278bb
ST
13782004-06-29 Steven Tamm <steventamm@mac.com>
1379
1380 * macterm.c (mac_get_emulated_btn)
1381 (mac_event_to_emacs_modifiers): Fix emulated mouse button
1382 support to correctly mask out modifiers.
1383
c3762cbd
DK
13842004-06-29 David Kastrup <dak@gnu.org>
1385
1386 * search.c (Fset_match_data): Allow buffer before end of list
1387 which can happen if set-match-data is using a pre-consed list.
1388
c61278bb 13892004-06-28 Steven Tamm <steventamm@mac.com>
e439b925
ST
1390
1391 * macterm.c (XTread_socket): Correctly set the frame position
1392 after the window is moved.
1393
74cdfe05
JD
13942004-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1395
1396 * gtkutil.c (xg_get_image_for_pixmap): Call g_object_unref on
1397 gpix and gmask just before return to avoid memory leak.
03ecb80f
JD
1398 (xg_get_image_for_pixmap): Add workaround for monochrome displays
1399 so insensitive and activated icons look ok.
74cdfe05 1400
ef544dc8
JR
14012004-06-27 Jason Rumney <jasonr@gnu.org>
1402
1403 * w32fns.c (file_dialog_callback): Disable edit control if set
1404 to directories only on CDN_INITDONE message.
1405 (Fx_file_dialog): Default to directories only when prompt starts
1406 with "Dired".
1407
7b7990cc
KS
14082004-06-25 Kim F. Storm <storm@cua.dk>
1409
1410 * alloc.c (allocate_misc): Update total_free_markers.
1411 (free_misc): New function.
1412 (safe_alloca_unwind, free_marker): Use it.
1413
1414 * lisp.h (free_misc): Add prototype.
1415
1416 * fns.c (Fmapconcat, Fmapcar): Remove superfluous GCPROs.
1417
d8c379f8
RS
14182004-06-24 Richard M. Stallman <rms@gnu.org>
1419
1420 * emacs.c (Vsignal_USR1_hook, Vsignal_USR2_hook): Definitions deleted.
1421 (syms_of_emacs): Lisp variables deleted.
1422
559cdd07
DK
14232004-06-23 David Kastrup <dak@gnu.org>
1424
94939b84
DK
1425 * search.c (Freplace_match): Adjust the match-data more thoroughly
1426 when replacing strings in the buffer.
1427 (Fmatch_data): When INTEGERS is non-nil and the last match was in
1428 a buffer, add the buffer as last element to the match data.
1429 (Fset_match_data): If an additional element of the match-data is a
1430 buffer, restore it to last_thing_searched.
c8d09ad8 1431 (save_search_regs): Save last_thing_searched as part of the match data.
559cdd07
DK
1432 (restore_match_data): Restore it again.
1433
dce417e7
LT
14342004-06-23 Luc Teirlinck <teirllm@auburn.edu>
1435
1436 * keymap.c (Ftext_char_description): Doc fix.
1437 * doc.c (Fsnarf_documentation): Doc fix.
1438
ef54b2d0
KS
14392004-06-22 Kim F. Storm <storm@cua.dk>
1440
b5bc4d05
KS
1441 * fns.c (Fmapcar, Fmapconcat): GCPRO the args array.
1442
ef54b2d0
KS
1443 * lisp.h (struct Lisp_Save_Value): New member dogc.
1444 (SAFE_ALLOCA_LISP): Change second arg to number of elements.
1445 Set dogc member in Lisp_Save_Value object so it will be GC'ed.
1446 (SAFE_FREE_LISP): New macro.
1447
1448 * alloc.c (safe_alloca_unwind): Clear dogc and pointer members.
1449 (make_save_value): Init new dogc member.
1450 (mark_object): Mark Lisp_Save_Value pointer array if dogc is set.
1451
1452 * fns.c (Fmapconcat, Fmapcar): Use new SAFE_ALLOCA_LISP and
1453 SAFE_FREE_LISP macros.
1454
3d33d993
KS
14552004-06-22 Kim F. Storm <storm@cua.dk>
1456
1457 * lisp.h (SAFE_ALLOCA_LISP): New macro to allocate Lisp_Objects.
1458 Temporarily inhibits GC if memory is xmalloc'ed, as the Lisp_Objects
1459 in that memory area are unknown to GC. Add comments.
1460
1461 * fns.c (Fmapconcat, Fmapcar): Use SAFE_ALLOCA_LISP.
1462
5c917f98
KS
14632004-06-21 Kim F. Storm <storm@cua.dk>
1464
1465 * lisp.h (MAX_ALLOCA): Define here.
1466 (safe_alloca_unwind): Add prototype.
1467 (USE_SAFE_ALLOCA, SAFE_ALLOCA, SAFE_FREE): New macros.
1468
1469 * alloc.c (safe_alloca_unwind): New function.
1470
1471 * casefiddle.c (casify_object): Use SAFE_ALLOCA.
1472
1473 * charset.c (Fstring): Use SAFE_ALLOCA.
1474
1475 * coding.c (MAX_ALLOCA): Remove define.
1476
1477 * data.c (MAX_ALLOCA): Remove define.
1478 (Faset): Use SAFE_ALLOCA.
1479
1480 * editfns.c (Fformat, Ftranspose_regions): Use SAFE_ALLOCA.
1481
1482 * fns.c (string_make_multibyte, string_to_multibyte)
1483 (string_make_unibyte, Fmapconcat, Fmapcar): Use SAFE_ALLOCA.
1484 (MAX_ALLOCA): Remove define.
1485 (Fbase64_encode_region, Fbase64_encode_string)
1486 (Fbase64_decode_region, Fbase64_decode_string): Use SAFE_ALLOCA.
1487 (Fbase64_encode_region, Fbase64_encode_string): Fix potential
1488 memory leak if encoding fails.
1489
1490 * xdisp.c (add_to_log): Use SAFE_ALLOCA.
1491
9a09408e
EZ
14922004-06-21 Eli Zaretskii <eliz@gnu.org>
1493
1494 * print.c (Fwith_output_to_temp_buffer): Doc fix.
1495
376de739
RS
14962004-06-20 Richard M. Stallman <rms@gnu.org>
1497
1498 * xfaces.c (Finternal_copy_lisp_face): Small cleanup; doc fix.
1499
1500 * search.c (match_limit): Cleaner err msg when no match data available.
1501
1502 * window.c (syms_of_window): Doc fix.
1503
1504 * keyboard.c (command_loop_1): Handle values `only' and `identity'
1505 for Vtransient_mark_mode.
1506
1507 * buffer.c (syms_of_buffer): Doc fix.
1508
acd81db9
DK
15092004-06-21 David Kastrup <dak@gnu.org>
1510
1511 * minibuf.c (Ftry_completion, Fall_completions): Do lazy binding
1512 and unbinding of `case-fold-search' according to
1513 `completion-ignore-case' around calls of string-match and
1514 predicates, respectively. Should give satisfactory performance
1515 in all relevant cases.
1516
f303762d
JD
15172004-06-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1518
95911c74
JD
1519 * xterm.c (x_draw_image_foreground_1): Subtract slice.x/y from
1520 clip_x/y_origin.
1521
a6cb6b78
JD
1522 * fns.c (string_to_multibyte): Use xmalloc/xfree instead of alloca.
1523
f303762d
JD
1524 * macfns.c (Fx_display_color_cells): Do not limit return value to 256.
1525
1526 * macterm.c (mac_initialize_display_info): Initialize n_planes correctly
1527 on Mac OSX.
1528
bbdb2684
LT
15292004-06-16 Luc Teirlinck <teirllm@auburn.edu>
1530
1531 * buffer.c (syms_of_buffer): Clarify `fill-column' docstring.
1532
5ea48b1c
KS
15332004-06-16 Kim F. Storm <storm@cua.dk>
1534
1535 * dispextern.h (Vimage_types): Remove extern.
1536
803aac3e
MB
15372004-06-16 Miles Bader <miles@gnu.org>
1538
1539 * image.c (lookup_image_type): Initialize image type if necessary.
1540
cdc97764
KS
15412004-06-15 Kim F. Storm <storm@cua.dk>
1542
c4a5739c
KS
1543 * xdisp.c (try_cursor_movement): Exclude header line from scroll
1544 margin at top of window.
1545 (try_window_reusing_current_matrix): Calculate proper cursor position
1546 after scrolling up with non-zero scroll margin, as the old cursor
1547 position corresponds to value of PT before executing this command.
1548 (try_window_id): Consider scroll margin at bottom of window too;
1549 otherwise we fail to scroll when hl-line-mode is enabled.
1550
cdc97764
KS
1551 * syntax.c (skip_chars): Only recognize [:class:] when it has the
1552 proper format and class is a lower-case word.
1553
5b166323
JD
15542004-06-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1555
1556 * gtkutil.c (xg_get_image_for_pixmap): New function.
c8d09ad8 1557 (xg_get_gdk_pixmap_and_mask): Remove.
5b166323
JD
1558 (update_frame_tool_bar): Call xg_get_image_for_pixmap instead of
1559 xg_get_gdk_pixmap_and_mask.
cdc97764 1560
5b166323
JD
1561 * xterm.h (struct x_display_info): Typo in comment fixed.
1562
1ebd4f78
JB
15632004-06-14 Juanma Barranquero <lektu@terra.es>
1564
1565 * dispextern.h (Vimage_types): Make it conditional on
1566 HAVE_WINDOW_SYSTEM.
1567
1568 * image.c (Vimage_types): Move from xdisp.c.
1569 (Vimage_type_cache): New variable.
1570 (define_image_type): New argument indicating whether an image
1571 library was loaded; cache loaded status and return t on success,
1572 nil otherwise.
1573 (CACHE_IMAGE_TYPE, ADD_IMAGE_TYPE): New macros.
1574 (w32_delayed_load): New function to load an image library from a
1575 list of possible filenames.
1576 (init_xpm_functions, init_png_functions, init_jpeg_functions)
1577 (init_tiff_functions, init_gif_functions): Use `w32_delayed_load'.
c8d09ad8 1578 (CHECK_LIB_AVAILABLE): Call `define_image_library' with new argument.
1ebd4f78
JB
1579 (Finit_image_library): New function, extracted from `init_image'.
1580 Try to initialize an image library on demand and cache whether we
1581 were successful or not.
1582 (syms_of_image): Initialize `Vimage_types' and
1583 `Vimage_type_cache'. Add recognized image types to Vimage_types.
1584 Export `init-image-library'.
1585 (init_image): Remove initialization of all image types, except xbm
1586 and pbm.
1587
1588 * xdisp.c (Vimage_types): Delete (moved to image.c).
1589
904ee128
AS
15902004-06-14 Andreas Schwab <schwab@suse.de>
1591
1592 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
1593 Avoid calling specbind when completion-regexp-list is empty.
1594
092de21d
RS
15952004-06-13 Richard M. Stallman <rms@gnu.org>
1596
1597 * regex.h (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
1598 (re_wctype, re_iswctype, re_wctype_to_bit):
1599 Non-function definitions moved here from regex.c.
1ebd4f78 1600
092de21d
RS
1601 * regex.c (re_wctype, re_iswctype): Function defs longer static.
1602 (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
1603 (re_wctype, re_iswctype, re_wctype_to_bit):
1604 Non-function definitions moved to regex.h.
1605
1606 * window.c (Fselect_window): Doc fix.
1607
1608 * syntax.c: Include regex.h.
1609 (skip_chars): New arg HANDLE_ISO_CLASSES. Callers changed.
1610 If requested, make a list of classes, then check the scanned
1611 chars for membership in them.
1612 (in_classes): New function.
1613 Doc fix.
1614
1615 * keyboard.c (cmd_error): Don't call any_kboard_state
1616 if inside a recursive edit level.
1617
16182004-06-13 Lorentey K\e,Aa\e(Broly <lorentey@elte.hu>
1619
1620 * keyboard.c (command_loop): Call any_kboard_state before
1621 command_loop_2 when at top level.
1622
3ebc0939
AS
16232004-06-13 Andreas Schwab <schwab@suse.de>
1624
cea5d0d4
AS
1625 * print.c (print_object): Always use %ld for printing EMACS_INT.
1626
1627 * keyboard.c (cancel_hourglass_unwind): Return a value.
1628 (modify_event_symbol): Always use %ld for printing EMACS_INT.
1629 (Fexecute_extended_command): Likewise.
1630
1631 * syntax.h (SYNTAX_ENTRY_FOLLOW_PARENT): Rename local variable to
1632 avoid clashes.
1633 (SYNTAX): Likewise.
1634 (SYNTAX_WITH_FLAGS): Likewise.
1635 (SYNTAX_MATCH): Likewise.
1636
1637 * syntax.c (char_quoted): Avoid warning about undefined operation.
1638 (find_defun_start): Likewise.
1639 (scan_lists): Likewise.
1640 (INC_FROM): Likewise.
1641 (scan_sexps_forward): Likewise.
1642
be8c4ce4
AS
1643 * image.c: Include <ctype.h>.
1644
3ebc0939
AS
1645 * xfaces.c (face_attr_equal_p): Declare parameters.
1646
6fb41b5b
KH
16472004-06-13 Kenichi Handa <handa@m17n.org>
1648
1649 * ccl.c (CCL_READ_CHAR): If hit EOF, set REG to -1.
1650
fc3095ce
EZ
16512004-06-12 Matthew Mundell <matt@mundell.ukfsn.org>
1652
1653 * eval.c (Fdefun): Signal an error if NAME is not a symbol.
1654
66189a40
KH
16552004-06-12 Kenichi Handa <handa@m17n.org>
1656
1657 * ccl.c (CCL_CALL_FOR_MAP_INSTRUCTION): Save eof_ic in
1658 ccl_prog_stack_struct and update it.
1659 (CCL_INVALID_CMD): If CCL_DEBUG is defined, call ccl_debug_hook.
1660 (CCL_READ_CHAR): Get instruction counter from eof_ic, not from
1661 ccl->eof_ic on EOF.
1662 (ccl_debug_hook): New function.
1663 (struct ccl_prog_stack): New member eof_ic.
1664 (ccl_driver): Handle EOF in subrountine call correctly.
1665
16662004-06-11 Kenichi Handa <handa@m17n.org>
1667
1668 * coding.c (decode_coding_string): Check CODING_FINISH_INTERRUPT.
1669
1da71023
KS
16702004-06-11 Kim F. Storm <storm@cua.dk>
1671
1672 * emacs.c (shut_down_emacs): Inhibit redisplay during shutdown.
1673
e9efcef4
JB
16742004-06-11 Juanma Barranquero <lektu@terra.es>
1675
1676 * keyboard.c (Fposn_at_point): Doc fix.
1677
9b9ceb61
DK
16782004-06-11 David Kastrup <dak@gnu.org>
1679
1680 * search.c (match_limit): Don't flag an error if match-data
1681 exceeding the allocated search_regs.num_regs gets requested, just
1682 return Qnil.
1683
6e87ac8f
MB
16842004-06-08 Miles Bader <miles@gnu.org>
1685
1686 * xfaces.c (push_named_merge_point): Return 0 when a cycle is detected.
1687
0b0dea7b
JB
16882004-06-07 Juanma Barranquero <lektu@terra.es>
1689
1690 * editfns.c (Fuser_login_name, Ffloat_time, Fencode_time)
1691 (Fcurrent_time_string, Fcurrent_time_zone)
1692 (Finsert_buffer_substring, Ftranspose_regions): Doc fixes.
1693
a0a23346
MB
16942004-06-07 Miles Bader <miles@gnu.org>
1695
08384afd 1696 * xfaces.c (struct named_merge_point): New type.
a0a23346
MB
1697 (push_named_merge_point): New function.
1698 (merge_named_face): New function.
1699 (merge_face_ref, face_at_buffer_position, face_at_string_position):
1700 Use `merge_named_face'.
1701 (merge_face_inheritance): Function removed.
c8d09ad8 1702 (merge_face_ref): Rename from `merge_face_vector_with_property'.
a0a23346
MB
1703 Add new `err_msgs' and `named_merge_points' args. Return error
1704 status. Only print error messages if ERR_MSGS is true. Don't try to
1705 do :inherit attribute validation.
1706 (merge_face_heights): Handle `unspecified' in both directions.
1707 (merge_face_vectors): Rename `cycle_check' arg to `named_merge_points'.
1708 Call `merge_face_ref' instead of `merge_face_inheritance'.
1709 (Fdisplay_supports_face_attributes_p, Fface_attributes_as_vector)
1710 (compute_char_face, face_at_buffer_position)
1711 (face_at_string_position): Call `merge_face_ref' instead of
1712 `merge_face_vector_with_property'.
1713
12d5b185
KH
17142004-06-07 Kenichi Handa <handa@m17n.org>
1715
1716 * coding.c (find_safe_codings): Check NILP (safe_codings) only at
1717 the necessary places.
1718
2e2d7ee6
KS
17192004-06-07 Kim F. Storm <storm@cua.dk>
1720
1721 * process.c (Fdelete_process): Undo 2004-05-28 change.
1722 Instead, call status_notify also for network process.
1723 (status_message): Use process instead of status as arg.
1724 Give messages "deleted" or "connection broken by remote peer" for
1725 an exited network process.
1726 (status_notify): Change call to status_message.
1727 (read_process_output): Increase readmax to 4096. Do not increase
1728 buffer size for datagram channels (default is now large enough).
1729
fcf0d299
ST
17302004-06-06 Steven Tamm <tamm@Steven-Tamms-Computer.local>
1731
1732 * macfns.c (x_create_tip_frame): Fix Mac OS X 10.1 compilation
1733 problem due to newly defined variable.
1734
0722292b
MB
17352004-06-06 Miles Bader <miles@gnu.org>
1736
1737 * xfaces.c (Fdisplay_supports_face_attributes_p): Give up
1738 immediately if non-interactive or not initialized.
1739
ddfb8369
RS
17402004-06-05 Richard M. Stallman <rms@gnu.org>
1741
1742 * minibuf.c (Fcompleting_read): Doc fix.
1743
57015754
AS
17442004-06-05 Andreas Schwab <schwab@suse.de>
1745
1746 * macfns.c (x_create_tip_frame): Fix declaration after statement.
1747
23715ea6
JB
17482004-06-05 Juanma Barranquero <lektu@terra.es>
1749
1750 * keymap.c (Fdescribe_vector): Fix docstring.
1751 (Fkey_description, Fglobal_key_binding): Fix typo in docstring.
1752
8e330b22
MB
17532004-06-05 Miles Bader <miles@gnu.org>
1754
1755 * xfaces.c (tty_supports_face_attributes_p): Make sure the specified
1756 attributes have different values than the default face.
1757
9742a3a6
EZ
17582004-06-04 Eli Zaretskii <eliz@gnu.org>
1759
1760 * xfaces.c (x_supports_face_attributes_p): Make this function
1761 conditional on HAVE_WINDOW_SYSTEM.
c8d09ad8
SM
1762 (Fdisplay_supports_face_attributes_p) [HAVE_WINDOW_SYSTEM]:
1763 Don't call x_supports_face_attributes_p if it was not compiled in.
9742a3a6 1764
9717e36c
MB
17652004-06-04 Miles Bader <miles@gnu.org>
1766
1767 * xfaces.c (tty_supports_face_attributes_p): New function, mostly
1768 from Ftty_supports_face_attributes_p.
1769 (x_supports_face_attributes_p): New function.
1770 (Ftty_supports_face_attributes_p): Function deleted.
1771 (Fdisplay_supports_face_attributes_p): New function.
1772 (syms_of_xfaces): Initialize Sdisplay_supports_face_attributes_p.
f9711de4 1773 (face_attr_equal_p): New function.
9717e36c
MB
1774 (lface_equal_p): Use it.
1775
52deb19f
JB
17762004-06-03 Juanma Barranquero <lektu@terra.es>
1777
1778 * w32fns.c (Fx_display_grayscale_p, Fw32_send_sys_command)
1779 (Vw32_color_map): Fix typo in docstring.
1780 (Fx_create_frame, Fw32_find_bdf_fonts, Fx_show_tip)
1781 (Fw32_unregister_hot_key, Fw32_reconstruct_hot_key):
1782 Make argument names match their use in docstring.
1783
86d373e6
JB
17842004-06-02 Juanma Barranquero <lektu@terra.es>
1785
1786 Work around bugs/problems with MinGW builds of graphics libraries
1787 called from MSVC builds of Emacs.
1788
1789 * image.c (lookup_image): Make pointer to img static.
1790 (png_read_from_memory): Disable "global" optimization.
1791
2fb0ce67
SM
17922004-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
1793
c8d09ad8
SM
1794 * eval.c (Fcondition_case): Fix usage. Simplify.
1795
2fb0ce67
SM
1796 * mem-limits.h (EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true.
1797
50bf7673
ST
17982004-05-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1799
1800 * macfns.c: Don't include ccl.h.
1801 [MAC_OSX]: Don't include QuickTime/QuickTime.h.
86d373e6
JB
1802 [!MAC_OSX]: Don't include alloca.h, Windows.h, Gestalt.h, or
1803 TextUtils.h.
c8d09ad8 1804 (Fx_create_frame): Sync with xfns.c. Initialize cursor descriptors.
50bf7673
ST
1805 (Fx_display_mm_height, Fx_display_mm_width): Calculate length from
1806 display height/width.
1807 (compute_tip_xy, Vx_max_tooltip_size): Declare.
1808 (unwind_create_tip_frame, compute_tip_xy): New functions.
1809 (x_create_tip_frame, Fx_show_tip, Fx_hide_tip): Sync with xfns.c.
1810 (syms_of_macfns): Initialize Qcancel_timer, Vx_max_tooltip_size,
1811 and last_show_tip_args.
2fb0ce67 1812
50bf7673
ST
1813 * macgui.h [!MAC_OSX]: Include Gestalt.h.
1814 (Cursor, No_Cursor): New defines.
c8d09ad8 1815 [!TARGET_API_MAC_CARBON] (SetPortWindowPort): New compatibility macro.
50bf7673
ST
1816 [!TARGET_API_MAC_CARBON] (arrow_cursor): Declare.
1817
1818 * macmenu.c (mac_menu_show, mac_dialog): Use SetPortWindowPort.
1819
1820 * macterm.c: Don't include Gestalt.h.
1821 (enum mouse_tracking_type, mouse_tracking_in_progress): Remove.
1822 (XDrawLine, XClearArea, XClearWindow, mac_draw_bitmap)
1823 (mac_set_clip_rectangle, mac_reset_clipping, XCreatePixmap)
1824 (XFillRectangle, mac_draw_rectangle, mac_draw_string_common)
1825 (mac_copy_area, mac_copy_area_with_mask, x_update_end)
1826 (construct_mouse_click, XTmouse_position)
1827 (x_scroll_bar_report_motion, x_calc_absolute_position)
1828 (do_mouse_moved, do_zoom_window, mac_do_receive_drag)
1829 (XTread_socket, make_mac_frame): Use SetPortWindowPort.
1830 (note_mouse_movement): Clear the mouse face and reset the pointer
1831 shape when the pointer goes outside the frame without grabbing.
1832 (mac_front_window): New function.
1833 (mac_window_to_frame): New macro.
1834 (XTmouse_position, x_scroll_bar_report_motion, do_window_update)
1835 (do_window_activate, do_window_deactivate, do_app_resume)
1836 (do_app_suspend, do_mouse_moved, do_menu_choice, do_grow_window)
1837 (do_zoom_window, mac_do_receive_drag, XTread_socket)
1838 (mac_check_for_quit_char): Use mac_front_window and/or
1839 mac_window_to_frame.
1840 (x_scroll_bar_handle_click): Set `(PORTION . WHOLE)' part in a
1841 scroll-bar click event.
1842 (mac_define_frame_cursor): Change the pointer shape.
c8d09ad8 1843 (x_free_frame_resources): Reset tip_window to NULL when it is disposed.
50bf7673 1844 [!TARGET_API_MAC_CARBON] (arrow_cursor): New variable.
c8d09ad8 1845 [!TARGET_API_MAC_CARBON] (do_init_managers): Initialize arrow_cursor.
50bf7673
ST
1846 (do_window_update): Don't do anything if the updated window is the
1847 tooltip window.
1848 (do_mouse_moved): Handle mouse movement events here (previously in
1849 XTread_socket). Clear the mouse face if
1850 dpyinfo->mouse_face_hidden is set.
1851 (do_os_event, do_events): Remove (now in XTread_socket).
1852 (XTread_socket): Immediately return if interrupt_input_blocked.
c8d09ad8
SM
1853 Loop until all the events in the queue are processed.
1854 Rearrange codes for mouse grabbing. Add tooltip support. Include the
50bf7673
ST
1855 contents of do_os_event and do_events. Remove mouse movement
1856 handling (now in do_mouse_moved). Add the case where
1857 Vmouse_highlight has an integer value.
1858 (NewMacWindow): Remove.
1859 (make_mac_frame): Do what NewMacWindow previously did. Don't do
1860 excess initializations.
1861 (make_mac_terminal_frame): Previous initializations in
1862 make_mac_frame are moved here.
c8d09ad8
SM
1863 (mac_initialize_display_info):
1864 Initialize dpyinfo->mouse_face_overlay and dpyinfo->mouse_face_hidden.
50bf7673
ST
1865
1866 * xdisp.c [MAC_OS] (No_Cursor): Remove variable.
1867 (define_frame_cursor1): Don't treat HAVE_CARBON as a special case.
1868
08fd1251
RS
18692004-05-29 Richard M. Stallman <rms@gnu.org>
1870
1871 * lisp.h (truncate_undo_list): Update decl.
1872
1873 * alloc.c (undo_outer_limit): New variable.
1874 (syms_of_alloc): Defvar it.
1875 (Fgarbage_collect): Pass undo_outer_limit to truncate_undo_list.
1876
1877 * undo.c (truncate_undo_list): New arg LIMITSIZE.
1878
1879 * alloc.c (lisp_align_malloc): Check for base == 0
1880 regardless of HAVE_POSIX_MEMALIGN.
1881 Clean up HAVE_POSIX_MEMALIGN handling of `err'.
1882
227ef0ff
SM
18832004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
1884
1885 * alloc.c: Undo Kim's recent changes and fix the same bug differently.
1886 (marker_blocks_pending_free): Remove.
1887 (Fgarbage_collect): Sweep after cleaning up undo-lists.
1888 Mark the undo lists after claning them up.
1889 Don't free block in marker_blocks_pending_free.
1890 (mark_buffer): Don't mark undo_list.
1891 (gc_sweep): Sweep hash-tables and strings first.
1892 Do free marker blocks that are empty.
1893
034a6113
SM
18942004-05-28 Jim Blandy <jimb@redhat.com>
1895
1896 * regex.c (print_partial_compiled_pattern): Add missing 'break'
1897 after 'case wordend'. For symbeg and symend, print to stderr,
1898 like the other cases.
1899
33594a8d
NF
19002004-05-28 Noah Friedman <friedman@splode.com>
1901
1902 * process.c (Fdelete_process): Do not call remove_process.
1903
ce50a847
SM
19042004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
1905
1906 * alloc.c (struct backtrace): Remove.
1907 (Fgarbage_collect): Use the new mark_backtrace.
1908
1909 * eval.c (mark_backtrace): New function.
1910
1911 * minibuf.c (run_exit_minibuf_hook): New function.
1912 (read_minibuf_unwind): Don't run exit-minibuffer-hook any more.
1913 (read_minibuf): Use separate unwind handler to run exit-minibuf-hook.
1914
1e8dae36
KS
19152004-05-27 Kim F. Storm <storm@cua.dk>
1916
1917 * xdisp.c (back_to_previous_visible_line_start): Skip backwards
1918 over display properties, e.g. images, that replace buffer text.
1919
846faa3b
KS
19202004-05-25 Kim F. Storm <storm@cua.dk>
1921
1922 * alloc.c (marker_blocks_pending_free): New var.
1923 (gc_sweep): Store free marker blocks on that list.
1924 (Fgarbage_collect): Free them after undo-list cleanup.
1925
1926 * process.c (wait_reading_process_input): Check connect_wait_mask
1927 before actually accepting connection in case it has already been
1928 accepted due to recursion.
1929
b6189c3b 19302004-05-23 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
6239a668 1931
ce50a847
SM
1932 * coding.c (Fset_safe_terminal_coding_system_internal):
1933 Set suppress_error in safe_terminal_coding, not terminal_coding.
6239a668 1934
71d5a208
RS
19352004-05-22 Richard M. Stallman <rms@gnu.org>
1936
1937 * alloc.c (Fmake_string): Doc fix.
1938
1939 * buffer.c (clone_per_buffer_values): Copy the alist of local vars,
1940 and the alist pairs too.
1941
1942 * casefiddle.c (casify_object): Return OBJ unchanged if not real char.
1943
1944 * emacs.c (main): Update copyright year.
1945
1946 * fileio.c (Fread_file_name): Expand DIR if not absolute.
1947
1948 * insdel.c (del_range_2, replace_range): Don't write an anchor
1949 if the gap is empty.
1950
1951 * xdisp.c (try_scrolling): If scroll-up-aggressively or
1952 scroll-down-aggressively is small but positive, put point
1953 near the screen edge.
1954
f63fd14e
JB
19552004-05-22 Juanma Barranquero <lektu@terra.es>
1956
1957 * keymap.c (Fdefine_key): Doc fix.
1958
4d12067c
KS
19592004-05-22 Kim F. Storm <storm@cua.dk>
1960
1961 * alloc.c (struct backtrace): Add debug_on_exit member.
1962 (Fgarbage_collect): Clear out buffer undo_list markers after gc_sweep.
1963 Identify those markers as Lisp_Misc_Free objects. Clear car and cdr of
1964 the removed cons cells.
1965 (mark_object): Undo previous change - disallow Lisp_Misc_Free objects.
1966 (gc_sweep): Clear cons_blocks before sweeping strings, so we don't have
1967 any cons cells pointing to unallocated stings.
1968 Do not lisp_free any marker blocks, as there may still be pointers
1969 to them from buffer undo lists at this stage of GC.
1970
1971 * keyboard.c (struct backtrace): Add debug_on_exit member.
1972 (Fcommand_execute): Clear it.
1973
931285e2
LT
19742004-05-20 Luc Teirlinck <teirllm@auburn.edu>
1975
1976 * intervals.c (lookup_char_property): Do not prematurely return nil.
1977
669fa600
SM
19782004-05-19 Jim Blandy <jimb@redhat.com>
1979
1980 Add support for new '\_<' and '\_>' regexp operators, matching the
f63fd14e 1981 beginning and end of symbols.
4d12067c 1982
669fa600
SM
1983 * regex.c (enum syntaxcode): Add Ssymbol.
1984 (init_syntax_once): Set the syntax for '_' to Ssymbol, not Sword.
1985 (re_opcode_t): New opcodes `symbeg' and `symend'.
1986 (print_partial_compiled_pattern): Print the new opcodes properly.
1987 (regex_compile): Parse the new operators.
ce50a847 1988 (analyse_first): Skip sym(beg|end) (they match only the empty string).
669fa600
SM
1989 (mutually_exclusive_p): `symend' is mutually exclusive with \s_ and
1990 \sw; `symbeg' is mutually exclusive with \S_ and \Sw.
1991 (re_match_2_internal): Match symbeg and symend.
1992
1993 * search.c (trivial_regexp_p): \_ is no longer a trivial regexp.
1994
0d8c2e5c
KS
19952004-05-19 Kim F. Storm <storm@cua.dk>
1996
1997 * .gdbinit (xsymbol): Fix last change.
1998
669fa600
SM
19992004-05-18 Stefan Monnier <monnier@iro.umontreal.ca>
2000
2001 * .gdbinit (xprintstr): New fun.
2002 (xstring, xprintsym): Use it.
2003
2004 * w32proc.c (create_child): Use INTMASK.
2005
2006 * alloc.c (Fgarbage_collect): Do all the marking before flushing
2007 unmarked elements of the undo list.
2008
9a6a4c40
DP
20092004-05-18 David Ponce <david@dponce.com>
2010
2011 * print.c (print): Reset print_depth before to call print_object.
2012
f3c4ec74
JR
20132004-05-18 Jason Rumney <jasonr@gnu.org>
2014
2015 * w32console.c: Prefix RIF functions with w32con_ to avoid
2016 namespace clash with functions in term.c and w32term.c.
2017
2018 * w32menu.c (add_menu_item, w32_menu_display_help)
2019 [USE_LISP_UNION_TYPE]: Cast from Lisp_Object using i member.
2020
0d8c2e5c 2021 * w32term.h (display_x_get_resource, vga_stdcolor_name): Add prototype.
f3c4ec74 2022
6be49c3a
EZ
20232004-05-18 Eli Zaretskii <eliz@gnu.org>
2024
4d0b9a0a
EZ
2025 * lisp.h (DECL_ALIGN): Remove restriction on MS-DOS systems.
2026
6be49c3a
EZ
2027 * msdos.c (syms_of_msdos): Initialize dos-unsupported-char-glyph
2028 with make_number.
2029 (IT_write_glyphs): Extract glyph from dos-unsupported-char-glyph
2030 with XINT.
2031
0bc90bba
KS
20322004-05-18 Kim F. Storm <storm@cua.dk>
2033
89d19988
KS
2034 * blockinput.h (INPUT_BLOCKED_P): New macros.
2035
2036 * keyboard.c (Frecursive_edit): Return immediately if input blocked.
2037 (Ftop_level): Unblock input if blocked.
2038
0bc90bba
KS
2039 * buffer.h (GET_OVERLAYS_AT): New macro.
2040 * msdos.c (IT_note_mouse_highlight): Use it.
2041 * textprop.c (get_char_property_and_overlay): Use it.
2042 * xdisp.c (next_overlay_change, note_mouse_highlight): Use it.
2043 * xfaces.c (face_at_buffer_position): Use it.
2044
2045 * print.c (print_object): Increase buf size.
2046
653bd0f6
JR
20472004-05-17 Jason Rumney <jasonr@gnu.org>
2048
2049 * w32fns.c (Fw32_register_hot_key, Fw32_unregister_hot_key)
2050 (Fw32_toggle_lock_key) [USE_LISP_UNION_TYPE]: Cast from
2051 Lisp_Object using i member.
2052 (w32_quit_key): Rename from Vw32_quit_key, and make an int.
2053 (syms_of_w32fns, globals_of_w32fns): Use Lisp_Object and int
2054 consistently.
2055
2056 * w32proc.c (create_child): Use make_number instead of masking pid.
2057
2058 * w32fns.c (w32_color_map_lookup): Return a Lisp_Object.
2059 (x_to_w32_charset, w32_to_x_charset, w32_to_all_x_charsets):
2060 Use EQ to compare Lisp_Objects.
2061 (w32_parse_hot_key): Use int for lisp_modifiers consistently.
2062
2063 * w32term.c (w32_num_mouse_buttons): Rename from
2064 Vw32_num_mouse_buttons and make it an int.
2065
2066 * w32.c (init_environment): Use it.
2067
2068 * w32fns.c (w32_wnd_proc): Likewise.
2069
2070 * w32proc.c (w32_pipe_read_delay): Rename from
2071 Vw32_pipe_read_delay and make it an int.
2072
2073 * w32.c (_sys_read_ahead): Use it.
2074
2075 * lisp.h (egetenv) [USE_CRT_DLL]: Remove condition.
2076
2077 * w32proc.c (create_child) [USE_LSB_TAG]: Don't try to mask pid.
2078
2079 * w32inevt.c (w32_console_mouse_position, do_mouse_event)
2080 (key_event): Don't mix Lisp_Object and int.
2081
2082 * w32heap.c (init_heap) [USE_LSB_TAG]: Don't check heap location.
2083
2084 * keyboard.c (kbd_buffer_get_event): Don't use event->code and
2085 modifiers in language change event.
2086
54b53ba7
KS
20872004-05-17 Kim F. Storm <storm@cua.dk>
2088
2089 * alloc.c (mark_object): Ignore Lisp_Misc_Free objects.
2090 Such objects may be freed markers which still exist on an undo list.
2091
6e86a75d
JB
20922004-05-16 Juanma Barranquero <lektu@terra.es>
2093
2094 * data.c (Fset_default): Make argument names match their use in
2095 docstring.
2096
fc80da24
AS
20972004-05-15 Andreas Schwab <schwab@suse.de>
2098
2099 * emacs.c (gdb_array_mark_flag): Define.
2100 * .gdbinit: Mask off gdb_array_mark_flag from vector sizes.
2101
c1380aa6
EZ
21022004-05-15 Eli Zaretskii <eliz@gnu.org>
2103
2104 * lisp.h (DECL_ALIGN) [MSDOS]: Don't define DECL_ALIGN to use
2105 __attribute__((__aligned__)), so that USE_LSB_TAG would not become
2106 defined for the MS-DOS build.
2107
89458937
SM
21082004-05-14 Stefan Monnier <monnier@iro.umontreal.ca>
2109
2110 * w32fns.c (Fw32_define_rgb_color): Avoid XSET.
2111
08020f9a
KH
21122004-05-14 Kenichi Handa <handa@m17n.org>
2113
2114 * ccl.c (Fccl_execute_on_string): Fix setting elements of STATUS.
2115
a433994a
ST
21162004-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2117
2118 * lisp.h (Vx_resource_name, Vx_resource_class): Move from xfns.c
2119 section to frame.c section.
2120 (Fxw_display_color_p, Fx_file_dialog): Declare if
89458937 2121 HAVE_WINDOW_SYSTEM defined.
0d8c2e5c 2122
a433994a 2123 * macfns.c (Fx_create_frame): Fix int/Lisp_Object mixup.
0d8c2e5c 2124
a433994a 2125 * macmenu.c (set_frame_menubar): Use NILP to test a lisp value.
0d8c2e5c 2126
a433994a
ST
2127 * macterm.c (mac_get_emulated_btn, mac_event_to_emacs_modifiers)
2128 (mac_get_mouse_btn): Use NILP and EQ to test/compare lisp values.
2129 (XTread_socket): Fix int/Lisp_Object mixup.
2130 (mac_check_for_quit_char): Fix pointer/Lisp_Object mixup.
0d8c2e5c 2131
a433994a
ST
2132 * macterm.h (struct frame, struct face, struct image)
2133 (display_x_get_resource, Fx_display_color_p)
89458937
SM
2134 (Fx_display_grayscale_p, Fx_display_planes, x_free_gcs):
2135 Add prototypes.
a433994a 2136
b51a51b9
KS
21372004-05-14 Kim F. Storm <storm@cua.dk>
2138
2139 * process.c (wait_reading_process_input): Make reentrant.
2140 Make Available and Connecting non-static. Save and restore value
2141 of waiting_for_user_input_p.
2142
2bde1dd8
KS
21432004-05-13 Kim F. Storm <storm@cua.dk>
2144
2145 * keyboard.c (mark_kboards): Don't mark x and y members
2146 that are overloaded in selection request events.
2147
a267ab4d
SM
21482004-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
2149
2150 * lisp.h (USE_LSB_TAG): Make it the default when it is known to work.
2151
eb15ce9e
GM
21522004-05-13 Glenn Morris <gmorris@ast.cam.ac.uk>
2153
2154 * window.c (Fdisplay_buffer, Fsplit_window)
2155 (split-height-threshold): Doc fix.
2156
7fc92635
JB
21572004-05-13 Juanma Barranquero <lektu@terra.es>
2158
2159 * xfaces.c (Ftty_supports_face_attributes_p)
2160 (Finternal_copy_lisp_face): Fix typo in docstring.
2161 (Finternal_get_lisp_face_attribute): Fix docstring.
2162
1ec2a572
JD
21632004-05-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2164
2165 * xfns.c (syms_of_xfns): Provide x-toolkit also for GTK.
2166
ae9292e0
ST
21672004-05-11 Steven Tamm <steventamm@mac.com>
2168
2169 * macfns.c (Fx_create_frame): Default to using tool-bar by
2170 setting tool-bar-lines to 1 in default-frame-alist.
2171
21722004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
ea1aaa6f
ST
2173
2174 * image.c (xpm_scan, xpm_make_color_table_v, xpm_put_color_table_v)
2175 (xpm_get_color_table_v, xpm_make_color_table_h)
2176 (xpm_put_color_table_h, xpm_get_color_table_h)
2177 (xpm_str_to_color_key, xpm_load_image, xpm_load)
2178 (syms_of_image): Support XPM on Carbon Emacs. Does not
a267ab4d 2179 depend on libXpm, but only supports XPM version 3 without extensions.
ea1aaa6f 2180
fe97e8df
ST
21812004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2182
a267ab4d 2183 * macterm.c (x_flush, XTframe_up_to_date): Use FRAME_MAC_P
fe97e8df
ST
2184 instead of FRAME_X_P
2185
b47e779e
KS
21862004-05-11 Kim F. Storm <storm@cua.dk>
2187
2188 * process.c (read_process_output): Grow decoding_buf when needed;
2189 this could cause a crash in allocate_string and compact_small_strings.
2190
cdc9b845
EZ
21912004-04-29 Jim Blandy <jimb@redhat.com>
2192
2193 * regex.c (mutually_exclusive_p): In 'case wordbeg', compare op2
2194 against proper opcode.
2195
aa7094ba
JB
21962004-05-10 Juanma Barranquero <lektu@terra.es>
2197
2198 * process.c (Fstart_process): Fix docstring.
2199
2200 * charset.c (Fget_unused_iso_final_char): Fix typos in docstring.
2201 (Fchar_bytes, Fchar_width, Fstring_width, Fchar_direction)
2202 (Fsplit_char, Fchar_charset): Make argument names match their use
2203 in docstring.
2204
e109331a
RS
22052004-05-10 Richard M. Stallman <rms@gnu.org>
2206
2207 * print.c (print_preprocess): Use being_printed, loop_count and
2208 halftail to detect overdeep nesting and cyclic cdr chains.
2209
9a28b921
AS
22102004-05-10 Andreas Schwab <schwab@suse.de>
2211
2212 * lisp.h: Declare Fmake_symbolic_link.
2213
2214 * fileio.c (Frename_file): Remove extra argument in call to
2215 Fmake_symbolic_link.
2216
e2c02c1a
KS
22172004-05-10 Kim F. Storm <storm@cua.dk>
2218
2219 * xdisp.c (calc_line_height_property): Use string position when
2220 object is a string.
2221
cfe9d13e
KH
22222004-05-10 Kenichi Handa <handa@m17n.org>
2223
a57e8159
KH
2224 * print.c (temp_output_buffer_setup): Bind inhibit-read-only and
2225 inhibit-modification-hooks to t temporarily before calling
2226 Ferase_buffer.
2227
2228 * xfns.c (x_create_tip_frame): Bind inhibit-read-only and
2229 inhibit-modification-hooks to t temporarily before calling
2230 Ferase_buffer.
2231
2232 * w32fns.c (x_create_tip_frame): Bind inhibit-read-only and
2233 inhibit-modification-hooks to t temporarily before calling
2234 Ferase_buffer.
2235
cfe9d13e
KH
2236 * fns.c (count_combining): Delete it.
2237 (concat): Don't check combining bytes.
2238
ceb96489
JR
22392004-05-09 Jason Rumney <jasonr@gnu.org>
2240
2241 * w32fns.c (Vw32_ansi_code_page): New Lisp variable.
2242 (globals_of_w32fns): Set it.
2243
b6189c3b 22442004-05-09 Piet van Oostrum <piet@cs.uu.nl>
b1c661c7
JB
2245
2246 * data.c (Fquo): Simplify.
2247
28712a21
JB
22482004-05-08 Peter Whaite <emacs@whaite.ca> (tiny change)
2249
2250 * data.c (Fquo): If any argument is float, do the computation in
2251 floating point.
2252
0f0af7a8
JB
22532004-05-08 Juanma Barranquero <lektu@terra.es>
2254
88214ef6
JB
2255 * process.c (Fwaiting_for_user_input_p, Fmake_network_process)
2256 (Fset_process_query_on_exit_flag, Vprocess_adaptive_read_buffering):
2257 Fix spelling of Emacs on docstring.
2258 (Fset_process_coding_system, Fprocess_coding_system)
2259 (Fset_process_filter_multibyte, Fprocess_filter_multibyte_p):
2260 Make argument names match their use in docstring.
2261 (Fprocess_id, Fprocess_query_on_exit_flag, Finterrupt_process):
2262 Fix docstring.
2263
0f0af7a8
JB
2264 * editfns.c (Finsert_buffer_substring): Make argument names match their
2265 use in docstring.
2266
2267 * syntax.c (Fmodify_syntax_entry): Fix docstring.
2268
2a316a84
ST
22692004-05-07 Steven Tamm <steventamm@mac.com>
2270
2271 * macterm.c (mac_check_for_quit_char): Adding BLOCK_INPUT
2272 around call to ReceiveEvent to avoid certain crashes.
2273
22742004-05-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
0d8c2e5c 2275
2a316a84
ST
2276 * macterm.c (mac_draw_line_to_pixmap, XCreatePixmapFromBitmapData)
2277 (mac_fill_rectangle_to_pixmap, mac_draw_rectangle_to_pixmap)
2278 (mac_copy_area_to_pixmap, mac_copy_area_with_mask_to_pixmap):
2279 Save/restore the current graphics port and device handle when
2280 drawing into an offscreen graphics world.
2281
2282 * image.c [MAC_OS] (XPutPixel, XGetPixel, image_load_qt_1)
2283 (gif_load): Likewise.
2284
ab80314b
JB
22852004-05-07 Juanma Barranquero <lektu@terra.es>
2286
2287 * window.c (Fset_window_buffer): Fix docstring.
2288
70646bb5
TTN
22892004-05-06 Thien-Thi Nguyen <ttn@gnu.org>
2290
2291 * emacs.c (main) [VMS]: Fix var ref.
2292
b6189c3b 22932004-05-06 Romain Francoise <romain@orebokech.com>
b03a4fdd
JB
2294
2295 * data.c (Fsetq_default): Fix docstring.
2296
279d3293
JR
22972004-05-06 Jason Rumney <jasonr@gnu.org>
2298
2299 * image.c (Display) [HAVE_NTGUI]: Redefine while loading xpm.h
2300 to avoid name clash.
2301
f72b5416
JD
23022004-05-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2303
2304 * fileio.c (barf_or_query_if_file_exists): Use lstat.
2305 (Frename_file): Handle renaming of symlinks across file systems.
440c7d00 2306 (Frename_file): Put symlink handling inside #ifdef S_IFLNK.
f72b5416 2307
6ab66799
KS
23082004-05-04 Kim F. Storm <storm@cua.dk>
2309
2310 * xdisp.c (Qtotal): New var.
2311 (syms_of_xdisp): Intern and staticpro it.
2312 (calc_line_height_property): New arg total. Set it if
2313 line-spacing property has format (total . VALUE).
2314 (x_produce_glyphs): Ignore line-spacing if line-height is 0.
2315 Handle total line-spacing property.
2316
ab2d724b
JD
23172004-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2318
2319 * gtkutil.c (xg_update_scrollbar_pos): Call XClearWindow to clear
2320 "under" scroll bar when size/position changes.
2321
238add5e
JR
23222004-05-03 Jason Rumney <jasonr@gnu.org>
2323
2324 * makefile.nt: Remove.
2325
1644f4e4
EZ
23262004-05-02 Eli Zaretskii <eliz@gnu.org>
2327
a267ab4d
SM
2328 * syntax.h (SET_RAW_SYNTAX_ENTRY, SYNTAX_ENTRY_INT):
2329 Avoid compiler warnings.
05fdbeb8 2330
1644f4e4
EZ
2331 * Makefile.in (region-cache.o): Depend on config.h.
2332
b6189c3b 23332004-05-02 Romain Francoise <romain@orebokech.com>
6cbc951e
SM
2334
2335 * indent.c (compute_motion): Save vpos in prev_vpos when dealing
2336 with continuation lines, too.
2337
2b98b088
TTN
23382004-05-02 Thien-Thi Nguyen <ttn@gnu.org>
2339
2340 * syssignal.h (init_signals): Move decl outside `#ifdef POSIX_SIGNALS'.
2341
d9bf7950
SM
23422004-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
2343
2344 * xdisp.c (calc_line_height_property): YAILOM (yet another
2345 int/Lisp_Object mixup).
2346
affa509c
EZ
23472004-05-01 Eli Zaretskii <eliz@gnu.org>
2348
2349 * msdos.c (top-level): Add "#pragma pack(0)" after <dir.h>, to
2350 undo bad effect of pack(4) in some versions of system headers.
2351
07c07cfe
JR
23522004-05-01 Jason Rumney <jasonr@gnu.org>
2353
2354 * w32term.c (x_draw_hollow_cursor): Sync with xterm.c
2355
e71caa4e
KS
23562004-04-30 Kim F. Storm <storm@cua.dk>
2357
2358 * buffer.c (syms_of_buffer) <line-spacing>: Allow float value.
b2b55d03 2359 (syms_of_buffer) <cursor-type>: Doc fix.
e71caa4e
KS
2360
2361 * dispextern.h (struct it): Remove member use_default_face.
2362 Add members override_ascent, override_descent, override_boff.
2363
2364 * xdisp.c (init_iterator): Handle line-spacing float value.
2365 Initialize override_ascent member.
2366 (append_space_for_newline): Reset override_ascent.
2367 Remove use_default_face.
2368 (calc_line_height_property): New function to calculate value of
2369 line-height and line-spacing properties. Look at overlays, too.
2370 Set override_ascent, override_descent, override_boff members when
2371 using another face than the current face. Float values are now
2372 relative to the frame default font, by default; accept a cons
2373 of ratio and face name to specify value relative to a specific face.
2374 (x_produce_glyphs): Use calc_line_height_property.
2375 Use override_ascent etc. when set to handle different face heights.
2376 A negative line-spacing property value is interpreted as a total
2377 line height, rather than inter-line spacing.
2378 (note_mouse_highlight): Allocate room for 40 overlays initially.
2379
0fddae66
SM
23802004-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
2381
2382 * data.c (Fsubr_name): New fun.
2383 (syms_of_data): Defsubr it.
2384
712d23dc
KS
23852004-04-29 Kim F. Storm <storm@cua.dk>
2386
2387 * xdisp.c (null_glyph_slice): New var.
2388 (append_glyph, append_composite_glyph, append_stretch_glyph):
2389 Use it to initialize glyph slice.
2390
033ad8c6
SM
23912004-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
2392
2393 * xdisp.c (x_produce_glyphs): Fix the proverbial int/Lisp_Object mixup.
2394 (on_hot_spot_p): Make sure we always return a value.
2395 (Flookup_image_map): Remove unused var ix and iy.
2396 (note_mode_line_or_margin_highlight): Remove unused var `image'.
2397
93397360
EZ
23982004-04-27 Eli Zaretskii <eliz@gnu.org>
2399
2400 * msdos.c (init_environment): If one of the TMP... environment
2401 variables is set to a drive letter without a trailing slash,
2402 append a slash.
2403
0c54865e
EZ
24042004-04-27 Matthew Mundell <matt@mundell.ukfsn.org>
2405
2406 * editfns.c (lisp_time_argument): Provide externally.
2407
2408 * fileio.c (Fset_file_times): New function.
2409 (syms_of_fileio): Intern and staticpro it.
2410
d3b111bd
KS
24112004-04-27 Kim F. Storm <storm@cua.dk>
2412
07dc1231
KS
2413 * xdisp.c (x_produce_glyphs): Fix last change; handle newline in
2414 header line strings.
2415
360fe9d2
KS
2416 * dispextern.h (struct it): New member use_default_face.
2417
d3b111bd
KS
2418 * xdisp.c (Qline_height): New variable.
2419 (syms_of_xdisp): Intern and staticpro it.
2420 (append_space_for_newline): Partially undo 2004-04-25 change;
2421 add default_face_p arg, and restore callers.
2422 Clear it->use_default_face after use.
2423 (x_produce_glyphs): Set default font for ascii char if
2424 it->use_default_font is set. Change line-spacing property to set
2425 just extra line spacing. Handle new line-height property.
2426
0448588b
AS
24272004-04-26 Andreas Schwab <schwab@suse.de>
2428
2429 * print.c (print_object): Print non-ascii characters in bool
2430 vector representation as octal escapes.
2431
2432 * lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define.
2433 * print.c (print_object): Use it instead of BITS_PER_CHAR for
2434 bool vectors.
2435 * lread.c (read1): Likewise.
2436 * alloc.c (Fmake_bool_vector): Likewise.
2437 * data.c (Faref, Faset): Likewise.
2438 * fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray)
2439 (mapcar1): Likewise.
d3b111bd 2440
536d6baa
ST
24412004-04-26 Steven Tamm <tamm@Steven-Tamms-Computer.local>
2442
2443 * lread.c (init_lread): Fixing typo HAVE_CARBON test logic
2444
ae11577a
MB
24452004-04-26 Miles Bader <miles@gnu.org>
2446
2447 * lisp.h (CYCLE_CHECK): Macro moved from xfaces.c.
2448
e198ba87
JB
24492004-04-26 Juanma Barranquero <lektu@terra.es>
2450
2451 * buffer.c (Fpop_to_buffer): Fix docstring.
2452
f3d5f92d 24532004-04-26 Steven Tamm <steventamm@mac.com>
e198ba87 2454
f3d5f92d
ST
2455 * lread.c (init_lread): Don't display missing lisp directory
2456 warnings with Carbon Emacs because self-contained bundled Emacs
e198ba87 2457 may be built without correct installation path.
f3d5f92d 2458
03e35edc
KS
24592004-04-25 Kim F. Storm <storm@cua.dk>
2460
9ff3aa31
KS
2461 * macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
2462
2463 * xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
2464
03e35edc
KS
2465 * xdisp.c (append_space_for_newline): Rename from append_space.
2466 Remove DEFAULT_FACE_P arg; always use current face. Callers changed.
2467 (x_produce_glyphs): Handle line-spacing property on newline char.
2468 If value is t, adjust ascent and descent to fit current row height.
2469 If value is an integer or float, set extra_line_spacing to integer
2470 value, or to float value x current line height.
2471
f24814e0
KH
24722004-04-23 Kenichi Handa <handa@m17n.org>
2473
2474 * fontset.c (Finternal_char_font): If POSITION is nil, return
2475 font for displaying CH with the default face.
2476
d814862a
JB
24772004-04-23 Juanma Barranquero <lektu@terra.es>
2478
2479 * makefile.w32-in: Add "-*- makefile -*-" mode tag.
2480
063a45c5
SM
24812004-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
2482
2483 * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]:
2484 Don't make assumptions about the relative place of i and val.
2485 (EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well.
2486
ae7ab2d3
KS
24872004-04-21 Kim F. Storm <storm@cua.dk>
2488
2489 * dispextern.h (struct glyph_slice): New struct.
2490 (struct glyph): New member slice.
2491 (GLYPH_SLICE_EQUAL_P): New macro.
2492 (GLYPH_EQUAL_P): Use it.
2493 (struct glyph_string): New member slice.
2494 (struct it_slice): New struct.
2495 (struct it): New member slice, add member to stack too.
2496 New member constrain_row_ascent_descent_p.
2497 (image_ascent): Add prototype.
2498
2499 * dispnew.c (buffer_posn_from_coords): Return full image width
2500 and height even for image slices (posn is relative to full image).
2501 (marginal_area_string): Adjust x0,y0 for image slice.
2502
2503 * image.c (image_ascent): Add slice arg; calculate ascent for
2504 image slice (or full image).
2505
2506 * keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns.
2507 (syms_of_keyboard): Defsubr them.
2508
2509 * lisp.h (pos_visible_p): Fix prototype.
2510
c62aec78 2511 * macterm.c (x_draw_relief_rect): Add top_p and bot_p args.
ae7ab2d3
KS
2512 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
2513 (x_draw_image_foreground, x_draw_image_relief)
2514 (x_draw_image_foreground_1, x_draw_image_glyph_string):
2515 Draw sliced images.
2516
2517 * w32term.c (w32_draw_relief_rect): Add top_p and bot_p args.
2518 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
2519 (x_draw_image_foreground, x_draw_image_relief)
2520 (w32_draw_image_foreground_1, x_draw_image_glyph_string):
2521 Draw sliced images.
2522
2523 * w32term.h (image_ascent): Remove prototype.
2524
2525 * window.c (Fpos_visible_in_window_p): Return pixel position if
2526 PARTIALLY arg is non-nil. Simplify. Doc fix.
2527 (Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg
2528 to return/set vscroll in pixels.
2529
2530 * window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
2531
2532 * xdisp.c (Qslice): New variable.
2533 (syms_of_xdisp): Intern and staticpro it.
2534 (pos_visible_p): Return pixel position in new x and y args.
2535 (init_iterator): Reset it->slice info.
2536 (handle_display_prop): Parse (slice ...) property.
2537 (push_it, pop_it): Save/restore slice info.
2538 (make_cursor_line_fully_visible): Fix 2004-04-14 change. Do not
2539 force repositioning of tall row if window is vscrolled, as that
2540 would reset vscroll.
2541 (append_space): Set it->constrain_row_ascent_descent_p to avoid
2542 increasing row height if row is non-empty.
2543 (fill_image_glyph_string): Copy slice info.
2544 (take_vertical_position_into_account): Simplify.
2545 (produce_image_glyph): Handle iterator slice info, setup glyph
2546 slice info. Do not force minimum line height.
2547 (x_produce_glyphs): If it->constrain_row_ascent_descent_p is set,
2548 do not increase height (ascent/descent) of non-empty row when
2549 adding normal character glyph; instead reduce glyph ascent/descent
2550 appropriately; if row is higher than current glyph, adjust glyph
2551 descent/ascent to reposition glyph within the existing row.
2552 Likewise, when char is newline, only set ascent/descent if row is
2553 currently empty.
2554 (note_mouse_highlight): Handle hotspots with sliced image.
2555
2556 * xterm.c (x_draw_relief_rect): Add top_p and bot_p args.
2557 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
2558 (x_draw_image_foreground, x_draw_image_relief)
2559 (x_draw_image_foreground_1, x_draw_image_glyph_string):
2560 Draw sliced images.
2561
2562 * xterm.h (image_ascent): Remove prototype.
2563
d58f8753
SM
25642004-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
2565
2566 * keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup.
2567
4ce2719d
JPW
25682004-04-20 John Paul Wallington <jpw@gnu.org>
2569
2570 * fns.c (Fassoc, Feql): Fix indentation.
2571
d58f8753 2572 * fontset.c (regularize_fontname): Rename from regulalize_fontname.
4ce2719d 2573
95f8c3b9
JPW
25742004-04-19 John Paul Wallington <jpw@gnu.org>
2575
2576 * fns.c (Feql): New function.
d58f8753 2577 (syms_of_fns): Defsubr it.
95f8c3b9 2578
b7e85537
JR
25792004-04-18 Jason Rumney <jasonr@gnu.org>
2580
2581 * w32select.c (Fw32_set_clipboard_data): Get sequence number
2582 after closing the clipboard.
2583
5a72efd4
LT
25842004-04-16 Luc Teirlinck <teirllm@auburn.edu>
2585
2586 * buffer.c (Fbuffer_base_buffer): Doc fix.
2587
20dc8583
KS
25882004-04-17 Kim F. Storm <storm@cua.dk>
2589
60962ec4
KS
2590 * keymap.c (Fkey_description): Add optional PREFIX arg.
2591 Combine prefix with KEYS to make up the full key sequence to describe.
2592 Correlate meta_prefix_char and following (simple) key to describe
2593 as meta modifier. All callers changed.
2594 (describe_map): Rename arg `keys' to `prefix'. Remove local
2595 `elt_prefix' var. Use Fkey_description with prefix instead of
2596 elt_prefix combined with Fsingle_key_description.
2597 (describe_vector): Declare static. Replace arg `elt_prefix' with
2598 `prefix'. Add KEYMAP_P arg. Add local var `elt_prefix'; use it
2599 if !KEYMAP_P. Use Fkey_description with prefix instead of
2600 Fsingle_key_description.
2601
2602 * keymap.h (Fkey_description): Fix prototype.
2603 (describe_vector): Remove prototype.
2604
409368b9
KS
2605 * xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0.
2606
20dc8583
KS
2607 * image.c (PNG_BG_COLOR_SHIFT): Remove.
2608 (png_load): Fix calculation of transparent background color on X
2609 and W32 platforms.
2610
75c5501b
JB
26112004-04-16 Juanma Barranquero <lektu@terra.es>
2612
2613 * xdisp.c (try_scrolling): Make sure `scroll-conservatively' is
2614 not too large before computing how much to scroll.
2615
da879ae8
SM
26162004-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
2617
2618 * dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler.
2619
d01ca4a8
LT
26202004-04-14 Luc Teirlinck <teirllm@auburn.edu>
2621
2622 * fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime):
2623 Add hyperlink to Elisp manual to the docstring.
2624
572943b3
SM
26252004-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
2626
2627 * callint.c (fix_command): Use XDCR.
2628
5e30a0fb
NR
26292004-04-14 Nick Roberts <nick@nick.uklinux.net>
2630
2631 * window.c (Fget_lru_window): Doc fix.
2632
a27ddfaf
KS
26332004-04-14 Kim F. Storm <storm@cua.dk>
2634
2635 * editfns.c (Fformat): Fix allocation size of precision array.
2636
2637 * dispnew.c (update_window): Only set changed_p if
2638 scrolling_window actually did scroll.
2639 (scrolling_window): Only return 1 if we actually did scroll.
2640
2641 * xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor
2642 height to glyph height when cursor row is not fully visible.
2643 (make_cursor_line_fully_visible): Add FORCE_P arg to return
2644 failure in case row is higher than window. Callers changed.
2645 (try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd).
2646 Try to scroll partially visible, higher-than-window cursor row.
2647 (redisplay_window): Always try to scroll partially visible,
2648 higher-than-window cursor row - both initially and again with
2649 centering_position = 0.
2650 Clear desired matrix before retrying with centering_position = 0.
2651
da879ae8
SM
26522004-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
2653
2654 * syntax.c (scan_lists): Simplify backward string scan.
2655 Fix off-by-one boundary check for string and comment fences.
2656
5fc16e8e
SM
26572004-04-13 Joe Buehler <jbuehler@hekimian.com>
2658
2659 * sheap.c, unexcw.c: New files.
2660
c9aac8e6
LT
26612004-04-12 Luc Teirlinck <teirllm@auburn.edu>
2662
2663 * buffer.c (Fmake_indirect_buffer): Throw an error if the intended
2664 base buffer has been killed. Correct the error message if the
2665 base buffer does not exist.
2666
1e88a355
SM
26672004-04-12 Joe Buehler <jbuehler@hekimian.com>
2668
2669 * s/cygwin.h: Changes for Cygwin unexec() support, changes in
2670 Cygwin itself. Add support for Xaw3d scrollbars.
2671
2672 * puresize.h: Set up PURE_P() for Cygwin unexec() support.
2673
2674 * lastfile.c: Define my_endbss[] for Cygwin unexec() support.
2675
2676 * gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(),
2677 before Cygwin unexec.
2678
2679 * Makefile.in: Link changes for Cygwin unexec() support.
2680
8dbff9a0
AS
26812004-04-12 Andreas Schwab <schwab@suse.de>
2682
2683 * buffer.c (Fmake_indirect_buffer): Check that NAME is a string.
2684
54dffe35
LT
26852004-04-11 Luc Teirlinck <teirllm@auburn.edu>
2686
2687 * buffer.c (Fgenerate_new_buffer_name): Return NAME argument if
2688 IGNORE argument equals NAME. Doc fix.
2689
99a72bdf
MY
26902004-04-11 Masatake YAMATO <jet@gyve.org>
2691
1e88a355 2692 * buffer.c (fix_start_end_in_overlays): Make overlays
99a72bdf
MY
2693 empty if they are backwards.
2694
40899d7b
SM
26952004-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
2696
2697 * xfaces.c (face_color_supported_p): Fix compilation without X11.
2698
f8f853de
SM
26992004-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
2700
2701 * doc.c (Fsnarf_documentation): Ignore new file name entries.
2702
c953fe1b
KS
27032004-04-06 Kim F. Storm <storm@cua.dk>
2704
661e85c1
KS
2705 * msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden.
2706 (dos_rawgetc): Set mouse_face_hidden after clearing highlight.
2707
2708 * w32term.c (w32_read_socket): Set mouse_face_hidden after
2709 clearing highlight.
2710
2711 * xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden.
2712
2713 * xterm.c (handle_one_xevent): Set mouse_face_hidden after
2714 clearing highlight.
2715
c953fe1b
KS
2716 * indent.c (vmotion): Do not reserve one column for continuation
2717 marks on window frames.
2718
c1994268
EZ
27192004-04-04 Eli Zaretskii <eliz@gnu.org>
2720
2721 * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings
2722 from GCC.
2723
9f691b0d
SM
27242004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
2725
2726 * .gdbinit-union: Remove.
2727
2728 * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION.
2729 (xgetptr, xgetint, xgettype): New funs. Use them everywhere.
2730 ($nonvalbits): Remove.
2731 ($valmask): Set it by calling xreload to avoid redundancy.
2732
2733 * emacs.c (gdb_use_union, gdb_use_lsb): New vars.
2734 (gdb_emacs_intbits): Remove.
2735
7a8560d7
JD
27362004-03-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2737
9f691b0d 2738 * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes.
7a8560d7 2739
3c8111fc
KH
27402004-03-30 Kenichi Handa <handa@m17n.org>
2741
2742 * editfns.c (Fformat): Fix initialization of the array info.
2743
48a0bce4
KS
27442004-03-30 Kim F. Storm <storm@cua.dk>
2745
2746 * xterm.c (x_mouse_click_focus_ignore_position): New var.
2747 (syms_of_xterm): DEFVAR_BOOL it.
2748 (ignore_next_mouse_click_timeout): New var.
2749 (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify.
2750 Use it to filter mouse clicks following focus event.
2751
1cd0066c
KS
27522004-03-29 David Ponce <david@dponce.com>
2753
2754 * callint.c (Fcall_interactively): Fix last change.
2755
adb3b353
SM
27562004-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
2757
2758 * eval.c (Fcommandp): Simplify.
2759
2760 * data.c (Finteractive_form): Rename from Fsubr_interactive_form.
2761 Extend to handle all kinds of functions.
2762
2763 * lisp.h (Finteractive_form): Declare.
2764
2765 * callint.c (Fcall_interactively): Use it.
2766
6fc4c9c9
KS
27672004-03-26 Kim F. Storm <storm@cua.dk>
2768
2769 * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error
2770 to catch errors in calc_pixel_width_or_height during redisplay.
2771
abdb9b83
MY
27722004-03-26 Masatake YAMATO <jet@gyve.org>
2773
b17856dd 2774 * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range.
abdb9b83 2775
b17856dd 2776 * lisp.h (fix_start_end_in_overlays): Likewise.
abdb9b83 2777
b17856dd 2778 * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays.
abdb9b83 2779
b17856dd 2780 * editfns.c (Ftranspose_regions): Likewise.
abdb9b83 2781
e8a84b6c
JD
27822004-03-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2783
b17856dd 2784 * xterm.c (handle_one_xevent): Do not pass key press events to GTK.
e8a84b6c 2785
36a3fd05
RS
27862004-03-19 Richard M. Stallman <rms@gnu.org>
2787
2788 * s/sol2-6.h: Delete previous change.
2789
ab24c127
KS
27902004-03-19 Kim F. Storm <storm@cua.dk>
2791
2792 * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
2793 to_charpos corresponds to newline in right fringe. Use local
2794 BUFFER_POS_REACHED_P macro.
2795
992126de
JD
27962004-03-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2797
2798 * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
2799 to compile on non-window system.
2800
45dbfc84
KS
28012004-03-19 Kim F. Storm <storm@cua.dk>
2802
2803 * dispextern.h (calc_pixel_width_or_height): Add prototype.
2804
2805 * image.c (Qcenter): Move to xdisp.c.
2806
2807 * xdisp.c (Qcenter): Declare here.
adb3b353 2808 (syms_of_xdisp): Intern and staticpro it.
45dbfc84
KS
2809 (handle_single_display_prop): Allow space display property on all
2810 platforms.
2811 (display_mode_line): Set mode_line_p before displaying line.
2812 (calc_pixel_width_or_height): Declare extern. Add separate :align-to
2813 handling. Remove complex cases for fringes and scroll-bars.
2814 Add left, right, and center alignment positions. Add text (area)
2815 width/height. Return width or height for image specs.
2816 (produce_stretch_glyph): Improve handling of :align-to. Is now
2817 relative to left of text area by default, but other base offsets
2818 can be specified -- also for text lines.
2819
2820 * term.c (produce_glyphs): Handle IT_STRETCH.
2821 (produce_stretch_glyph): New function to handle space width and
2822 align-to display properties on non-window systems.
2823
37264101
SM
28242004-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
2825
2826 * fileio.c (Fread_file_name): Set completion-ignore-case for
2827 case-insensitive systems.
2828
73bc43da
MY
28292004-03-14 Masatake YAMATO <jet@gyve.org>
2830
2831 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
2832 when keymap and cursor are setup.
2833
9062aa89
ST
28342004-03-14 Steven Tamm <steventamm@mac.com>
2835
b17856dd 2836 * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o.
9062aa89 2837
e4b1b5ab
KS
28382004-03-14 Kim F. Storm <storm@cua.dk>
2839
2840 * dispextern.h (x_find_image_file): Add prototype.
2841
2842 * image.c (x_find_image_file): Make extern.
2843
2844 * xfns.c (x_find_image_file): Remove prototype.
2845
a6eeaa81 28462004-03-13 Eli Zaretskii <eliz@gnu.org>
5109b06a 2847
37264101 2848 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
5109b06a 2849
37264101 2850 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
5109b06a 2851
e69cfac2
RS
28522004-03-12 Richard M. Stallman <rms@gnu.org>
2853
2854 * fns.c (internal_equal): New arg PROPS controls comparing
2855 text properties. All callers changed.
2856 (Fequal_including_properties): New function.
2857 (syms_of_fns): defsubr it.
2858
45034953
KS
28592004-03-12 Kim F. Storm <storm@cua.dk>
2860
2861 Fix image support on MAC. From YAMAMOTO Mitsuharu.
37264101 2862
45034953
KS
2863 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
2864 (image_background, image_background_transparent): Fix prototypes.
2865
37264101 2866 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
45034953
KS
2867
2868 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
2869 (x_query_font, x_find_ccl_program, x_set_window_size)
2870 (x_make_frame_visible, mac_initialize, XCreatePixmap)
2871 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
2872 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
2873
2874 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
2875 (x_query_font, x_find_ccl_program, x_set_window_size)
2876 (x_make_frame_visible, mac_initialize, XCreatePixmap)
2877 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
2878 (mac_draw_line_to_pixmap): Add prototypes.
2879
28802004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2881
2882 * macterm.c (XTread_socket): Fix mouse click on tool bar.
2883
a12d3d87
KS
28842004-03-11 Kim F. Storm <storm@cua.dk>
2885
d3ab1cf1
KS
2886 * dispextern.h: Move image related prototypes from xfns.c section
2887 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
2888 HAVE_X_WINDOWS.
37264101 2889
37de9f51 2890 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
37264101 2891 Move gtkutil.o to new GTK_OBJ list.
a12d3d87
KS
2892 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
2893 (GTK_OBJ) [USE_GTK]: New declaration.
2894 (obj): Add $(GTK_OBJ) to list.
2895
5243c06a 28962004-03-11 Steven Tamm <steventamm@mac.com>
5109b06a 2897
5243c06a
ST
2898 * image.c [MAC_OSX]: Include sys/stat.h
2899
2900 * macfns.c (syms_of_macfns): Remove definitions of things now
2901 defined in image.c
2902
c0f97789
KS
29032004-03-11 Kim F. Storm <storm@cua.dk>
2904
2905 The following changes consolidates the identical/similar image
2906 support code previously found in xfns.c, w32fns.c, and macfns.c
2907 into a new file image.c.
2908
2909 * makefile.w32-in (OBJ1): Add image.o.
2910 ($(BLD)/image.$(O)): Add dependencies.
2911
2912 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
2913 (image.o): Add dependencies.
37264101 2914
c0f97789
KS
2915 * image.c: New file with consolidated image support code.
2916 (COLOR_TABLE_SUPPORT): New define to control whether
2917 color table support is available (X only).
2918 (Bitmap_Record): Common name for x_bitmap_record,
2919 w32_bitmap_record, and mac_bitmap_record.
2920 (XImagePtr): Common name for pointer to XImage or equivalent.
2921 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
2922 to XImagePtr on X+MAC, and to HDC on W32.
2923 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
2924 (NO_PIXMAP): Common name for "None" or equivalent.
2925 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
2926 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
2927 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
37264101
SM
2928 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
2929 Define with suitable equivalents on W32 and MAC for code sharing.
c0f97789
KS
2930 (XDrawLine): Define on MAC for code sharing.
2931 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
2932 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
2933 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
2934 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
2935 (x_reference_bitmap, x_create_bitmap_from_data)
2936 (x_create_bitmap_from_file, x_destroy_bitmap)
2937 (x_destroy_all_bitmaps, x_create_bitmap_mask)
2938 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
2939 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
2940 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
2941 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
2942 (define_image_type, lookup_image_type, valid_image_p)
2943 (image_error, enum image_value_type, struct image_keyword)
2944 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
2945 (make_image, free_image, prepare_image_for_display, image_ascent)
2946 (four_corners_best, image_background, image_background_transparent)
2947 (x_clear_image_1, x_clear_image, x_alloc_image_color)
2948 (make_image_cache, free_image_cache, clear_image_cache)
2949 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
2950 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
2951 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
2952 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
2953 (init_image_func_pointer, image_load_quartz2d)
2954 (struct ct_color, init_color_table, free_color_table)
2955 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
2956 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
2957 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
2958 (x_disable_image, x_build_heuristic_mask)
2959 (XBM support, XPM support, PBM support, PNG support, JPEG support)
2960 (TIFF support, GIF support, Ghostscript support): Consolidate image
2961 code from xfns.c, w32fns.c, and macfns.c.
2962 (syms_of_image): Consolidate image related symbol setup here.
2963 (init_image): Consolidate image related initializations here.
37264101 2964
c0f97789
KS
2965 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
2966 and init_image. Remove call to init_xfns.
2967
37264101
SM
2968 * macterm.h (struct mac_bitmap_record): Add file member.
2969 Not currently used, but simplifies code sharing.
c0f97789
KS
2970
2971 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
2972 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
2973 (x_reference_bitmap, x_create_bitmap_from_data)
2974 (x_create_bitmap_from_file, x_destroy_bitmap)
2975 (x_destroy_all_bitmaps, x_create_bitmap_mask)
2976 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
2977 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
2978 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
2979 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
2980 (define_image_type, lookup_image_type, valid_image_p)
2981 (image_error, enum image_value_type, struct image_keyword)
2982 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
2983 (make_image, free_image, prepare_image_for_display, image_ascent)
2984 (four_corners_best, image_background, image_background_transparent)
2985 (x_clear_image_1, x_clear_image, x_alloc_image_color)
2986 (make_image_cache, free_image_cache, clear_image_cache)
2987 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
2988 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
2989 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
2990 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
2991 (init_image_func_pointer, image_load_quartz2d)
2992 (struct ct_color, init_color_table, free_color_table)
2993 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
2994 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
2995 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
2996 (x_disable_image, x_build_heuristic_mask)
2997 (XBM support, XPM support, PBM support, PNG support, JPEG support)
2998 (TIFF support, GIF support, Ghostscript support): Merge with image
2999 code from xfns.c and macfns.c into image.c.
3000 (syms_of_xfns): Move image related symbols to image.c.
3001 (init_external_image_libraries, init_xfns): Remove; initialization
3002 moved to init_image in image.c.
3003
3004 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
3005 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
3006 (x_reference_bitmap, x_create_bitmap_from_data)
3007 (x_create_bitmap_from_file, x_destroy_bitmap)
3008 (x_destroy_all_bitmaps, x_create_bitmap_mask)
3009 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
3010 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
3011 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
3012 (define_image_type, lookup_image_type, valid_image_p)
3013 (image_error, enum image_value_type, struct image_keyword)
3014 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
3015 (make_image, free_image, prepare_image_for_display, image_ascent)
3016 (four_corners_best, image_background, image_background_transparent)
3017 (x_clear_image_1, x_clear_image, x_alloc_image_color)
3018 (make_image_cache, free_image_cache, clear_image_cache)
3019 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
3020 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
3021 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
3022 (struct ct_color, init_color_table, free_color_table)
3023 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
3024 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
3025 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
3026 (x_disable_image, x_build_heuristic_mask)
3027 (XBM support, XPM support, PBM support, PNG support, JPEG support)
3028 (TIFF support, GIF support, Ghostscript support): Merge with image
3029 code from xfns.c and macfns.c into image.c.
3030 (syms_of_xfns): Move image related symbols to image.c.
3031 (init_external_image_libraries, init_xfns): Remove; initialization
3032 moved to init_image in image.c.
3033
3034 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
3035 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
3036 (x_reference_bitmap, x_create_bitmap_from_data)
3037 (x_create_bitmap_from_file, x_destroy_bitmap)
3038 (x_destroy_all_bitmaps, x_create_bitmap_mask)
3039 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
3040 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
3041 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
3042 (define_image_type, lookup_image_type, valid_image_p)
3043 (image_error, enum image_value_type, struct image_keyword)
3044 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
3045 (make_image, free_image, prepare_image_for_display, image_ascent)
3046 (four_corners_best, image_background, image_background_transparent)
3047 (x_clear_image_1, x_clear_image, x_alloc_image_color)
3048 (make_image_cache, free_image_cache, clear_image_cache)
3049 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
3050 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
3051 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
3052 (struct ct_color, init_color_table, free_color_table)
3053 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
3054 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
3055 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
3056 (x_disable_image, x_build_heuristic_mask)
3057 (XBM support, XPM support, PBM support, PNG support, JPEG support)
3058 (TIFF support, GIF support, Ghostscript support): Merge with
3059 w32fns.c and macfns.c image code into image.c.
3060 (syms_of_xfns): Move image related symbols to image.c.
3061 (init_xfns): Remove; initialization moved to init_image in image.c.
3062
3063 * lisp.h (syms_of_image, init_image): Add protoypes.
3064 (init_xfns): Remove prototype.
3065
3066 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
3067 (x_reference_bitmap, x_create_bitmap_from_data)
3068 (x_create_bitmap_from_file, x_destroy_bitmap)
3069 (x_create_bitmap_mask): Move prototypes from dispextern.h.
3070 (gamma_correct) [MAC_OS]: Add prototype.
3071
3072 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
3073 (x_reference_bitmap, x_create_bitmap_from_data)
3074 (x_create_bitmap_from_file, x_destroy_bitmap)
3075 (x_create_bitmap_mask): Move prototypes to dispextern.h.
3076
6eced09c
KH
30772004-03-09 Kenichi Handa <handa@etlken2>
3078
3079 * coding.c (decode_coding_emacs_mule): Handle insufficent source
3080 correctly.
3081
9a7e95f3
RS
30822004-03-04 Richard M. Stallman <rms@gnu.org>
3083
04a6e76b
RS
3084 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
3085
9a7e95f3
RS
3086 * window.c (Fdisplay_buffer): Doc fix.
3087
3088 * buffer.c (Fpop_to_buffer): Doc fix.
3089
6c2488df
KS
30902004-03-03 Kim F. Storm <storm@cua.dk>
3091
3092 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
3093
d8d95bc7
SM
30942004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
3095
3096 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
3097
357589bf
RS
30982004-03-02 Richard M. Stallman <rms@gnu.org>
3099
3100 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
3101
409949b5
KH
31022004-03-02 Kenichi Handa <handa@m17n.org>
3103
3104 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
3105
d24bc50f
KS
31062004-03-02 Kim F. Storm <storm@cua.dk>
3107
3108 * window.h (struct window): New member overlay_arrow_bitmap.
3109
3110 * window.c (make_window): Initialize overlay_arrow_bitmap.
3111
3112 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
3113 implement and integrate multiple overlay arrows with redisplay.
3114 (syms_of_xdisp): DEFVAR_LISP and initialize it.
3115 (last_arrow_position, last_arrow_string): Replace by properties.
3116 (Qlast_arrow_position, Qlast_arrow_string)
3117 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
3118 (syms_of_xdisp): Intern and staticpro them.
3119 (overlay_arrow_string_or_property, update_overlay_arrows)
3120 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
3121 (overlay_arrow_at_row): New functions for multiple overlay arrows.
3122 (redisplay_internal): Use them instead of directly accessing
3123 Voverlay_arrow_position etc. for multiple overlay arrows.
3124 (mark_window_display_accurate): Use update_overlay_arrows.
3125 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
3126 (try_window_id): Use overlay_arrows_changed_p.
3127 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
3128 (display_line): Use overlay_arrow_at_row to check multiple
3129 overlay arrows, and get relevant overlay-arrow-string and
d8d95bc7 3130 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
d24bc50f
KS
3131 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
3132 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
3133
3134 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
3135 (update_window_fringes): Remove unused code.
3136
c1464661
JR
31372004-03-01 Jason Rumney <jasonr@gnu.org>
3138
3139 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
3140
a64387ee
JB
31412004-03-01 Juanma Barranquero <lektu@terra.es>
3142
3143 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
3144
3145 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
3146
334faa08
JD
31472004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3148
3149 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
3150 how many colors can be displayed.
3151
bb62616f
KH
31522004-03-01 Kenichi Handa <handa@m17n.org>
3153
3154 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
3155 correctly.
3156
0fd16104
KS
31572004-02-28 Kim F. Storm <storm@cua.dk>
3158
3159 * dispnew.c (update_window): Update header line also if there are
3160 no other changes in window (move code after set_cursor label).
3161
3162 * lisp.h (mark_window_display_accurate): Remove prototype.
3163
3164 * window.c (window_loop, Fforce_window_update): Force mode line
3165 updates by setting prevent_redisplay_optimizations_p and
3166 update_mode_lines.
3167
b59dd9c8
JD
31682004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3169
d8d95bc7 3170 * xfns.c (x_window): Fix indentation.
b59dd9c8
JD
3171
3172 * xterm.c (x_calc_absolute_position): Call x_real_positions
3173 to get WM window sizes and use those to calculate position.
d8d95bc7 3174 (x_set_offset): Remove code commented out.
b59dd9c8 3175
a874691c
MB
31762004-02-28 Miles Bader <miles@gnu.org>
3177
3178 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
3179
3e0c6482
KS
31802004-02-28 Kim F. Storm <storm@cua.dk>
3181
3182 * keyboard.c (kbd_buffer_store_event_hold): New function to store
3183 an event into kbd fifo, but with special handling of quit event;
3184 a quit event is saved for later, and further events are discarded
3185 until the saved quit event has been processed.
3186 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
3187 (gen_help_event): Store help event in kbd fifo.
3188 (NREAD_INPUT_EVENTS): Remove.
3189 (read_avail_input): Adapt to new read_socket_hook interface.
3190 Remove allocation and initialization of local input_event buffer,
3191 as read_socket_hook stores events directly in fifo. Allocate and
3192 initialize local hold_quit event to handle postponed quit event
3193 (and store it if set by kbd_buffer_store_event_hold).
3194
3195 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
3196 (gen_help_event): Fix prototype.
3197
a64387ee 3198 * macterm.c (XTread_socket): Remove bufp_r and
3e0c6482 3199 numcharsp args. Add hold_quit arg.
f63fd14e 3200 Rework to use just one, local, inev input_event. Store inev
3e0c6482
KS
3201 directly in fifo using kbd_buffer_store_event_hold.
3202
3203 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
3204 (read_input_waiting): Adapt to new read_socket_hook interface.
3205 Remove allocation and initialization of local input_event buffer,
3206 as read_socket_hook stores events directly in fifo. Allocate and
3207 initialize local hold_quit event to handle postponed quit event
3208 (and store it if set by kbd_buffer_store_event_hold).
3209
a64387ee 3210 * term.c (read_socket_hook): Fix arg list.
3e0c6482
KS
3211
3212 * termhooks.h (read_socket_hook): Fix prototype.
3213
3214 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
3215 numcharsp args. Add hold_quit arg.
f63fd14e 3216 Rework to use just one, local, inev input_event. Store inev
3e0c6482
KS
3217 directly in fifo using kbd_buffer_store_event_hold.
3218
3219 * w32inevt.h (w32_console_mouse_position): Fix prototype.
3220
3221 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
f63fd14e
JB
3222 Add hold_quit arg. Rework to use just one, local, inev
3223 input_event. Store inev directly in fifo using
3e0c6482
KS
3224 kbd_buffer_store_event_hold. Update count in one place.
3225 Postpone call to gen_help_event until inev is stored; use new
3226 local do_help for this.
3227 Remove local emacs_event in handing of ButtonPress event; just use
3228 inev instead (so no reason to copy it later).
3229
3230 * xsmfns.c (x_session_check_input): Remove numchars arg.
3231
d8d95bc7
SM
3232 * xterm.c (x_focus_changed, x_detect_focus_change):
3233 Remove numchars arg. Always store event into bufp arg.
3234 Return nothing. Callers changed accordingly.
3e0c6482
KS
3235 (glyph_rect): Simplify.
3236 (STORE_KEYSYM_FOR_DEBUG): New macro.
3237 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
3238 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
3239 (current_hold_quit) [USE_GTK]: Add.
3240 (event_handler_gdk): Adapt to new handle_one_xevent.
3241 (handle_one_xevent): Remove bufp_r and numcharsp args.
f63fd14e
JB
3242 Add hold_quit arg. Rework to use just one, local, inev
3243 input_event. Store inev directly in fifo using
3e0c6482
KS
3244 kbd_buffer_store_event_hold. Update count in one place.
3245 Postpone call to gen_help_event until inev is stored; use new
3246 local do_help for this.
3247 Simplify handling of keysyms (consolidate common code). Fix bug
3248 where count was updated with nchars instead of nbytes.
3249 Remove local emacs_event in handing of ButtonPress event; just use
3250 inev instead (so no reason to copy it later).
3251 Remove `out' label. Rename label `ret' to `done'; add various
3252 `goto done' to clarify code flow in deeply nested blocks.
3253 (x_dispatch_event): Simplify as handle_one_xevent now calls
3254 kbd_buffer_store_event itself.
f63fd14e 3255 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
3e0c6482
KS
3256 arg. Call handle_one_xevent with new arglist. Store event from
3257 x_session_check_input in fifo.
3258 [USE_GTK]: Setup current_hold_quit.
3259 Decrement handling_signal before unblocking input.
3260 (x_initialize) [USE_GTK]: Initialize current_count.
3261
3262 * xterm.h (x_session_check_input): Fix prototype.
3263
e3564461 32642004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
a64387ee 3265
d8d95bc7 3266 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
a64387ee 3267
e3564461
ST
3268 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
3269 macgui.h).
a64387ee 3270
e3564461 3271 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
a64387ee 3272
e3564461
ST
3273 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
3274 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
3275 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
3276 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
3277 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
3278 (Bitmap): Remove typedef.
3279 (Pixmap): Change int to GWorldPtr.
3280
d8d95bc7 3281 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
a64387ee 3282
d8d95bc7
SM
3283 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
3284 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
3285 New #define to extract 16-bit depth color components from unsigned
e3564461
ST
3286 long representation.
3287 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
3288 colors used for masks.
3289 (struct mac_display_info): Add color_p. Remove n_cbits.
a64387ee 3290
e3564461
ST
3291 * macfns.c: Include sys/types.h and sys/stat.h.
3292 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
3293 Include QuickTime/QuickTime.h.
3294 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
3295 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
3296 functions defined in macterm.c.
3297 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
3298 (ZPixmap): New #define for compatibility with xfns.c.
3299 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
3300 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
d8d95bc7
SM
3301 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
3302 New functions.
e3564461 3303 (four_corners_best, x_create_x_image_and_pixmap)
d8d95bc7
SM
3304 (x_destroy_x_image, unwind_create_frame, x_disable_image)
3305 (x_edge_detection, init_color_table, colors_in_color_table)
e3564461
ST
3306 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
3307 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
3308 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
3309 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
3310 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
3311 long mixup.
3312 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
3313 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
3314 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
3315 (x_set_cursor_type, Fxw_color_values, valid_image_p)
3316 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
3317 (x_alloc_image_color, clear_image_cache, lookup_image)
3318 (x_find_image_file, xbm_read_bitmap_file_data)
3319 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
3320 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
3321 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
3322 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
3323 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
d8d95bc7 3324 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
e3564461
ST
3325 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
3326 #if 0.
3327 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
3328 #if 0. Free white_relief.gc and black_relief.gc.
d8d95bc7
SM
3329 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
3330 New functions (from xfns.c).
e3564461
ST
3331 (Fx_create_frame): Record unwind_create_frame.
3332 (Fxw_display_color_p): Use dpyinfo->color_p.
3333 (Fx_display_grayscale_p, Fx_display_planes): Don't use
3334 dpyinfo->n_cbits.
3335 (Fx_display_color_cells): Use dpyinfo->n_planes;
3336 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
3337 (Qheuristic, cross_disabled_images, emboss_matrix)
3338 (laplace_matrix): New variables (from xfns.c).
3339 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
3340 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
3341 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
d8d95bc7
SM
3342 (image_background_transparent): New function (from xfns.c).
3343 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
3344 (image_load_quicktime): Add declaration.
3345 [MAC_OSX] (image_load_quartz2d): Likewise.
3346 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
3347 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
d8d95bc7 3348 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
e3564461
ST
3349 (xbm_load_image_from_file, x_laplace_read_row)
3350 (x_laplace_write_row, pbm_read_file): Remove functions.
3351 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
3352 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
3353 (colors_in_color_table): Sync with xfns.c (although not used).
3354 (lookup_rgb_color): Don't lookup color table. Just do gamma
3355 correction.
3356 (COLOR_INTENSITY): New #define (from xfns.c).
d8d95bc7
SM
3357 (x_disable_image): New function (from xfns.c).
3358 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
3359 (x_build_heuristic_mask): Sync with xfns.c.
3360 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
3361 (HAVE_PBM): Remove #ifdef.
3362 (pbm_load): Sync with xfns.c. Set img->width and img->height
3363 before IMAGE_BACKGROUND.
d8d95bc7 3364 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
e3564461
ST
3365 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
3366 Don't enclose with #if HAVE_PNG.
3367 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
d8d95bc7
SM
3368 symbol _CGImageCreateWithPNGDataProvider is defined.
3369 Otherwise use image_load_quicktime.
e3564461 3370 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
d8d95bc7
SM
3371 [HAVE_PNG] (png_load): Sync with xfns.c.
3372 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
3373 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
3374 HAVE_JPEG.
3375 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
3376 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
3377 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
3378 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
3379 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
3380 (tiff_image_p, tiff_load): Don't enclose declarations with #if
3381 HAVE_TIFF.
3382 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
3383 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
3384 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
d8d95bc7
SM
3385 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
3386 New functions (from xfns.c).
e3564461 3387 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
d8d95bc7 3388 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
e3564461
ST
3389 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
3390 Don't enclose with #if HAVE_GIF.
3391 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
3392 animated gif. Otherwise use image_load_quicktime.
3393 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
3394 gif_DrawText to avoid conflict with QuickdrawText.h.
3395 [HAVE_GIF] (gif_load): Sync with xfns.c.
3396 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
3397 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
3398 Ghostscript is not supported yet).
3399 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
3400 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
3401 cross_disabled_images (from xfns.c). Remove #if 0 for supported
3402 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
3403 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
3404 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
d8d95bc7
SM
3405 HAVE_PNG. Call EnterMovies to support animated gifs.
3406 Call init_image_func_pointer to bind a symbol
e3564461 3407 _CGImageCreateWithPNGDataProvider if it is defined.
a64387ee 3408
d8d95bc7 3409 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
e3564461
ST
3410 (x_draw_bar_cursor): Sync declaration with xterm.c.
3411 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
3412 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
3413 graphics).
3414 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
3415 (mac_draw_line_to_pixmap, XCreatePixmap)
3416 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
d8d95bc7
SM
3417 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
3418 New functions.
3419 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
3420 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
3421 Cast bits to char *.
e3564461
ST
3422 (reflect_byte): New function (from w32fns.c).
3423 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
3424 due to byte alignment.
d8d95bc7
SM
3425 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
3426 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
e3564461
ST
3427 (XSetForeground): Remove static (now used in macfns.c).
3428 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
3429 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
3430 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
3431 (x_draw_glyph_string_box, x_draw_image_foreground)
3432 (x_draw_image_foreground_1, x_draw_image_glyph_string)
3433 (x_draw_stretch_glyph_string, x_draw_glyph_string)
3434 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
3435 Sync with xterm.c.
3436 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
3437 than the xterm.c version when a strictly horizontal or vertical
3438 line is drawn.
3439 (XTset_terminal_window): Add static.
3440 (x_make_frame_visible): Add UNBLOCK_INPUT.
3441 (x_free_frame_resources): New funcion (from xterm.c).
3442 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
3443 occurs in tool bar area.
d8d95bc7
SM
3444 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
3445 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
e3564461
ST
3446 Initialize image cache.
3447 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
3448 Enclose unused functions with #if 0.
3449 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
3450 (decode_mac_font_name): New function to apply code conversions
d8d95bc7 3451 from a mac font name to an XLFD font name according to its script code.
e3564461 3452 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
d8d95bc7 3453 font name to a mac font name according to REGISTRY and ENCODING fields.
e3564461
ST
3454 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
3455 whose name starts with `.'.
3456 (init_font_name_table): Use decode_mac_font_name. Add both
3457 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
3458 of a font is smJapanese.
3459 (mac_do_list_fonts): New function to list fonts that match a given
3460 pattern.
3461 (x_list_fonts, XLoadQueryFont): Use it.
3462 (XLoadQueryFont): Set rbearing field for each variable width
3463 character to avoid needless redraw.
3464 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
3465
446f5f3d
KS
34662004-02-26 Kim F. Storm <storm@cua.dk>
3467
af617d0f
KS
3468 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
3469 as read_socket_hook handler on X aborts if buffer is too small
3470 and W32 handler doesn't always check buffer limit.
3471
446f5f3d
KS
3472 * xdisp.c (handle_single_display_prop): Handle left-fringe and
3473 right-fringe similar to a display margin image. Specifically,
3474 the characters having the fringe prop are no longer shown, and
3475 we use IT_IMAGE/next_element_from_image with image_id = -1 to
3476 do this. Set fringe bitmap face_id in it->face_id.
3477 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
3478 still realize it->face (i.e. the fringe bitmap face).
3479
7d8a0b55
MB
34802004-02-25 Miles Bader <miles@gnu.org>
3481
3482 * xdisp.c (check_it): Check string/string_pos consistency.
3483 (init_iterator): Initialize string-related fields properly.
3484
34852004-02-11 Miles Bader <miles@gnu.org>
3486
3487 * xdisp.c (produce_image_glyph): Force negative descents to zero.
3488
34892004-02-10 Miles Bader <miles@gnu.org>
3490
3491 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
3492 BLOCK_INPUT can be nested, so it doesn't make much sense.
3493
a64387ee 34942004-02-24 Michael Mauger <mmaug@yahoo.com>
ce35edd1
JR
3495
3496 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
3497 (xbm_read_bitmap_data): Use unsigned char for image data.
3498
92f5fba2
LT
34992004-02-23 Luc Teirlinck <teirllm@auburn.edu>
3500
3501 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
3502
8565fb3d
JR
35032004-02-22 Jason Rumney <jasonr@gnu.org>
3504
3505 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
3506 correctly over other bitmaps.
3507
a6eeaa81 35082004-02-21 Eli Zaretskii <eliz@gnu.org>
f8125c39
EZ
3509
3510 * emacs.c (USAGE1): Split into two halves.
3511 (USAGE2): Second half of the old USAGE1.
d8d95bc7
SM
3512 (USAGE3): Rename from USAGE2.
3513 (USAGE4): Rename from USAGE3.
f8125c39 3514
4effffca
EZ
35152004-02-21 Juri Linkov <juri@jurta.org>
3516
3517 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
3518 Fix --multibyte. Move --help, --version to USAGE2. Add alias
3519 --file. Fix -f, -l. Sort options. Untabify.
3520 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
3521
923c1e6f
LT
35222004-02-19 Luc Teirlinck <teirllm@auburn.edu>
3523
3524 * category.c (Fdefine_category, Fcategory_docstring)
3525 (Fget_unused_category, Fset_category_table)
3526 (Fcategory_set_mnemonics): Doc fixes.
3527
b0e225fd
KS
35282004-02-20 Kim F. Storm <storm@cua.dk>
3529
3530 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
3531 The following changes are relative to the 2004-01-21 revision.
3532 (NREAD_INPUT_EVENTS): Define as max number of input events to read
3533 in one call to read_socket_hook. Value is 8.
3534 (read_avail_input): Separate and rework handling of read_socket_hook
3535 and non-read_socket_hook cases. Use smaller input_event buffer
d8d95bc7
SM
3536 in read_socket_hook case, and repeat if full buffer is read.
3537 Use new local variable 'discard' to skip input after C-g.
b0e225fd
KS
3538 In non-read_socket_hook case, just use a single input_event, and
3539 call kbd_buffer_store_event on the fly for each character.
3540
b15aa9f9
SM
35412004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
3542
3543 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
3544 Remove unused `gu' alternative.
3545
83c9aa95
AS
35462004-02-19 Andreas Schwab <schwab@suse.de>
3547
3548 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
3549 warning.
3550
cc808173
KS
35512004-02-18 Kim F. Storm <storm@cua.dk>
3552
3553 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
3554 Fix last change.
3555
ab90a54d
KS
35562004-02-17 Kim F. Storm <storm@cua.dk>
3557
b26f249f
KS
3558 * xdisp.c (fast_find_position): Fix return value of new version;
3559 it was inverted compared to the 21.1 version.
3560 (get_window_cursor_type): Don't look at glyph if NULL.
3561 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
0bf7d005 3562
ab90a54d
KS
3563 * keyboard.c: Rework previous change; it didn't consider that the
3564 buf array was allocated on the stack.
3565 (prev_read): Remove variable.
3566 (read_avail_input_buf): New static event buffer array.
b9568dfc 3567 (in_read_avail_input): New static variable to handle re-entrancy.
ab90a54d 3568 (read_avail_input): Change buf to pinter to read_avail_input_buf.
b9568dfc
KS
3569 Use in_read_avail_input to handle re-entrance; when re-entered,
3570 fully initialize and use tmp_buf array instead of read_avail_input_buf.
3571 Do not initialize read_avail_input_buf in full here; instead assume it
ab90a54d
KS
3572 is always cleared on entry. To ensure that, we clear (just) the
3573 entries that were used before we return.
3574 (init_keyboard): Initialize read_avail_input_buf here.
3575
b6189c3b 35762004-02-16 Jesper Harder <harder@ifa.au.dk>
4e039f3f
EZ
3577
3578 * cmds.c (Fend_of_line): Doc fix.
3579
7b5368c1
EZ
35802004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
3581
3582 * keyboard.c (prev_read): New static variable.
3583 (read_avail_input): Use it to zero out only those slots in buf[]
3584 that were used last time we were called.
3585
a6eeaa81 35862004-02-16 Eli Zaretskii <eliz@gnu.org>
ca4bc494
EZ
3587
3588 * Makefile.in (obj): Move fringe.o from here...
3589 (XOBJ, MAC_OBJ): ...to here.
3590
159c348e
SE
35912004-02-16 Stephen Eglen <stephen@gnu.org>
3592
3593 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
3594
d2f14999
SM
35952004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
3596
b15aa9f9
SM
3597 * data.c (Fbyteorder):
3598 * fringe.c (Fdefine_fringe_bitmap):
3599 * xdisp.c (handle_single_display_prop):
d2f14999
SM
3600 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
3601
8d50508a
JR
36022004-02-16 Jason Rumney <jasonr@gnu.org>
3603
3604 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
3605
dd4497dc
ST
36062004-02-15 Steven Tamm <steventamm@mac.com>
3607
3608 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
3609 controlling emulation of a three button mouse with option and
3610 command keys.
3611 (Qreverse, mac_get_enumlated_btn): Handle the emulation
b15aa9f9 3612 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
dd4497dc 3613
c9159cb3
KS
36142004-02-15 Kim F. Storm <storm@cua.dk>
3615
2cc52658
KS
3616 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
3617
c9159cb3
KS
3618 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
3619 Perform byte-swapping.
3620
12fde2dc
KS
36212004-02-14 Kim F. Storm <storm@cua.dk>
3622
3623 * dispextern.h (struct draw_fringe_bitmap_params): Change member
3624 bits from char to short to facilitate wider bitmaps.
3625 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
3626 member.
3627
3628 * fringe.c (struct fringe_bitmap): Change member bits from char to
3629 short to facilitate 16 bits wide bitmaps. Modify all standard
3630 bitmaps accordingly.
3631 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
3632 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
3633 (draw_fringe_bitmap): Ditto.
3634 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
3635 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
3636 handle up to 16 bits wide bitmaps.
3637 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
f21a7192 3638 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
12fde2dc
KS
3639
3640 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
3641 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
3642 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
3643
3644 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
3645 so it is no longer necessary to expand them here.
3646
3647 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
3648
9d7271e8
KS
36492004-02-12 Kim F. Storm <storm@cua.dk>
3650
3651 * window.c (Fwindow_fringes): Doc fix.
3652
706c1e4f
JD
36532004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3654
3655 * xselect.c (x_get_foreign_selection): Add new optional parameter
3656 time_stamp.
3657 (Fx_get_selection_internal): Ditto, pass time_stamp to
3658 x_get_foreign_selection.
3659
3660 * data.c (Fbyteorder): New function.
3661
c2d12b5d
JD
36622004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3663
3664 * atimer.c: Move include stdio.h to same place as in other files.
3665
3666 * region-cache.c: Ditto.
3667
3668 * sysdep.c: Ditto.
3669
3670 * xfaces.c: Ditto.
3671
4c1947b9
SS
36722004-02-09 Sam Steingold <sds@gnu.org>
3673
89458937 3674 * w32term.c (w32_draw_fringe_bitmap): Fix a typo in the last patch.
4c1947b9 3675
82722af3
KS
36762004-02-09 Kim F. Storm <storm@cua.dk>
3677
3678 * fringe.c: New file. Move original fringe related declarations
3679 and code from dispextern.h and xdisp.c here.
3680 Rework code to support user defined fringe bitmaps, redefining
3681 standard bitmaps, ability to overlay user defined bitmap with
3682 overlay arrow bitmap, and add faces to bitmaps.
3683 (Voverflow_newline_into_fringe): Declare here.
3684 (enum fringe_bitmap_align): New enum.
3685 (..._bits): All bitmaps are now defined without bitswapping; that
3686 is now done in init_fringe_once (if necessary).
3687 (standard_bitmaps): New array with specifications for the
3688 standard fringe bitmaps.
3689 (fringe_faces): New array.
3690 (valid_fringe_bitmap_id_p): New function.
3691 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
3692 (draw_fringe_bitmap): New function which draws fringe bitmap,
3693 possibly overlaying bitmap with cursor in right fringe or the
3694 overlay arrow in the left fringe.
3695 (update_window_fringes): Do not handle overlay arrow here.
3696 Compare and copy fringe bitmap faces.
3697 (init_fringe_bitmap): New function.
3698 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
3699 define and destroy user defined fringe bitmaps.
3700 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
3701 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
3702 (syms_of_fringe): New function. Defsubr new DEFUNs.
3703 DEFVAR_LISP Voverflow_newline_into_fringe.
3704 (init_fringe_once, init_fringe): New functions.
3705 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
4c1947b9 3706
82722af3
KS
3707 * Makefile.in (obj): Add fringe.o.
3708 (fringe.o): New dependencies.
3709
3710 * dispextern.h (FRINGE_ID_BITS): New definition for number of
3711 bits allocated to hold a fringe number. Increase number of bits
3712 from 4 to 8 to allow user defined fringe bitmaps.
3713 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
3714 left_user_fringe_face_id, right_user_fringe_bitmap,
3715 right_user_fringe_face_id.
3716 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
3717 Move to new file fringe.c.
3718 (MAX_FRINGE_BITMAPS): Define here.
3719 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
3720 and overlay_p. Change member which to int.
3721 (struct redisplay_interface): New members define_fringe_bitmap
3722 and destroy_fringe_bitmap.
3723 (valid_fringe_bitmap_id_p): Add prototype.
3724 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
3725
3726 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
3727 arrows.
3728 (update_frame): Do flush_display if force_flush_display_p to
3729 ensure display (specifically fringes) are updated in a timely
3730 manner when resizing the frame by dragging the mouse.
3731 (update_window_line): Update row if overlay arrow changed.
3732 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
3733 or overlay arrow changed.
3734
3735 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
3736 syms_of_fringe, and init_fringe.
3737
3738 * frame.h (struct frame): New member force_flush_display_p.
3739
3740 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
3741 Add prototypes.
3742
a3993cc8 3743 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
a64387ee 3744 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
a3993cc8
KS
3745 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
3746 Use cursor color for displaying cursor in fringe.
82722af3
KS
3747 (x_redisplay_interface): Add null handlers for
3748 define_fringe_bitmap and destroy_fringe_bitmap functions.
3749
3750 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
3751 xterm.c to handle overlayed fringe bitmaps and to use cursor color
3752 for displaying cursor in fringe.
3753 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
3754 specific functions to define and destroy fringe bitmaps in fringe_bmp.
3755 (w32_redisplay_interface): Add them to redisplay_interface.
3756 (w32_term_init): Call w32_init_fringe instead of explicitly
3757 defining fringe bitmaps in fringe_bmp array.
3758 (x_delete_display): Call w32_reset_fringes instead of explicitly
3759 destroying fringe bitmaps in fringe_bmp array.
3760
3761 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
3762 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
3763 (continued_bits, continuation_bits, ov_bits, first_line_bits)
3764 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
3765 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
3766 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
3767 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
3768 Move fringe handling vars and code to new file fringe.c.
3769 (handle_display_prop): Handle left-fringe and right-fringe
3770 display properties; store user fringe bitmaps in iterator.
3771 (move_it_in_display_line_to): Handle cursor in fringe at eob.
3772 (clear_garbaged_frames): Set force_flush_display_p if resized.
3773 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
3774 (display_line): Handle cursor in fringe at eob.
3775 (display_line): Set row user fringe bitmaps from iterator.
3776
3777 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
3778 Use cursor color for displaying cursor in fringe.
3779 (x_redisplay_interface): Add null handlers for
3780 define_fringe_bitmap and destroy_fringe_bitmap functions.
3781
030400eb
JD
37822004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3783
3784 * macfns.c (Fx_change_window_property): Make doc string and
3785 parameters same as for X version.
3786
3787 * w32fns.c (Fx_change_window_property): Ditto.
3788
3af55251
KS
37892004-02-07 Kim F. Storm <storm@cua.dk>
3790
ec110e9e
KS
3791 * xdisp.c (hscroll_window_tree): Position cursor near to right
3792 margin in hscrolled window when jumping to end of line (rather
3793 than centering cursor).
3794
3af55251
KS
3795 * process.c (wait_reading_process_input): Don't do adaptive read
3796 buffering if waiting for a specific process.
3797
b0c138ce
LT
37982004-02-05 Luc Teirlinck <teirllm@auburn.edu>
3799
3800 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
3801 (Fread_minibuffer, Feval_minibuffer)
3802 (Fread_string, Fread_no_blanks_input)
3803 (Fcompleting_read): Doc fixes.
3804 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
3805 completion-regexp-list. Define Qcase_fold_search and staticpro it.
3806 (read_minibuf): Fix initial comment.
3807 (Ftry_completion, Fall_completions, Ftest_completion): Bind
e8eeaed8 3808 case-fold-search to the value of completion-ignore-case when
b0c138ce
LT
3809 checking completion-regexp-list.
3810 (Fdisplay_completion_list): Make it handle arguments that are
3811 symbols. Doc fix.
3812
9676f5ad 38132004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
64d1e373 3814
9676f5ad 3815 * xterm.h: Add declaration of free_frame_menubar.
64d1e373 3816
9676f5ad
JD
3817 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
3818 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
b0c138ce 3819 (Fx_change_window_property): Add declaration of parameters type and
9676f5ad 3820 format. Remove unused variable cons.
5b698285
JD
3821
3822 * xselect.c: Include stdio,h.
3823
fc1d15f6
KH
38242004-02-05 Kenichi Handa <handa@m17n.org>
3825
ebaff4af
KH
3826 * fns.c (Fset_char_table_range): Fix previous change.
3827
fc1d15f6
KH
3828 * buffer.c (Fset_buffer_multibyte): Fix docstring.
3829
9676f5ad
JD
38302004-02-04 Luc Teirlinck <teirllm@auburn.edu>
3831
3832 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
3833
da75761f
SM
38342004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
3835
3836 * keymap.c (Vmouse_events): Rename from Vmenu_events.
3837 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
3838
13c5d120
KH
38392004-02-04 Kenichi Handa <handa@m17n.org>
3840
3841 * fns.c (Fset_char_table_range): Handle charsets ascii,
3842 eight-bit-control, and eight-bit-graphic correctly.
3843
2883d842
JR
38442004-02-03 Jason Rumney <jasonr@gnu.org>
3845
3846 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
3847
3848 * w32fns.c (x_to_w32_font): Likewise.
3849
69eff41f
JD
38502004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3851
3852 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
3853 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
3854
3855 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
3856 ClientMessages.
3857
3858 * xselect.c: Include termhooks.h and X11/Xproto.h
3859 (x_check_property_data, x_fill_property_data)
3860 (x_property_data_to_lisp, mouse_position_for_drop)
3861 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
da75761f 3862 (Fx_send_client_event): Move here from xfns.c.
69eff41f
JD
3863 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
3864
da75761f 3865 * xfns.c (x-send-client-message): Move to xselect.c
69eff41f
JD
3866 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
3867 OUTER_P.
3868 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
3869 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
3870 if vector_ret_p is true.
3871 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
69eff41f 3872
a6eeaa81 38732004-02-02 Eli Zaretskii <eliz@gnu.org>
dcdbbb5d
EZ
3874
3875 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
3876 basename of FILE relative to it, not FILE itself.
3877
09721b31
KH
38782004-02-02 Kenichi Handa <handa@m17n.org>
3879
3880 * coding.c (coding_restore_composition): Check invalid
3881 composition data more rigidly.
3882
eb996101
LT
38832004-01-30 Luc Teirlinck <teirllm@auburn.edu>
3884
3885 * fileio.c (Fread_file_name_internal): Correctly handle the case
3886 where insert-default-directory is nil.
3887 (Fread_file_name): Always return an empty string if the user exits
3888 with an empty minibuffer. Adapt the docstring accordingly.
3889 (syms_of_fileio): Adapt the docstring of insert-default-directory
3890 to the change in Fread_file_name.
3891
a6eeaa81 38922004-01-29 Eli Zaretskii <eliz@gnu.org>
a0367d42
EZ
3893
3894 * alloca.c [!alloca]: Fix the prototype for xfree.
3895
13f52ed8
KH
38962004-01-29 Kenichi Handa <handa@m17n.org>
3897
3898 * fns.c (string_char_to_byte): Optimize for ASCII only string.
3899 (string_byte_to_char): Likewise.
3900
d57625a0
JR
39012004-01-28 Peter Runestig <peter@runestig.com>
3902
3903 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
3904
a64387ee 39052004-01-27 Steven Tamm <steventamm@mac.com>
911c78b4
ST
3906
3907 * unexmacosx.c (unexec_copy): Do not copy more than was
3908 requested to prevent overwriting during unexec.
3909
eb37b8fd
JD
39102004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3911
ce38070a
JD
3912 * process.c (sigchld_handler): Add comment about not calling malloc.
3913
eb37b8fd
JD
3914 * process.h: Add extern to synch_process_termsig.
3915
a64387ee 39162004-01-27 Steven Tamm <steventamm@mac.com>
21a3e657 3917
da75761f
SM
3918 * macterm.c (make_mac_frame, make_mac_terminal_frame):
3919 Move setting of scroll bars from make_mac_frame to
3920 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
21a3e657 3921
d62a265d
RS
39222004-01-26 Richard M. Stallman <rms@gnu.org>
3923
3924 * search.c (Freplace_match): Handle nonexistent
3925 back-references properly.
3926
39272004-01-03 Richard M. Stallman <rms@gnu.org>
3928
3929 * window.c (decode_any_window): New function.
3930 (Fwindow_height, Fwindow_width, Fwindow_edges)
3931 (Fwindow_pixel_edges, Fwindow_inside_edges)
3932 (Fwindow_inside_pixel_edges): Use decode_any_window.
3933
ff236419
JD
39342004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3935
3936 * process.h: synch_process_termsig new variable.
3937
3938 * callproc.c: Define synch_process_termsig.
3939 (Fcall_process): Initiate synch_process_termsig to zero and
3940 check if non-zero and get signal name after subprocess has ended.
3941
3942 * process.c (sigchld_handler): Set synch_process_termsig
3943 if terminated by a signal. synch_process_death setting removed.
3944
3945 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
3946
41b867ea
AS
39472004-01-26 Andreas Schwab <schwab@suse.de>
3948
3949 * print.c (print_preprocess): Declare size as EMACS_INT to not
3950 lose bits.
3951 (print_object): Likewise.
3952 * alloc.c (Fpurecopy): Likewise.
3953
a08084ff
LT
39542004-01-25 Luc Teirlinck <teirllm@auburn.edu>
3955
3956 * window.c (Fwindow_minibuffer_p): Doc fix.
3957
b19ac475
JY
39582004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
3959
3960 * editfns.c (Fformat): Make both passes accept the same set of flags.
3961
fe905025
KH
39622004-01-23 Kenichi Handa <handa@m17n.org>
3963
3964 * fns.c (Fmd5): If OBJECT is a buffer different from the current
3965 one, set buffer to OBJECT temporarily.
3966
438fc6c0
SM
39672004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
3968
455316e2
SM
3969 * keyboard.c (kbd_buffer_gcpro): Remove.
3970 (kbd_buffer_store_event, clear_event, Fdiscard_input)
3971 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
3972 Don't initialize and/or maintain the variable any more. It was made
3973 redundant by my commit of 2003-06-15.
3974
438fc6c0
SM
3975 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
3976
5335a4ee
JD
39772004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3978
3979 * lisp.h: Add undef DECL_ALIGN.
3980
dcdaeebc
SM
39812004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
3982
3983 * process.c (wait_reading_process_input) [SYNC_INPUT]:
3984 Check interrupt_input_pending explicitly.
3985
3986 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
3987
3988 * keyboard.c (handle_async_input): New fun,
3989 extracted from input_available_signal.
3990 (input_available_signal, reinvoke_input_signal): Use it.
3991
9076a823
SM
39922004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
3993
d7107586
SM
3994 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
3995
3996 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
3997 manipulation macros for when tags are in the lower bits.
3998 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
3999 (DECL_ALIGN): New macro.
4000 (DEFUN): Use it.
4001
4002 * lisp.h [ENABLE_CHECKING]: Don't force union type.
4003
4004 * s/darwin.h (__attribute__): Remove outdated workaround.
4005
4006 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
4007
4008 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
4009 Don't check range of malloc address.
4010 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
4011
9076a823
SM
4012 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
4013
4014 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
4015
ba029065
KH
40162004-01-19 Kenichi Handa <handa@m17n.org>
4017
4018 * fontset.c (fontset_font_pattern): Fix previous change.
4019
7af0e8d7
MB
40202004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
4021
4022 * xdisp.c (Voverflow_newline_into_fringe)
4023 (move_it_in_display_line_to, redisplay_internal)
4024 (update_window_fringes, redisplay_window, display_line, window):
4025 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
4026 that it compiles without a window-system.
4027 * dispnew.c (direct_output_for_insert, update_window): Likewise.
4028
77a9cf69
KS
40292004-01-16 Kim F. Storm <storm@cua.dk>
4030
4031 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
4032
a64387ee 4033 * buffer.c (init_buffer_once): Set buffer_defaults and
77a9cf69
KS
4034 buffer_local_flags for indicate_buffer_boundaries.
4035 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
4036 default- variable for it.
4037
4038 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
4039 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
d7107586 4040 New members exact_window_width_line_p and cursor_in_fringe_p for
77a9cf69
KS
4041 overflowing newlines into right fringe.
4042 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
4043 and indicate_bottom_line_p for buffer boundaries and scrolling.
4044 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
4045 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
4046 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
4047 and HOLLOW_SQUARE_BITMAP.
4048 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
4049 Add prototypes.
4050
4051 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
4052 instead of related indicator fields.
4053 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
4054 (direct_output_for_insert): Handle exact width lines like
4055 contined lines. Call update_window_fringes.
4056 (update_window): Call update_window_fringes.
4057 (scrolling_window): Don't skip desired rows with changed bitmaps.
4058 Check if fringe bitmaps changes when assigning scrolled rows.
4059
4060 * xdisp.c (Voverflow_newline_into_fringe): New variable.
4061 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
4062 (move_it_in_display_line_to): Overflow newline into fringe for
4063 rows that are exactly as wide as the window.
4064 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
4065 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
4066 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
4067 (fringe_bitmaps): Add new bitmaps.
4068 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
4069 Select proper bitmap for cursor in fringe when appropriate.
4070 Handle alignment of bitmap to top or bottom of row.
4071 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
4072 done by update_window_fringes.
4073 (update_window_fringes, draw_window_fringes): New functions.
4074 (redisplay_internal): Call update_window_fringes in case only
4075 cursor row is updated.
4076 (redisplay_window): Call update_window_fringes.
4077 Explicitly call draw_window_fringes if redisplay was done using
4078 the current matrix or the overlay arrow is in the window.
4079 (try_window_reusing_current_matrix): Mark scrolled rows for
4080 fringe update (to update buffer-boundaries / scrolling icons).
4081 (find_last_unchanged_at_beg_row): Handle exact width lines line
4082 continued lines.
4083 (display_line): Overflow newline into fringe for rows that are
4084 exactly as wide as the window. Don't append space for newline
d7107586 4085 in this case.
77a9cf69
KS
4086 (notice_overwritten_cursor): Explicitly clear cursor bitmap
4087 in fringe as if it had been overwritten.
4088 (erase_phys_cursor): Erase cursor bitmap in fringe.
d7107586 4089 (syms_of_xdisp): Mark show-trailing-whitespace and
77a9cf69
KS
4090 void-text-area-pointer as user options.
4091 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
d7107586 4092
77a9cf69
KS
4093 * xterm.c (x_update_window_end): Call draw_window_fringes.
4094 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
4095 in row instead of actually drawing fringe bitmaps.
4096 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
4097 (x_draw_window_cursor): Draw cursor in fringe.
4098
4099 * w32term.c (x_update_window_end): Call draw_window_fringes.
4100 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
4101 in row instead of actually drawing fringe bitmaps.
4102 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
4103 (w32_draw_window_cursor): Draw cursor in fringe.
4104
4105 * macterm.c (x_update_window_end): Call draw_window_fringes.
4106 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
4107 in row instead of actually drawing fringe bitmaps.
4108 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
4109 (mac_draw_window_cursor): Draw cursor in fringe.
4110
a633a954
JD
41112004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4112
4113 * xterm.c (handle_one_xevent): Don't handle characters that are part
4114 of an old style (XLookupString) compose sequence.
4115
80460525
KH
41162004-01-15 Kenichi Handa <handa@m17n.org>
4117
4118 * search.c (Freplace_match): Use make_multibyte_string or
4119 make_unibyte_string according to the buffer multibyteness.
4120
7fc34f85
SM
41212004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
4122
4123 * alloc.c (struct interval_block, struct string_block)
4124 (struct symbol_block, struct marker_block, live_string_p)
4125 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
4126 Better preserve alignment for objects in blocks.
4127 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
4128
4129 * lread.c (defvar_per_buffer): Remove dead declaration.
4130
4131 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
4132 space size.
4133
66070bd1
JD
41342004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4135
4136 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
4137 if a key press should pop down. Only pop down if a key is pressed
4138 outside the menu/dialog.
4139 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
4140 popup_get_selection.
4141 (create_and_show_dialog): Pass 1 for down_on_keypress to
4142 popup_get_selection.
4143
de7515d6
JD
41442004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4145
4146 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
4147 BLOCK/UNBLOCK_INPUT.
4148
160b1b50
JD
41492004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4150
4151 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
4152 specified.
4153
3a9f36e6
KH
41542004-01-08 Kenichi Handa <handa@m17n.org>
4155
4156 * editfns.c (Fformat): Fix '&' to '&&'.
4157
3803eb32
AS
41582004-01-08 Andreas Schwab <schwab@suse.de>
4159
4160 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
4161 size if PSEUDOVECTOR_FLAG is set.
4162
9da88f37
KH
41632004-01-07 Kenichi Handa <handa@m17n.org>
4164
74ac5074
KH
4165 * charset.c (Fdeclare_equiv_charset): Fix docstring.
4166
9da88f37
KH
4167 * fontset.c (fontset_ref_via_base): Fix previous change.
4168
05faee07
KS
41692004-01-07 Kim F. Storm <storm@cua.dk>
4170
4171 * process.c (read_process_output): Only activate adaptive
4172 buffering if we read less than 256 bytes at a time.
4173
634910c8
KS
41742004-01-06 Kim F. Storm <storm@cua.dk>
4175
4176 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
4177 object and image object. Return glyph width and height.
4178 (mode_line_string, marginal_area_string): Ditto.
4179
4180 * dispextern.h (buffer_posn_from_coords, mode_line_string)
4181 (marginal_area_string): Fix prototypes.
4182
4183 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
f63fd14e 4184 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
634910c8
KS
4185 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
4186
4187 * keyboard.c (make_lispy_position): Use modified mode_line_string,
4188 buffer_posn_from_coords, and marginal_area_string functions to
4189 include both string object and image object in the lispy position.
4190 Also add actual glyph width and height to position.
4191 (read_key_sequence): Use real buffer position from mouse
4192 event to find keymap property even when click is in marginal area.
4193
4194 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
4195 mode_line_string and marginal_area_string functions to handle
4196 both string object and image object properties.
d7107586 4197
57951c2e
AS
41982004-01-06 Andreas Schwab <schwab@suse.de>
4199
4200 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
4201 character.
4202
181e6a61
AS
42032004-01-02 Andreas Schwab <schwab@suse.de>
4204
d7107586
SM
4205 * macterm.c (emacs_options, x_initialized, same_x_server):
4206 Remove unused (and duplicated) definitions.
181e6a61 4207
31e0fbdd
KS
42082004-01-02 Kim F. Storm <storm@cua.dk>
4209
4210 * process.h (struct Lisp_Process): New members for adaptive read
4211 buffering: adaptive_read_buffering, read_output_delay, and
4212 read_output_skip.
4213
4214 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
4215 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
4216 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
4217 (process_output_delay_count, process_output_skip): New vars.
4218 (Vprocess_adaptive_read_buffering): New variable.
4219 (make_process): Initialize adaptive read buffering members.
4220 (Fstart_process): Set adaptive_read_buffering member.
4221 (deactivate_process): Cleanup adaptive read buffering.
4222 (wait_reading_process_input): Temporarily omit delayed
4223 subprocesses from the set of file descriptors to read from;
4224 adjust the select timeout if we skipped any subprocesses.
4225 (read_process_output): Increase adaptive read buffering delay if
4226 we read less than a full buffer; reduce delay when we read a
4227 full buffer.
4228 (send_process): Simplify using local Lisp_Process var.
4229 Reset adaptive read buffering delay after write.
4230 (init_process): Initialize process_output_delay_count and
4231 process_output_skip.
4232 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
4233
68c6a789
JR
42342004-01-01 Jason Rumney <jasonr@gnu.org>
4235
d7107586 4236 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
68c6a789 4237
3f70fe82
LT
42382003-12-30 Luc Teirlinck <teirllm@auburn.edu>
4239
4240 * print.c (Ferror_message_string): Add hyperlink in the docstring
4241 to the definition of `signal' in the Elisp manual.
4242 * eval.c (Fsignal): Ditto.
4243
b6189c3b 42442003-12-29 James Clark <jjc@jclark.com>
c2be49ed
EZ
4245
4246 * fns.c (internal_equal): Return t for two NaN arguments.
4247
7abd90ea
RS
42482003-12-29 Richard M. Stallman <rms@gnu.org>
4249
4250 * data.c (store_symval_forwarding): Handle setting
4251 default-fill-column, etc., by changing the value in
4252 buffers that use the default.
4253
4254 * minibuf.c (Fset_minibuffer_window): Doc fix.
4255
4256 * fileio.c (choose_write_coding_system): Ignore auto_saving
4257 if using the visited file for auto saves.
4258 (Fwrite_region): Don't update SAVE_MODIFF
4259 if auto-saving in visited file.
4260
3e7cfcdc
KH
42612003-12-29 Kenichi Handa <handa@m17n.org>
4262
4263 * dispextern.h (face_font_available_p): Extern it.
4264
4265 * fontset.c (Voverriding_fontspec_alist): New variable.
4266 (lookup_overriding_fontspec): New function.
d7107586 4267 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
3e7cfcdc
KH
4268 (fontset_font_pattern): Likewise.
4269 (regulalize_fontname): New function.
4270 (Fset_fontset_font): Call regulalize_fontname.
4271 (Fset_overriding_fontspec_internal): New function.
d7107586
SM
4272 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
4273 Defsubr Sset_overriding_fontspec_internal.
3e7cfcdc
KH
4274
4275 * xfaces.c (face_font_available_p): New function.
4276
7abd90ea
RS
42772003-12-28 Richard M. Stallman <rms@gnu.org>
4278
4279 * buffer.c (Fother_buffer): Don't crash if BUF is nil
4280 or if its name is nil.
4281
4282 * buffer.c (Fkill_buffer): Don't delete auto-save file
4283 if it's the same as the visited file.
4284
de1d1a40
LT
42852003-12-28 Luc Teirlinck <teirllm@auburn.edu>
4286
4287 * coding.c (Fcheck_coding_system): Doc fix.
4288
204fb75e
KS
42892003-12-28 Kim F. Storm <storm@cua.dk>
4290
4291 * Makefile.in (eval.o): Depend on dispextern.h.
4292
4293 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
4294 image glyph using image's ascent.
4295 (mode_line_string): Return image glyph as object clicked on.
4296 Adjust y0 for image glyph using image's ascent.
4297
4298 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
4299 (struct glyph): New members, ascent and descent. Used to save
4300 this glyph's ascent and descent, instead of having.
4301 (struct glyph): Declare member face_id using FACE_ID_BITS.
4302 (find_hot_spot): Add prototype.
4303
4304 * keyboard.c (Qimage): Remove extern (now in lisp.h).
4305 (QCmap): Declare extern.
4306 (make_lispy_position): When position is inside image hot-spot,
4307 use hot-spot element's id as posn element.
4308
4309 * lisp.h (IMAGEP): New macro to test for image object type.
4310 (Qimage): Declare extern.
4311
4312 * macfns.c (Qimage): Remove extern (now in lisp.h).
4313 (valid_image_p, parse_image_spec): Use IMAGEP macro.
4314
4315 * macterm.c (Qface, Qmouse_face): Remove unused externs.
4316
4317 * w32fns.c (Qimage): Remove extern (now in lisp.h).
4318 (valid_image_p, parse_image_spec): Use IMAGEP macro.
4319
4320 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
4321
4322 * w32term.c (Qface, Qmouse_face): Remove unused externs.
4323
4324 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
4325 pointer types.
4326 (Qrelative_width, Qalign_to): Remove unused variables.
4327 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
4328 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
4329 image maps.
d7107586 4330 (x_y_to_hpos_vpos): Return glyph relative coordinates through
204fb75e
KS
4331 new dx and dy args.
4332 Remove buffer_only_p arg (always 0). Simplify code accordingly.
4333 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
4334 than row's ascent and height, to get sensible height on tall rows.
4335 (build_desired_tool_bar_string): Remove Qimage extern.
4336 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
4337 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
4338 image glyph is alone on the last line.
4339 (append_glyph, append_composite_glyph, produce_image_glyph)
d7107586 4340 (append_stretch_glyph): Set glyph's ascent and descent.
204fb75e 4341 (on_hot_spot_p): New function to check if position is inside an
d7107586 4342 rectangular, circular, or polygon-shaped image hot-spot,
204fb75e
KS
4343 (find_hot_spot): New function to search for image hot-spot.
4344 (Flookup_image_map): New defun to search for image hot-spot.
4345 (define_frame_cursor1): New aux function to determine frame pointer.
4346 (note_mode_line_or_margin_highlight, note_mouse_highlight):
4347 Handle `pointer' text property and :pointer image property to
4348 control frame pointer shape. Detect image hot-spots for pointer
4349 and help_echo properties. Use define_frame_cursor1.
4350 (note_mouse_highlight): Use Vvoid_text_area_pointer.
f63fd14e 4351 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
204fb75e
KS
4352 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
4353
4354 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
4355
4356 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
4357 (Qimage): Remove extern (now in lisp.h).
4358 (valid_image_p, parse_image_spec): Use IMAGEP macro.
4359
4360 * xmenu.c (show_help_event): Remove unused code.
4361
4362 * xterm.c (Qface, Qmouse_face): Remove unused externs.
4363 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
4364 row's ascent and descent, to get a sensible height on tall rows.
4365
fc052137
LT
43662003-12-25 Luc Teirlinck <teirllm@auburn.edu>
4367
4368 * minibuf.c (Fcompleting_read): Undo previous change.
4369
a64387ee 43702003-12-25 Lars Hansen <larsh@math.ku.dk>
b9148500
LH
4371
4372 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
4373 Arguments GCPRO'ed in call to file name handler.
4374
56ffd194
TTN
43752003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
4376
4377 * termcap.c (tgetst1): Scan for "%pN"; if all
4378 N are continuous in [1,9], remove all "%pN".
4379
5202d23d
JD
43802003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4381
f26fab36
JD
4382 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
4383
5202d23d
JD
4384 * xfaces.c (lface_fully_specified_p): Take into account that
4385 MAC OS always have unspecified stipple.
4386
8babaa59
TTN
43872003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
4388
4389 * tparam.c (tparam1): Add handling for `%pN', which
4390 means use param N for the next substitution.
4391
2d176448
TTN
43922003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
4393
4394 * xfaces.c (Fcolor_gray_p): Fix omission bug:
4395 In case `frame' is nil, consult the selected frame.
4396 (Fcolor_supported_p): Likewise.
4397
adb0708c
LT
43982003-12-23 Luc Teirlinck <teirllm@auburn.edu>
4399
000eeb15
LT
4400 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
4401 Doc fixes.
0dc72b11
LT
4402
4403 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
4404 and an integer. Adapt the introductory comment accordingly.
adb0708c
LT
4405 (Fread_from_minibuffer): Delete code moved into read_minibuf.
4406 Doc fix.
4407 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
4408 read_minibuf.
4409 (Fcompleting_read): Delete code moved into read_minibuf.
d7107586 4410 (Ftest_completion): Make it handle obarrays and hash tables correctly.
adb0708c 4411
2e4d132b
KH
44122003-12-03 Kenichi Handa <handa@m17n.org>
4413
4414 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
4415 encoding sequence.
4416
3999c705
KH
44172003-12-01 Kenichi Handa <handa@m17n.org>
4418
4419 * composite.c (syms_of_composite): Don't make the compostion hash
4420 table week.
4421
d344ecbb
LT
44222003-11-30 Luc Teirlinck <teirllm@auburn.edu>
4423
4424 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
4425 * textprop.c (Fget_char_property_and_overlay): New function.
4426 (syms_of_textprop): Defsubr it.
4427
03d6484e
JD
44282003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4429
019b1f0e
JD
4430 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
4431 to compile on terminal configuration.
4432
03d6484e
JD
4433 * fileio.c (Fread_file_name): Check use_file_dialog also before
4434 calling Fx_file_dialog.
4435
4436 * fns.c: use_file_dialog: New variable.
4437 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
4438
442d3fd0
KS
44392003-11-29 Kim F. Storm <storm@cua.dk>
4440
4441 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
4442 (syms_of_msdos): Don't intern and staticpro them.
4443
0f6a07a8
KS
44442003-11-27 Kim F. Storm <storm@cua.dk>
4445
4446 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
4447 coordinates relative to glyph at posn. If glyph is an image,
4448 return that as object at posn. Callers changed.
4449 (mode_line_string, marginal_area_string): Calculate and return
4450 pixel coordinates relative to glyph. Callers changed.
4451
4452 * dispextern.h (buffer_posn_from_coords, mode_line_string)
4453 (marginal_area_string): Fix prototypes.
4454 (window_box_left_offset, window_box_right_offset): Add prototypes.
4455
4456 * frame.h (get_specified_cursor_type, get_window_cursor_type):
4457 Remove prototypes.
4458
4459 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
4460
4461 * keyboard.c (make_lispy_position): Add x and y coordinates
4462 relative to the current glyph as 7th element of position.
4463 If glyph is an image, return it in the object element.
4464 (read_key_sequence): Skip checks for keymap property in cases
4465 where POSN_STRING is not a string (e.g. an image).
4466
4467 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
4468 (Vshow_text_cursor_in_void): New variable.
4469 (glyph_to_pixel_coords): Don't use negative hpos.
4470 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
4471 (append_stretch_glyph): Change ascent arg to be actual value
f63fd14e 4472 in pixels rather than ratio to height. Callers changed.
0f6a07a8
KS
4473 (calc_pixel_width_or_height): New aux function, implementing
4474 pixel based artihmetic for glyph widths and heights.
4475 (produce_stretch_glyph): Use calc_pixel_width_or_height for
4476 :width, :height, :align-to, and :ascent, thus allowing these to
4477 be specified in pixels as well as multiples of characters.
4478 Don't produce stretch glyphs with zero width or height.
4479 (get_specified_cursor_type): Declare static.
4480 (get_window_cursor_type): Declare static. Add glyph arg to be
4481 able to know when cursor is on an image; always substitute
4482 hollow-box cursor for filled-box cursor on images, to avoid
4483 negative images and flicker when blinking the cursor.
4484 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
4485 (note_mode_line_or_margin_highlight): Use non-text cursor rather
4486 than vertical scroll-bar cursor in display margins.
4487 (note_mouse_highlight): Use non-text cursor rather than text
4488 cursor in fringes and over images in the text area.
4489 Use non-text cursor when mouse pointer is outside editable text,
4490 i.e. in the void after end-of-line or end-of-buffer; this was
4491 already done for W32, but is now standard for all systems --
4492 user can toggle show-text-cursor-in-void to get old behaviour.
4493 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
4494 Vdisplay_pixels_per_inch.
4495
00498bfc
AS
44962003-11-25 Andreas Schwab <schwab@suse.de>
4497
4498 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
4499 EMACS_INT to not lose bits.
4500 (Ffillarray): Don't set bits beyond the size of a bool vector.
4501
edaa824d
KS
45022003-11-25 Kim F. Storm <storm@cua.dk>
4503
4504 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
4505 define this defun on systems that cannot use stderr as lvalue.
4506
74d6f539
GM
45072003-11-24 Gerd Moellmann <gerd@gnu.org>
4508
4509 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
4510 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
4511 ld's default is incompatible with unexec.
4512
6a1ff3ba
KS
45132003-11-23 Kim F. Storm <storm@cua.dk>
4514
63dc7c6b
KS
4515 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
4516 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
4517 (Fforce_window_update): New defun.
4518 (syms_of_window): Defsubr it.
4519 (Fset_window_margins, Fset_window_fringes): Doc fix.
4520
6a1ff3ba
KS
4521 * print.c (Fredirect_debugging_output): New defun.
4522 (syms_of_print): Defsubr it.
4523
aef109b7
LT
45242003-11-22 Luc Teirlinck <teirllm@auburn.edu>
4525
4526 * fns.c (Fset_char_table_parent): Doc fix.
4527
6a1ff3ba 45282003-11-22 Kim F. Storm <storm@cua.dk>
63ccbe21
KS
4529
4530 * dispnew.c (buffer_posn_from_coords): Return actual row/column
4531 for glyph clicked on, rather than (unused) pixel positions.
4532 (mode_line_string, marginal_area_string): Change X and Y args to
4533 pointers for returning actual row/column for glyph clicked on.
4534 Simplify and optimize loops.
4535
aef109b7
LT
4536 * dispextern.h (mode_line_string, marginal_area_string):
4537 Update prototypes.
63ccbe21
KS
4538
4539 * keyboard.c (make_lispy_position): New function for generating
4540 mouse click positions from frame and pixel coordinates.
4541 Enhanced to return buffer position and actual row/column for
4542 events outside the text area using updated mode_line_string and
4543 marginal_area_string functions.
4544 Return left-fringe and right-fringe clicks as such, rather than
4545 clicks in text area.
4546 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
4547 pixel_to_glyph_coords, as we never use the results.
4548 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
4549 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
4550 Eliminate unused code in WHEEL_EVENT handling.
4551 (make_lispy_movement): Use make_lispy_position.
4552
4553 * window.c (coordinates_in_window): Remove redundant tests.
4554 Fix returned X pixel value for left-margin.
4555
4556 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
4557 mode_line_string and marginal_area_string parameters.
4558
a64387ee 45592003-11-22 Lars Hansen <larsh@math.ku.dk>
930a9995 4560
d7107586
SM
4561 * w32.c (struct the_group, getgrgid): Add.
4562 * mac.c (struct my_group, getgrgid): Add.
aef109b7 4563
3dbf3426
LT
45642003-11-21 Luc Teirlinck <teirllm@auburn.edu>
4565
4566 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
4567
cae8ddbb 45682003-11-21 Lars Hansen <larsh@math.ku.dk>
ded4064f 4569
d7107586
SM
4570 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
4571 include in call to file name handler. Optionally translate numeric
4572 UID and GID to strings. Update docstring.
4573 (directory_files_internal): Add parameter ID-FORMAT.
4574 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
4575 include in call to file name handler and call to
4576 directory_files_internal. Update Docstring.
4577 (Fdirectory_files): Add dummy parameter in call to
4578 directory_files_internal.
4579 * lisp.h (Qinteger): Add.
4580 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
4581 (Ffile_attributes): Add parameter.
4582 * data.c (Qinteger): Export.
cae8ddbb 4583
2550b848
LT
45842003-11-21 Luc Teirlinck <teirllm@auburn.edu>
4585
3dbf3426 4586 * fns.c (Freverse, Fnreverse): Doc fixes.
2550b848 4587
88380018
KS
45882003-11-19 Kim F. Storm <storm@cua.dk>
4589
4590 * xdisp.c (init_iterator): Initialize it->start to position
4591 before reseating (in case start position is invisible).
4592 (init_to_row_start): Set it->start to row-start.
4593 (redisplay_window): Accept optional_new_start if start position
4594 is invisible (in which case IT_CHARPOS overshoots PT).
4595 (display_line): Setup row->start from it->start (rather than
4596 it->current which is wrong if first char on line is invisible).
4597 When done, reseat it->start to it->current (= start of next row).
4598 (expose_area): Fix exposure of text area when first char (e.g. TAB)
4599 is only partially visible.
4600
4601 * dispextern.h (struct it): New member start.
4602
854c1a59
SM
46032003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
4604
455316e2
SM
4605 * alloc.c (make_float, Fcons): Clear the markbit at init time.
4606 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
4607 of block_index outside of the macro call.
4608 (Fgarbage_collect): Remove null code.
4609
4610 * m/amdx86-64.h: Don't redefine XPNTR.
4611
854c1a59
SM
4612 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
4613 of VALMASK.
4614
4615 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
4616 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
4617 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
4618
4619 * lisp.h (VALMASK): Only define for non-union type.
4620 (MARKBIT): Remove.
4621 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
4622 (XTYPE): Define unconditionally.
4623 (XSETTYPE): Remove one more remnant.
4624 (EQ): Define differently for the union and non-union cases.
4625 (INTMASK): New bit mask.
4626 (struct Lisp_Marker): Move down to prepare for upcoming patch.
4627 (GC_EQ): Delegate to EQ.
4628
4629 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
4630
a0c6ef2d
JD
46312003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4632
4633 * xterm.c (x_window_to_scroll_bar): Move check of display to
4634 where window_id is compared.
4635
859492c4
KS
46362003-11-17 Kim F. Storm <storm@cua.dk>
4637
4638 * dispextern.h (struct it): New member first_vpos.
4639
4640 * xdisp.c (start_display): Set it->first_vpos.
4641 (try_window_id): Use first_vpos to start display in first _text_
4642 line if no reusable lines at start of window with header line.
4643
810f2256
JD
46442003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4645
7c402969 4646 * w32fns.c (XPutPixel):
854c1a59
SM
4647 * w32bdf.c (w32_init_bdf_font):
4648 * sunfns.c (sel_read):
4649 * process.c (Fmake_network_process):
4650 * frame.c (store_frame_param):
4651 * fontset.c (Fset_fontset_font):
4652 * emacs.c (shut_down_emacs):
a64387ee 4653 * ccl.c (ccl_driver): Remove period at end of error message.
7c402969 4654
a32e9bfd
JD
4655 * config.in: Regenerate.
4656
810f2256
JD
4657 * xfns.c (x_window_to_frame, x_any_window_to_frame)
4658 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
4659 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
4660 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
4661 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
4662
4663 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
4664
4665 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
4666 (XTmouse_position, handle_one_xevent): Pass Display* to
4667 x_window_to_scroll_bar.
4668 (x_window_to_scroll_bar): Take a Display* argument.
4669 Check that display for frame is equal to Display* argument.
854c1a59 4670 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
810f2256
JD
4671 x_display_info_for_display instead. Use Display in xev instead
4672 of GDK_DISPLAY.
4673 (x_dispatch_event): Call x_display_info_for_display.
f63fd14e 4674 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
810f2256
JD
4675 (x_connection_closed): Call xg_display_close for GTK.
4676 (x_term_init): Call xg_display_open for additional displays.
4677 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
4678 for GTK.
4679
4680 * xmenu.c (single_menu_item, mouse_position_for_popup)
4681 (x_activate_menubar): Formatting adjustments.
4682
4683 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
4684 adjustments.
4685
4686 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
4687 (xg_display_close, xg_create_default_cursor)
4688 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
4689 handling.
854c1a59
SM
4690 (xg_left_ptr_cursor): Remove.
4691 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
810f2256
JD
4692 cursor here.
4693 (xg_win_to_widget): Take Display* argument, call
4694 gdk_xid_table_lookup_for_display.
4695 (xg_create_frame_widgets, xg_get_file_name, create_menus)
4696 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
4697 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
4698 in FRAME_X_DISPLAY_INFO.
4699 (xg_get_scroll_id_for_window): Take Display* argument.
4700 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
854c1a59 4701 (xg_initialize): Remove xg_left_ptr_cursor.
810f2256
JD
4702
4703 * gtkutil.h: xg_get_scroll_id_for_window, xg_win_to_widget takes
4704 Display* argument also. Declare xg_display_open,
4705 xg_display_close, xg_create_default_cursor.
4706
0b03cc78
JD
47072003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4708
4709 * xterm.c (x_detect_focus_change): Do not change focus frame for
4710 Enter/LeaveNotify if the current focus frame has explicit focus.
4711
77e688fa
KS
47122003-11-14 Kim F. Storm <storm@cua.dk>
4713
4714 * dispnew.c (update_text_area): Fix redisplay error when hscroll
4715 is active and first glyph is only partially visible.
854c1a59 4716
dd429b03
KH
47172003-11-13 Kenichi Handa <handa@m17n.org>
4718
4719 * xdisp.c (select_frame_for_redisplay): New function.
4720 (redisplay_internal): Record also selected_frame for
4721 unwind_redisplay. Call select_frame_for_redisplay before
4722 redrawing each frame.
4723 (unwind_redisplay): Argument changed to a cons.
4724
6d9266f4
LT
47252003-11-12 Luc Teirlinck <teirllm@auburn.edu>
4726
4727 * fns.c (Fstring_to_multibyte): Doc fix.
4728
80060eb3
KH
47292003-11-11 Kenichi Handa <handa@m17n.org>
4730
4731 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
4732
74305183
JD
47332003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4734
4735 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
4736 program specified positions.
4737
cfda993e
JD
47382003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4739
4740 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
4741
df211069
KH
47422003-11-08 Kenichi Handa <handa@m17n.org>
4743
4744 * Makefile.in (lisp): Add kannada.el.
4745 (shortlisp): Likewise.
4746
4307d534
KH
47472003-11-07 Kenichi Handa <handa@m17n.org>
4748
854c1a59
SM
4749 * coding.c (coding_allocate_composition_data):
4750 Reset coding->composing to COMPOSITION_NO.
4307d534
KH
4751 (coding_restore_composition): Detect invalid composition data.
4752 Give Fstring and Fvector a Lispy integer, not C int.
4753
854c1a59
SM
47542003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
4755
4756 * floatfns.c (Flogb): Don't use VALMASK.
4757
4758 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
4759 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
4760
4761 * lisp.h (XINT): Move the cast to clarify what is going on.
4762 (GCTYPEMASK, XSETTYPE): Remove.
4763 (XGCTYPE): Make it an alias of XTYPE.
4764
d04103a1
JD
47652003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4766
4767 * xterm.c (x_term_init): Fix formatting.
4768
da18b5ac
JD
47692003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4770
4771 * gtkutil.h: Declare xg_have_tear_offs, remove xg_keep_popup
4772 and xg_did_tearoff.
4773
4774 * gtkutil.c: Remove variable xg_did_tearoff.
4775 (xg_have_tear_offs): New function.
4776 (tearoff_remove): Just decrease xg_detached_menus.
4777 (tearoff_activate): Increase xg_detached_menus and call
4778 tearoff_remove when tearoff is removed.
854c1a59 4779 (xg_keep_popup): Remove function.
da18b5ac
JD
4780 (create_menus): Give add_tearoff_p as argument to recursive
4781 call to create_menus.
4782 (xg_create_widget): Use variables instead of multiple
4783 strcmp. Tell create_menus to create tear off only for
4784 menu bar menus.
4785 (xg_update_menubar): Change title for a detached menu also.
4786 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
4787 of deep_p.
4788 (xg_initialize): Initialize xg_detached_menus, remove
4789 initialization of xg_did_tearoff.
4790
4791 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
4792 xg_have_tear_offs returns non-zero.
4793 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
4794 call to xg_keep_popup.
4795
64d4923e
AC
47962003-11-01 Andrew Choi <akochoi@shaw.ca>
4797
4798 * macterm.c (XTread_socket): Handle menubar selection and grow
4799 window only for mouseDown events.
854c1a59 4800
6cc8bc07
JD
48012003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4802
4803 * xterm.c (x_term_init): For GTK part, increase x_initialized
4804 to check for more than one display. Use error instead of return 0.
4805
043131c4
AC
48062003-10-31 Andrew Choi <akochoi@shaw.ca>
4807
854c1a59 4808 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
043131c4
AC
4809 (copy_dysymtab): Call it.
4810
bdda99a1
LT
48112003-10-31 Luc Teirlinck <teirllm@auburn.edu>
4812
4813 * eval.c (Fdefvaralias): Doc fix.
4814
800f42ff 48152003-10-26 Luc Teirlinck <teirllm@auburn.edu>
0d11571e
LT
4816
4817 * data.c (Fsetplist): Doc fix.
4818
ef35b389
LK
48192003-10-14 Lute Kamstra <lute@gnu.org>
4820
4821 * window.c (Fset_window_fringes): Clarify docstring.
07107abc 4822
ef35b389 48232003-10-14 Kim F. Storm <storm@cua.dk>
854c1a59 4824
07107abc
KS
4825 * window.c (Fset_window_margins): Simplify arg checking.
4826
f7005886
RS
48272003-10-13 Richard M. Stallman <rms@gnu.org>
4828
4829 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
4830 (print_partial_compiled_pattern): Replace assert with a printout.
4831 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
4832
4833 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
4834
4835 * window.c (Fset_window_margins): Allow only integers as args.
4836 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
4837 Doc fixes.
4838
9c0c2af5
LK
48392003-10-13 Lute Kamstra <lute@gnu.org>
4840
4841 * window.c (Fset_window_fringes): Elaborate docstring.
4842
3f080e4e
AC
48432003-10-12 Andrew Choi <akochoi@shaw.ca>
4844
854c1a59 4845 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
a4887377 4846
3f080e4e
AC
4847 * s/darwin.h (GC_MARK_STACK): Define.
4848
0aa513ed
JD
48492003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4850
4851 * window.c (shrink_windows): New function.
4852 (size_window): Call shrink_windows to calculate window sizes when
4853 shrinking frame with more than one window.
4854
6aa8858a
KS
48552003-10-12 Kim F. Storm <storm@cua.dk>
4856
4857 * xdisp.c (compute_fringe_widths): Doc fix.
4858
c2164d91
KH
48592003-10-08 Kenichi Handa <handa@m17n.org>
4860
854c1a59 4861 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
c2164d91 4862
f82ac129
KH
48632003-10-07 Kenichi Handa <handa@m17n.org>
4864
4865 * coding.c (Qcoding_system_define_form): New variable.
4866 (syms_of_coding): Intern and staticpro it.
4867 (Fcheck_coding_system): Try to autoload the definition of
4868 CODING-SYSTEM.
4869
9296c947
LT
48702003-10-05 Luc Teirlinck <teirllm@auburn.edu>
4871
4872 * fns.c (Frequire): Doc fix.
4873
c1f0671a
JD
48742003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4875
3d8c3826
JD
4876 * xfns.c (Fx_send_client_event): New function as a base for
4877 manipulating extended window manager hints.
6dc15d98 4878 (Fx_send_client_event): Remove unused variable s.
3d8c3826 4879
068ae0fd
JD
4880 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
4881 that function is removed.
4882
4883 * xterm.c (x_set_offset): Use move_offset_left/top instead of
4884 x/y_pixels_outer_diff.
4885 (x_check_expected_move): Calculate move_offset_left/top.
4886
4887 * xterm.h (struct x_output): New members: move_offset_top/left.
4888
854c1a59 4889 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
068ae0fd
JD
4890 call x_set_offset directly.
4891
4892 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
4893
96f09305
JD
4894 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
4895
4896 * xterm.c (x_delete_display): Free font names and font_encoder
4897 in dpyinfo->font_table.
4898
854c1a59
SM
4899 * xfns.c (Fx_close_connection): Only call XFreeFont here.
4900 Move xfree of font names to x_delete_display.
96f09305 4901
c1f0671a
JD
4902 * xterm.h (struct x_display_info): New member, wm_type.
4903 (struct x_output): New members, expected_top/left and
4904 check_expected_move.
4905
4906 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
4907 is received.
854c1a59
SM
4908 (handle_one_xevent): Rename x_check_expected_move from
4909 x_check_fullscreen_move.
c1f0671a
JD
4910 (x_set_offset): Only add WM decoration sizes to modified_top/left
4911 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
854c1a59 4912 (x_check_expected_move): Rename from x_check_fullscreen_move.
c1f0671a
JD
4913 Removed fullscreen specific code. Use check_expected_move,
4914 expected_left/top instead. Also, set wm_type.
4915 (x_term_init): Initialize wm_type to unknown.
4916
4917 * frame.c (x_fullscreen_move): Remove addition of WM decoration
4918 sizes to move_x/y.
4919
be2fdba9
KH
49202003-10-03 Kenichi Handa <handa@m17n.org>
4921
4922 * macterm.c (x_load_font): Clear all members of FONTP before start
4923 filling them.
4924
49252003-10-02 Kenichi Handa <handa@m17n.org>
4926
4927 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
4928 before calling find_ccl_program_func. Call find_ccl_program_func
4929 only when fontp->font_encoder is not NULL.
4930
4931 * xterm.c (x_load_font): Clear all members of FONTP before start
4932 filling them.
4933
26a6e439
JPW
49342003-10-03 John Paul Wallington <jpw@gnu.org>
4935
4936 * keymap.c (map_keymap): Don't abort when binding is a vector.
4937
0d4c2dc2
JR
49382003-10-02 Jason Rumney <jasonr@gnu.org>
4939
854c1a59
SM
4940 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
4941 Sync dependencies with Makefile.in.
a63cf46f
JR
4942 (alloca.o): Remove.
4943
0d4c2dc2
JR
4944 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
4945 filling them.
4946
4947 * w32bdf.c (w32_load_bdf_font): Likewise.
4948
ab8f7d5c
RS
49492003-09-30 Richard M. Stallman <rms@gnu.org>
4950
4951 * term.c (set_tty_color_mode): Calculate current_mode_spec
4952 regardless of value of VAL.
4953
854c1a59 4954 * intervals.c (graft_intervals_into_buffer):
ab8f7d5c
RS
4955 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
4956 Handle over_used when splitting UNDER.
4957
a64387ee 49582003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
ab8f7d5c
RS
4959
4960 * regex.c (regex_compile): Free the stack when returning from function.
4961
3413f972
KH
49622003-09-28 Kenichi Handa <handa@m17n.org>
4963
4964 * fontset.c (Finternal_char_font): Change return value to
4965 cons (FONT-NAME . GLYPH-CODE).
4966
a6eeaa81 49672003-09-28 Eli Zaretskii <eliz@gnu.org>
40409f05
EZ
4968
4969 * term.c (tty_setup_colors): Treat any negative argument as -1.
4970
f98ddc99
KH
49712003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
4972
4973 * process.c (send_process): Delete unused temp_buf.
4974
66c8f1a8
DL
49752003-09-26 Dave Love <fx@gnu.org>
4976
4977 * xterm.c (x_bitmap_mask): Declare.
4978
ca716c26
DL
49792003-09-25 Dave Love <fx@gnu.org>
4980
4981 * Makefile.in (fns.o): Depend on md5.h.
4982
fbe57420
KS
49832003-09-25 Kim F. Storm <storm@cua.dk>
4984
4985 * window.c (set_window_buffer): Fix redisplay problems when
4986 switching between buffers with different display margin widths.
4987
ef6ae4ff
KS
49882003-09-23 Kim F. Storm <storm@cua.dk>
4989
4990 * process.c (set_socket_option): Fix :bindtodevice option.
4991 (Fset_network_process_option): Update process contact list when
4992 setting option succeeds.
4993 (Fmake_network_process): Doc fix.
4994
68e03c1c
DL
49952003-09-23 Dave Love <fx@gnu.org>
4996
7146d1c1 4997 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
68e03c1c 4998
a6eeaa81 49992003-09-22 Eli Zaretskii <eliz@gnu.org>
2f809aae
EZ
5000
5001 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
5002 color mode is an integer number (it could be -1).
5003
8fe7d8c8
RS
50042003-09-22 Richard M. Stallman <rms@gnu.org>
5005
5006 * intervals.c (graft_intervals_into_buffer): Correct the main loop
5007 in the case where OVER is longer than UNDER.
5008
2f71b5ea
MY
50092003-09-22 Masatake YAMATO <jet@gyve.org>
5010
7146d1c1 5011 * window.c (Fset_window_scroll_bars): Validate the value of
2f71b5ea 5012 `vertical_type'.
7146d1c1 5013
0c4da023
KS
50142003-09-21 Kim F. Storm <storm@cua.dk>
5015
5016 * frame.c (Vdefault_frame_scroll_bars): New variable.
5017 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
5018 (syms_of_frame): DEFVAR_LISP it, and initialize according to
5019 window-system default scroll bar position.
5020
b648413b
KS
5021 * window.c (Fwindow_scroll_bars): Doc fix.
5022
8f5b9e34
JD
50232003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5024
854c1a59 5025 * xterm.c (x_set_offset): Take window manager decorations into account.
8f5b9e34 5026
b0f23edf
RS
50272003-09-19 Richard M. Stallman <rms@gnu.org>
5028
5029 * atimer.h: Don't include lisp.h.
5030 (P_): Define it here (as well as elsewhere).
5031
5032 * print.c (Fprin1_to_string): Move the PRINTPREPARE
5033 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
5034
5035 * data.c (Fvariable_binding_locus): New function.
5036 (syms_of_data): defsubr it.
5037 (Flocal_variable_p): Delete duplicate call to indirect_variable.
5038
e1283999
DL
50392003-09-18 Dave Love <fx@gnu.org>
5040
ad5f3636
DL
5041 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
5042
e1283999
DL
5043 * process.c (Fnetwork_interface_info): Fix type error.
5044 (Fnetwork_interface_list): Doc fix.
5045 (read_process_output, read_process_output): Delete unused var.
5046
b8c7fd71
KS
50472003-09-17 Kim F. Storm <storm@cua.dk>
5048
5049 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
5050 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
5051 (Fnetwork_interface_info): Check that ifreq struct has required
5052 fields before accessing them; this requires that those fields are
5053 defined as macros, which may be too restrictive on some platforms,
5054 but it is better than failing on other platforms.
5055 (syms_of_process): Only defsubr above fns when included.
5056
11e0a411
DL
50572003-09-17 Dave Love <fx@gnu.org>
5058
5059 * unexalpha.c: Don't include varargs.h.
5060
e9c50801
KS
50612003-09-17 Kim F. Storm <storm@cua.dk>
5062
5063 * process.c (Fset_process_sentinel): Add sentinel to childp plist
5064 for network process.
5065 (socket_options): Add `:' prefix to option names. Add optbit field.
5066 (set_socket_option): Remove no_error arg and special handling of s < 0.
5067 Return 1<<optbit for known option, 0 for unknown.
5068 Do not interpret 0 as false for boolean option (only nil).
5069 Pass failed option and value to report_file_error.
7146d1c1 5070 (Fset_network_process_options): Replace by Fset_network_process_option.
e9c50801
KS
5071 (Fset_network_process_option): New function to set just one option.
5072 (Fmake_network_process): Allow :coding arg to be a cons.
5073 Allow :server arg to be an integer specifying backlog size.
5074 Remove :options arg, and allow options to be specified directly
5075 as :KEY, VALUE pairs. Parse these options before binding socket.
5076 As before, :reuseaddr t is default for a server process, but this
5077 can now be disabled by specifying :reuseaddr nil.
5078 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
5079 (init_process): Availability of network options is now checked with
5080 simpler syntax (featurep 'make-network-process :OPTION); use loop to
5081 setup features.
5082 (syms_of_process): Fix defsubr's for the replaced functions.
5083
a0fc3644
DL
50842003-09-16 Dave Love <fx@gnu.org>
5085
5086 * Makefile.in: Depend on coding.h.
5087
6df2a645
KS
50882003-09-14 Kim F. Storm <storm@cua.dk>
5089
5090 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
5091 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
5092 (syms_of_process): Defsubr them.
5093
5094 * config.in: Regenerate.
7146d1c1
SM
5095
50962003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
5097
5098 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
5099 * m/news-r6.h (XUNMARK): Remove.
5100 * m/mips.h (XUNMARK): Remove.
5101 * m/mips-siemens.h (XUNMARK): Remove.
5102 * m/iris4d.h (XUNMARK): Remove.
5103 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
5104
0930c1a1
SM
51052003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
5106
31003b9e
SM
5107 * lisp.h (VALBITS): Don't remove 1 for the markbit.
5108 (union Lisp_Object): Use unsigned int for types. Remove markbit.
5109 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
5110 (XTYPE): Use unsigned right-shift.
5111 (XMARKBIT, XMARK, XUNMARK): Remove.
5112
0930c1a1
SM
5113 * alloc.c (init_intervals, init_symbol, init_marker):
5114 Don't preallocate anything.
5115 (Fgarbage_collect, mark_object): Ignore the markbit.
5116
5117 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
5118
19bb0fcd 51192003-09-08 Lute Kamstra <lute@gnu.org>
5df034de
LK
5120
5121 * xdisp.c (pint2hrstr): New function.
5122 (decode_mode_spec): Add `%i' and `%I' specs.
5123 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
5124 for `mode-line-format'.
5125
03bb6a06
AS
51262003-09-07 Andreas Schwab <schwab@suse.de>
5127
5128 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
5129 avoid warning.
5130
a6eeaa81 51312003-09-07 Eli Zaretskii <eliz@gnu.org>
2063d89c 5132
0930c1a1 5133 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
2063d89c 5134
ed159bbf
KS
51352003-09-03 Kim F. Storm <storm@cua.dk>
5136
5137 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
5138 change (superseded by 2002-08-30 change); the default blink-off
5139 cursor is now again "no cursor".
5140
fe64a394
JR
51412003-09-01 Jason Rumney <jasonr@gnu.org>
5142
5143 * makefile.w32-in (alloca.o): Remove.
5144 (coding.o): Depend on intervals.h
5145 (emacs.o, bytecode.o): Depend on window.h
5146
c0175e24
DL
51472003-09-01 Dave Love <fx@gnu.org>
5148
5149 * Makefile.in (alloca.o): Remove commands.
5150 (coding.o): Depend on intervals.h composite.h window.h.
5151 (emacs.o): Depend on window.h keyboard.h keymap.h.
5152 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
5153 (bytecode.o): Depend on window.h.
5154
a24d4cb2
JR
51552003-08-31 Jason Rumney <jasonr@gnu.org>
5156
4bc2315e
JR
5157 * w32term.c (w32_per_char_metric): Allow cached metrics to be
5158 returned even when font_type is unknown.
5159
a24d4cb2
JR
5160 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
5161
9d35adc7
JD
51622003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5163
5164 * xterm.c (x_term_init): Initialize new fields in x_display_info.
5165
5166 * xterm.h (struct x_display_info): Add red/green/blue_bits and
5167 *_offset.
5168
5169 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
5170 calculate pixel value.
5171
6f68b035
GM
51722003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
5173
0930c1a1
SM
5174 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
5175 Don't tell redisplay display is accurate when it's actually been
5176 paused for pending input.
6f68b035 5177
4828b4d7
RS
51782003-08-29 Richard M. Stallman <rms@gnu.org>
5179
5180 * dispnew.c (adjust_glyph_matrix): Call window_box
5181 whenever W is nonzero.
5182
5183 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
5184 (Fkill_local_variable, Fmake_variable_frame_local)
0930c1a1 5185 (Flocal_variable_p, Flocal_variable_if_set_p):
4828b4d7
RS
5186 Use indirect_variable to trace thru variable aliases.
5187
5188 * config.in: Updated.
5189
5190 * callint.c (Fcall_interactively): Save and restore
5191 Vthis_command, Vthis_original_command, real_this_command,
5192 and current_kboard->Vlast_command.
5193
5194 * abbrev.c (Fexpand_abbrev): Insert before deleting.
5195
e019878d
GM
51962003-08-29 Gerd Moellmann <gerd@gnu.org>
5197
5198 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
5199
85478bc6
KH
52002003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
5201
0930c1a1 5202 * coding.c (decode_coding_iso2022): Initialize local variable c2.
85478bc6
KH
5203 (decode_coding_sjis_big5): Likewise.
5204
07ce82d3
JR
52052003-08-27 Jason Rumney <jasonr@gnu.org>
5206
d3703de3
JR
5207 * w32.c (sys_pipe): Protect against file descriptor overflow.
5208
ee4a01d1
JR
5209 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
5210
07ce82d3
JR
5211 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
5212
a64387ee 52132003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
72d19c66
LK
5214
5215 * xfns.c (Vgtk_version_string): New variable.
5216 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
5217
a6eeaa81 52182003-08-24 Eli Zaretskii <eliz@gnu.org>
5459e42a 5219
0930c1a1 5220 * term.c (term_init): Remove `const' from buffer_size's declaration.
3d8714e7 5221
5459e42a
EZ
5222 * Makefile.in (msdos.o): Depend on intervals.h.
5223
0930c1a1 5224 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
5459e42a 5225
231d6cfb
JD
52262003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5227
5228 * xterm.h (struct x_display_info): New fields: client_leader_window
5229 and Xatom_wm_client_leader.
5230
5231 * xterm.c (x_initialize): Move call to x_session_initialize to ...
5232 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
5233
5234 * xsmfns.c (create_client_leader_window): New function.
5235 (x_session_initialize): Call create_client_leader_window, take
5236 dpyinfo as argument.
5237
5238 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
5239
5240 * Makefile.in (xsmfns.o): Add more depenedencies.
5241
afa88464
DL
52422003-08-21 Dave Love <fx@gnu.org>
5243
5244 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
5245
f730033e
KH
52462003-08-21 Kenichi Handa <handa@m17n.org>
5247
5248 * term.c (term_init): Fix previous change; don't rely on the
5249 length of `buffer' if TERMINFO is defined.
5250
6dca786c
DL
52512003-08-20 Dave Love <fx@gnu.org>
5252
5253 * atimer.h: Include lisp.h.
5254
5255 * lisp.h (EMACS_LISP_H): New.
5256 (popup_activated_flag): Don't declare.
5257
5258 * alloca.c: Some merging with gnulib. Change logic and doc
5259 concerning (x)malloc/(x)free -- no longer Emacs-specific.
5260 [DO_BLOCK_INPUT]: Don't include lisp.h.
5261 (xmalloc, xfree): Declare.
5262 (malloc): Don't declare.
5263
0930c1a1 5264 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
6dca786c
DL
5265 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
5266 atimer.h, blockinput.h.
5267
5268 * alloc.c (lisp_align_malloc): Change type of `aligned'.
5269
5270 * alloca.s: Removed.
5271
3a06a6d9
RS
52722003-08-19 Gerd Moellmann <gerd@gnu.org>
5273
5274 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
5275 use -lncurses.
5276
5277 * term.c (term_init): Use a buffer of size 4096 for tgetent since
5278 FreeBSD returns something longer than 2044. Abort if the end of
5279 the buffer is overwritten.
5280
27eeee55
MB
52812003-08-19 Miles Bader <miles@gnu.org>
5282
5283 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
5284
2f297815
GM
52852003-08-19 Gerd Moellmann <gerd@gnu.org>
5286
f4446bbf
GM
5287 * alloc.c (lisp_align_malloc): Check for memory full when
5288 allocating ablocks, which also avoids freeing a pointer into an
5289 ablocks structure.
5290
5291 * puresize.h (BASE_PURESIZE): Increase to 1100000.
5292
0930c1a1 5293 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
2f297815 5294
0e7d7aae
RS
52952003-08-16 Richard M. Stallman <rms@gnu.org>
5296
5297 * editfns.c (Fencode_time): Doc fix.
5298
52992003-08-16 David Ponce <david@dponce.com>
5300
5301 * fileio.c (Fwrite_region): Fix conditional expression to issue
5302 the right message.
5303
b6189c3b 53042003-08-16 Juri Linkov <juri@jurta.org>
0e7d7aae
RS
5305
5306 * syntax.c (Fforward_word): Argument changed to optional.
0930c1a1 5307 Set default value to 1.
0e7d7aae 5308
5d551295
KH
53092003-08-15 Kenichi Handa <handa@m17n.org>
5310
5311 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
5312 what autoscaled.
5313 (best_matching_font): Once we find a better scalable font, set
5314 non_scalable_has_exact_height_p to 1.
5315 (try_font_list): Call try_alternative_families to try any family
5316 with the given registry.
5317
1661e56b
AS
53182003-08-09 Andreas Schwab <schwab@suse.de>
5319
f29181dc
AS
5320 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
5321
1661e56b
AS
5322 * print.c (print_string): Fix printing of multibyte string with
5323 nontrivial printcharfun.
5324
465aa50a
JD
53252003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5326
5327 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
5328
5329 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
5330
e430e5ba
KH
53312003-07-31 Kenichi Handa <handa@m17n.org>
5332
5333 * process.c (read_process_output): Return the actually read bytes
5334 instead of the result of decoding.
5335
97e7188e
KH
53362003-07-31 Kenichi Handa <handa@m17n.org>
5337
5338 * xterm.h (struct x_bitmap_record): New member have_mask.
5339
5340 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
5341 to 0.
5342 (x_create_bitmap_from_file): Likewise.
5343 (x_destroy_bitmap): Check have_mask member before freeing a mask.
5344 (x_destroy_all_bitmaps): Likewise.
5345 (x_create_bitmap_mask): Set have_mask member to 1.
5346
b53094d6
RS
53472003-07-30 Richard M. Stallman <rms@gnu.org>
5348
5349 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
5350
631f2082
JD
53512003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5352
5353 * gtkutil.c (xg_mark_data): Update calls to mark_object.
5354
c855f2ca
RS
53552003-07-29 Richard M. Stallman <rms@gnu.org>
5356
5357 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
5358 Conditionalize XIM code on HAVE_XIM.
5359
5360 * fns.c (Fclear_string): New function.
5361 (syms_of_fns): defsubr it.
5362
b6189c3b 53632003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
17e6d491 5364
0930c1a1 5365 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
17e6d491 5366
29ea8ae9
SM
53672003-07-22 Stefan Monnier <monnier@cs.yale.edu>
5368
5369 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
5370
5371 * buffer.c (delete_all_overlays): New function.
5372 * buffer.h (delete_all_overlays): Declare.
5373 * coding.c (run_pre_post_conversion_on_str):
5374 * print.c (temp_output_buffer_setup):
5375 * fileio.c (Finsert_file_contents):
5376 * minibuf.c (get_minibuffer): Use it.
5377
1dd7ccf2
AC
53782003-07-22 Andrew Choi <akochoi@shaw.ca>
5379
5380 * unexmacosx.c (unexec_regions_sort_compare):
5381 (unexec_regions_merge): New functions. Sort and merge unexec
5382 regions before dumping them.
5383
f57bd967
DL
53842003-07-22 Dave Love <fx@gnu.org>
5385
5386 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
5387
7cdee936
SM
53882003-07-21 Stefan Monnier <monnier@cs.yale.edu>
5389
5390 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
5391 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
5392 MARKBIT as the gcmarkbit for strings.
5393
e50886d3
RS
53942003-07-21 Richard M. Stallman <rms@gnu.org>
5395
5396 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
5397
29ea8ae9 5398 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
e50886d3
RS
5399 (syms_of_fns): Corresponding change.
5400
5401 * alloc.c (syms_of_alloc): Doc fixes.
5402
54032003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
5404
5405 * s/netbsd.h: Use -Wl syntax.
5406
fdc39b59
RS
54072003-07-17 Richard M. Stallman <rms@gnu.org>
5408
5409 * xterm.c (xim_initialize): Redo 6/24 change.
5410
9c53385f
SM
54112003-07-15 Stefan Monnier <monnier@cs.yale.edu>
5412
5413 * buffer.c (copy_overlays): Use EMACS_INT for positions.
5414 (Fswitch_to_buffer): Don't signal an error when switching to the same
5415 buffer in a dedicated window.
5416
5417 * alloc.c: Use bitmaps for cons, as was done for floats.
5418 (init_float, init_cons): Let the normal code allocate the first block.
5419 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
5420 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
5421 New macros.
5422 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
5423 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
5424 (live_cons_p): Check the pointer is not past the `conses' array.
5425 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
5426 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
5427 (survives_gc_p): Use CONS_MARKED_P and simplify.
5428 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
5429
dde13196
PE
54302003-07-13 Paul Eggert <eggert@twinsun.com>
5431
5432 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
5433 puts it into BSS instead, at least on Solaris 8 and 9.
5434 This is a valid optimization, and it may occur on other platforms,
5435 so Emacs should not assume that initializing a static variable to
5436 zero puts it into data.
5437 * alloc.c (pure, staticvec):
5438 Initialize these arrays to nonzero, so that they're not
5439 put into BSS by that optimization.
5440
a801bc34
SM
54412003-07-13 Stefan Monnier <monnier@cs.yale.edu>
5442
5443 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
5444 (lisp_align_malloc): Use posix_memalign is available.
5445 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
5446 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
5447 for consistency. Update users.
5448
0c8b2afa
RS
54492003-07-13 Richard M. Stallman <rms@gnu.org>
5450
5451 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
5452
668c2ab0
JB
54532003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
5454
5455 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
5456 and use the Gtk+ function gtk_window_icon_from_file if available.
5457
5458 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
5459 handle mask of bitmaps.
5460 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
5461 mask property.
5462 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
5463
5464 * xterm.h (xg_set_icon): New function.
5465
800bebe3
RS
54662003-07-12 Paul Eggert <eggert@twinsun.com>
5467
5468 * unexelf.c (unexec): Consider a section to precede the .bss
5469 section if its addresses overlap that of .bss.
5470
69e38995
RS
54712003-07-12 Richard M. Stallman <rms@gnu.org>
5472
5473 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
5474
5475 * config.in (HAVE_CRTIN): Add #undef.
5476 (INLINE): Really inline only if OPTIMIZE is defined.
5477
5478 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
5479 END_FILES_1.
5480 (START_FILES_1, END_FILES_1): New macros (conditional).
a801bc34 5481 (LD_SWITCH_SYSTEM_TEMACS): Define.
69e38995
RS
5482
5483 * s/openbsd.h: Don't include bsd4-3.h.
a801bc34
SM
5484 (TERMINFO): Define.
5485 (LIBS_TERMCAP): Define.
5486 (LD_SWITCH_SYSTEM): Define (two definitions).
69e38995
RS
5487
5488 * xfns.c: Include libpng/png.h instead of png.h.
5489
f1d0c238
AS
54902003-07-11 Andreas Schwab <schwab@suse.de>
5491
5492 * buffer.c (modify_overlay): Update prototype.
5493 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
5494 Likewise.
5495
5f6bf5fe
SM
54962003-07-09 Stefan Monnier <monnier@cs.yale.edu>
5497
5498 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
5499 (struct interval): Move to intervals.h.
5500 (struct Lisp_Marker): Use EMACS_INT for position info.
5501 (forward_point): Remove prototype of defunct function.
5502 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
5503 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
5504 (syms_of_textprop, set_text_properties): Remove prototypes that are
5505 already in intervals.h.
5506
5507 * intervals.h (struct interval): Move from lisp.h.
5508 Use EMACS_INT for position and size info.
5509
5510 * coding.c: Include intervals.h for Fset_text_properties.
5511
5512 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
5513 position and length information.
5514
2765b457
SM
55152003-07-09 Stefan Monnier <monnier@cs.yale.edu>
5516
5517 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
5518 position and length information.
5519
2410d73a
SM
55202003-07-09 Stefan Monnier <monnier@cs.yale.edu>
5521
5522 Change overlays_after and overlays_before so the overlays themselves
5523 are linked into lists, rather than using cons cells. After all each
5524 Lisp_Misc already occupies 5 words, so we can add a `next' field to
5525 Lisp_Overlay for free and save up one cons cell per overlay (not
5526 to mention one indirection when traversing the list of overlay).
5527
5528 * lisp.h (struct Lisp_Overlay): New field `next'.
5529
5530 * buffer.h (struct buffer): Change overlays_before and overlays_after
5531 from Lisp lists of overlays to pointers to overlays.
5532
5533 * buffer.c (overlay_strings, recenter_overlay_lists):
5534 Fix typo in eassert in last commit.
5535 (unchain_overlay): New function.
5536 (add_overlay_mod_hooklist): Use AREF.
5537 (copy_overlays, reset_buffer, overlays_at, overlays_in)
5538 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
5539 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
5540 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
5541 (report_overlay_modification, evaporate_overlays, init_buffer_once):
5542 Adjust to new type of overlays_(before|after).
5543
5544 * alloc.c (mark_object): Mark the new `next' field of overlays.
5545 (mark_buffer): Manually mark the overlays_(after|before) fields.
5546
5547 * coding.c (run_pre_post_conversion_on_str):
5548 * editfns.c (overlays_around):
5549 * xdisp.c (load_overlay_strings):
5550 * fileio.c (Finsert_file_contents):
5551 * indent.c (current_column):
5552 * insdel.c (signal_before_change, signal_after_change):
5553 * intervals.c (set_point_both):
5554 * print.c (temp_output_buffer_setup): Use new type for
5555 overlays_(before|after).
5556
04812929
SM
55572003-07-08 Stefan Monnier <monnier@cs.yale.edu>
5558
5559 * buffer.c (report_overlay_modification): Don't run hooks while
5560 traversing the list of overlays.
5561
5562 * buffer.h (struct buffer): Use an int for overlay_center.
5563 (overlays_at, evaporate_overlays, recenter_overlay_lists)
5564 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
5565
5566 * buffer.c (reset_buffer, recenter_overlay_lists)
5567 (adjust_overlays_for_insert, adjust_overlays_for_delete)
5568 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
5569 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
5570 (overlays_at, evaporate_overlays, recenter_overlay_lists)
5571 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
5572
5573 * xdisp.c (fast_find_position): Remove unused var.
5574
5575 * cmds.c (Qexpand_abbrev): New sym.
5576 (syms_of_cmds): Initialize it.
5577 (internal_self_insert): Use it to call expand-abbrev.
5578
2e7ecf15
KS
55792003-07-09 Kim F. Storm <storm@cua.dk>
5580
f9711de4 5581 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if Emacs
2e7ecf15 5582 was configured with --without-xim.
42f81f64 5583 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
2e7ecf15 5584
c6de56a0
RS
55852003-07-07 Richard M. Stallman <rms@gnu.org>
5586
5587 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
5588
5589 * alloc.c (Fgarbage_collect): Doc fix.
5590
b6189c3b 55912003-07-07 Nozomu Ando <nand@mac.com>
b93fb365
KH
5592
5593 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
5594
bfe1a3f7
SM
55952003-07-06 Stefan Monnier <monnier@cs.yale.edu>
5596
04812929
SM
5597 * minibuf.c (read_minibuf): UNGCPRO before returning.
5598 (Ftry_completion, Fall_completions): Doc fix.
5599
bfe1a3f7
SM
5600 * alloc.c (live_float_p): Check that p is not past the `floats' array,
5601 now that `floats' is not the last element of the struct any more.
5602
ee79d1aa
JR
56032003-07-06 Jason Rumney <jasonr@gnu.org>
5604
5605 * w32term.h (ClipboardSequence_Proc): New type.
5606
5607 * w32fns.c (clipboard_sequence_fn): New variable.
5608 (globals_of_w32fns): Initialize it.
5609
5610 * w32select.c (last_clipboard_sequence_number): New variable.
5611 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
5612 number if possible.
5613
49723c04
SM
56142003-07-06 Stefan Monnier <monnier@cs.yale.edu>
5615
4698665f
SM
5616 * m/amdx86-64.h (MARKBIT):
5617 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
5618 MARKBIT and ARRAY_MARK_FLAG any more.
5619
5620 * m/hp800.h (XSETMARKBIT):
5621 * m/sr2k.h (XSETMARKBIT):
5622 * lisp.h (XSETMARKBIT): Remove unused macro.
5623
49723c04
SM
5624 * lisp.h (mark_object): Change prototype.
5625
5626 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
5627 (last_marked): Change accordingly.
5628 (mark_interval, mark_maybe_object, mark_maybe_pointer)
5629 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
5630 (mark_buffer): Update calls to mark_object.
5631
5632 * bytecode.c (mark_byte_stack):
5633 * fns.c (sweep_weak_table):
5634 * keyboard.c (mark_kboards): Update calls to mark_object.
5635
1d660eca
JR
56362003-07-06 Jason Rumney <jasonr@gnu.org>
5637
5638 * alloc.c (struct ablock): Only include padding when there is some.
5639
618b5ae4
SM
56402003-07-04 Stefan Monnier <monnier@cs.yale.edu>
5641
5642 * alloc.c (ALIGN): Add casts to simplify usage.
5643 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
5644 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
5645 (struct ablock, struct ablocks): New types.
5646 (free_ablock): New global var.
5647 (lisp_align_malloc, lisp_align_free): New functions.
5648 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
5649 (struct float_block): Reorder and add gcmarkbits.
5650 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
5651 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
5652 (init_float, make_float): Use lisp_align_malloc.
5653 (free_float, live_float_p): Don't use `type' any more.
5654 (make_float): Use FLOAT_UNMARK to access to mark bit.
5655 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
5656 Use FLOAT_MARKED_P to access the mark bit.
5657 (pure_alloc): Simplify use of ALIGN.
5658 (mark_object): Use FLOAT_MARK to access the mark bit.
5659 (gc_sweep): Use new macros to access the float's mark bit.
5660 (init_alloc_once): Init free_ablock.
5661
5662 * lisp.h (struct Lisp_Float): Remove unused field `type'.
5663
3ef06d12
SM
56642003-06-27 Stefan Monnier <monnier@cs.yale.edu>
5665
5666 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
5667 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
5668 (allocate_buffer): Move.
5669 (string_bytes): Don't mask markbit of `size_byte'.
5670 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
5671 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
5672 Use the `size' field of buffers (rather than the `name' field) for
5673 the mark bit, as is done for all other vectorlike objects.
5674 Use the new macros to access the mark bit of vectorlike objects.
5675
e81043aa
RS
56762003-06-26 Richard M. Stallman <rms@gnu.org>
5677
5678 * puresize.h (BASE_PURESIZE): Increment base size.
5679
5680 * xdisp.c (fast_find_position): Enable Gerd's new definition.
5681
5682 * xterm.c (xim_initialize): Undo previous change.
5683
2d0834cc
SM
56842003-06-26 Stefan Monnier <monnier@cs.yale.edu>
5685
5686 * alloc.c (survives_gc_p): Simplify.
5687
5688 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
5689
5690 * window.c (Fset_window_dedicated_p): Simplify.
5691 (display_buffer_1): Don't raise the win from which minibuf was entered.
5692 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
5693 (Fminibuffer_selected_window): Simplify.
5694
5695 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
5696
5697 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
5698 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
5699
5700 * insdel.c (check_markers, adjust_markers_for_delete)
5701 (adjust_markers_for_insert, adjust_markers_for_replace)
5702 (prepare_to_modify_buffer, RESTORE_VALUE):
5703 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
5704 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
5705 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
5706 * alloc.c (Fmake_marker, free_marker, gc_sweep):
5707 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
5708 * editfns.c (save_excursion_restore, transpose_markers):
5709 * window.c (delete_window):
5710 * xdisp.c (message_dolog): Update for new types.
5711
d54ae3d8
JD
57122003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5713
a5f696ac
JD
5714 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
5715 (realize_default_face): Use default_face_done_p for the force_p
2d0834cc 5716 argument to set_lface_from_font_name. Set default_face_done_p to one.
a5f696ac
JD
5717
5718 * frame.c (make_frame): Initialize default_face_done_p.
5719
5720 * frame.h (struct frame): Add default_face_done_p.
5721
d54ae3d8
JD
5722 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
5723 will be defined.
5724
2336fe58
SM
57252003-06-25 Stefan Monnier <monnier@cs.yale.edu>
5726
5727 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
5728 Initialize the new field `gcmarkbit'.
5729 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
5730 (mark_interval_tree): Don't mark the tree separately from the nodes.
5731 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
5732 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
5733 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
5734
5735 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
5736 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
5737 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
5738 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
5739 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
5740
bcea31c2
DL
57412003-06-24 Dave Love <fx@gnu.org>
5742
5743 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
5744
5745 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
5746 from gnulib.
5747
2601f59e
RS
57482003-06-21 Richard M. Stallman <rms@gnu.org>
5749
5750 * fileio.c (Fwrite_region): Alternate messages
5751 for append and partial write.
5752
5753 * keyboard.c (read_key_sequence): When converting upcase fn key to
5754 downcase, update fkey and keytran so `backspace' gets translated.
5755
5756 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
5757
5758 * process.c (wait_reading_process_input): Don't signal SIGIO
5759 in batch mode.
5760
b5d2c621
KH
57612003-06-17 Kenichi Handa <handa@m17n.org>
5762
5763 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
5764 composite.h.
5765
5766 * xselect.c: Don't include charset.h, coding.h, composite.h.
5767 (Qforeign_selection): New variable.
5768 (syms_of_xselect): Intern and static it.
5769 (selection_data_to_lisp_data): Return a unibyte string made from
5770 data with `foreign-selection' text property.
5771
6793bc63
SM
57722003-06-15 Stefan Monnier <monnier@cs.yale.edu>
5773
5774 * termhooks.h (EVENT_INIT): New macro.
5775
5776 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
5777
5778 * alloc.c (mark_kboards): Move to keyboard.c.
5779
5780 * keyboard.c (record_asynch_buffer_change, read_avail_input):
5781 * xterm.c (x_dispatch_event):
5782 * xmenu.c (find_and_call_menu_selection):
5783 * xdisp.c (handle_tool_bar_click):
5784 * w32menu.c (menubar_selection_callback):
5785 * sysdep.c (kbd_input_ast, read_input_waiting):
5786 * msdos.c (dos_rawgetc):
5787 * macterm.c (mac_check_for_quit_char):
5788 * macmenu.c (menubar_selection_callback):
5789 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
5790 data to kbd_buffer_store_event.
5791
b3ea810c
KS
57922003-06-15 Kim F. Storm <storm@cua.dk>
5793
5794 * xdisp.c (x_fix_overlapping_area): Always use area relative X
6793bc63 5795 to fix redisplay problem with tall characters (such as \e,AC\e(B).
b3ea810c 5796
b8f75eda
KG
57972003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
5798
5799 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
5800
ba92ce48
KH
58012003-06-12 Kenichi Handa <handa@m17n.org>
5802
5803 * fileio.c (Fwrite_region): Save and restore restriction.
5804
b80263be
DL
58052003-06-12 Dave Love <fx@gnu.org>
5806
5807 * alloca.c (alloca): Declare arg as size_t.
5808
6793bc63
SM
5809 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
5810 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
b80263be 5811
b23c0a83
DL
58122003-06-11 Dave Love <fx@gnu.org>
5813
5814 * search.c (shrink_regexp_cache): Use xrealloc.
5815 (syms_of_search): Use xmalloc.
5816
700e47c2
KS
58172003-06-10 Kim F. Storm <storm@cua.dk>
5818
5819 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
5820 Adjust phys_cursor.x to be relative to window box, rather than
5821 text area before checking -- to ensure cursor is redrawn when
5822 exposing window.
5823 Note: This also fixes a similar (older) bug if display margins
5824 are present.
5825
f11aa0b2
KH
58262003-06-06 Kenichi Handa <handa@m17n.org>
5827
5828 * coding.c (encoding_buffer_size): If coding->type is
5829 coding_type_ccl, double magnification on CRLF encoding.
5830
3d143690
JR
58312003-06-06 Jason Rumney <jasonr@gnu.org>
5832
5833 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
5834 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
5835
5836 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
5837 Mac too.
5838
f16205ca
DL
58392003-06-05 Dave Love <fx@gnu.org>
5840
b23c0a83
DL
5841 * strftime.c: Merge changes from gnulib.
5842
f16205ca
DL
5843 * mktime.c (__mktime_internal): Merge changes from gnulib
5844 involving year 69 and dst2.
5845
5846 Changes to merge with gnulib version and be consistent with the
5847 autoconf test:
5848
6793bc63
SM
5849 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
5850 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
f16205ca
DL
5851 [HAVE_LOCALE_H]: Include locale.h.
5852 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
5853
9b87a0bc
KS
58542003-06-05 Kim F. Storm <storm@cua.dk>
5855
5856 * window.c (coordinates_in_window): Convert X and Y to window
5857 relative coordinates inside mode-line and header-line parts.
5858 Convert X and Y to margin area relative coordinates inside left
5859 and right display margin parts.
5860
5a8a15ec
JR
58612003-06-05 Jason Rumney <jasonr@gnu.org>
5862
5863 * w32fns.c (add_system_logical_colors_to_map): New function.
5864 (Fx_open_connection): Use it.
5865
01ed8ff1
SM
58662003-06-04 Stefan Monnier <monnier@cs.yale.edu>
5867
5868 * process.c (allocate_pty): Revert part of the previous patch.
5869 (Faccept_process_output): Simplify.
5870
b427b65d
JR
58712003-06-04 Jason Rumney <jasonr@gnu.org>
5872
5873 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
5874
5875 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
5876 (lispy_mouse_wheel_names): Remove.
5877 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
5878 Always define drag_and_drop_syms.
5879
5880 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
5881 WHEEL_EVENT events.
5882
914a8c47
SM
58832003-06-03 Stefan Monnier <monnier@cs.yale.edu>
5884
01ed8ff1
SM
5885 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
5886
914a8c47
SM
5887 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
5888
adcb132c
JD
58892003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5890
5891 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
5892 menu item label.
5893
be781fa7
RS
58942003-06-03 Richard M. Stallman <rms@gnu.org>
5895
5896 * window.c (Fwindow_edges): Doc fix.
5897 (Fwindow_pixel_edges, Fwindow_inside_edges)
5898 (Fwindow_inside_pixel_edges): New functions.
5899 (syms_of_window): defsubr them.
5900
5901 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
5902 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
5903
914a8c47
SM
59042003-06-02 Stefan Monnier <monnier@cs.yale.edu>
5905
5906 * dispnew.c (Fsit_for): Don't lie about the number of args.
5907
5b07197a
DL
59082003-06-02 Dave Love <fx@gnu.org>
5909
5910 * callproc.c: Use HAVE_FCNTL_H, not USG5.
5911 (syms_of_callproc) <process-environment>: Doc fix.
5912
5913 * doc.c: Use HAVE_FCNTL_H, not USG5.
5914
5915 * xfaces.c (font_rescale_ratio): Fix for K&R.
5916
5917 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
5918
5919 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
5920
5921 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
5922
5923 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
5924 (xg_create_frame_widgets): Use ENCODE_UTF_8.
5925
d7107586 5926 * xterm.c (Qutf_8): Move to coding.c
5b07197a
DL
5927
5928 * xmenu.c (ENCODE_MENU_STRING): New.
5929 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
5930 Use it.
5931
5932 * coding.h (ENCODE_UTF_8): New.
5933 (Qutf_8): Declare.
5934
5935 * coding.c (Qutf_8): New.
5936 (syms_of_coding): Intern it.
5937
5938 * fns.c: Doc fixes.
5939
7335b336
KH
59402003-06-02 Kenichi Handa <handa@m17n.org>
5941
5942 * buffer.c (Fset_buffer_multibyte): Fix previous change.
5943
914a8c47
SM
59442003-06-01 Stefan Monnier <monnier@cs.yale.edu>
5945
5946 * lread.c (openp): Make sure STR is a string.
5947
9862c135
JR
59482003-06-01 David Ponce <david@dponce.com>
5949
5950 * termhooks.h (enum event_kind): Added new WHEEL_EVENT event.
5951 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
5952
5953 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
5954 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
5955 (discard_mouse_events): Discard WHEEL_EVENT events too.
5956 (lispy_wheel_names, wheel_syms): New.
5957 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
5958 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX
5959 defined.
914a8c47 5960 (make_lispy_event): Add WHEEL_EVENT handler.
9862c135
JR
5961
5962 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
5963 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
5964 WHEEL_EVENT events.
5965
f984e73e
JPW
59662003-05-31 John Paul Wallington <jpw@gnu.org>
5967
5968 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
5969 timer are in lisp/emacs-lisp.
5970
1efcd78f
KH
59712003-05-31 Kenichi Handa <handa@m17n.org>
5972
458c8af4
KH
5973 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
5974 region when a buffer is changed to unibyte.
5975
1efcd78f
KH
5976 * charset.h (VALID_LEADING_CODE_P): New macro.
5977 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
5978
778e2804
KH
5979 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
5980 is nonzero, accept multibyte form of eight-bit-control chars.
5981 (decode_composition_emacs_mule): Likewise.
5982 (decode_coding_emacs_mule): Likewise.
5983 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
5984 multibyte form of eight-bit-control chars.
5985
5986 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
5987 (Finsert_file_contents): If coding-system-for-read is bound to
5988 Qauto_save_coding, use the coding system emacs-mule with special
5989 setting for recovering a file.
5990 (choose_write_coding_system): On auto saving, use the coding
5991 system emacs-mule with special setting for auto saving.
5992 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
5993
034060e4
KH
59942003-05-30 Kenichi Handa <handa@m17n.org>
5995
5996 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
5997 properly before calling ccl_driver.
5998
778e2804 5999 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
034060e4
KH
6000
6001 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is
6002 nonzero.
6003 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
6004 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
6005
595f5aa5
GM
60062003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
6007
6008 * xfaces.c (realize_default_face): Do not abort if lface is
6009 non-existent - reverts change from 2003-05-19.
6010
103e0180
KH
60112003-05-29 Kenichi Handa <handa@m17n.org>
6012
6013 * coding.c (decode_coding_iso2022): Pay attention to the byte
6014 sequence of CTEXT extended segment, and retain those bytes as is.
6015
60162003-05-28 Kenichi Handa <handa@m17n.org>
6017
6018 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjusted for the name change
6019 of CODING_REPLACEMENT_CHARACTER.
6020 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
6021 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
6022 check this flag on encoding.
6023 (encode_coding_sjis_big5): Check
6024 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
6025 (Fset_terminal_coding_system_internal): Set
6026 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
6027 instead of setting CODING_FLAG_ISO_SAFE flag in
6028 terminal_coding.flags.
6029
6030 * coding.h (CODING_REPLACEMENT_CHARACTER): Renamed from
6031 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
6032 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
6033
ff6a3bfb 60342003-05-28 Richard M. Stallman <rms@gnu.org>
45f266dc 6035
ff6a3bfb
RS
6036 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
6037
6038 * eval.c (unbind_to): Move init of this_binding to separate statement.
45f266dc 6039
1963c428
KS
60402003-05-28 Kim F. Storm <storm@cua.dk>
6041
6042 * xdisp.c (expose_window): Fix error in calculation of
6043 window relative coordinates of area to redisplay.
6044
2b5d4601
JR
60452003-05-27 Jason Rumney <jasonr@gnu.org>
6046
6047 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
6048
1c64a4a2
JB
60492003-05-27 David Ponce <david@dponce.com>
6050
6051 Handle W32 mouse wheel events as mouse click events, like in X.
6052
6053 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
6054 MOUSE_WHEEL_EVENT anymore.
6055
6056 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
6057 Scrolling down/up the mouse wheel is respectively mapped to mouse
6058 button 4 and 5.
6059 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
6060 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
6061 WM_MOUSEWHEEL events.
6062
2d031b89
AS
60632003-05-27 Andreas Schwab <schwab@suse.de>
6064
20464fdf
AS
6065 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
6066
2d031b89
AS
6067 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
6068 partially visible line.
6069
6070 * alloc.c (Fgarbage_collect): Fix last change.
6071
97bc76d4
JPW
60722003-05-26 John Paul Wallington <jpw@gnu.org>
6073
6074 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
6075
56613f06
SM
60762003-05-25 Stefan Monnier <monnier@cs.yale.edu>
6077
6078 * window.c (Fset_window_buffer): Add type of `keep_margins'.
6079 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
6080
6081 * window.h (window_box_text_cols): Declare.
6082
6083 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
6084 (x_draw_vertical_border): Remove unused var `f'.
6085
6086 * xfaces.c (build_scalable_font_name): Remove `unused var
6087 pixel_size' warning.
6088
6089 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
6090
6091 * unexelf.c (unexec): Remove `unused var n' warning.
6092
6093 * strftime.c (my_strftime_localtime_r): Remove `defined but
6094 unused' warning.
6095
6096 * process.c (allocate_pty): Remove `unused var stb' and
6097 `cp might be used uninitialized' warnings.
6098
6099 * dispnew.c (mode_line_string): Remove unused var `f'.
6100
6101 * coding.c (find_safe_codings): Remove unused var `i'.
6102
6103 * bytecode.c (Fbyte_code): Remove `unused val' warning.
6104
6105 * buffer.c (Fkill_buffer): Remove unused var `list'.
6106
6107 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
6108
93421a1f
JD
61092003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6110
6111 * frame.c (make_frame): Condition want_fullscreen with
6112 HAVE_WINDOW_SYSTEM.
6113
c4b8aebc
JB
61142003-05-25 Juanma Barranquero <lektu@terra.es>
6115
6116 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
6117 (Fwindow_scroll_bars): Fix typo in docstring.
6118
0416870b
KS
61192003-05-24 Kim F. Storm <storm@cua.dk>
6120
6121 The following changes serve several purposes:
6122
6123 1) Swap the position of fringes and display margins in windows, i.e.
6124 the fringes are now displayed between the margins and the text area
6125 (by default).
6126
6127 2) Allow fringe and scroll bar parameters to be set per-buffer and
6128 per-window (like display margins). Such settings are now stored
6129 in window configurations, preserved when frames are resized, and
9018a88e 6130 copied when windows are split vertically or horizontally.
0416870b
KS
6131 Several bugs related to display margins have been fixed.
6132
6133 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
9018a88e 6134
0416870b
KS
6135 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
6136 rather than FRAME_WIDTH (FRAME_FONT (f)).
6137
6138 5) Introduce a consistent naming of variables, members and macros
6139 depending on whether their value is measured in pixels or in
6140 canonical columns/lines. Pixel dimensions are named *_width and
6141 *_height, while canonical columns/lines are named *_cols and
6142 *_lines. Pixel positions are named *_x and *_y, while column/line
6143 positions are named *_col and *_line.
6144
6145 6) Consolidate more of the X, W32, and MAC gui code by moving
6146 common data into struct frame, and generalize it for the non-gui
6147 case by using suitable defaults.
6148
6149 7) Cleanup and consolidate the macros controlling frame and window
6150 layout into frame.h and window.h, and generalize the use of the
6151 various window_box_* functions (enhanced to handle the new fringe
6152 position and the per-window fringe and scroll bar settings).
6153
6154 * frame.h (struct frame): Rename members height to text_lines,
6155 width to text_cols, window_height to total_lines, window_width to
6156 total_cols, new_height to new_text_lines, new_width to
6157 new_text_cols. All uses changed.
6158 (struct frame): New members which consolidate common members of
6159 x_output, w32_output, and mac_output structures: left_pos,
6160 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
6161 win_gravity, size_hint_flags, border_width, internal_border_width,
6162 line_height, fringe_cols, left_fringe_width, right_fringe_width,
6163 want_fullscreen. All uses changed.
6164 (struct frame): New member column_width contaning the canonical
6165 column width, analogue to line_height. All uses changed.
6166 (struct frame): Rename members scroll_bar_pixel_width to
6167 config_scroll_bar_width, and scroll_bar_cols to
6168 config_scroll_bar_cols. All uses changed.
6169 (struct frame): New member scroll_bar_actual_width which
6170 consolidates and renames the vertical_scroll_bar_extra member of
6171 x_output, w32_output, and mac_output structures. All uses changed.
6172 (FRAME_PIXEL_HEIGHT): Renamed from PIXEL_HEIGHT and moved
6173 from x/w32/macterm.h files. All uses changed. Also change code
6174 which referred to f->output_data...->pixel_height.
6175 (FRAME_PIXEL_WIDTH): Renamed from PIXEL_WIDTH and moved
f63fd14e 6176 from x/w32/macterm.h files. All uses changed. Also change code
0416870b
KS
6177 which referred to f->output_data...->pixel_width.
6178 (FRAME_LINES): Renamed from FRAME_HEIGHT. All uses changed.
6179 Also change code which referred to f->height.
6180 (FRAME_COLS): Renamed from FRAME_WIDTH. All uses changed.
6181 Also change code which referred to f->width.
6182 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
6183 to update new_text_lines and new_text_cols members directly.
6184 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Renamed from
6185 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
6186 (FRAME_CONFIG_SCROLL_BAR_COLS): Renamed from
6187 FRAME_SCROLL_BAR_COLS. All uses changed.
6188 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
6189 Renamed from FRAME_LEFT_SCROLL_BAR_WIDTH and
6190 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
6191 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
6192 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
6193 (FRAME_TOTAL_COLS): Renamed from FRAME_WINDOW_WIDTH.
6194 (SET_FRAME_COLS): Renamed from SET_FRAME_WIDTH.
6195 (FRAME_TOTAL_COLS_ARG): Renamed from FRAME_WINDOW_WIDTH_ARG.
6196 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
6197 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
6198 (FRAME_LINE_HEIGHT): Renamed from CANON_Y_UNIT. Unconditionally
6199 return line_height member (it now has proper value also for
6200 non-window frames).
6201 (FRAME_COLUMN_WIDTH): Renamed from CANON_X_UNIT. Unconditionally
6202 return new column_width member (rather than the default font width).
6203 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
6204 (FRAME_RIGHT_FRINGE_WIDTH): Renamed from FRAME_X_... and moved
6205 from x/w32/macterm.h files. Unconditionally return corresponding
6206 member of frame structure (they now have proper values also for
6207 non-window frames).
6208 (FRAME_TOTAL_FRINGE_WIDTH): Renamed from FRAME_FRINGE_WIDTH.
6209 Calculate return value from left and right widths.
6210 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
6211 internal_border_width member (has proper value for non-window frame).
6212 (FRAME_PIXEL_X_FROM_CANON_X): Renamed from PIXEL_X_FROM_CANON_X.
6213 (FRAME_PIXEL_Y_FROM_CANON_Y): Renamed from PIXEL_Y_FROM_CANON_Y.
6214 (FRAME_CANON_X_FROM_PIXEL_X): Renamed from CANON_X_FROM_PIXEL_X.
6215 (FRAME_CANON_Y_FROM_PIXEL_Y): Renamed from CANON_Y_FROM_PIXEL_Y.
6216 (FRAME_LINE_TO_PIXEL_Y): Renamed from CHAR_TO_PIXEL_ROW,
6217 consolidated from xterm.h, macterm.h, and w32term.h.
6218 (FRAME_COL_TO_PIXEL_X): Renamed from CHAR_TO_PIXEL_COL,
6219 consolidated from xterm.h, macterm.h, and w32term.h.
6220 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Renamed from
6221 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
6222 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Renamed from
6223 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
6224 (FRAME_PIXEL_Y_TO_LINE): Renamed from PIXEL_TO_CHAR_ROW
6225 consolidated from x/mac/w32term.h.
6226 (FRAME_PIXEL_X_TO_COL): Renamed from PIXEL_TO_CHAR_COL
6227 consolidated from x/mac/w32term.h.
6228 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Renamed from
6229 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
6230 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Renamed from
6231 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
6232
6233 * window.h (struct window): Rename members left to left_col,
6234 top to top_line, height to total_lines, width to total_cols,
6235 left_margin_width to left_margin_cols, right_margin_width to
6236 right_margin_cols, orig_height to orig_total_lines, orig_top to
6237 orig_top_line. All uses changed.
6238 (struct window): New members left_fringe_width, right_fringe_width,
6239 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
6240 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
6241 New macros primarily used to simplify other macros.
6242 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
6243 referred to XINT (w->width).
6244 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
6245 referred to XINT (w->height).
6246 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
6247 referred to XINT (w->width) * canon_x_unit.
6248 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
6249 referred to XINT (w->height) * canon_y_unit.
6250 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
6251 referred to XINT (w->left).
6252 (WINDOW_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_EDGE. Change
6253 all uses and code that referred to XINT (w->left) + XINT (w->width).
6254 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
6255 referred to XINT (w->top).
6256 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
6257 referred to XINT (w->top) + XINT (w->height).
6258 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
6259 referred to XINT (w->left) * canon_x_unit.
6260 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
6261 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
6262 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
6263 referred to XINT (w->top) * canon_y_unit.
6264 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
6265 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
6266 (WINDOW_LEFTMOST_P): New macro.
6267 (WINDOW_BOX_LEFT_EDGE_COL): Renamed from WINDOW_LEFT_MARGIN.
6268 All uses changed.
6269 (WINDOW_BOX_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_MARGIN.
6270 All uses changed.
6271 (WINDOW_BOX_LEFT_EDGE_X): Renamed from
6272 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
6273 Do not exclude left fringe width.
6274 (WINDOW_BOX_RIGHT_EDGE_X): Renamed from
6275 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
6276 Do not exclude fringe widths.
6277 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
6278 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
6279 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
6280 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
6281 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
6282 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
6283 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
6284 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
6285 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
6286 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
6287 New macros. Change code which referenced corresponding
6288 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
6289 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
6290 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
6291 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
6292 allow per-window scroll-bar settings.
6293 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
6294 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
6295 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
6296 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
6297 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
6298 FRAME_SCROLL_BAR_WIDTH.
6299 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
9018a88e 6300 (WINDOW_SCROLL_BAR_AREA_X): New macros.
0416870b
KS
6301 (WINDOW_HEADER_LINE_HEIGHT): Renamed from
6302 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
6303 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Renamed from
6304 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
6305 (WINDOW_BOX_TEXT_HEIGHT): Renamed from
6306 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
6307 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
6308 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
6309 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Moved here from dispextern.h.
6310 (WINDOW_LEFT_MARGIN_WIDTH): Renamed from
6311 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
6312 (WINDOW_RIGHT_MARGIN_WIDTH): Renamed from
6313 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
6314 (window_from_coordinates): Update prototype.
6315 (Fset_window_buffer): Update EXFUN.
6316 (set_window_buffer): Update prototype.
9018a88e 6317
0416870b 6318 * dispextern.h (struct glyph_matrix): Rename members window_left_x
9018a88e 6319 to window_left_col, window_top_y to window_top_line. All uses
0416870b
KS
6320 changed.
6321 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
6322 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
6323 internal_border_width is now set to 0 for non-window frames.
6324 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
6325 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
6326 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
6327 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
6328 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
6329 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
6330 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
6331 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
6332 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
9018a88e 6333 Move to window.h and renamed [see window.h changes].
0416870b
KS
6334 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
6335 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
9018a88e
SM
6336 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
6337 Use WINDOW_TOTAL_LINES.
0416870b
KS
6338 (frame_update_line_height): Remove prototype.
6339
6340 * buffer.h (struct buffer): Rename members measured in columns:
6341 left_margin_width to left_margin_cols, right_margin_width to
6342 right_margin_cols. All uses changed.
6343 New members left_fringe_width, right_fringe_width,
6344 fringes_outside_margins for per-buffer fringe settings.
6345 New members scroll_bar_width and vertical_scroll_bar_type for
6346 per-buffer scroll bar settings.
6347
6348 * buffer.c (init_buffer_once): Set buffer_defaults and
6349 buffer_local_flags for new buffer-local variables
6350 left_fringe_width, right_fringe_width, fringes_outside_margins,
6351 scroll_bar_width, and vertical_scroll_bar_type.
6352 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
6353 default-* variables for them.
6354
6355 * dispnew.c: Make (many) trivial substitutions for renamed and
6356 new macros in dispextern.h, frame.h and window.h.
6357 (mode_line_string): No need to adjust width for mode lines, as it
6358 is already adjusted by the caller.
6359 (marginal_area_string): Handle fringes inside/outside margins.
9018a88e 6360
0416870b
KS
6361 * frame.c: Make (many) trivial substitutions for renamed and
6362 new macros in dispextern.h, frame.h and window.h.
6363 (make_frame): Initialize left_fringe_width, right_fringe_width,
6364 fringe_cols, scroll_bar_actual_width, border_width,
6365 internal_border_width, column_width, line_height, x_pixels_diff,
6366 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
6367 members with values suitable for a non-window frames.
6368
6369 * gtkutil.c: Make (many) trivial substitutions for renamed and
6370 new macros in dispextern.h, frame.h and window.h.
9018a88e 6371
0416870b
KS
6372 * indent.c: Make (few) trivial substitutions for renamed and
6373 new macros in dispextern.h, frame.h and window.h.
6374
6375 * keyboard.c: Make (many) trivial substitutions for renamed and
6376 new macros in dispextern.h, frame.h and window.h.
6377 (make_lispy_event): Use window positions returned from
6378 window_from_coordinates when constructing the lisp event for
6379 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
6380 (incorrect) values locally.
6381 (make_lispy_movement): Use window positions returned from
6382 window_from_coordinates when constructing the lisp event, rather
6383 than calculating (incorrect) values locally.
6384
6385 * scroll.c: Make (some) trivial substitutions for renamed and
6386 new macros in dispextern.h, frame.h and window.h.
6387
6388 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
6389 scroll-bars.
6390
6391 * sysdep.c: Make (few) trivial substitutions for renamed and
6392 new macros in dispextern.h, frame.h and window.h.
6393
6394 * term.c: Make (some) trivial substitutions for renamed and
6395 new macros in dispextern.h, frame.h and window.h.
6396
6397 * widget.c: Make (few) trivial substitutions for renamed and
6398 new macros in dispextern.h, frame.h and window.h.
6399
6400 * window.c: Make (many) trivial substitutions for renamed and
6401 new macros in dispextern.h, frame.h and window.h.
6402 (make_window): Initialize new members
6403 left_margin_cols, right_margin_cols, left_fringe_width,
6404 right_fringe_width, fringes_outside_margins, scroll_bar_width,
6405 and vertical_scroll_bar_type.
6406 (coordinates_in_window): Adapted to new fringe/margin positions
9018a88e 6407 and per-window fringes and scroll-bars.
0416870b 6408 Fix bug related to incorrectly adjusting coordinates by
9018a88e 6409 frame's internal_border_width (the effect normally negible since
0416870b
KS
6410 the internal_border_width is typically 0 or 1 pixel, but very
6411 noticeable for an internal_border_width of e.g. 25 pixels).
6412 Upon successful return (other than ON_NOTHING), the coordinates
6413 are now always properly converted to window relative for the
6414 given display element.
6415 (window_from_coordinates): Add new parameters wx and wy to
6416 return the window relative x and y position in the returned
6417 window and part. A null arg means, don't return the position.
6418 All callers changed.
6419 (adjust_window_margins): New function which may reduce the width
6420 of the display margins if a window's text area is too small after
6421 resizing or splitting windows.
6422 (size_window): Fix bug that did not account for display margin
6423 widths when checking the minimum width of a window; use
6424 adjust_window_margins.
6425 (set_window_buffer): Call Fset_window_fringes and
6426 Fset_window_scroll_bars to setup per-window elements.
6427 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
6428 existing display margin, fringe widths, and scroll bar settings
9018a88e
SM
6429 (e.g. after splitting a window or resizing the frame).
6430 All callers changed.
0416870b
KS
6431 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
6432 (Fsplit_window): Duplicate original window's display margin,
6433 fringe, and scroll-bar settings; then call Fset_window_buffer with
6434 KEEP_MARGINS non-nil. This fixes a bug which caused a split
6435 window to only preserve the display margins in one of the windows.
c4b8aebc 6436 When splitting horizontally, call adjust_window_margins on both
0416870b 6437 windows to ensure that the text area of the new windows is non too
f9711de4 6438 narrow. This fixes a bug which could cause Emacs to trap if the
0416870b
KS
6439 width of the split window was less than the width of the display
6440 margins.
9018a88e
SM
6441 (window_box_text_cols): Renamed from window_internal_width.
6442 All uses changed. Adapt to per-window fringes and scroll bars.
0416870b
KS
6443 Fix bug that caused vertical separator to be subtracted also on
6444 window frames. Fix another bug that did not reduce the returned
6445 value by the columns used for display margins.
6446 (window_scroll_line_based): Fix bug related to scrolling too much
6447 when display margins are present (implicitly fixed by the fix to
6448 window_box_text_cols).
6449 (scroll_left, scroll_right): Fix bug related to scrolling too far
6450 by default when display margins are present (implicitly fixed by
6451 the fix to window_box_text_cols).
6452 (struct saved_window): Rename members left to left_col, top to
6453 top_line, width to total_cols, height to total_lines, orig_top to
6454 orig_top_line, orig_height to orig_total_lines. All uses changed.
6455 New members left_margin_cols, right_margin_cols,
6456 left_fringe_width, right_fringe_width, fringes_outside_margins,
6457 scroll_bar_width, and vertical_scroll_bar_type for saving
6458 per-window display elements.
6459 (Fset_window_configuration): Restore display margins, fringes,
6460 and scroll bar settings. This fixes a bug which caused display
6461 margins to be discarded when saving and restoring a window
6462 configuration.
6463 (save_window_save): Save display margins, fringes, and scroll bar
6464 settings. This fixes a bug which caused display margins to be
6465 discarded when saving and restoring a window configuration.
6466 (Fset_window_margins): Do nothing if display margins are not
6467 really changed. Otherwise, call adjust_window_margins to ensure
6468 the text area doesn't get too narrow. This fixes a bug which
f9711de4 6469 could cause Emacs to trap if setting display margins wider than
0416870b
KS
6470 the width of the window.
6471 (Fset_window_fringes): New defun to allow user to specifically set
6472 this window's fringe widths and position vs. display margins.
6473 (Fwindow_fringes): New defun to return window's actual fringe
6474 settings.
6475 (Fset_window_scroll_bars): New defun to allow user to specifically
6476 set this window's scroll bar width and position.
6477 (Fwindow_scroll_bars): New defun to return window's actual scroll
6478 bar settings.
6479 (compare_window_configurations): Also compare display margins,
6480 fringes, and scroll bar settings.
6481 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
6482
6483 * xdisp.c: Make (many) trivial substitutions for renamed and
6484 new macros in dispextern.h, frame.h and window.h.
6485 (window_box_width): Adapt to per-window fringes and scroll bars,
f63fd14e 6486 and new fringe vs. display margin position. Note that returned
0416870b
KS
6487 value is no longer guaranteed to be a whole multiple of the frame
6488 column width, since per-window fringes may now be any width.
6489 (window_box_left_offset): New function like window_box_left, but
6490 value is relative to left border of window (rather than frame).
6491 (window_box_right_offset): New function like window_box_right,
6492 but value is relative to left border of window.
6493 (window_box_left): Adapt to per-window fringes and scroll bars,
6494 and new fringe vs. display margin position. Simplify by using
6495 WINDOW_LEFT_EDGE_X and window_box_left_offset.
6496 (window_box): Allow null args for unnecessary return values;
6497 change/simplify relevant callers.
6498 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
9018a88e
SM
6499 and new fringe vs. display margin position.
6500 Use window_box_left_offset and window_box_right_offset
0416870b 6501 (get_glyph_string_clip_rect): Adapt to per-window fringes and
9018a88e
SM
6502 scroll bars, and new fringe vs. display margin position.
6503 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
0416870b
KS
6504 (draw_fringe_bitmap): Rework to handle per-window fringes and new
6505 fringe vs. display margin position.
6506 (hscroll_window_tree): Use window_box_width instead of window_box.
a64387ee
JB
6507 (redisplay_window): Adapt to per-window scroll bars.
6508 (draw_glyphs): Rework to handle per-window fringes and scroll
9018a88e
SM
6509 bars, and new fringe vs. display margin position.
6510 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
a64387ee 6511 (x_clear_end_of_line): Adapt to per-window fringes and scroll
0416870b
KS
6512 bars, and new fringe vs. display margin position. Fix bug which
6513 increased total width of full_width rows by width of scroll bars
6514 although window's total width already includes that.
6515 (x_fix_overlapping_area): Simplify using window_box_left_offset.
6516 (expose_area): Simplify using window_box_left_offset.
6517 (x_draw_vertical_border): Handle per-window scroll bar settings,
6518 mixing windows with left, right and no scroll bars.
6519
6520 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
6521 where it's used in x_list_fonts (for clarity).
6522 (frame_update_line_height): Remove unused function; functionality
6523 is now done directly when setting the default font in x_set_font.
6524
6525 * xfns.c: Make (many) trivial substitutions for renamed and
6526 new macros in dispextern.h, frame.h and window.h.
6527
6528 * xmenu.c: Make (some) trivial substitutions for renamed and
6529 new macros in dispextern.h, frame.h and window.h.
6530
6531 * xterm.h (struct x_output): Move members left_pos, top_pos,
6532 border_width, pixel_height, pixel_width, line_height,
6533 internal_border_width, vertical_scroll_bar_extra,
6534 left_fringe_width, right_fringe_width, fringe_cols,
6535 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
6536 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
6537 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
6538 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
6539 (PIXEL_WIDTH, PIXEL_HEIGHT)
6540 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
6541 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
6542 frame.h and renamed [see frame.h changes].
6543 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
6544 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
6545 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
6546 and renamed [see frame.h changes].
9018a88e 6547
0416870b
KS
6548 * xterm.c: Make (several) trivial substitutions for renamed and
6549 new macros in dispextern.h, frame.h and window.h.
6550 (x_draw_glyph_string_box): Adapt to per-window fringes and
6551 scroll-bars.
6552 (scroll_run): Adapt to new fringe position.
6553 (glyph_rect): Use window coordinates returned from
6554 window_from_coordinates rather than frame_to_window_pixel_xy.
6555 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
6556 scroll-bars.
6557 (handle_one_xevent): Simplify a USE_GTK conditional.
6558 (x_clip_to_row): Remove superfluous whole_line_p arg and code
6559 (fringes are now inside margins, i.e. always in the clipping area).
6560 All callers changed.
6561 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
6562 directly, then call compute_fringe_widths. Don't call
6563 frame_update_line_height.
6564
6565 * w32term.h (struct w32_output): Move members left_pos, top_pos,
6566 border_width, pixel_height, pixel_width, line_height,
6567 internal_border_width, vertical_scroll_bar_extra,
6568 left_fringe_width, right_fringe_width, fringe_cols,
6569 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
6570 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
6571 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
6572 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
6573 (PIXEL_WIDTH, PIXEL_HEIGHT)
6574 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
6575 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
6576 frame.h and renamed [see frame.h changes].
6577 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
6578 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
6579 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
6580 and renamed [see frame.h changes].
9018a88e 6581
0416870b
KS
6582 * w32term.c: Make (several) trivial substitutions for renamed and
6583 new macros in dispextern.h, frame.h and window.h.
6584 (x_draw_glyph_string_box): Adapt to per-window fringes and
6585 scroll-bars.
6586 (glyph_rect): Use window coordinates returned from
6587 window_from_coordinates rather than frame_to_window_pixel_xy.
6588 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
6589 scroll-bars.
6590 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
6591 (fringes are now inside margins, i.e. always in the clipping area).
6592 All callers changed.
6593 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
6594 directly, then call compute_fringe_widths. Don't call
6595 frame_update_line_height.
6596
6597 * w32console.c: Make (few) trivial substitutions for renamed and
6598 new macros in dispextern.h, frame.h and window.h.
6599
6600 * w32fns.c: Make (many) trivial substitutions for renamed and
6601 new macros in dispextern.h, frame.h and window.h.
6602
6603 * w32menu.c: Make (few) trivial substitutions for renamed and
6604 new macros in dispextern.h, frame.h and window.h.
6605
6606 * macterm.h (struct mac_output): Move members left_pos, top_pos,
6607 border_width, pixel_height, pixel_width, line_height,
6608 internal_border_width, vertical_scroll_bar_extra,
6609 left_fringe_width, right_fringe_width, fringe_cols,
6610 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
6611 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
6612 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
6613 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
6614 (PIXEL_WIDTH, PIXEL_HEIGHT)
6615 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
6616 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
6617 frame.h and renamed [see frame.h changes].
6618 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
6619 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
6620 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
6621 and renamed [see frame.h changes].
9018a88e 6622
0416870b
KS
6623 * macterm.c: Make (several) trivial substitutions for renamed and
6624 new macros in dispextern.h, frame.h and window.h.
6625 (x_draw_glyph_string_box): Adapt to per-window fringes and
6626 scroll-bars.
6627 (glyph_rect): Use window coordinates returned from
6628 window_from_coordinates rather than frame_to_window_pixel_xy.
6629 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
6630 scroll-bars.
6631 (x_clip_to_row): Remove superfluous whole_line_p arg and code
6632 (fringes are now inside margins, i.e. always in the clipping area).
6633 All callers changed.
6634 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
6635 directly, then call compute_fringe_widths. Don't call
6636 frame_update_line_height.
6637
6638 * macfns.c: Make (several) trivial substitutions for renamed and
6639 new macros in dispextern.h, frame.h and window.h.
9018a88e 6640 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
0416870b
KS
6641
6642 * macmenu.c: Make (few) trivial substitutions for renamed and
6643 new macros in dispextern.h, frame.h and window.h.
6644
6645 * msdos.h (struct x_output): Remove members left_pos, top_pos,
6646 and line_height, and use corresponding new members in struct
6647 frame. All uses changed.
6648 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
6649 superseeded by corresponding macros in frame.h.
6650
6651 * msdos.c: Make (several) trivial substitutions for renamed and
6652 new macros in dispextern.h, frame.h and window.h.
6653 (IT_note_mouse_highlight): Use updated window coordinates returned
9018a88e 6654 by window_from_coordinates, rather than adjusting them locally.
0416870b
KS
6655 (internal_terminal_init): No need to initialize line_height here;
6656 it now defaults to 1.
6657
9018a88e
SM
66582003-05-24 Stefan Monnier <monnier@cs.yale.edu>
6659
6660 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
6661 dropping `down' events.
6662
016bd3c0
AS
66632003-05-24 Andreas Schwab <schwab@suse.de>
6664
6665 * coding.c (find_safe_codings): Fix last change.
6666
4dacadcc
TTN
66672003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
6668
6669 * xfns.c (x_window): Fix typo from 2003-05-21 change.
6670
319830ce
SM
66712003-05-23 Stefan Monnier <monnier@cs.yale.edu>
6672
9018a88e
SM
6673 * xdisp.c (display_mode_element): Increase max depth.
6674 Simplify the error handling code. Use a different error string
6675 for the case where we hit the depth limit.
6676
319830ce
SM
6677 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
6678
6679 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
6680
66812003-05-21 Stefan Monnier <monnier@cs.yale.edu>
6682
6683 * intervals.c (get_local_map): Don't get char-property of previous
6684 point any more: get_pos_property already does it and better.
6685
c67de8ba
DL
66862003-05-21 Dave Love <fx@gnu.org>
6687
6688 [Merged from unicode branch.]
6689
6690 * xfns.c (x_window, x_window): Use use_xim.
6691
6692 * xterm.c (use_xim): Initialize.
6693 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
6694 (x_term_init): Maybe set use_xim.
6695
6696 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
6697
edd3ff1d
JR
66982003-05-21 Jason Rumney <jasonr@gnu.org>
6699
6700 * unexw32.c (_start): Remove _fmode initialization.
6701
6702 * emacs.c (main) [WINDOWSNT]: Move it here.
6703
463f55ee
DL
67042003-05-20 Dave Love <fx@gnu.org>
6705
6706 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
6707
af253914
RS
67082003-05-19 Richard M. Stallman <rms@gnu.org>
6709
6710 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
6711 as value for QCfont attribute.
6712 (realize_default_face): lface should already exist; crash if not.
6713 Specify 0 for FORCE_P when calling set_lface_from_font_name.
6714
6715 * frame.c (Fignore_event): Doc fix.
6716
1d211019
KH
67172003-05-19 Kenichi Handa <handa@m17n.org>
6718
6719 * coding.c (decode_coding_string): Handle post-read-conversion
6720 even if the coding doesn't require decoding.
6721
4dd68254
RS
67222003-05-18 Richard M. Stallman <rms@gnu.org>
6723
6724 * callproc.c (Fcall_process_region): Doc fix.
6725
14d87dc9
SM
67262003-05-17 Stefan Monnier <monnier@cs.yale.edu>
6727
deca5d96
SM
6728 * lread.c (Fload): Print a message if package is obsolete.
6729
14d87dc9
SM
6730 * window.c (Fselect_window): Add optional `norecord' arg.
6731 (select_window_1): Fold into Fselect_window.
6732 (select_window_norecord): New function.
6733 (temp_output_buffer_show): Use it. Preserve current buffer.
6734
6735 * window.h (Fselect_window): Update declaration.
6736
6737 * window.c (delete_window, Fother_window, Fset_window_configuration):
6738 * minibuf.c (read_minibuf):
6739 * macterm.c (x_new_focus_frame):
6740 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
6741 * callint.c (Fcall_interactively):
6742 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
6743
6744 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
6745
78f52183
DK
67462003-05-17 David Kastrup <dak@gnu.org>
6747
6748 * process.c (read_process_output): Back out change from 2003-03-09.
6749
14d87dc9
SM
67502003-05-17 Stefan Monnier <monnier@cs.yale.edu>
6751
6752 * editfns.c (get_pos_property): Don't assume that `object' = nil.
6753
6754 * textprop.c (text_property_stickiness): New arg `buffer'.
6755
6756 * intervals.h (text_property_stickiness): New arg `buffer'.
6757 (get_pos_property): Declare.
6758
6759 * intervals.c (get_local_map): Use get_pos_property, to obey
6760 stickiness and empty overlays.
6761 (create_root_interval, graft_intervals_into_buffer): Use BEG.
6762 (merge_properties, intervals_equal, merge_properties_sticky):
6763 Use XCAR, XCDR.
6764 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
6765
1fd1cc2f
RS
67662003-05-17 Richard M. Stallman <rms@gnu.org>
6767
4f9f637a
RS
6768 * minibuf.c (read_minibuf): If buffer is empty, record the default
6769 in the history.
6770 (Fminibuffer_complete_word): When deleting the overlap, take account
6771 of its real position.
6772
6773 * fns.c (map_char_table): Fix previous change.
6774
1fd1cc2f
RS
6775 * syntax.c (find_defun_start):
6776 When open_paren_in_column_0_is_defun_start,
6777 return beginning of buffer.
6778
6779 * lisp.h (map_char_table): Declare added arg.
6780
6781 * fns.c (map_char_table): New arg TABLE gets the master table.
6782 All calls changed.
6783 Process default and inheritance, resorting to Faref if necessary.
6784
6785 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
6786 (Faccessible_keymaps): Pass new arg to map_char_table.
6787
6788 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
6789
6790 * casetab.c (set_case_table): Pass new arg to map_char_table.
6791
6792 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
6793
6794 * lisp.h (specbinding_func): New typedef.
6795 (struct specbinding): Use specbinding_func, to put the `volatile'
6796 in the right place.
6797
6798 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
6799 to avoid GCC warning.
14d87dc9 6800
b6189c3b 68012003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org>
b4bd27c5 6802
14d87dc9 6803 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
b4bd27c5 6804
35fb885d
SM
68052003-05-15 Stefan Monnier <monnier@cs.yale.edu>
6806
6807 * keyboard.c (apply_modifiers): Don't fill the other cache.
6808
9a274fbd
SM
68092003-05-14 Stefan Monnier <monnier@cs.yale.edu>
6810
c55b5fad
SM
6811 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
6812
9a274fbd
SM
6813 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
6814 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
6815 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
6816 (Fset_window_configuration, Fcurrent_window_configuration)
6817 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
6818 (Fpos_visible_in_window_p, mark_window_cursors_off)
6819 (window_internal_height, window_internal_width, Frecenter)
6820 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
6821 (replace_buffer_in_all_windows, init_window_once, init_window)
6822 (syms_of_window, keys_of_window): Move from lisp.h.
6823 * lisp.h: Move window.c declarations to window.h.
6824
6825 * bytecode.c: Include window.h.
6826 * emacs.c: Include window.h.
6827
14d87dc9 6828 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
9a274fbd
SM
6829 (keyremap): Add `parent' field.
6830 (keyremap_step): Use it. Remove `parent' argument.
6831 (read_key_sequence): Setup and use the new `parent' field.
6832
fd93e331
SM
68332003-05-11 Stefan Monnier <monnier@cs.yale.edu>
6834
6835 * keyboard.c (adjust_point_for_property): Ensure termination.
6836
1c4001a1
SM
68372003-05-10 Stefan Monnier <monnier@cs.yale.edu>
6838
6839 * keyboard.c (follow_key): Remove dead variable `did_meta'.
6840 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
6841 duplicated handling of function-key-map and key-translation-map
6842 in read_key_sequence.
6843 (read_key_sequence): Use them.
6844
6845 * keyboard.c (adjust_point_for_property): Try harder to move point
6846 to the non-sticky end of an invisible property.
6847
6848 * xdisp.c (single_display_prop_intangible_p): Make `space' display
6849 property intangible as well.
6850
780379b1
AS
68512003-05-10 Andreas Schwab <schwab@suse.de>
6852
6853 * xmenu.c (single_menu_item): Change last parameter to void* to
6854 avoid warning.
6855
ca2de342
RS
68562003-05-09 Richard M. Stallman <rms@gnu.org>
6857
6858 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
6859 Bind Qinhibit_modification_hooks to t so there will be no GC.
6860 Rename local `tem' to `save_deactivate_mark'.
6861
6862 * eval.c (specpdl_ptr): Declare volatile.
6863 (unbind_to): Copy the whole binding and decrement specpdl_ptr
6864 before doing the work of unbinding it.
6865
6866 * lisp.h (struct specbinding): Declare elements volatile.
6867 (specpdl_ptr): Declare volatile.
6868
6869 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
6870
6871 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
6872 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
6873
347003be
DL
68742003-05-08 Dave Love <fx@gnu.org>
6875
6876 * coding.c (Vlast_coding_system_used): Doc fix.
6877
5adcec23
JR
68782003-05-07 Jason Rumney <jasonr@gnu.org>
6879
6880 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
6881 when system does not support them.
6882
5fe3b8a4
SM
68832003-05-05 Stefan Monnier <monnier@cs.yale.edu>
6884
6885 * fileio.c (Qwrite_region_annotate_functions): New var.
6886 (build_annotations): Use it to process the global part of the hook.
6887 (syms_of_fileio): Init and staticpro it.
6888
6889 * keyboard.c (safe_run_hooks_error): Display a message instead of
6890 silently ignoring the error.
6891
68922003-05-03 Stefan Monnier <monnier@cs.yale.edu>
6893
6894 * keyboard.c (input_available_signal): Mark static.
6895 (menu_bar_items): Use map_keymap.
6896 (menu_bar_one_keymap): Remove.
6897 (menu_bar_item): Adjust arglist (for use in map_keymap).
6898 Properly hide a second binding when not both are keymaps.
6899
6900 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
6901 (single_keymap_panes): Use it and map_keymap.
6902 (single_menu_item): Use skp as well.
6903
6904 * keymap.h (map_keymap_function_t): New type.
6905 (map_keymap): Declare.
6906
6907 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
6908 (map_keymap_call, Fmap_keymap): New functions.
6909 (syms_of_keymap): Defsubr map-keymap.
6910
4b1b4443
JD
69112003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6912
6913 * gtkutil.c (create_dialog, make_widget_for_menu_item)
6914 (make_menu_item, create_menus, xg_update_menu_item): Don't call
6915 ..._with_mnemonic functions for menu items.
6916
1f816871
KH
69172003-05-01 Kenichi Handa <handa@m17n.org>
6918
6919 * coding.c (coding_system_accept_latin_extra_p): Delete this
6920 function.
6921 (find_safe_codings): Pay attention to
6922 the property tranlsation-table-for-encode of each codings.
6923 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
6924
5ed6ba5b
SM
69252003-05-01 Stefan Monnier <monnier@cs.yale.edu>
6926
6927 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
6928
32c06229
SM
69292003-04-30 Stefan Monnier <monnier@cs.yale.edu>
6930
6931 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
6932
6933 * lisp.h (CHECK): Wrap args in parenthesis.
6934 (specbind): Fix doc: symbol = Qnil is not supported any more.
6935
6936 * bytecode.c (Fbyte_code) <unwind-protect>:
6937 Use Fprogn rather than 0 and Qnil.
6938
6939 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
6940 `double', and `triple' modifiers as well.
6941
ed3c3314
RS
69422003-04-30 Richard M. Stallman <rms@gnu.org>
6943
6944 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
6945
6946 * alloc.c (abort_on_gc): New variable.
6947 (Fgarbage_collect): Abort if abort_on_gc is set.
6948
6949 * lisp.h (abort_on_gc): Add decl.
6950
6951 * eval.c (Fsignal): Clear abort_on_gc.
6952
6953 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
32c06229 6954 Reinit FORMAT_START and END before second scan.
ed3c3314
RS
6955
6956 * xdisp.c (move_it_vertically_backward): Do the final big else
6957 even if nlines is 0.
6958
6959 * xdisp.c (redisplay_internal): Finish the per-frame loop
6960 even if redisplay is suspended by input.
6961
0b325c12
AC
69622003-04-24 Andrew Choi <akochoi@shaw.ca>
6963
6964 * macterm.c (x_list_fonts): Return all fonts that match if
6965 maxnames = -1.
6966
4e837cd0
KH
69672003-04-25 Kenichi Handa <handa@m17n.org>
6968
6969 * syntax.c (skip_chars): Fix previous change.
6970
9af7511a
KH
69712003-04-24 Kenichi Handa <handa@m17n.org>
6972
6973 * syntax.c (skip_chars): Make the code faster by using the common
6974 technique of *p, *stop, and *endp.
6975
e3b2c21f
JD
69762003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6977
6978 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
32c06229 6979 tool_bar_items so GTK tool bar expose callback does not access items
e3b2c21f
JD
6980 being updated.
6981
32c06229
SM
69822003-04-19 Stefan Monnier <monnier@cs.yale.edu>
6983
6984 * eval.c (Fapply): Undo last change and add a comment about why.
6985
c6464167
MB
69862003-04-18 Miles Bader <miles@gnu.org>
6987
6988 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
6989 pickier PARSE_MULTIBYTE_SEQ.
6990
e509f168
SM
69912003-04-17 Stefan Monnier <monnier@cs.yale.edu>
6992
6993 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
6994 Use XCDR, XCAR, CONSP.
6995 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
6996 (Fapply): Remove unnecessary GCPRO.
6997
6998 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
6999
7000 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
7001
7002 * buffer.h: Don't hardcode BEG==1.
7003
7004 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
7005
5ceea398
RS
70062003-04-16 Richard M. Stallman <rms@gnu.org>
7007
7008 * xdisp.c (try_window, try_window_reusing_current_matrix):
7009 When at end of window, set window_end_pos to Z-ZV.
7010
7011 * buffer.c (Foverlay_recenter): Doc fix.
7012
e509f168
SM
70132003-04-14 Stefan Monnier <monnier@cs.yale.edu>
7014
7015 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
7016
d243e605
AC
70172003-04-14 Andrew Choi <akochoi@shaw.ca>
7018
7019 * macterm.c (mac_check_for_quit_char): Don't check more often than
7020 once a second.
7021
6901b111
SM
70222003-04-11 Stefan Monnier <monnier@cs.yale.edu>
7023
7024 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
7025 specially, so that they can't hide an implicit switch-frame event.
7026 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
7027 (head_table): Use switch-frame as event_kind for select-window.
7028 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
7029
7030 * editfns.c (Fformat): Lisp_Object/int mixup.
7031 (format2): Remove unused var numargs.
7032
e301806f 70332003-04-11 Kenichi Handa <handa@m17n.org>
aa95b710 7034
6901b111 7035 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
aa95b710
KH
7036 (Qafter_insert_file_set_coding): New variable.
7037 (syms_of_fileio): Initialize and staticpro it. Delete declaration
7038 for after-insert-file-adjust-coding-function.
7039 (Finsert_file_contents): Call Qafter_insert_file_set_coding
7040 instead of Vafter_insert_file_adjust_coding_function.
7041
38914424
KH
70422003-04-11 Kenichi Handa <handa@m17n.org>
7043
7044 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
7045
7046 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
7047 string. Callers changed.
7048
70492003-04-10 Kenichi Handa <handa@m17n.org>
a288d979 7050
6901b111 7051 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
a288d979 7052 (syms_of_fileio): Declare it as a lisp variable.
6901b111
SM
7053 (Finsert_file_contents):
7054 Call Vafter_insert_file_adjust_coding_function before calling
a288d979
KH
7055 decode-format.
7056
f979dc05
JD
70572003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7058
7059 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
7060 get GtkAdjustment as widget now is a GtkRange.
7061
7062 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
7063 GtkRange to avoid memory leak.
7064
f8c6b4c2 70652003-04-09 Kenichi Handa <handa@m17n.org>
cb98871c 7066
50ebc53d
KH
7067 * xfaces.c (Vface_font_rescale_alist): New variable.
7068 (struct font_name): New member rescale_ratio.
7069 (font_rescale_ratio): New function.
6901b111 7070 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
50ebc53d
KH
7071 (better_font_p): On comparing point sized, pay attention to
7072 recale_ratio member of fonts.
7073 (build_scalable_font_name): Reflect font->rescale_ratio in the
7074 font name.
6901b111 7075 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
50ebc53d 7076
cb98871c
KH
7077 * lread.c (read1): Before calling index, check if the 2nd
7078 arguemnt is in ASCII range.
7079
4773b8ca
RS
70802003-04-08 Richard M. Stallman <rms@gnu.org>
7081
b0ada147
RS
7082 * fileio.c (Ffile_symlink_p): Doc fix.
7083
7084 * editfns.c (Fformat): Translate positions of text properties
7085 in the format string to apply them to the result.
7086
4773b8ca
RS
7087 * fileio.c (Finsert_file_contents): Doc fix.
7088 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
7089
70902003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
6901b111 7091
4773b8ca
RS
7092 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
7093
e8f25745 70942003-04-08 Steven Tamm <steventamm@mac.com>
b0ada147 7095
e8f25745
ST
7096 * mac.c (init_mac_osx_environment): Switch libexec and bin so
7097 that self-contained application finds libexec files.
7098
f8c6b4c2 70992003-04-08 Kenichi Handa <handa@m17n.org>
2310d84c 7100
6901b111
SM
7101 * coding.c (code_convert_region_unwind):
7102 Set Vlast_coding_system_used to the argument.
2310d84c
KH
7103 (code_convert_region): If post-read-conversion function changed
7104 the value of last-coding-sytem, keep the new value in
7105 coding->symbol so that it won't be overridden.
7106 (run_pre_post_conversion_on_str): Likewise.
7c086845
KH
7107 (coding_system_accept_latin_extra_p): New function.
7108 (find_safe_codings): Pay attention to characters registered in
7109 latin-extra-code-table.
2310d84c 7110
39c9a034
TTN
71112003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
7112
7113 * Makefile.in (md5.o): Add missing dependency info.
7114
eb67c5d6
RS
71152003-04-06 Richard M. Stallman <rms@gnu.org>
7116
7117 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
7118
7119 * marker.c (verify_bytepos): New function.
7120
7121 * intervals.c (set_intervals_multibyte_1): When becoming
7122 multibyte, adjust right and left child sizes to a whole set of
7123 characters. If an interval gets zero total-length, delete it.
7124 If an interval consists of just its children, delete one of them.
7125
7126 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
7127 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
39c9a034 7128
eb67c5d6
RS
7129 * alloc.c: (VALIDATE_LISP_STORAGE): Macro deleted.
7130 All calls deleted.
7131 (lisp_malloc): Do the work here directly.
7132
b1f81fc5
JB
71332003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
7134
7135 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
7136 char tables.
7137
71382003-04-04 Kenichi Handa <handa@m17n.org>
aa8b70ae
KH
7139
7140 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
7141 destructively change "%S" to "%s".
7142
774666fb
MB
71432003-04-03 Miles Bader <miles@gnu.org>
7144
7145 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
7146 always set.
7147
19c37f01
DL
71482003-04-01 Dave Love <fx@gnu.org>
7149
7150 * xfns.c (xpm_lookup_color): Grok "opaque".
7151
2f4b24c3
AC
71522003-03-31 Andrew Choi <akochoi@shaw.ca>
7153
7154 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
7155 parent window ID.
7156
7157 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
7158
7159 * macterm.h (struct mac_output): Define x_pixels_diff and
7160 y_pixels_diff.
b1f81fc5 7161
9443fcf6
JB
71622003-03-31 Juanma Barranquero <lektu@terra.es>
7163
7164 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
7165 blockinput.h and files included from it.
7166
e072891b
KS
71672003-03-31 Kim F. Storm <storm@cua.dk>
7168
7169 The following changes consolidates the common code related to
7170 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
7171 files into frame.c.
9443fcf6 7172
e072891b
KS
7173 * frame.c: Include blockinput.h.
7174 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
7175 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
7176 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
7177 related vars here.
7178 (struct frame_parm_table, frame_parms): New table for describing
7179 frame parameters and their associated Q-variable.
7180 The order of the parameters corresponds to the sequence of the
7181 frame_parm_handlers table in redisplay_interface.
7182 (x_fullscreen_move, x_set_frame_parameters)
7183 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
7184 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
7185 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
7186 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
7187 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
7188 Generic functions for processing of frame parameters.
7189 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
7190 (display_x_get_resource, x_get_resource_string): Functions for
7191 generic access to X resources.
7192 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
7193 (x_default_parameter, Fx_parse_geometry): Functions for generic
7194 access to frame parameters.
6901b111
SM
7195 (x_figure_window_size): Generic calculation of frame size.
7196 Fixed to add space needed for tool bar. Also setup size_hint_flags.
e072891b
KS
7197 (syms_of_frame): Intern and staticpro frame parameter variables.
7198 Defvar_lisp Vx_resource_class and Vx_resource_name here.
7199 Defsubr Sx_get_resource and Sx_parse_geometry.
9443fcf6 7200
e072891b
KS
7201 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
7202 parameter related vars defined in frame.c.
7203 (EMACS_CLASS): Define here.
7204 (enum FULLSCREEN_*): Define here.
7205 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
7206 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
7207 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
7208 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
7209 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
7210 (x_set_visibility, x_set_autoraise, x_set_autolower)
7211 (x_set_unsplittable, x_set_vertical_scroll_bars)
7212 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
7213 (x_figure_window_size): Add prototypes.
7214
7215 * dispextern.h (frame_parm_handler): New typedef.
7216 (struct redisplay_interface): New member frame_parm_handlers.
7217 (enum resource_types): Move declaration here.
7218 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
7219 (x_default_parameter): Add prototypes.
7220
7221 * window.c: Remove extern decl for frame parameter vars.
7222 (change_window_heights): New generic function;
7223 replaces x_change_window_heights. All users changed.
7224
7225 * window.h (change_window_heights): Add prototype.
7226
7227 * xfaces.c: Remove extern decl for frame parameter vars.
7228
7229 * xterm.h (EMACS_CLASS): Remove. Use generic define.
7230 (struct w32_display_info): Fix type of xrdb member.
7231 (enum FULLSCREEN_*): Remove.
7232 Remove prototypes for generic functions (in frame.h).
7233
7234 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
7235 parameters now defined in frame.h and frame.c.
f63fd14e 7236 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
7237 (enum x_frame_parms): Remove (bogus, unused enum).
7238 (check_x_display_info): Make non-static (for frame.c).
7239 (struct x_frame_parm_table, x_frame_parms): Remove.
7240 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
7241 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
7242 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
7243 (x_change_window_heights, x_set_autoraise, x_set_autolower)
7244 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
7245 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
7246 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
7247 Remove. Use generic functions instead.
7248 (enum resource_types): Remove.
7249 (x_set_scroll_bar_default_width): New global function (for frame.c).
7250 (Fx_create_frame): Depend on x_figure_window_size to add space for
7251 toolbar and setup size_hint_flags.
7252 (x_frame_parm_handlers): New table for redisplay_interface.
7253 (syms_of_xfns): Don't intern/staticpro removed vars.
9443fcf6 7254
e072891b 7255 * xterm.c: Remove unnecessary extern declarations.
f63fd14e 7256 (x_fullscreen_adjust): Remove. Use generic instead.
e072891b
KS
7257 (x_redisplay_interface): Add x_frame_parm_handlers member.
7258
7259 * w32gui.h (XrmDatabase): New (dummy) typedef.
7260
7261 * w32term.h (EMACS_CLASS): Remove. Use generic define.
7262 (struct w32_display_info): Fix type of xrdb member.
7263 (enum FULLSCREEN_*): Remove.
7264 (x_fullscreen_adjust): Remove prototype.
7265
7266 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
7267 parameters now defined in frame.h and frame.c.
f63fd14e 7268 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
7269 (enum x_frame_parms): Remove (bogus, unused enum).
7270 (check_x_display_info): Make non-static (for frame.c).
7271 (struct x_frame_parm_table, x_frame_parms): Remove.
7272 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
7273 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
7274 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
7275 (x_change_window_heights, x_set_autoraise, x_set_autolower)
7276 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
7277 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
7278 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
7279 Remove. Use generic functions instead.
7280 (enum resource_types): Remove.
7281 (x_set_scroll_bar_default_width): New global function (for frame.c).
7282 (Fx_create_frame): Depend on x_figure_window_size to add space for
7283 toolbar and setup size_hint_flags.
7284 (w32_frame_parm_handlers): New table for redisplay_interface.
7285 (syms_of_w32fns): Don't intern/staticpro removed vars.
9443fcf6 7286
e072891b
KS
7287 * w32term.c: Remove unnecessary extern declarations.
7288 (x_fullscreen_adjust): Remove. Use generic instead.
7289 (x_redisplay_interface): Add w32_frame_parm_handlers member.
7290
7291 * w32reg.c (x_get_string_resource): Use XrmDatabase.
7292
7293 * macgui.h (XrmDatabase): New (dummy) typedef.
7294
7295 * macterm.h (EMACS_CLASS): Remove.
7296 (struct mac_display_info): Add xrdb member.
7297 (struct mac_output): Add want_fullscreen member.
7298
7299 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
7300 parameters now defined in frame.h and frame.c.
f63fd14e 7301 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
7302 (check_x_display_info): Make non-static (for frame.c).
7303 (struct x_frame_parm_table, x_frame_parms): Remove.
7304 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
7305 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
7306 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
7307 (x_change_window_heights, x_set_autoraise, x_set_autolower)
7308 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
7309 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
7310 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
7311 Remove. Use generic functions instead.
7312 (enum resource_types): Remove.
7313 (x_set_scroll_bar_default_width): New global function (for frame.c).
7314 (mac_frame_parm_handlers): New table for redisplay_interface.
7315 (syms_of_macfns): Don't intern/staticpro removed vars.
9443fcf6 7316
e072891b
KS
7317 * macterm.c: Remove unnecessary extern declarations.
7318 (x_redisplay_interface): Add mac_frame_parm_handlers member.
7319
3e6a560b
KS
7320 * Makefile.in (frame.o): Add dependency on blockinput.h and files
7321 included from it (atimer.h and systime.h).
7322
7b7b454e
AS
73232003-03-30 Andreas Schwab <schwab@suse.de>
7324
7325 * xdisp.c (x_insert_glyphs): Fix swapped width and height
7326 parameters for shift_glyphs_for_insert.
7327
7328 * macterm.c (x_redisplay_interface): Add missing entry for
7329 draw_vertical_window_border.
7330
beb402de
KG
73312003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
7332
7333 * fileio.c (Fexpand_file_name): In the no-handler case, after
7334 expanding, look again for a handler and invoke it. This is needed
7335 for filenames like "/foo/../user@host:/bar/../baz" -- the first
7336 expansion produces "/user@host:/bar/../baz" which needs to be
7337 expanded again for the finame result "/user@host:/baz".
7338
b676f356
JD
73392003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7340
7341 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
7342 of area to be redrawn for better performance.
7343
3c671a56
SM
73442003-03-28 Stefan Monnier <monnier@cs.yale.edu>
7345
7346 * xterm.c (take_vertical_position_into_account): Remove.
7347 (xt_action_hook): Call set_vertical_scroll_bar if needed.
7348 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
7349 (xm_scroll_callback, x_create_toolkit_scroll_bar)
7350 (x_set_toolkit_scroll_bar_thumb): Simplify.
7351 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
7352 (XTread_socket): Remove unused var.
7353 (x_make_frame_invisible): Replace goto with else.
7354
7355 * xdisp.c (set_vertical_scroll_bar): New fun.
7356 (redisplay_window): Use it.
7357
84f2e615
RS
73582003-03-26 Richard M. Stallman <rms@gnu.org>
7359
7360 * xdisp.c (update_tool_bar): Recompute tool bar if
7361 update_mode_lines is set. Set w->update_mode_line
7362 only if the tool bar contents actually change.
7363 (update_menu_bar): Undo previous change.
7364
70b6104c
JD
73652003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7366
5fd6f727
JD
7367 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
7368 (xg_frame_set_char_size): Calculate scroll bar width before frame
7369 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
7370 (xg_separator_p): Check for all documented separator types.
7371 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
7372 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
7373
70b6104c
JD
7374 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
7375 so tool bar gets updated.
7376
d9b36d19
SM
73772003-03-26 Stefan Monnier <monnier@cs.yale.edu>
7378
7379 * data.c (store_symval_forwarding): Re-instate part of the code
7380 that was deleted with too much enthusiasm.
7381
73822003-03-25 Stefan Monnier <monnier@cs.yale.edu>
7383
7384 * data.c (store_symval_forwarding): Delete special read-only
7385 hack for type == -1, since we now use ->constant instead.
7386 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
7387
7388 * buffer.c (overlays_in): Declare static.
7389 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
7390 `constant' field rather than the variable's `type' field.
7391
365fa1b3
AC
73922003-03-24 Andrew Choi <akochoi@shaw.ca>
7393
7394 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
7395
7396 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
7397
7398 * fns.c [MAC_OSX]: Do not redefine vector.
7399
7400 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
7401
7402 * macgui.h: Remove definition of No_Cursor.
7403
d9b36d19 7404 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
365fa1b3
AC
7405
7406 * xdisp.c: Define No_Cursor.
7407 (x_write_glyphs, notice_overwritten_cursor)
7408 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
7409 (note_mouse_highlight): Remove Mac-specific code.
7410 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
d9b36d19 7411
c0bcce6f
JPW
74122003-03-24 John Paul Wallington <jpw@gnu.org>
7413
7414 * xdisp.c (redisplay_window): If mini window's buffer is not
7415 empty, then redisplay it like other windows.
7416
a526b96c
KS
74172003-03-23 Kim F. Storm <storm@cua.dk>
7418
7419 * w32term.c (w32_draw_window_cursor): Fix last change.
7420
37ab321e
KH
74212003-03-23 Kenichi Handa <handa@m17n.org>
7422
a526b96c
KS
7423 * alloc.c (make_string_from_bytes, make_specified_string):
7424 Add `const' for the arg CONTENTS.
37ab321e
KH
7425
7426 * lisp.h (make_string_from_bytes, make_specified_string):
7427 Prototypes adjusted.
7428
7863d625
JD
74292003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7430
a526b96c 7431 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
fd4c9408 7432
7863d625
JD
7433 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
7434 (XG_SB_RANGE): New define.
7435
7436 * gtkutil.c (xg_fixed_handle_expose): New function.
7437 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
7438 expose events.
7439 (xg_update_scrollbar_pos): Take two more arguments, left and width
7440 of scroll bar including borders.
7441 Clear left and right part outside scroll bar separately as some
7442 themes have bars that are not an even number of pixels.
d9b36d19 7443 Don't set reallocate_redraws, don't call
7863d625
JD
7444 gdk_window_process_all_updates.
7445 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
7446 so no need to change it. Calculate size and value with XG_SB_RANGE.
7447
d9b36d19
SM
7448 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
7449 Pass left and width of scroll bar including borders to
7863d625
JD
7450 xg_update_scrollbar_pos.
7451
af0ad939
TTN
74522003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
7453
7454 * Makefile.in: Make sure space precedes end-of-line backslashes.
7455
b22139fd
KS
74562003-03-22 Kim F. Storm <storm@cua.dk>
7457
7458 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
7459 Add generic versions here. Remove system specific versions
7460 defined elsewhere.
7461
7462 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
7463 Add prototypes.
7464
6e6410cf
KS
7465 * xterm.h (STORE_NATIVE_RECT): New macro.
7466
5c9cc435
KS
74672003-03-21 Kim F. Storm <storm@cua.dk>
7468
00c64fab
SM
7469 * xdisp.c (get_glyph_string_clip_rect):
7470 Use FRAME_INTERNAL_BORDER_WIDTH.
5c9cc435
KS
7471
7472 * dispextern.h (struct redisplay_interface): Add active_p
7473 argument to draw_window_cursor member. All uses changed.
7474
acd37560
KS
74752003-03-21 Kim F. Storm <storm@cua.dk>
7476
7477 The following changes consolidate code related to writing and
7478 inserting glyphs, exposing frame, the tool bar, the mouse face,
7479 the output cursor, and help echo from xterm.c, w32term.c and
7480 macterm.c into xdisp.c. It also generalizes the use of the
7481 window_part enum instead of using numeric values throughout.
af0ad939 7482
acd37560
KS
7483 * xdisp.c: Consolidate gui-independent code here.
7484 Include keymap.h.
7485 (Qhelp_echo): Import.
7486 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
7487 (help_echo_string, help_echo_window, help_echo_object)
7488 (previous_help_echo_string, help_echo_pos): Declare here.
7489 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
7490 (estimate_mode_line_height): Define here. Handle windowing
7491 systems directly (without using estimate_mode_line_height_hook).
7492 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
7493 (update_window_cursor, update_cursor_in_window_tree)
7494 (fast_find_position, fast_find_string_pos)
7495 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
7496 (expose_area, expose_line, expose_overlaps, expose_window)
7497 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
7498 declared static as they are only used locally in xdisp.c.
7499 (draw_glyphs): Rename from x_draw_glyphs and make static.
7500 (tool_bar_item_info, notice_overwritten_cursor): Make static.
7501 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
7502 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
af0ad939 7503 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
acd37560
KS
7504 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
7505 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
7506 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
7507 (note_mouse_highlight, x_clear_window_mouse_face)
7508 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
7509 (x_intersect_rectangles): New generic functions for use by xdisp.c
7510 and GUI front-ends.
7511 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
7512 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
7513
7514 * dispextern.h (Display_Info): Generic typedef for *_display_info.
7515 (NativeRectangle): Generic typedef for rectangle type.
7516 (enum window_part): Move here from window.c.
7517 (struct redisplay_interface): New members flush_display_optional,
7518 define_frame_cursor, clear_frame_area, draw_window_cursor,
7519 draw_vertical_window_border, shift_glyphs_for_insert.
7520 Rename member clear_mouse_face to clear_window_mouse_face.
7521 (estimate_mode_line_height_hook): Remove hook.
7522 (auto_raise_tool_bar_buttons_p): Don't declare extern.
7523 (tool_bar_item_info): Remove prototype.
7524 (help_echo_string, help_echo_window, help_echo_object)
7525 (previous_help_echo_string, help_echo_pos)
7526 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
7527 (x_stretch_cursor_p, output_cursor): Declare extern.
7528 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
7529 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
7530 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
7531 (display_and_set_cursor, set_output_cursor, x_cursor_to)
7532 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
7533 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
7534 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
7535 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
7536 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
7537 Add prototypes.
7538 (mode_line_string, marginal_area_string): Fix prototypes.
7539
7540 * window.c (enum window_part): Move to dispextern.h.
7541 (coordinates_in_window): Use enum window_part member names
7542 instead of numbers to describe return value.
7543 (struct check_window_data): Change part member to window_part.
7544 (check_window_containing): Return window_part unaltered.
7545 (window_from_coordinates): Change part arg from int to enum
7546 window_part. Allow part arg to be null. All users changed.
7547
7548 * window.h (window_from_coordinates): Fix prototype.
7549
7550 * term.c (estimate_mode_line_height): Move to xdisp.c.
7551
7552 * keyboard.c (make_lispy_event): Use enum window_part.
7553
7554 * dispnew.c (mode_line_string, marginal_area_string): Use enum
7555 window_part instead of int in arg list. Users changed.
7556
7557 * xterm.h (No_Cursor): Declare as None for X.
7558 (struct mac_output): Replace member cross_cursor by hand_cursor.
af0ad939 7559
acd37560
KS
7560 * xterm.c: Remove consolidated defines and code.
7561 (BETWEEN): Remove unused macro.
7562 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
7563 (x_define_frame_cursor, x_clear_frame_area)
7564 (x_draw_window_cursor): New X-specific functions for RIF.
7565 (x_redisplay_interface): Add new members.
7566
7567 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
7568
7569 * w32term.h (struct w32_output): Remove cross_cursor member.
7570
7571 * w32term.c: Remove consolidated defines and code.
7572 (BETWEEN): Remove unused macro.
7573 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
7574 (w32_define_frame_cursor, w32_clear_frame_area)
7575 (w32_draw_window_cursor): New W32-specific functions for RIF.
7576 (w32_redisplay_interface): Add new members.
7577
a64387ee 7578 * w32gui.h (No_Cursor): Define as 0 for W32.
acd37560
KS
7579 (XRectangle): Add X compatible rectangle type.
7580 (NativeRectangle): Declare as RECT for W32.
7581 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
7582
7583 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
7584
7585 * w32console.c: Remove consolidated defines and code.
af0ad939 7586
acd37560
KS
7587 * msdos.h (Display_Info): Add generic typedef.
7588
7589 * msdos.c: Remove consolidated defines and code.
7590 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
7591
7592 * macterm.h (struct mac_output): Replace member cross_cursor by
7593 hand_cursor.
7594 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
7595
7596 * macterm.c: Remove consolidated defines and code.
7597 (BETWEEN): Remove unused macro.
7598 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
7599 (mac_define_frame_cursor, mac_clear_frame_area)
7600 (mac_draw_window_cursor): New Mac-specific functions for RIF.
7601 (x_redisplay_interface): Add new members.
7602
7603 * macgui.h (No_Cursor): Define as 0 for Mac.
7604 (XRectangle): Add X compatible rectangle type.
7605 (NativeRectangle): Declare as Rect for Mac.
7606 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
7607
204ccab1
KS
7608 * macfns.c (x_set_mouse_color): Setup hand_cursor.
7609 (x_set_cursor_color): Use x_display_and_set_cursor.
acd37560 7610
9443fcf6 7611 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
acd37560
KS
7612 included from it. Add dependency on keymap.h.
7613
7614 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
7615
8ba01a70 76162003-03-21 Kenichi Handa <handa@m17n.org>
3f817c73
KH
7617
7618 * fileio.c (Fexpand_file_name): Fix previous change.
7619
8ba01a70 76202003-03-19 Kenichi Handa <handa@m17n.org>
4f497b0a
KH
7621
7622 * fileio.c (Ffile_name_directory): Reconstruct file name by
7623 make_specified_string.
7624 (Ffile_name_nondirectory, Ffile_name_as_directory)
7625 (Fdirectory_file_name, Fexpand_file_name)
7626 (Fsubstitute_in_file_name): Likewise.
7627 (Fread_file_name): Compare decoded homedir with DIR and
7628 DEFAULT_FILENAME.
7629
7630 * alloc.c (make_specified_string): If NCHARS is negative, count
7631 the number of characters.
7632
19536747
JD
76332003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7634
de38ae5a
JD
7635 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
7636 all widgets.
7637
19536747
JD
7638 * gtkutil.h: Removed xg_ignore_next_thumb.
7639
37ab321e 76402003-03-18 Kenichi Handa <handa@m17n.org>
cb0d4562
KH
7641
7642 * coding.c (Vchar_coding_system_table): Remove this variable.
7643 (Vcoding_system_safe_chars): New variable.
7644 (intersection): Remove this function.
7645 (find_safe_codings): Don't use Vchar_coding_system_table, but try
7646 all codings in SAFE_CODINGS.
00c64fab 7647 (Ffind_coding_systems_region_internal): Adjust for the change of
cb0d4562
KH
7648 find_safe_codings. Get generic coding systems from
7649 Vcoding_system_safe_chars.
7650 (Fdefine_coding_system_internal): New function.
7651 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
7652 Initialize and staticpro Vcoding_system_safe_chars.
7653
17097258
JD
76542003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7655
2a2071c3
JD
7656 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
7657 equal old values before updating.
7658
17097258
JD
7659 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
7660
7661 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
7662
76632003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7664
7665 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
7666 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
7667 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
7668 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
7669 (xg_create_scroll_bar): Pass bar to button event callback.
7670 (xg_find_top_left_in_fixed): New function.
7671 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
7672 whole scroll bar area. Get old position with
7673 xg_find_top_left_in_fixed, calculate and only clear needed areas.
7674 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
7675 dragging is in progress. Calculate whole as for Motif.
7676 Remove code that saved last values. Call gtk_range functions to
7677 set scroll bar sizes.
7678
7679 * gtkutil.h: Removed xg_ignore_next_thumb.
7680
8cb9dfbf
JB
76812003-03-17 Juanma Barranquero <lektu@terra.es>
7682
7683 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
7684 and files included from it.
7685
00c64fab
SM
76862003-03-18 Stefan Monnier <monnier@cs.yale.edu>
7687
7688 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
7689 multiple occurrences of the same keymap under different prefixes.
7690 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
7691
c45bb3b2
JR
76922003-03-16 Jason Rumney <jasonr@gnu.org>
7693
7694 * w32gui.h: Use HDC for Display.
7695
7696 * w32term.c (w32_encode_char): Prevent double-byte chars from
7697 crashing Emacs.
7698
7699 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
7700 as binary.
7701
2a6d0874
JB
77022003-03-16 Juanma Barranquero <lektu@terra.es>
7703
7704 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
7705
03eb5fab
KS
77062003-03-16 Kim F. Storm <storm@cua.dk>
7707
7708 The following changes consolidate some of the gui-independent
7709 parts of the processing and drawing of "glyph strings" from
7710 xterm.c, w32term.c, and macterm.c into xdisp.c.
2a6d0874 7711
03eb5fab
KS
7712 * dispextern.h (struct glyph): Reduce face_id member from 22 to
7713 21 bits (this reduces number of faces from 4M to 2M).
7714 Replace W32 specific w32_font_type member (2 bits) by generic
7715 font_type member (3 bits) for portability.
7716 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
7717 (enum draw_glyphs_face): Define here.
7718 (struct glyph_string): Define here. Merge W32 and X versions.
7719 (struct redisplay_interface): New members per_char_metric,
7720 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
7721 (VCENTER_BASELINE_OFFSET): Define here.
7722 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
7723 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
7724
7725 * xdisp.c: Consolidate gui-independent "glyph string" code here.
7726 (dump_glyph_string): Moved here.
7727 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
7728 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
7729 (fill_composite_glyph_string, fill_glyph_string)
7730 (fill_image_glyph_string, fill_stretch_glyph_string)
7731 (left_overwritten, left_overwriting, right_overwritten)
7732 (right_overwriting, get_char_face_and_encoding)
7733 (set_glyph_string_background_width, compute_overhangs_and_x)
7734 (append_glyph, append_composite_glyph, produce_image_glyph)
7735 (take_vertical_position_into_account, append_stretch_glyph)
7736 (produce_stretch_glyph): New generic functions (based on X version).
7737 Call platform specific functions through rif.
7738 (INIT_GLYPH_STRING): New macro, hides W32 details.
7739 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
7740 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
7741 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
7742 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
7743 (notice_overwritten_cursor):
7744 Generic functions exported to platform modules. Users changed.
7745
7746 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
7747 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
7748 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
fad49844 7749 New macros for consolidated code.
2a6d0874 7750
03eb5fab
KS
7751 * xterm.c: Remove consolidated defines and code.
7752 (x_per_char_metric, x_encode_char)
7753 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
7754 (x_redisplay_interface): Add new members.
7755
7756 * w32gui.h (Display): Add dummy typedef for consolidation.
7757 (XChar2b): Define alias for wchar_t for consolidation.
7758 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
7759
7760 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
2a6d0874 7761 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
03eb5fab
KS
7762 New macros for consolidation.
7763
fad49844 7764 * w32term.c: Remove consolidated defines and code.
03eb5fab
KS
7765 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
7766 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
7767 (w32_per_char_metric): Change font_type arg to int for RIF.
7768 (w32_encode_char): Return int according to RIF requirements.
7769 (w32_compute_glyph_string_overhangs): Adapt to RIF.
7770 (w32_get_glyph_overhangs): New function for RIF. Uses generic
7771 x_get_glyph_overhangs.
7772 (w32_redisplay_interface): Add new members.
7773
7774 * macgui.h (XChar2b): Move typedef here for consolidation.
7775 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
7776
7777 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
7778 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
7779 consolidation.
7780
7781 * macterm.c: Remove consolidated defines and code.
7782 (mac_per_char_metric): New function for RIF.
00c64fab 7783 (mac_encode_char): Adapt to new RIF requirements.
03eb5fab
KS
7784 (mac_compute_glyph_string_overhangs): Adapt for RIF.
7785 (x_redisplay_interface): Add new members.
7786
00c64fab
SM
77872003-03-15 Stefan Monnier <monnier@cs.yale.edu>
7788
7789 * keymap.c (Vmenu_events): New var.
7790 (syms_of_keymap): Initialize it.
7791 (where_is_internal): Check more carefully what is a menu event.
7792
225c7a07
RS
77932003-03-14 Richard M. Stallman <rms@gnu.org>
7794
7795 * lread.c (read1): After #!, exit loop on eof.
7796
cea9be54
JD
77972003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7798
9ea0e54d
JD
7799 * gtkutil.h: Add declaration for xg_frame_cleared.
7800
0cb35f4e
JD
7801 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
7802
cea9be54
JD
7803 * gtkutil.c (struct xg_last_sb_pos): New structure.
7804 (handle_fixed_child): New function.
7805 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
7806 and force a redraw on them.
7807 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
7808 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
7809 so we can avoid unneeded redraws.
7810 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
7811 and force a redraw on the scroll bar.
7812 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
7813 if xg_last_sb_pos shows the positions are up to date.
0cb35f4e 7814 (xg_frame_cleared): New function.
cea9be54 7815
20b853f3
KH
78162003-03-13 Kenichi Handa <handa@m17n.org>
7817
7818 * coding.c (Fdetect_coding_region): Fix docstring.
7819 (Fdetect_coding_string): Fix docstring.
7820
7a555aff
AS
78212003-03-13 Andreas Schwab <schwab@suse.de>
7822
25cc0080
AS
7823 * gtkutil.c: Add prototype for create_menus.
7824
30225431
AS
7825 * data.c (long_to_cons): Fix type of top.
7826
7827 * xselect.c (selection_data_to_lisp_data): Use int instead of
7828 long for an integer of size 4.
7829
7a555aff 7830 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
30225431 7831 (xg_tool_bar_help_callback): Likewise.
7a555aff 7832
a3e4741f
AS
78332003-03-12 Andreas Schwab <schwab@suse.de>
7834
7835 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
7836
9668be7c
KS
78372003-03-12 Kim F. Storm <storm@cua.dk>
7838
03eb5fab 7839 The following changes consolidate the fringe handling from
9668be7c 7840 xterm.c, w32term.c, and macterm.c into xdisp.c.
00a88f32 7841
9668be7c
KS
7842 * xdisp.c: Consolidate fringe handling code here.
7843 (left_bits, right_bits, continued_bits, continuation_bits)
7844 (ov_bits, zv_bits): Define fringe bitmaps.
7845 (fringe_bitmaps): New array holding fringe bitmaps.
7846 (draw_fringe_bitmap): Draw a specific bitmap; call display
7847 specific drawing routine via rif->draw_fringe_bitmap.
7848 (draw_row_fringe_bitmaps): Generic replacement for
7849 x_draw_row_fringe_bitmaps; all callers changed.
7850 (compute_fringe_widths): Generic replacement for
7851 x_compute_fringe_widths; all callers changed.
7852
7853 * dispextern.h (enum fringe_bitmap_type): Define here.
7854 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
7855 (fringe_bitmaps): Declare extern.
7856 (struct redisplay_interface): New member draw_fringe_bitmap.
7857 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
7858
7859 * xterm.c: Remove generic fringe code.
7860 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
7861 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
7862
7863 * w32term.c: Remove generic fringe code.
7864 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
7865 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
00a88f32 7866
9668be7c
KS
7867 * macterm.c: Remove generic fringe code.
7868 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
7869 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
7870
00a88f32
SM
78712003-03-11 Stefan Monnier <monnier@cs.yale.edu>
7872
7873 * print.c (Fprin1_to_string): Return unibyte string if possible.
7874
1d1de695
DK
78752003-03-09 David Kastrup <dak@gnu.org>
7876
7877 * process.c (read_process_output): We have allocated enough space
7878 for readmax and carryover, so actually use the alloted space.
7879
257f40f2
JD
78802003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7881
7882 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
7883 toolkit scrollbar click.
7884
7885 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
7886 for USE_GTK.
7887 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
7888 also.
7889 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
7890 scrollbar and control is pressed, call x_scroll_bar_handle_click.
00a88f32 7891
257f40f2
JD
7892 * gtkutil.h: Declare xg_get_scroll_id_for_window.
7893
7894 * gtkutil.c (xg_get_scroll_id_for_window): New function.
7895 (xg_tool_bar_item_expose_callback): New function.
7896 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
7897 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
7898 on the tool bar widget.
7899 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
7900 to expose on the tool bar item widgets.
7901
15213141
JD
79022003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7903
26b74a0b 7904 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
00a88f32 7905 struct image* when deciding to update (struct image* may have been
26b74a0b
JD
7906 deleted from the image cache).
7907
15213141
JD
7908 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
7909 the event isn't for a frame (i.e. for dialogs).
7910
20b853f3 79112003-03-07 Kenichi Handa <handa@m17n.org>
cb681b34
KH
7912
7913 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
7914 composition components reaches the limit, terminate composing.
7915 (COMPOSITION_OK): New macro.
00a88f32 7916 (detect_coding_iso2022): Use it if an escape sequence for
cb681b34
KH
7917 composition is found.
7918 (coding_restore_composition): Adjust the number of composition
7919 components if it is not sane.
7920
c9029fe5
JB
79212003-03-06 Juanma Barranquero <lektu@terra.es>
7922
7923 * w32term.h (struct w32_display_info): Add xrdb member to support
7924 passing resources via -xrm on Windows.
7925
7926 * w32term.c (w32_make_rdb): New function.
7927 (w32_term_init): Use it to initialize xrdb member of w32_display_info
7928 struct. Delete leftover code.
7929
7930 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
7931 for resources passed on the command line.
7932
7933 * w32reg.c (w32_get_rdb_resource): New function.
7934 (x_get_string_resource): Use it, so resources passed with -xrm
7935 supercede the ones in the registry.
7936
9d00001f
JD
79372003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7938
7939 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
7940 instead of x_top_window_to_frame.
7941
ca2417b9
JD
79422003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7943
7944 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
7945 when restarting Emacs.
7946
5b20caf0
RS
79472003-03-03 Richard M. Stallman <rms@gnu.org>
7948
7949 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
7950 to run kill-buffer-query-functions.
7951 (Qkill_buffer_query_functions): New var.
7952 (syms_of_buffer): Init and staticpro it.
7953
58e91b77
JD
79542003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7955
7956 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
7957
932357b4
KS
79582003-02-25 Kim F. Storm <storm@cua.dk>
7959
7960 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
7961 If centering point failed to make whole line visible and vscroll
7962 is non-zero, disable vscroll and try centering point again.
7963
7964 * lread.c (read1): Accept `single space' syntax like (? x).
7965
bb8db7e1
JD
79662003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7967
7968 * keyboard.c (cancel_hourglass_unwind): Surround with
7969 #ifdef HAVE_X_WINDOWS
7970
47d77aab
KH
79712003-02-25 Kenichi Handa <handa@m17n.org>
7972
7973 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
7974 process only when "subprocesses" is defined.
7975
6a097c0c
SM
79762003-02-24 Stefan Monnier <monnier@cs.yale.edu>
7977
7978 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
7979
0b063c27
JB
79802003-02-24 Juanma Barranquero <lektu@terra.es>
7981
d1135afc
JB
7982 * callint.c (fix_command): Declare as static void and move before
7983 Fcall_interactively.
7984
0b063c27
JB
7985 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
7986 (syms_of_xdisp): Don't initialize Qwhen.
7987
0af912f0
JD
79882003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7989
7990 * keyboard.c (cancel_hourglass_unwind): New function.
7991 (command_loop_1): Cancel hourglass with unwind-protect.
7992
120d0a23
RS
79932003-02-23 Richard M. Stallman <rms@gnu.org>
7994
7995 * callint.c (fix_command): New subroutine, from Fcall_interactively.
7996 Detect (when ... (region-beginning)) etc.
7997 (Fcall_interactively): Call fix_command.
7998 (Qif, Qwhen): New variables.
7999 (syms_of_callint): Init and staticpro them.
0b063c27 8000
120d0a23
RS
8001 * regex.c (print_partial_compiled_pattern): Output to stderr.
8002
4ece81a6
KG
80032003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
8004
8005 * dired.c (directory_files_internal): Don't expand directory.
8006 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
8007 instead. From Lars Hansen <larsh@math.ku.dk>.
8008
e52bd6b7
SM
80092003-02-22 Stefan Monnier <monnier@cs.yale.edu>
8010
8011 * fns.c (string_to_multibyte): Remove unused var i.
8012 (Flanginfo): Fix int/Lisp_Object mixup.
8013 (void_call2): New fun.
8014 (Fmap_char_table): Use it in place of call2.
8015
8016 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
8017
8018 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
8019
8020 * keymap.c (copy_keymap_1): Make it static.
8021
8022 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
8023
c33ef7c4
JB
80242003-02-22 David Ponce <david@dponce.com>
8025
8026 * lread.c (Fload): Don't check STRING_MULTIBYTE.
8027
16782258
JD
80282003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8029
8030 * process.h: Removed subtty field from struct Lisp_Process.
8031
8032 * process.c (create_process): Remove setting of subtty.
8033 (emacs_get_tty_pgrp): New function.
e52bd6b7
SM
8034 (Fprocess_running_child_p, process_send_signal):
8035 Call emacs_get_tty_pgrp instead of ioctl.
16782258
JD
8036 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
8037
3abeca61
KG
80382003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
8039
8040 * keymap.c (Fdefine_key): Doc fix.
8041
92a8ce63
JB
80422003-02-21 Juanma Barranquero <lektu@terra.es>
8043
8044 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
8045
8046 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
8047 POLLING_PROBLEM_IN_SELECT.
8048
8049 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
8050 Delete #undef of POLLING_PROBLEM_IN_SELECT.
8051
8052 * s/hpux10-20.h: New file.
8053
e52bd6b7
SM
8054 * process.c (wait_reading_process_input):
8055 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
92a8ce63 8056
20f1ef2e
KH
80572003-02-20 Kenichi Handa <handa@m17n.org>
8058
32d0a9dc
KH
8059 * fontset.c (check_fontset_name): If NAME is nil, return the
8060 default fontset.
8061 (override_font_info): New function.
e52bd6b7 8062 (Fset_fontset_font): Document that NAME nil means the default fontset.
32d0a9dc
KH
8063 (Ffontset_info): If FONTSET is not the default fontset, merge
8064 FONTSET onto the copy of the default fontset, and work on that
8065 copy. Document that NAME nil means the default fontset.
8066 (Ffontset_font): Document that NAME nil means the default fontset.
8067
20f1ef2e
KH
8068 * process.c (setup_process_coding_systems): If the process's
8069 in/out descriptor is -1, do nothing.
8070
77d1daf2
AS
80712003-02-19 Andreas Schwab <schwab@suse.de>
8072
e52bd6b7
SM
8073 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
8074 Add prototypes.
77d1daf2 8075
f9a45bb3
KH
80762003-02-19 Kenichi Handa <handa@m17n.org>
8077
8078 * xfaces.c (try_alternative_families): Try all scalable fonts if
8079 Vscalable_fonts_allowed is not Qt.
8080
72ecb43c
JD
80812003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8082
8083 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
8084
ee5be7c3
JD
80852003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8086
8087 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
8088 names.
8089
8090 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
e52bd6b7 8091 (sorted_font_list): Move allocation of struct font_name to
ee5be7c3
JD
8092 x_face_list_fonts.
8093 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
8094 (Fx_list_fonts): Set maxnames to -1 to get all font names.
8095
4cd519a7
KS
80962003-02-18 Kim F. Storm <storm@cua.dk>
8097
068f9882
KS
8098 * lread.c (read1): Fix last change.
8099 "`" is not always special. Allow "?" after a character constant.
4cd519a7 8100
7290a344
AC
81012003-02-18 Andrew Choi <akochoi@shaw.ca>
8102
8103 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
8104
1f7fa69b
AS
81052003-02-18 Andreas Schwab <schwab@suse.de>
8106
8107 * window.c (window_scroll_pixel_based): Move outside a
8108 multi-glyph character before setting new window start.
8109
8110 * xdisp.c (in_display_vector_p): New function.
8111 * dispextern.h (in_display_vector_p): Declare.
8112
23e21195
KS
81132003-02-18 Kim F. Storm <storm@cua.dk>
8114
8115 * lread.c (read1): Fix and relax read syntax.
8116 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
8117 Only recognize "," after dotted-pair dot if inside backquote.
8118 Never include "`" or "," (inside backquote) in a symbol.
8119 Allow dotted-pair dot after a character constant.
8120 Allow "`" and "," (inside backquote) after a character constant.
92a8ce63 8121
f098b121
JD
81222003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8123
8124 * gtkutil.c (xg_tool_bar_expose_callback): New function.
8125 (xg_create_tool_bar): Force style of tool bar to be horizontal with
8126 icons. Set name of tool bar to emacs-toolbar.
8127 (update_frame_tool_bar): Connect expose event to
8128 xg_tool_bar_expose_callback.
8129
63020c46
RS
81302003-02-17 Richard M. Stallman <rms@gnu.org>
8131
8132 * keyboard.c (this_command_key_count_reset): New variable.
8133 Initiatize to 0 where this_command_key_count is set.
8134 (read_char): Save and restore this_command_key_count_reset
8135 around input method code.
8136 (read_char): If this_command_key_count_reset, echo reread commands.
8137 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
8138
fb4452cc
KH
81392003-02-17 Kenichi Handa <handa@m17n.org>
8140
8141 * fns.c (string_to_multibyte): Always return a multibyte string.
8142
bd11cc09
JR
81432003-02-16 Jason Rumney <jasonr@gnu.org>
8144
e52bd6b7
SM
8145 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
8146 Negative max_fonts parameter means list all.
bd11cc09 8147
4cdf4bde
DL
81482003-02-14 Dave Love <fx@gnu.org>
8149
8150 * fns.c (Flanginfo): Doc fix.
8151
023b93f6
KS
81522003-02-13 Kim F. Storm <storm@cua.dk>
8153
37cd4238
KS
8154 * lread.c (read_escape): Interpret \s as a SPACE character, except
8155 for \s-X in a character constant which still is the super modifier.
8156 (read1): Signal an `invalid read syntax' error if a character
8157 constant is immediately followed by a digit or symbol character.
8158
140a6b7e
KS
8159 * search.c (Fmatch_data): Doc fix. Explicitly state that
8160 match-data is undefined if last search failed.
8161
023b93f6
KS
8162 * keymap.c (Fcommand_remapping): Renamed from Fremap_command.
8163 All uses changed.
8164
7d5c86e5
JB
81652003-02-12 Juanma Barranquero <lektu@terra.es>
8166
8167 * eval.c (Fdefmacro): Fix typo.
8168
295fff2c
KS
81692003-02-12 Kim F. Storm <storm@cua.dk>
8170
8171 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
8172 macro is a string, convert meta modifiers in string when copying
8173 the string into a vector.
8174
60f3202d
KS
81752003-02-11 Kim F. Storm <storm@cua.dk>
8176
8177 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
8178
61cb0b53
KH
81792003-02-11 Kenichi Handa <handa@m17n.org>
8180
8181 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
8182
7392e23c
KS
81832003-02-10 Kim F. Storm <storm@cua.dk>
8184
8185 * process.c: Doc fixes.
8186 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
8187
ce4254bd
KH
81882003-02-10 Kenichi Handa <handa@m17n.org>
8189
9c7a329a
KH
8190 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
8191
ce4254bd
KH
8192 * process.c (QCfilter_multibyte): New variable.
8193 (setup_process_coding_systems): New function.
e52bd6b7
SM
8194 (Fset_process_buffer, Fset_process_filter):
8195 Call setup_process_coding_systems.
ce4254bd
KH
8196 (Fstart_process): Initialize the member `filter_multibyte' of
8197 struct Lisp_Process.
8198 (create_process): Call setup_process_coding_systems.
8199 (Fmake_network_process): New keyward `:filter-multibyte'.
8200 Initialize the member `filter_multibyte' of struct Lisp_Process.
8201 Call setup_process_coding_systems.
8202 (server_accept_connection): Call setup_process_coding_systems.
8203 (read_process_output): If the process has a filter, decide the
8204 multibyteness of a string to given to the filter by
8205 `filter_multibyte' member of the process. If the process doesn't
8206 have a filter and the result of conversion is unibyte, use
8207 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
8208 multibyte form.
8209 (Fset_process_coding_system): Call setup_process_coding_systems.
8210 (Fset_process_filter_multibyte): New function.
8211 (Fprocess_filter_multibyte_p): New function.
8212 (syms_of_process): Intern and staticpro QCfilter_multibyte.
8213 Defsubr Sset_process_filter_multibyte and
8214 Sprocess_filter_multibyte_p.
8215
8216 * process.h (struct Lisp_Process): New member filter_multibyte.
8217
8218 * lisp.h (setup_process_coding_systems): Add prototype.
8219
8220 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
8221 process, update coding systems for the process.
8222
b08d5f59
KH
82232003-02-09 Kenichi Handa <handa@m17n.org>
8224
8225 * fns.c (string_to_multibyte): New function.
8226 (Fstring_to_multibyte): New function.
8227 (syms_of_fns): Defsubr it.
8228
0dfd93c0
AS
82292003-02-08 Andreas Schwab <schwab@suse.de>
8230
8231 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
8232 instead of the substitution.
8233
7b76ca1c
JD
82342003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8235
8236 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
8237
8238 * xmenu.c (menu_position_func): Adjust menu popup position so that
8239 the menu is fully visible.
7b76ca1c 8240
2436a4e4
JD
82412003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8242
8243 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
e52bd6b7
SM
8244 (x_make_frame_invisible, x_wm_set_icon_position):
8245 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
2436a4e4
JD
8246
8247 * xfns.c (x_set_name, x_set_title): Ditto.
8248
37d1e680
RS
82492003-02-04 Richard M. Stallman <rms@gnu.org>
8250
8251 * keyboard.c (echo_now): Update before_command_echo_length.
8252 (Freset_this_command_lengths): Reset this_command_key_count etc.
8253 immediately rather than arranging to do it later.
8254 (before_command_key_count_1, before_command_echo_length_1)
8255 (before_command_restore_flag): Vars deleted.
8256 (add_command_key): Don't handle before_command_restore_flag.
8257 (read_char, record_menu_key): Don't update before_command_key_count or
8258 before_command_echo_length.
8259 (read_char): Don't handle before_command_restore_flag.
8260
8261 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
8262 in direct-output clauses if it wouldn't be called in the ordinary case.
8263
578846a3
KS
82642003-02-04 Kim F. Storm <storm@cua.dk>
8265
8266 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
8267
49853a4d
JD
82682003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8269
8270 * gtkutil.c (remove_from_container): Copying list is not needed.
8271 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
8272 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
8273 on list returned from gtk_container_get_children to avoid memory leak.
8274
8b53dc06
JR
82752003-02-01 Jason Rumney <jasonr@gnu.org>
8276
5d54d177
JR
8277 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
8278 local malloc.
8279 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
8280 definitions in xpm.h.
8281 (init_xpm_functions): New function.
f63fd14e 8282 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
5d54d177
JR
8283 (init_external_image_libraries): Try to load libXpm.dll.
8284
8b53dc06
JR
8285 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
8286 timestamp.
8287
b222e415
DL
82882003-01-31 Dave Love <fx@gnu.org>
8289
8290 * syntax.c (Fskip_chars_forward)
8291 (open-paren-in-column-0-is-defun-start): Doc fix.
8292
c60ee5e7
JB
82932003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
8294
8295 * fileio.c: Support // at start of name for Cygwin (just added proper
8296 preprocessor tests).
8297
8298 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
8299
8300 * Makefile.in: Use @EXEEXT@ for Cygwin.
8301
8302 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
8303
8304 * s/cygwin.h: Added for Cygwin port.
8305
53b37591
JB
83062003-01-31 Juanma Barranquero <lektu@terra.es>
8307
8308 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
8309 when including gif_lib.h.
fe929957 8310 (init_gif_functions, init_tiff_functions): New functions.
f63fd14e
JB
8311 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
8312 Windows. Disable color table lookups. Call library functions
53b37591 8313 through pointers determined at runtime.
fe929957
JB
8314 (init_external_image_libraries): Try to load libungif.dll and
8315 libtiff.dll.
53b37591 8316
45415a8f
KH
83172003-01-31 Kenichi Handa <handa@m17n.org>
8318
8319 * xdisp.c (SKIP_GLYPHS): New macro.
e52bd6b7 8320 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
45415a8f 8321
a97e4138
JD
83222003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8323
e52bd6b7 8324 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
a97e4138 8325
6eed9bed
DL
83262003-01-30 Dave Love <fx@gnu.org>
8327
8328 * alloc.c (Vgc_elapsed, gcs_done): New variables.
8329 (Fgarbage_collect): Use them.
8330 (init_alloc, syms_of_alloc): Set them up.
8331
100dcd40
JB
83322003-01-30 Juanma Barranquero <lektu@terra.es>
8333
8334 * w32fns.c (init_external_image_libraries): Add missing operator.
8335
fbd852af
JR
83362003-01-29 Jason Rumney <jasonr@gnu.org>
8337
8338 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
8339 an alternative name for jpeg.dll.
8340
8a2d8020
KH
83412003-01-29 Kenichi Handa <handa@m17n.org>
8342
8343 * xdisp.c (set_cursor_from_row): Pay attention to string display
8344 properties.
8345
058c18c7
AC
83462003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
8347
8348 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
8349 <escape>.
8350 (keycode_to_xkeysym_table): Reformat and add more comments.
8351 (XTread_socket): Drop special case for backspace.
8352
385f11cf
AC
83532003-01-28 Andrew Choi <akochoi@shaw.ca>
8354
8355 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
8356 values in old-style RGB specs.
8357
c922a224
JB
83582003-01-27 Juanma Barranquero <lektu@terra.es>
8359
8360 * w32fns.c (init_external_image_libraries): Try alternate names for the
8361 jpeg dll.
8362
0a1d6de0
JD
83632003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8364
8365 * gtkutil.c (create_dialog, xg_separator_p)
8366 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
8367 before calling strcmp or strlen.
8368
a97e4138 83692003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1d1885fc
JD
8370
8371 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
8372 and handle image load failure.
8373
28908312
JR
83742003-01-26 Jason Rumney <jasonr@gnu.org>
8375
8376 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
8377 New functions.
f63fd14e
JB
8378 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
8379 Disable color table lookups. Call jpeg library functions
28908312
JR
8380 through pointers determined at runtime.
8381 (init_external_image_libraries): Try to load jpeg.dll.
8382
84e47416
RS
83832003-01-25 Richard M. Stallman <rms@gnu.org>
8384
8385 * lisp.h: Declare format2 instead of format1.
8386
8387 * fileio.c (barf_or_query_if_file_exists):
8388 Call format2 instead of format1.
8389
8390 * editfns.c (format2): New function, replaces format1
8391 but takes exactly two Lisp Objects as format args.
8392
8393 * buffer.c (Fkill_buffer): Call format2 instead of format1.
8394
a97e4138 83952003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1fcfb866
JD
8396
8397 * xterm.h: Change to return value of x_dispatch_event to int.
8398
8399 * xterm.c (x_filter_event): New function.
8400 (event_handler_gdk, XTread_socket): Call x_filter_event.
8401 (x_dispatch_event): Change to return value of finish.
8402 (event_handler_gdk): Use return value from x_dispatch_event.
8403
8404 * xfns.c (x_window): Call create_frame_xic for GTK version to
8405 initialize input methods.
8406
8407 * gtkutil.h: Add (void) prototypes.
8408
8409 * gtkutil.c (create_menus): Remove code that puts the help menu to
8410 the right.
8411
54eefef1
JR
84122003-01-25 Jason Rumney <jasonr@gnu.org>
8413
8414 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
8415 [HAVE_PNG]: Sync with xfns.c version.
f63fd14e
JB
8416 (png_load): Adjust colors for Windows. Use Windows
8417 bitmaps. Disable color table lookups.
c262430d
JR
8418 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
8419 (init_png_functions): New function.
8420 (png_read_from_memory, png_load): Call png library functions
8421 through pointers determined at runtime.
8422 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
8423 (init_external_image_libraries): New function.
8424 (init_xfns): Call it.
54eefef1 8425
1a9e275b
AS
84262003-01-24 Andreas Schwab <schwab@suse.de>
8427
8428 * minibuf.c (Fminibuffer_message): Verify type of parameter.
8429
a97e4138 84302003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
81e302ef
JD
8431
8432 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
8433 of static initializer.
8434
422eec7e
DL
84352003-01-24 Dave Love <fx@gnu.org>
8436
8437 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
8438 architectures.
8439
8440 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
8441 Use __alignof__.
8442
2a026b04
KH
84432003-01-24 Kenichi Handa <handa@m17n.org>
8444
8445 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
e52bd6b7 8446 It it is nonzero, don't pretend that an invisible area doesn't exist.
2a026b04
KH
8447 (command_loop_1): Call adjust_point_for_property with proper
8448 second arg.
8449
a18bb28d
JR
84502003-01-22 Jason Rumney <jasonr@gnu.org>
8451
8452 Sync changes with xterm.c and xfns.c.
8453
8454 * w32term.c (x_draw_glyph_string_foreground)
8455 (x_draw_composite_glyph_string_foreground): Implement overstriking.
8456
8457 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
8458 phys_cursor's hpos is overwritten. This is still not completely
8459 correct, as it doesn't really make sense to use hpos at all to
8460 get the cursor glyph (as that is relative to the width of the
8461 characters on the line, which may have changed during the update).
8462
8463 * w32term.c (notice_overwritten_cursor): Handle the special case
8464 of the cursor being in the first blank non-text line at the
8465 end of a window.
8466
8467 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
8468 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
8469 Compute from the x position returned by x_draw_glyphs.
8470
8471 (x_display_and_set_cursor): Don't set phys_cursor_width here,
8472 except for NO_CURSOR and system caret, to make phys_cursor_width
8473 contain what its name suggests.
8474 (notice_overwritten_cursor): Consider the cursor image erased if
8475 the output area intersects the cursor image in y-direction.
8476
6a097c0c
SM
8477 * w32term.c (note_mode_line_or_margin_highlight): Rename from
8478 note_mode_line_highlight and extend.
a18bb28d
JR
8479
8480 * w32term.c (last_window): New variable.
8481 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
8482 (note_mouse_movement): Remove reimplemented code in #if 0.
8483
8484 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
8485 not update_mode_lines, and always set it to 1.
8486
ac6e47ef
JR
84872003-01-21 Jason Rumney <jasonr@gnu.org>
8488
8489 * w32fns.c (IDC_HAND): Define it if system headers don't.
8490
84912003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
8492
8493 * w32term.h (struct w32_output): New member hand_cursor.
8494 (WM_EMACS_SETCURSOR): New message definition.
8495
8496 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
8497 function w32_define_cursor.
8498 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
8499 position, change member name output_data.x to output_data.w32 and
8500 add function w32_define_cursor.
8501 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
8502 and change member name output_data.x to output_data.w32.
e52bd6b7
SM
8503 (w32_initialize_display_info):
8504 Setup dpyinfo->vertical_scroll_bar_cursor.
ac6e47ef
JR
8505
8506 * w32fns.c (Vx_hand_shape): New variable.
8507 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
8508 WM_EMACS_SETCURSOR.
8509 (x-create-frame): Setup Cursor types.
8510
ceb39a17
JB
85112003-01-21 David Ponce <david@dponce.com>
8512
ac6e47ef 8513 * w32term.c (w32_encode_char): For DIM=1 charset, set
f63fd14e 8514 ccl->reg[2] to -1 before calling ccl_driver. (Sync. with xterm.c
ac6e47ef 8515 x_encode_char change by Kenichi Handa <handa@m17n.org> on
ceb39a17 8516 2002-09-30.)
ac6e47ef
JR
8517 (w32_draw_relief_rect): Declare all args.
8518 (w32_define_cursor): New.
8519
8520 * w32fns.c (w32_load_cursor): New function.
8521 (w32_init_class): Use it.
8522 (x_put_x_image): Declare all args.
8523
b6189c3b 85242003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk>
46cf0bed
JB
8525
8526 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
8527
a97e4138 85282003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e8794476
JD
8529
8530 * gtkutil.c: Must include stdio.h before termhooks.h
8531
83fc9c63
DL
85322003-01-21 Dave Love <fx@gnu.org>
8533
8534 * alloc.c (Fgc_status): Print zombie list.
8535 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
8536 Fix assignment of zombies.
8537 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
8538 Don't take car of non-cons.
8539
8540 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
8541
8542 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
8543
fe04b8c8
JR
85442003-01-20 David Ponce <david@dponce.com>
8545
8546 * w32menu.c (digest_single_submenu): Declare all args.
8547
8548 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
8549 changes in xmenu.c:
8550
8551 (parse_single_submenu): Use individual keymap's prompt
8552 string as pane name, if there is one.
8553 (set_frame_menubar): Save menu_items_n_panes from each call to
8554 parse_single_submenu and use it when calling digest_single_submenu.
8555
539e69a9
ST
85562003-01-20 Steven Tamm <steventamm@mac.com>
8557
8558 * macterm.c (XTread_socket): Checks for valid, visible window
8559 before sending a scroll-wheel event.
8560
675d000f
RS
85612003-01-20 Richard M. Stallman <rms@gnu.org>
8562
8563 * xdisp.c (redisplay_window): If mini window's buffer is not
8564 a minibuffer, then redisplay it like other windows.
8565
a97e4138 85662003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
22174d10
JD
8567
8568 * gtkutil.c (xg_create_frame_widgets): Check if there is an
8569 external tool bar before setting tool bar height.
8570
048addec
JD
85712003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8572
8573 * xterm.c (handle_one_xevent): Surround popup_activated
8574 with #ifdef:s for non-toolkit version.
8575
8576 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
8577 (gtkutil.o): New file.
8578 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
8579 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
8580
8581 * gtkutil.c: New file for GTK version.
8582
8583 * gtkutil.h: New file for GTK version.
8584
8585 * xterm.h: Add xt_or_gtk_widget.
8586 Include gtk files for USE_GTK.
8587 (struct x_output): Add toolbar_height.
8588 (struct x_output): Add GTK widgets and Gdk size_hints.
8589 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
8590 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
8591 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
8592
8593 * xterm.c: Include gtkutil.h for USE_GTK.
8594 Declare extern void free_frame_menubar for USE_GTK.
8595 (note_mouse_highlight): Check popup_activated for USE_GTK.
8596 (xt_action_hook): Don't compile if USE_GTK.
8597 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
8598 (xg_scroll_callback): New function.
8599 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
8600 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
8601 for USE_GTK.
8602 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
8603 xg_show_scroll_bar for USE_GTK.
8604 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
8605 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
8606 (event_handler_gdk): New function for USE_GTK.
8607 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
8608 (handle_one_xevent): Make sure widget is mapped before
8609 calling x_real_positions for USE_GTK.
8610 (XTread_socket): Add GTK event loop for USE_GTK.
8611 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
8612 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
8613 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
8614 (x_iconify_frame): Add code for USE_GTK.
8615 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
8616 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
8617 is in gtkutil.c.
8618 (x_term_init): Add initialization for GTK.
8619 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
8620
8621 * xmenu.c: Include gtkutil.h for USE_GTK.
8622 (Fx_popup_menu): Use current position if x and y is NIL.
6bdb309a
SM
8623 (single_menu_item, single_menu_item, Fx_popup_dialog):
8624 Check for USE_GTK.
048addec
JD
8625 (popup_widget_loop): New function for USE_GTK.
8626 (x_activate_menubar): Add code for USE_GTK.
8627 (popup_activate_callback, popup_deactivate_callback)
6bdb309a
SM
8628 (menu_highlight_callback, menubar_selection_callback):
8629 Add USE_GTK versions.
048addec
JD
8630 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
8631 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
8632 (free_frame_menubar): Only compile if not USE_GTK. GTK version
8633 is in gtkutil.c.
8634 (popup_selection_callback): New version for USE_GTK.
8635 (create_and_show_popup_menu): New fuction, one USE_GTK version and
6bdb309a 8636 one USE_X_TOOLKIT version.
048addec
JD
8637 (xmenu_show): Call create_and_show_popup_menu.
8638 (dialog_selection_callback): New version for USE_GTK.
8639 (create_and_show_dialog): New fuction, one USE_GTK version and
6bdb309a 8640 one USE_X_TOOLKIT version.
048addec
JD
8641 (xdialog_show): Call create_and_show_dialog.
8642
8643 * xfns.c: Include gtkutil for USE_GTK.
8644 (x_window_to_frame, x_any_window_to_frame)
8645 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
8646 (x_top_window_to_frame): Add code for USE_GTK.
8647 (x_set_background_color): Call xg_set_background_color for GTK.
8648 (x_set_menu_bar_lines): Check for USE_GTK.
8649 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
8650 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
8651 (x_window): Call xg_create_frame_widgets for USE_GTK.
8652 (Fx_create_frame): Check for USE_GTK
8653 (Fx_file_dialog): New implementation for USE_GTK.
8654
8655 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
8656 (update_menu_bar): Add check for USE_GTK.
8657 (update_tool_bar): Add check for USE_GTK and external tool bar.
8658 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
8659 (redisplay_internal): Add check for USE_GTK and popup_activated.
8660 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
8661 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
8662 (display_menu_bar): Add check for USE_GTK
8663
8664 * lisp.h: Declare Vx_resource_name extern.
8665
a64387ee 8666 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
048addec
JD
8667 for USE_GTK.
8668 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
8669
8670 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
8671 (FRAME_EXTERNAL_TOOL_BAR): New macro.
8672 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
8673
8674 * fileio.c (Fread_file_name): Add check for USE_GTK.
8675
6bdb309a
SM
8676 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
8677 Add check for USE_GTK.
048addec
JD
8678
8679 * config.in: Added HAVE_GTK
8680
8681 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
8682
86832003-01-18 Stefan Monnier <monnier@cs.yale.edu>
8684
8685 * charset.h (Funibyte_char_to_multibyte): Export.
8686
86872003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8688
8689 * xmenu.c (mouse_position_for_popup): New function.
8690 (Fx_popup_menu): Call mouse_position_for_popup for X and
8691 mouse_position_hook for others.
8692
86932003-01-17 Kim F. Storm <storm@cua.dk>
8694
8695 * editfns.c (Finsert): Mention `string-make-multibyte' and
8696 `string-as-multibyte' in doc string.
8697
86982003-01-17 Kenichi Handa <handa@m17n.org>
8699
8700 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
3c02a6f5 8701
048addec
JD
8702 * editfns.c (Fformat): Convert an unibyte char argument that is
8703 formatted by "%c" to multibyte if the total result must be a
8704 multibyte string.
cd7df9c0 8705
048addec 87062003-01-16 Kim F. Storm <storm@cua.dk>
cd7df9c0 8707
048addec
JD
8708 * process.c (set-process-filter): Document unibyte/multibyte-ness
8709 of string argument.
56210ecd 8710
048addec 87112003-01-16 Kenichi Handa <handa@m17n.org>
56210ecd 8712
048addec 8713 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
56210ecd 8714
048addec
JD
8715 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
8716 (re_search_2): Likewise.
6df8b9fe 8717
048addec 87182003-01-15 Kenichi Handa <handa@m17n.org>
6df8b9fe 8719
048addec
JD
8720 * xdisp.c (message_dolog): Fix bug of the case that *Message*
8721 buffer is unibyte.
292ddc31 8722
048addec 87232003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
292ddc31 8724
048addec 8725 * fns.c (Fsubstring): Clarify doc string.
292ddc31 8726
048addec
JD
8727 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
8728 (Fprevious_char_property_change)
8729 (Fnext_single_char_property_change)
8730 (Fprevious_single_char_property_change, Fnext_property_change)
8731 (Fnext_single_property_change, Fprevious_property_change)
8732 (Fprevious_single_property_change, Fadd_text_properties)
8733 (Fput_text_property, Fset_text_properties)
8734 (Fremove_text_properties, Fremove_list_of_text_properties)
8735 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
63e4e4c6 8736
048addec 87372003-01-14 Kim F. Storm <storm@cua.dk>
63e4e4c6 8738
048addec
JD
8739 * process.h (struct Lisp_Process): New member plist replaces old
8740 member private_vars. All uses changed.
63e4e4c6 8741
048addec 8742 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
6bdb309a 8743 (QCplist): Rename from QCvars. Change all uses.
048addec 8744 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
6bdb309a 8745 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
048addec 8746 (syms_of_process): Intern, staticpro, defsubr these.
6bdb309a 8747 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
7ed16567 8748
048addec 87492003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
7ed16567 8750
6bdb309a 8751 * m/delta.h: Remove (obsolete).
e833850f 8752
048addec 87532003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
e833850f 8754
048addec
JD
8755 * fileio.c (Fdelete_directory, Fdelete_file): Document the
8756 behaviour in front of symlinks.
8757 (Fdelete_file): Raise an error on directories.
817cb127 8758
048addec 87592003-01-13 Dave Love <fx@gnu.org>
817cb127 8760
048addec 8761 * fns.c (Freverse): Use QUIT.
3e8cf2ea 8762
048addec 87632003-01-13 Richard M. Stallman <rms@gnu.org>
3e8cf2ea 8764
048addec
JD
8765 * minibuf.c (minibuffer_completion_contents):
8766 Error if point is inside prompt.
3e8cf2ea 8767
048addec
JD
8768 * keyboard.c (command_loop_1): Don't redisplay directly
8769 if there's a post-command-hook.
3e8cf2ea 8770
048addec
JD
8771 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
8772 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
2c10f029 8773
048addec 87742003-01-12 Kim F. Storm <storm@cua.dk>
94e8ffca 8775
048addec 8776 * process.h (struct Lisp_Process): New member private_vars.
94e8ffca 8777
048addec
JD
8778 * process.c (QCvars): New variable.
8779 (syms_of_process): Intern and staticpro it.
8780 (Fset_process_contact): Removed function.
8781 (Fprocess_variable, Fset_process_variable): New functions.
8782 (syms_of_process): Defsubr them.
8783 (Fstart_process): Initialize private_vars plist to nil.
8784 (Fmake_network_process): New arg :vars to setup the private
8785 variables for new network process.
8786 (server_accept_connection): Copy server's private variables to
8787 client process.
2c10f029 8788
048addec
JD
8789 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
8790 crashes). Code rewritten and simplified. Now directly aligns the
8791 pointer and recalculates pure_bytes_used, rather than aligning the
8792 size and adjusting the pointer.
b8a76c6c 8793
048addec 87942003-01-11 Kim F. Storm <storm@cua.dk>
b8a76c6c 8795
048addec
JD
8796 * process.c (Fset_process_contact): New function.
8797 (syms_of_process): defsubr it.
8798 (make-network-process): Update doc.
3a8d0899 8799
048addec 88002003-01-10 Andreas Schwab <schwab@suse.de>
3a8d0899 8801
048addec
JD
8802 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
8803 Reported by Berthold Gunreben <b.gunreben@web.de>.
4abc7470 8804
048addec 88052003-01-10 Dave Love <fx@gnu.org>
4abc7470 8806
048addec 8807 * composite.c (syms_of_composite): Make composition_hash_table weak.
b809d662 8808
048addec 88092003-01-09 Kim F. Storm <storm@cua.dk>
b809d662 8810
048addec
JD
8811 * process.c (Fmake_network_process): Convert new port number
8812 to host byte order for `:service t' case. From Mario Lang.
bf338245 8813
048addec 88142003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
bf338245 8815
048addec
JD
8816 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
8817 instead of XtAppProcessEvent.
bf338245 8818
048addec
JD
8819 * xterm.c (handle_one_xevent): New function.
8820 (x_dispatch_event): New function.
8821 (XTread_socket): Call handle_one_xevent.
bf338245 8822
048addec 8823 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
e833850f 8824
048addec
JD
8825 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
8826 call XQueryPointer to get coordinates.
8827 (popup_get_selection): Do not set popup_activated_flag to zero,
8828 let popup_deactivate_callback do that. Needed for Motif.
8829 Call x_dispatch_event instead of XtDispatchEvent.
8830 (xmenu_show): Calculate root coordinate from frame top/left position.
c4af2bce 8831
048addec 88322003-01-08 Kim F. Storm <storm@cua.dk>
c4af2bce 8833
6bdb309a 8834 * process.c (server_accept_connection): Fix recording of new
048addec
JD
8835 connection's local address in :local property of contact info.
8836 (Fmake_network_process): Record local network address for new
8837 client processes in :local property of contact info.
6bdb309a 8838 (format-network-address): Add arg OMIT-PORT. Change callers.
00e3ab56 8839
048addec 88402003-01-07 Dave Love <fx@gnu.org>
00e3ab56 8841
048addec 8842 * Makefile.in (fns.o): Depend on coding.h.
f387e1fd 8843
048addec 88442003-01-07 Markus Rost <rost@math.ohio-state.edu>
f387e1fd 8845
048addec 8846 * minibuf.c (Fread_variable): Doc fix.
f387e1fd 8847
048addec
JD
8848 * eval.c (Fuser_variable_p): Doc change. For custom variables,
8849 use the same test as for custom-variable-p.
8c6d74c6 8850
048addec 88512003-01-05 Richard M. Stallman <rms@gnu.org>
e833850f 8852
048addec
JD
8853 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
8854 Count LAST_LINE_MISFIT in scroll margin for end of window.
8855 Move label too_near_end before setting SCROLL_MARGIN_POS.
8856 Set LAST_LINE_MISFIT before jumping there.
8c6d74c6 8857
048addec
JD
8858 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
8859 scroll_conservatively case. If scrolling that much doesn't change
8860 STARTP, move it down one line.
e833850f 8861
048addec
JD
8862 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
8863 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
8c6d74c6 8864
048addec
JD
8865 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
8866 selected frame.
8c6d74c6 8867
048addec
JD
8868 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
8869 (syms_of_keymap): staticpro them.
8870 (Fapropos_internal): Initialize them and clear them out.
8871 Don't GCPRO them.
8c6d74c6 8872
048addec
JD
8873 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
8874 Doc fixes.
8c6d74c6 8875
048addec
JD
8876 * lisp.h: New misc type Lisp_Save_Value.
8877 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
8878 (XSAVE_VALUE): New macro.
8879 (struct Lisp_Save_Value): New data type.
8880 (union Lisp_Misc): Add u_save_value alternative.
8881 (make_save_value): Declared.
8c6d74c6 8882
048addec 8883 * alloc.c (make_save_value): New function.
8c6d74c6 8884
048addec
JD
8885 * xterm.c (x_catch_errors): Save dpy using make_save_value.
8886 (x_catch_errors_unwind): Call XSync.
8c6d74c6 8887
048addec 88882003-01-01 Richard M. Stallman <rms@gnu.org>
8c6d74c6 8889
048addec 8890 * window.c (window_scroll_pixel_based): Partially undo last change.
8c6d74c6 8891
048addec
JD
8892 * keyboard.c (command_loop_1): Call adjust_point_for_property
8893 in direct action cases for Qforward_char and Qbackward_char.
8894 Set already_adjusted so it won't be done twice.
8c6d74c6 8895
b6189c3b 88962002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk>
8c6d74c6 8897
048addec
JD
8898 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
8899 type definition of size_t.
8c609cff 8900
048addec 89012003-01-02 Steven Tamm <steventamm@mac.com>
8c609cff 8902
048addec
JD
8903 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
8904 distinguish Carbon GUI builds from X11 builds on darwin.
b37113a1 8905
048addec 89062002-12-30 Steven Tamm <steventamm@mac.com>
b37113a1 8907
048addec
JD
8908 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
8909 to default to t.
fa634a5e 8910
048addec 89112002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
fa634a5e 8912
048addec 8913 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
ce0669d4 8914
048addec 89152002-12-28 Steven Tamm <steventamm@mac.com>
ce0669d4 8916
048addec
JD
8917 * Makefile.in (macosx-bundle): Fixes to Mac OS X/Carbon port to
8918 allow building in a different directory than source. Uses some
8919 GNU Make extensions, but there is no other make on Mac OS X.
2308af15 8920
048addec 89212002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
2308af15 8922
048addec
JD
8923 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
8924 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
8925 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
8926 (Fstring_to_number): Mention the returned value in the doc strings.
2155ecf3 8927
048addec 89282002-12-23 Richard M. Stallman <rms@gnu.org>
2155ecf3 8929
048addec
JD
8930 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
8931 <scroll-down-aggressively>: Doc fix.
2155ecf3 8932
048addec
JD
8933 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
8934 string as pane name, if there is one.
8935 (set_frame_menubar): Save menu_items_n_panes from each call to
8936 parse_single_submenu and use it when calling digest_single_submenu.
2155ecf3 8937
048addec
JD
8938 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
8939 Don't try to make last line fully visible if it is past end of window.
61f1d295 8940
048addec 89412002-12-22 Steven Tamm <steventamm@mac.com>
61f1d295 8942
048addec
JD
8943 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
8944 (mac_menu_show): Add support for hierarchical popup menus.
8945 (add_menu_item): Remove indentation support.
8946 (fill_submenu, fill_menu): Create hierarchical menus
8947 instead of using indentation.
0b17a217 8948
048addec 89492002-12-22 Richard M. Stallman <rms@gnu.org>
0b17a217 8950
048addec
JD
8951 * xdisp.c (try_cursor_movement): Don't call try_window here.
8952 (redisplay_window): Never redisplay minibuffer when inactive.
0b17a217 8953
048addec 8954 * window.c (select_window_1): Undo 9/21 change.
402e4f8b 8955
048addec 89562002-12-22 Steven Tamm <steventamm@mac.com>
402e4f8b 8957
048addec
JD
8958 * macterm.c (XTread_socket): Call KeyTranslate for control and
8959 meta to deal correctly shifted non-alpha characters, like C-S-5
8960 being treated like C-%. Does not look for shift key to deal
8961 with masking off control-key with mac-reverse-ctrl-meta.
f02cac82 8962
048addec 89632002-12-21 Richard M. Stallman <rms@gnu.org>
f02cac82 8964
048addec
JD
8965 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
8966 If it is non-nil, run timers. Use an unwind-protect to requeue
8967 the events that were read ahead.
8968 (popup_get_selection_unwind): New subroutine.
8969 (popup_get_selection_queue): File-scope variable now holds that queue.
8970 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
8971 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
8972 Use an unwind-protect to pop down the dialog box.
8973 (xdialog_show_unwind): New subroutine implements that.
f02cac82 8974
048addec
JD
8975 * xdisp.c (row_containing_pos): Change exit test using last_y.
8976 (try_window_id): Abort if row_containing_pos returns null.
f02cac82 8977
048addec
JD
8978 * lread.c (load_error_handler): New function.
8979 (Fload): Handle errors in Fsubstitute_in_file_name.
8980 Don't expect Fsignal to return.
f02cac82 8981
048addec
JD
8982 * eval.c: Errors and throws work right with interrupt blocking.
8983 (struct catchtag): New elt interrupt_input_blocked.
8984 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
8985 (internal_catch, Fcondition_case, internal_condition_case)
8986 (internal_condition_case_1, internal_condition_case_2): Save it.
8987 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
f02cac82 8988
048addec 8989 * editfns.c (Fformat): Add parens.
f02cac82 8990
048addec
JD
8991 * dired.c (file_name_completion): Fix that change.
8992 Delete special quit-handling code; just use QUIT.
f02cac82 8993
b6189c3b 89942002-12-21 Tak Ota <Takaaki.Ota@am.sony.com>
f02cac82 8995
048addec
JD
8996 * dired.c (file_name_completion): Close directory on error
8997 just as in directory_files_internal.
1a590729 8998
048addec 89992002-12-19 David Kastrup <David.Kastrup@t-online.de>
1a590729 9000
048addec
JD
9001 * window.c (Fset_window_configuration): Set old_point to correct
9002 value when new_current_buffer == current_buffer.
f02cac82 9003
048addec 90042002-12-17 Ben Key <bkey1@tampabay.rr.com>
2308af15 9005
048addec
JD
9006 Revisited my earlier fix for the following entry in etc/PROBLEMS:
9007 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
9008 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
9785d95b 9009
048addec
JD
9010 These changes were in part based upon suggestions made by Peter
9011 'Luna' Runestig [peter@runestig.com].
9785d95b 9012
048addec
JD
9013 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token,
9014 g_b_init_get_token_information, g_b_init_lookup_account_sid,
6bdb309a 9015 g_b_init_get_sid_identifier_authority ): Add several static
048addec 9016 global variables.
9785d95b 9017
048addec
JD
9018 * w32.c (globals_of_w32): New function. Used to initialize those
9019 global variables that must always be initialized on startup even
9020 when the global variable initialized is non zero. Its primary
9021 purpose at this time is to set the global variables
9022 g_b_init_is_windows_9x, g_b_init_open_process_token,
9023 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
9024 g_b_init_get_sid_identifier_authority to 0 on startup.
9025 Called from main.
9785d95b 9026
048addec
JD
9027 * w32.c (is_windows_9x): Perform initialization only if
9028 g_b_init_is_windows_9x is equal to 0. On initialization set
9029 g_b_init_is_windows_9x equal to 1.
2308af15 9030
048addec
JD
9031 * w32.c (open_process_token): Perform initialization only if
9032 g_b_init_open_process_token is equal to 0. On initialization set
9033 g_b_init_open_process_token equal to 1.
2308af15 9034
048addec
JD
9035 * w32.c (get_token_information): Perform initialization only if
9036 g_b_init_get_token_information is equal to 0. On initialization
9037 set g_b_init_get_token_information equal to 1.
9785d95b 9038
048addec
JD
9039 * w32.c (lookup_account_sid): Perform initialization only if
9040 g_b_init_lookup_account_sid is equal to 0. On initialization
9041 set g_b_init_lookup_account_sid equal to 1.
9785d95b 9042
048addec
JD
9043 * w32.c (get_sid_identifier_authority): Perform initialization
9044 only if g_b_init_get_sid_identifier_authority is equal to 0.
9045 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
9785d95b 9046
f63fd14e 9047 * w32fns.c (globals_of_w32fns): New function. Used to initialize
048addec
JD
9048 those global variables that must always be initialized on startup
9049 even when the global variable initialized is non zero.
9050 Its primary purpose at this time is to initialize the global variable
9051 track_mouse_event_fn.
9785d95b 9052
a64387ee 9053 * w32fns.c (w32_wnd_proc): Remove initialization of
048addec 9054 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
9785d95b 9055
048addec 9056 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
9785d95b 9057
f63fd14e 9058 * w32menu.c (globals_of_w32menu): New function. Used to
048addec
JD
9059 initialize those global variables that must always be initialized
9060 on startup even when the global variable initialized is non zero.
9061 Its primary purpose at this time is to initialize the global
9062 variables get_menu_item_info and set_menu_item_info.
9785d95b 9063
048addec
JD
9064 * w32menu.c (initialize_frame_menubar): Remove initialization of
9065 get_menu_item_info and set_menu_item_info.
9785d95b 9066
048addec 9067 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
9785d95b 9068
048addec
JD
9069 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
9070 Declare them.
9785d95b 9071
048addec
JD
9072 * emacs.c (main): Call globals_of_w32 prior to calling
9073 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
9074 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
9075 is defined.
9785d95b 9076
048addec
JD
9077 * w32term.c (x_update_window_begin): Fix Windows API error
9078 detected by BoundsChecker. Test to determine if
9079 w32_system_caret_hwnd is NULL prior to attempting to use
9080 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
2308af15 9081
048addec
JD
9082 * w32term.c (x_update_window_end): Fix Windows API error
9083 detected by BoundsChecker. Test to determine if
9084 w32_system_caret_hwnd is NULL prior to attempting to use
9085 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
b6da19ef 9086
048addec 90872002-12-17 Kenichi Handa <handa@m17n.org>
b6da19ef 9088
048addec
JD
9089 * coding.c (coding_system_require_warning): New variable.
9090 (syms_of_coding): DEFVAR it.
b6da19ef 9091
048addec 9092 * coding.h (coding_system_require_warning): Extern it.
b6da19ef 9093
048addec
JD
9094 * fileio.c (choose_write_coding_system): Even if
9095 Vcoding_system_for_write is non-nil, if
9096 coding_system_require_warning is nonzero, call
9097 Vselect_safe_coding_system_function.
bfcf6dbe 9098
048addec 90992002-12-17 Markus Rost <rost@math.ohio-state.edu>
bfcf6dbe 9100
048addec
JD
9101 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
9102 (lisp): Add font-core.
2c568af5 9103
048addec 91042002-12-13 Stefan Monnier <monnier@cs.yale.edu>
2c568af5 9105
048addec
JD
9106 * textprop.c (text_read_only): New arg `propval'.
9107 (get_char_property_and_overlay): Remove unused var `next_overlay'.
9108 (verify_interval_modification): Use text_read_only's new arg.
b8c6225c 9109
048addec 91102002-12-13 Kenichi Handa <handa@m17n.org>
b8c6225c 9111
048addec 9112 * coding.c (Funencodable_char_position): Set pend correctly.
706ddb8f 9113
048addec 91142002-12-12 Jason Rumney <jasonr@gnu.org>
706ddb8f 9115
048addec
JD
9116 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
9117 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
9118 Be more careful about when help_events are generated.
96720f09 9119
048addec 91202002-12-12 Steven Tamm <steventamm@mac.com>
96720f09 9121
048addec
JD
9122 * macterm.c (mac_check_for_quit_char): Correctly set the
9123 modifiers of the event to 0.
9124 * mac.c (sys_select): Duplicate rfds before calling select to
9125 ensure that rfds survive the while loop.
e5ae1c49 9126
048addec 91272002-12-11 Kim F. Storm <storm@cua.dk>
e5ae1c49 9128
048addec
JD
9129 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
9130 row_containing_pos returned NULL.
2eb46b2d 9131
048addec 91322002-12-10 Steven Tamm <steventamm@mac.com>
2eb46b2d 9133
6bdb309a 9134 * mac.c (sys_read): Fix sys_read to not call select if IO is
048addec 9135 non-blocking.
6bdb309a 9136 (sys_select): Fix sys_select to not use a timeout larger than
048addec 9137 the one given.
b11f1d8a 9138
048addec 91392002-12-10 Juanma Barranquero <lektu@terra.es>
b11f1d8a 9140
048addec 9141 * editfns.c (Fformat): Use alloca, not _alloca.
d8528226 9142
048addec 91432002-12-09 Richard M. Stallman <rms@gnu.org>
d8528226 9144
048addec
JD
9145 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
9146 as the last thing.
a4ac5b17 9147
048addec 91482002-12-09 Dave Love <fx@gnu.org>
a4ac5b17 9149
048addec 9150 * s/sol2-8.h: Removed. (Not necessary.)
ac42d7b9 9151
048addec 91522002-12-09 Matthew Swift <swift@alum.mit.edu>
ac42d7b9 9153
048addec
JD
9154 * editfns.c (Fformat): Handle precision in string conversion
9155 specifiers like libc functions do (ie, print at most that many
9156 characters).
85cce843 9157
048addec 91582002-12-08 Richard M. Stallman <rms@gnu.org>
85cce843 9159
048addec
JD
9160 * xdisp.c (row_containing_pos): Check more carefully
9161 whether charpos is really in the row before returning it.
0d4d26a7 9162
048addec 91632002-12-07 Steven Tamm <steventamm@mac.com>
0d4d26a7 9164
048addec 9165 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
b11f1d8a 9166
048addec
JD
9167 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
9168 each stack frame. This may change as it could be time consuming.
0d4d26a7 9169
048addec
JD
9170 * macterm.c (mac_check_for_quit_char, quit_char_comp)
9171 (init_quit_char_handler, mac_determine_quit_char_modifiers)
6bdb309a 9172 (mac_initialize): Add code to check for pressing of quit_char
048addec 9173 in the OS event queue.
b11f1d8a 9174
048addec
JD
9175 * mac.c (sys_select): Call mac_check_for_quit_char every second
9176 while blocking on select.
0d4d26a7 9177
048addec
JD
9178 * mac.c (sys_read): Use sys_select to test for input first
9179 before calling read, to allow C-g to break.
9252f7bc 9180
048addec 91812002-12-07 Richard M. Stallman <rms@gnu.org>
9252f7bc 9182
048addec 9183 * minibuf.c (Fcompleting_read): Doc fix.
9252f7bc 9184
048addec 9185 * lread.c (syms_of_lread) <load-history>: Doc fix.
9252f7bc 9186
048addec 9187 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
9252f7bc 9188
048addec
JD
9189 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
9190 autoload.
9252f7bc 9191
048addec 9192 * data.c (Fdefalias): Record in load-history redefining an autoload.
9252f7bc 9193
048addec 9194 * alloca.c: Undo ifdef change accidentally made on 12-04.
bfa261c0 9195
048addec 91962002-12-06 Francesco Potorti` <pot@gnu.org>
bfa261c0 9197
048addec 9198 * xfns.c (png_load): Avoid double gamma correction for PNG images.
c5992177 9199
048addec 92002002-12-04 Richard M. Stallman <rms@gnu.org>
c5992177 9201
048addec 9202 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 9203
048addec 9204 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 9205
048addec 9206 * alloca.c: Don't use #error.
02d588e2 9207
048addec 92082002-12-03 Dave Love <fx@gnu.org>
02d588e2 9209
048addec
JD
9210 * buffer.c (Qucs_set_table_for_input): New.
9211 (Fget_buffer_create): Use it.
9212 (Qset_buffer_major_mode_hook): Deleted.
9213 (Fset_buffer_major_mode): Revert previous change.
9214 (init_buffer_once): Intern ucs-set-table-for-input.
9215 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
9216 Add &Qucs_set_table_for_input.
451e2697 9217
048addec 92182002-12-03 Andreas Schwab <schwab@suse.de>
451e2697 9219
048addec
JD
9220 * callint.c (Fcall_interactively): Use next_event only if less
9221 than key_count.
72742a99 9222
048addec 92232002-12-02 Andrew Choi <akochoi@shaw.ca>
72742a99 9224
048addec
JD
9225 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
9226 names to 255 characters.
72742a99 9227
048addec
JD
9228 * macterm.c (XTread_socket): If all frames have been collapsed,
9229 expand the first one before handling drag-and-drop events.
72742a99 9230
048addec
JD
9231 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
9232 which is detected by autoconf.
40e6ff95 9233
048addec 92342002-12-01 Steven Tamm <steventamm@mac.com>
40e6ff95 9235
048addec
JD
9236 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
9237 offset in two hints table to allow prebinding to be redone and
9238 allow the executable to be stripped.
c02138c6 9239
048addec 92402002-11-29 Dave Love <fx@gnu.org>
c02138c6 9241
048addec
JD
9242 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
9243 already provided.
0e47bbf7 9244
048addec 92452002-11-29 Richard M. Stallman <rms@gnu.org>
0e47bbf7 9246
048addec
JD
9247 * xdisp.c (start_display): Check more intelligently for
9248 whether the line is continued.
9249 (move_it_vertically_backward): Clear it->continuation_lines_width.
44129dcb 9250
048addec 92512002-11-28 Dave Love <fx@gnu.org>
44129dcb 9252
048addec
JD
9253 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
9254 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
f707342d 9255
048addec 92562002-11-27 Steven Tamm <steventamm@mac.com>
f707342d 9257
048addec
JD
9258 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
9259 more descriptive error output from lread.c:Fload upon most require
9260 cycles during boostrapping.
1637fd2c 9261
048addec 92622002-11-27 Jason Rumney <jasonr@gnu.org>
1637fd2c 9263
048addec
JD
9264 * fileio.c (Finsert_file_contents): Give a more appropriate error
9265 for files bigger than 2Gb when off_t is 32 bit.
1637fd2c 9266
048addec
JD
9267 * dired.c (Ffile_attributes): Don't return negative file sizes for
9268 files bigger than 2Gb when off_t is 32 bit.
540c2788 9269
048addec 92702002-11-27 Dave Love <fx@gnu.org>
6b2fd6ea 9271
048addec 9272 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
6b2fd6ea 9273
048addec
JD
9274 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
9275 Test GETPGRP_VOID instead.
9276 [BSD_TERMIOS]: Remove definitions (never used).
6b2fd6ea 9277
048addec
JD
9278 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
9279 Don't define.
9280 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
540c2788 9281
048addec 9282 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
8cc03716 9283
048addec 92842002-11-25 Jason Rumney <jasonr@gnu.org>
8cc03716 9285
048addec
JD
9286 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
9287 supported.
4042a81a 9288
048addec 92892002-11-25 Dave Love <fx@gnu.org>
4042a81a 9290
048addec 9291 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
4042a81a 9292
048addec 9293 * Makefile.in (TEMACS_LDFLAGS): Update last change.
be4ee72f 9294
048addec 92952002-11-25 Andreas Schwab <schwab@suse.de>
be4ee72f 9296
048addec 9297 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
82122254 9298
048addec 92992002-11-24 Steven Tamm <steventamm@mac.com>
82122254 9300
048addec
JD
9301 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
9302 determine the size of pointers alloced in unexed space instead
9303 of using possibly invalid emacs_zone pointers. This fixes the
9304 binary incompatibility problems caused by updates to libSystem.B.
c1ee53bc 9305
048addec 93062002-11-24 Richard M. Stallman <rms@gnu.org>
c1ee53bc 9307
048addec 9308 * search.c (Fstring_match): Doc fix.
c1ee53bc 9309
048addec
JD
9310 * callint.c (Fcall_interactively): If a command fails because
9311 `*' detects a read-only buffer, but RECORD_FLAG is set,
9312 record it anyway if the args don't actually do tty input.
5598c32e 9313
048addec 93142002-11-22 Dave Love <fx@gnu.org>
5598c32e 9315
048addec 9316 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
5598c32e 9317
048addec
JD
9318 * keyboard.c (interrupt_signal): Provide forward declaration.
9319 (kbd_buffer_store_event): Don't declare interrupt_signal.
5598c32e 9320
048addec 9321 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
97b14e22 9322
048addec 93232002-11-21 Richard M. Stallman <rms@gnu.org>
97b14e22 9324
048addec
JD
9325 * eval.c (interactive_p): Skip any number of bytecode
9326 and special form frames, in any order.
516eea8e 9327
048addec 93282002-11-20 Jason Rumney <jasonr@gnu.org>
516eea8e 9329
048addec
JD
9330 * w32fns.c (convert_mono_to_color_image): New function.
9331 (xbm_load, xbm_load_image): Use it when foreground or background
9332 is explicitly set.
04dbfa08 9333
048addec 93342002-11-19 Dave Love <fx@gnu.org>
04dbfa08 9335
048addec 9336 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
b4aebae3 9337
048addec 93382002-11-18 Jason Rumney <jasonr@gnu.org>
b4aebae3 9339
048addec
JD
9340 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
9341 (XPutPixel): Swap blue and red.
9342 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
9343 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
9344 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
9345 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
1998560a 9346
048addec 93472002-11-18 Dave Love <fx@gnu.org>
d824beee 9348
048addec 9349 * m/orion105.h (HAVE_ALLOCA): Don't define.
d824beee 9350
048addec 9351 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
d824beee 9352
048addec 9353 * m/intel386.h: Don't include alloca.h or define alloca.
d824beee 9354
048addec
JD
9355 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
9356 malloc, realloc, calloc.
d824beee 9357
048addec
JD
9358 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
9359 (bcmp): Don't define.
d824beee 9360
048addec 9361 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
d824beee 9362
048addec 9363 * m/amdahl.h: Don't define LIB_STANDARD.
d824beee 9364
048addec 9365 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
d824beee 9366
048addec 9367 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
d824beee 9368
048addec
JD
9369 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
9370 Don't include alloca.h.
d824beee 9371
048addec 9372 * s/aix3-2.h (HAVE_FSYNC): Don't define.
1998560a 9373
048addec 9374 * regex.c (_GNU_SOURCE): Don't define.
1998560a 9375
048addec 9376 * process.c (_GNU_SOURCE): Don't define.
1998560a 9377
048addec 9378 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
8704a6ab 9379
048addec 93802002-11-18 Markus Rost <rost@math.ohio-state.edu>
8704a6ab 9381
048addec 9382 * s/sol2-8.h: Include sol2-6.h.
6ae2cd57 9383
048addec 93842002-11-18 Miles Bader <miles@gnu.org>
6ae2cd57 9385
048addec
JD
9386 * dispextern.h (struct face): Add `overstrike' field.
9387 * xterm.c (x_draw_glyph_string_foreground)
9388 (x_draw_composite_glyph_string_foreground): Implement overstriking.
9389 * xfaces.c (load_face_font): Set `face->overstrike' based on
9390 result from choose_face_font.
9391 (best_matching_font, choose_face_font): Add `needs_overstrike'
9392 argument, and use it to return whether overstriking is desirable
9393 for this face/font combo.
9394 (set_font_frame_param: Pass new argument to choose_face_font.
6ae2cd57 9395
048addec 93962002-11-17 Ben Key <BKey1@tampabay.rr.com>
3582b6a3 9397
048addec
JD
9398 This change is my fix for the following entry in etc/PROBLEMS:
9399 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
9400 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
f60ae425 9401
048addec
JD
9402 * w32.c: Added wrapper functions around the win32 API functions
9403 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
9404 GetSidIdentifierAuthority. These wrapper functions serve two
9405 purposes:
9406 1. They ensure that the wrapped function can never be called
9407 when Emacs is running on an operating system on which they are
9408 not supported (Microsoft Windows 95 / 98 / ME).
9409 2. They call the wrapped functions via function pointers rather
9410 than calling them directly. This avoids taking advantage of the
9411 undocumented fact that although these functions are not supported
9412 in the 9x branch of Microsoft Windows, the functions do exist in
9413 the version of advapi32.dll that is found in the 9x branch of
9414 Microsoft Windows.
f60ae425 9415
6bdb309a 9416 * w32.c (init_user_info): Replace the calls to the win32 API
048addec
JD
9417 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
9418 and GetSidIdentifierAuthority with calls to the newly added
9419 wrapper functions.
f60ae425 9420
048addec
JD
9421 * w32.h: Added extern declarations for the following functions:
9422 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
9423 syms_of_w32menu, and void syms_of_fontset.
f60ae425 9424
6bdb309a 9425 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
048addec
JD
9426 function pointer track_mouse_event_fn in the handler for the
9427 WM_SETFOCUS message.
3582b6a3 9428
6bdb309a 9429 * w32menu.c (initialize_frame_menubar): Add code to
048addec
JD
9430 reinitialize the function pointers set_menu_item_info and
9431 get_menu_item_info.
f60ae425 9432
048addec 94332002-11-17 Ben Key <BKey1@tampabay.rr.com>
f60ae425 9434
048addec
JD
9435 * sound.c: Added a partial implementation of play-sound-internal
9436 for Microsoft Windows. Added various #ifdef / #else / #endif
9437 code blocks to separate the code that will compile under
9438 Microsoft Windows from the code that is specific to Gnu/Linux.
9439 Moved several blocks of code around to make this separation of code
9440 into Windows compatible and Gnu/Linux compatible code blocks easier.
f60ae425 9441
048addec 9442 * makefile.w32-in: Include sound.c and link with WinMM.lib.
a0f0878d 9443
048addec
JD
9444 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
9445 added support for play-sound-internal under Windows would be
9446 included in the build of Emacs.
517f42a0 9447
048addec 94482002-11-16 Jason Rumney <jasonr@gnu.org>
517f42a0 9449
048addec 9450 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
517f42a0 9451
048addec 9452 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
a0f0878d 9453
048addec 94542002-11-15 Stefan Monnier <monnier@cs.yale.edu>
a0f0878d 9455
048addec
JD
9456 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
9457 (adjust_point_for_property): Move out of display and invisible even if
9458 we were already inside before (in case a property was added while
9459 we weren't looking). Be more careful when handling invisible props.
9460 Skip invisible text as if it really wasn't there at all.
aab83f91 9461
048addec 94622002-11-15 Jason Rumney <jasonr@gnu.org>
aab83f91 9463
048addec
JD
9464 * w32term.c (x_draw_image_foreground)
9465 (w32_draw_image_foreground_1): Use standard copy and invert
9466 operations to draw images.
aab83f91 9467
048addec
JD
9468 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
9469 depth of 1.
9470 (xbm_read_bitmap_data): Invert bits as xbm is read in.
9471 (XPutPixel): Don't invert bits here.
a4478a76 9472
048addec 94732002-11-15 Jason Rumney <jasonr@gnu.org>
a4478a76 9474
048addec
JD
9475 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
9476 (w32_draw_image_foreground_1): Handle image masks.
9477 (x_draw_image_glyph_string): Don't BitBlt transparently.
a4478a76 9478
048addec
JD
9479 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
9480 (x_from_xcolors): Adjust RGB values for W32.
9481 (image_background, image_background_transparent)
9482 (postprocess_image, x_to_xcolors, x_disable_image)
9483 (x_build_heuristic_mask): Adapt for W32 and enable.
9484 (x_create_x_image_and_pixmap): Mark images with palettes as such.
9485 (xbm_load): Remove unused variable.
03670a65 9486
048addec 94872002-11-14 Richard M. Stallman <rms@gnu.org>
03670a65 9488
048addec 9489 * buffer.c (syms_of_buffer): Doc fix.
59daa29a 9490
048addec 94912002-11-14 Dave Love <fx@gnu.org>
59daa29a 9492
048addec 9493 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
59daa29a 9494
048addec
JD
9495 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
9496 * xmenu.c (unuse_menu_items, digest_single_submenu):
9497 * xfns.c (x_put_x_image):
9498 * xdisp.c (message2_nolog, set_message):
9499 * undo.c (record_point):
9500 * terminfo.c (tparam):
9501 * syntax.c (scan_sexps_forward):
9502 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
9503 * composite.c (update_compositions):
9504 * cm.c (calccost, cmgoto):
9505 * charset.c (c_string_width): Declare all args (per C99).
59daa29a 9506
048addec 9507 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
59daa29a 9508
048addec
JD
9509 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
9510 Don't declare.
59daa29a 9511
048addec 9512 * emacs.c (main) [!VMS]: Avoid third arg.
59daa29a 9513
048addec
JD
9514 * fns.c (Fcopy_sequence): Doc fix.
9515 (Fmap_char_table): Cast `call2'.
3947677c 9516
048addec
JD
95172002-11-14 Francesco Potorti` <pot@gnu.org>
9518
9519 * s/sol2-8.h: New file.
9520
95212002-11-14 Kim F. Storm <storm@cua.dk>
9522
9523 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
9524 dependency on `risky-local-variable' and the :propertize form.
9525
95262002-11-12 Stefan Monnier <monnier@cs.yale.edu>
9527
9528 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
9529
9530 * syntax.c (scan_sexps_forward): Undo last patch.
9531 Use a more obvious fix: check eob before updating the syntax table.
9532
95332002-11-09 Stefan Monnier <monnier@cs.yale.edu>
9534
9535 * syntax.c (scan_sexps_forward): Update syntax table before reading
9536 a char rather than after so we don't update the table past eob.
9537
95382002-11-09 Dave Love <fx@gnu.org>
9539
9540 * buffer.c (Fset_buffer_major_mode): Fix last change.
9541
9542 * regex.c (regexec): Fix pmatch declaration.
9543
9544 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
9545
9546 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
9547 to self-inserting characters.
9548 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
9549
9550 * coding.c (Vtranslation_table_for_input): New.
9551 (syms_of_coding): DEFVAR it.
9552
95532002-11-08 Juanma Barranquero <lektu@terra.es>
9554
9555 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
9556 window.
9557
95582002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9559
6bdb309a 9560 * process.c (Fformat_network_address): Remove unused locals p,
048addec
JD
9561 cp, and i.
9562
95632002-11-06 Dave Love <fx@gnu.org>
9564
9565 * buffer.c (Qset_buffer_major_mode_hook): New.
9566 (Fset_buffer_major_mode): Use it.
9567
95682002-11-06 Richard M. Stallman <rms@gnu.org>
9569
9570 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
9571 and stop_polling.
9572
9573 * process.c (wait_reading_process_input):
9574 Test POLLING_PROBLEM_IN_SELECT, not hpux.
9575 Avoid initialization for auto Lisp_Object var.
9576
9577 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
9578
9579 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
9580
95812002-11-05 Richard M. Stallman <rms@gnu.org>
9582
9583 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
9584
9585 * callint.c (Fcall_interactively): New local filter_specs.
9586 (Fcall_interactively): Check for progn as well as let.
9587 Add a gcpro.
9588 (Qprogn): New variable.
9589 (syms_of_callint): Staticpro and init Qprogn.
9590
95912002-11-04 John Paul Wallington <jpw@shootybangbang.com>
9592
9593 * lread.c (Feval_buffer): Doc fix.
9594
95952002-11-04 Dave Love <fx@gnu.org>
9596
9597 * keyboard.c (read_char): Always translate iff
9598 Vkeyboard_translate_table is a char table and c is valid.
9599
9600 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
9601 and fix C types.
9602
96032002-11-03 Stefan Monnier <monnier@cs.yale.edu>
9604
9605 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
9606
9607 * editfns.c (get_pos_property): Don't hardcode Qfield.
9608
9609 * keyboard.c (adjust_point_for_property): Handle `display' prop on
9610 overlays. Also handle `invisible' prop.
9611
96122002-11-02 Stefan Monnier <monnier@cs.yale.edu>
9613
9614 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
9615 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
9616
96172002-11-01 Andreas Schwab <schwab@suse.de>
9618
9619 * editfns.c (Fmessage): Revert last change to properly handle %%.
9620
96212002-11-01 Stefan Monnier <monnier@cs.yale.edu>
9622
9623 * xmenu.c (unuse_menu_items): New fun.
9624 (menu_items_inuse): New var.
9625 (syms_of_xmenu): Initialize it.
9626 (init_menu_items): Use it to detect re-entrance.
9627 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
9628 (Fx_popup_menu): Remove spurious XSETFRAME.
9629
9630 * editfns.c (find_field): Make an exception for nil fields.
9631
96322002-11-01 Dave Love <fx@gnu.org>
9633
9634 * m/gec63.h: Deleted.
9635
96362002-10-31 Dave Love <fx@gnu.org>
9637
9638 * xterm.c (XTread_socket): Fix last change.
9639 (xaw_scroll_callback): Cast call_data to long to avoid warning.
9640
96412002-10-31 Stefan Monnier <monnier@cs.yale.edu>
9642
9643 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
9644
96452002-10-30 Stefan Monnier <monnier@cs.yale.edu>
9646
9647 * editfns.c (overlays_around, get_pos_property): New funs.
9648 (find_field): Use them.
9649 Also be careful not to modify POS before its last use.
9650 (Fmessage): Don't Fformat if there's nothing to format.
9651
96522002-10-30 Dave Love <fx@gnu.org>
9653
9654 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
9655 [HAVE_PTY_H]; Include pty.h.
9656
9657 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
9658
9659 * xterm.c (Qeql): Declare.
9660 (Vx_keysym_table): New.
9661 (syms_of_xterm): Initialize it.
9662 (XTread_socket): Use it. Deal with ASCII keysyms.
9663 (XSetIMValues) [HAVE_X11R6]: Prototype.
9664
9665 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
9666 (lispy_kana_keys): Comment out.
9667 (make_lispy_event) [XK_kana_A]: Comment out.
9668 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
9669 Fix sprintf call.
9670
9671 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
9672 regexp.h change).
9673 (TERMINFO, LIBS_TERMCAP): Define.
9674
9675 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
9676 (bcmp): Define conditional on HAVE_BCMP.
9677 (NO_SIOCTL_H): Don't define.
9678 (TIOCSIGSEND): Don't make conditional on IRIX6.
9679
9680 * s/sol2-5.h: Don't include strings.h.
9681 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
9682
9683 * s/irix6-0.h (IRIX6): Don't define.
9684 (bcopy, bcmp, bzero): Don't undef.
9685
9686 * s/irix6-5.h: Don't include strings.h.
9687 (IRIX6): Don't define.
9688 (bcopy, bcmp, bzero): Don't undef.
9689
9690 * syntax.c (Fforward_comment): Doc fix.
9691
96922002-10-29 Kim F. Storm <storm@cua.dk>
9693
9694 * process.c (Fsignal_process): Allow PROCESS to be specified by
9695 name in addition to pid (as integer or string).
9696
96972002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
9698
9699 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
9700 environments.
9701
97022002-10-27 Kim F. Storm <storm@cua.dk>
9703
9704 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
9705
9706 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
9707
9708 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
9709
9710 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
9711
97122002-10-26 Richard M. Stallman <rms@gnu.org>
9713
9714 * editfns.c (Fformat): Detect invalid format letters for floats.
9715
97162002-10-25 Kenichi Handa <handa@m17n.org>
9717
9718 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
9719 (x_set_title): Likewise.
9720
97212002-10-25 Juanma Barranquero <lektu@terra.es>
9722
9723 * macgui.h:
9724 * w32gui.h: Remove definition of XColor.
9725
9726 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
9727
97282002-10-24 Kim F. Storm <storm@cua.dk>
9729
9730 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
9731 Callers changed (supply dummy arg).
9732
9733 * lisp.h (get_window_cursor_type): Update prototype.
9734
9735 * w32term.c (x_display_and_set_cursor): Get active_cursor from
9736 get_window_cursor_type to track system caret.
9737
97382002-10-24 Kim F. Storm <storm@cua.dk>
9739
9740 * process.c (Fformat_network_address): New function.
9741 (syms_of_process): Defsubr it.
9742 (list_processes_1): Use it to format :local/:remote address if
f9711de4 9743 service/host is not set; before Emacs would crash in that case.
048addec
JD
9744 (Fmake_network_process): Don't use Ffind_operation_coding_system
9745 to setup coding system if host or service is not set.
9746
97472002-10-23 Juanma Barranquero <lektu@terra.es>
9748
9749 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
9750
9751 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
9752 COLORREF.
9753
9754 * macgui.h:
9755 * w32gui.h: Add definition of XColor.
9756
9757 * macfns.c:
9758 * w32fns.c:
9759 * xfaces.c: Remove definition of XColor.
9760
97612002-10-22 Stefan Monnier <monnier@cs.yale.edu>
9762
9763 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
9764
9765 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
9766 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
9767 window if it is dedicated.
9768 (Fshrink_window): Add preserve_before as was done for enlarge_window.
9769 (Vspecial_display_function): Update docstring.
9770
9771 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
9772 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
9773 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
9774
97752002-10-21 Stefan Monnier <monnier@cs.yale.edu>
9776
9777 * casefiddle.c (casify_region): Don't treat a prefix char as part
9778 of a word when at the beginning.
9779
97802002-10-17 Juanma Barranquero <lektu@terra.es>
9781
9782 * lread.c (syms_of_lread): Fix typos.
9783
97842002-10-17 Dave Love <fx@gnu.org>
9785
9786 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
9787
97882002-10-16 Richard M. Stallman <rms@gnu.org>
9789
9790 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
9791
97922002-10-14 Juanma Barranquero <lektu@terra.es>
9793
9794 * w16select.c (syms_of_win16select): Fix docstring for
9795 `selection-coding-system'.
9796
9797 * w32select.c (syms_of_w32select): Likewise.
9798
97992002-10-14 Stefan Monnier <monnier@cs.yale.edu>
9800
9801 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
9802 a backslash-quoted char.
9803 (scan_lists, scan_sexps_forward): Pacify the compiler.
9804
98052002-10-13 Richard M. Stallman <rms@gnu.org>
9806
9807 * window.c (window_scroll): Set immediate_quit.
9808
9809 * print.c (print): When backquote form is the car of a list,
9810 output in old style. Use old_backquote_output to output all
9811 comma forms inside it in old style too.
9812
9813 * buffer.h (struct buffer): Move `undo_list' down below `name'.
9814
98152002-10-11 Markus Rost <rost@math.ohio-state.edu>
9816
9817 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
9818 batch mode).
9819
9820 * lread.c (Fload): Doc fix (load-suffixes).
9821
98222002-10-10 Steven Tamm <steventamm@mac.com>
9823
9824 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
9825 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
9826 Also switch the default to Qnil from Qt.
9827
98282002-10-08 Kenichi Handa <handa@m17n.org>
9829
9830 * coding.c (code_convert_region): When we need more GAP for
9831 conversion, pay attention to the case that coding->produced is not
9832 greater than coding->consumed.
9833
98342002-10-07 Richard M. Stallman <rms@gnu.org>
9835
9836 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
9837
98382002-10-06 Andrew Choi <akochoi@shaw.ca>
9839
9840 * macmenu.c (mac_menu_show): Add j to count menu items; match
9841 menu_item_selection to it to find selected item.
9842
98432002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9844
9845 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
9846 cases. The correct fix is to pass ReparentNotify to Xt.
9847 The shell widget interprets ConfigureNotify differently depending
9848 on if it has been reparented or not.
9849
98502002-10-05 Markus Rost <rost@math.ohio-state.edu>
9851
9852 * editfns.c (Fformat_time_string): Doc fix.
9853
98542002-10-05 John Paul Wallington <jpw@shootybangbang.com>
9855
9856 * fns.c (Flength): Doc fix.
9857
98582002-10-04 Stefan Monnier <monnier@cs.yale.edu>
9859
9860 * keyboard.c (keyremap): New struct.
9861 (read_key_sequence): Use it: globally replace keytran_foo with
9862 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
9863 keytran_next and fkey_next to just `next'.
9864
98652002-10-04 Steven Tamm <steventamm@mac.com>
9866
9867 * macterm.c (keycode_to_xkeysym_table): Change return to be
9868 treated like an X keysym.
9869
98702002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9871
9872 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
9873 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
9874 This is to also handle x/y changes that occur because of a resize.
9875
98762002-10-02 John Paul Wallington <jpw@shootybangbang.com>
9877
9878 * frame.c (Vdelete_frame_functions): New variable.
9879 (syms_of_frame): Initialize and defvar it.
9880 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
9881 it when frame's `tooltip' parameter is non-nil.
9882
9883 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
9884
9885 * w32fns.c (x_create_tip_frame): Likewise.
9886
9887 * macfns.c (x_create_tip_frame): Likewise.
9888
98892002-09-30 Kenichi Handa <handa@m17n.org>
9890
9891 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
9892 -1 before calling ccl_driver.
9893
9894 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
9895 Only when it is non-nil, handle composition sequence.
9896 (setup_coding_system) <0>: Don't force composition handling.
9897
9898 * Makefile.in (lisp, shortlisp): Add utf-16.elc
9899
99002002-09-29 Richard M. Stallman <rms@gnu.org>
9901
9902 * search.c (Freplace_match): Adjust match data for the substitution
9903 just made in the buffer.
9904
9905 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
9906 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
9907
99082002-09-27 Richard M. Stallman <rms@gnu.org>
9909
9910 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
9911 (read_char): Use them. Do all exits thru the end of the function.
9912
99132002-09-27 Kenichi Handa <handa@etl.go.jp>
9914
9915 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
9916 is nil.
9917
99182002-09-26 Richard M. Stallman <rms@gnu.org>
9919
9920 * regex.h (__restrict_arr): Don't define if already defined.
9921
9922 * coding.c (run_pre_post_conversion_on_str):
9923 Save and restore Vdeactivate_mark.
9924
99252002-09-26 John Paul Wallington <jpw@shootybangbang.com>
9926
9927 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
9928
99292002-09-26 Kenichi Handa <handa@etl.go.jp>
9930
9931 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
9932 nonzero, try face's family at first. Otherwise try FAMILY at first.
9933 (choose_face_font): If C is a single byte char or latin-1, call
9934 try_font_list with PREFER_FACE_FAMILY 1.
9935
99362002-09-21 Richard M. Stallman <rms@gnu.org>
9937
9938 * window.c (select_window_1): Don't select frame.
9939 Set frame's selected window only when frame itself is selected.
9940 (Fselect_window): Doc fix.
9941
99422002-09-18 Kim F. Storm <storm@cua.dk>
9943
9944 * process.c (make-network-process): Doc fix (there is no
9945 network-server-log-function hook).
9946
99472002-09-18 Richard M. Stallman <rms@gnu.org>
9948
9949 * print.c (print): Clear out the unused parts of Vprint_number_table.
9950 (syms_of_print): Doc fix for `print-number-table'.
9951
9952 * unexelf.c (unexec): Undo previous change.
9953
99542002-09-17 Andreas Schwab <schwab@suse.de>
9955
9956 * m/alpha.h [LINUX]: Don't define DATA_START.
9957
99582002-09-16 Dave Love <fx@gnu.org>
9959
9960 * unexelf.c (unexec): Deal with .got, reinstating change from
9961 25-08-1999.
9962
99632002-09-13 Richard M. Stallman <rms@gnu.org>
9964
9965 * s/sol2-6.h (UNEXEC): Comment out definition.
9966
9967 * unexsol.c (unexec): Don't downcase first letter of error msg.
9968
9969 * xfaces.c (Fcolor_supported_p): Just one arg is required.
9970
99712002-09-12 Markus Rost <rost@math.ohio-state.edu>
9972
9973 * unexsol.c: Include buffer.h, charset.h, coding.h.
9974
99752002-09-11 Richard M. Stallman <rms@gnu.org>
9976
9977 * unexsol.c: Don't use report_file_error; do it by hand
9978 using dlerror.
9979
9980 * process.c (wait_reading_process_input, both versions):
9981 Before calling turn_on_atimers, call stop_polling.
9982
9983 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
9984
9985 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
9986 we go to too_near_end, call clear_glyph_matrix.
9987 (redisplay_window): After make_cursor_line_fully_visible,
9988 call clear_glyph_matrix and bypass `goto done'.
9989
9990 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
9991 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
9992
99932002-09-10 Richard M. Stallman <rms@gnu.org>
9994
9995 * fileio.c (Fdo_auto_save): Catch error making directory.
9996 Only call push_message if we need to.
9997 At the same time, make an unwind-protect to pop it.
9998 Rename local message_p to old_message_p.
9999 (do_auto_save_make_dir, do_auto_save_eh): New functions.
10000 (do_auto_save_unwind): Don't call pop_message.
10001
10002 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
10003
10004 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
10005
10006 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
10007
10008 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
10009
100102002-09-10 Stefan Monnier <monnier@cs.yale.edu>
10011
10012 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
10013 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
10014 (re_match_2_internal): Be more careful with infinite loops.
10015
100162002-09-10 Kim F. Storm <storm@cua.dk>
10017
10018 * macros.c (end_kbd_macro): New function.
10019 (Fend_kbd_macro): Use it.
10020
10021 * macros.h (end_kbd_macro): Declare extern.
10022
10023 * keyboard.c (Fdiscard_input): If defining keyboard macro,
10024 end and save it instead of discarding it.
10025
100262002-09-09 Markus Rost <rost@math.ohio-state.edu>
10027
10028 * s/sol2-6.h: Fix typo. Add comment.
10029
100302002-09-09 Richard M. Stallman <rms@gnu.org>
10031
10032 * regex.c (regnum_t): Use signed int, not unsigned int.
10033
10034 * s/sol2-6.h: New file.
10035
10036 * s/sol2-5.h (UNEXEC): Definition deleted.
10037
100382002-09-08 Kim F. Storm <storm@cua.dk>
10039
10040 * macros.c (executing_macro_index): Change type to EMACS_INT.
10041 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
10042
10043 * macros.h (executing_macro_index): Change type to EMACS_INT.
10044
100452002-09-06 Richard M. Stallman <rms@gnu.org>
10046
10047 * casetab.c (set_case_table): Make canon table point to eqv table.
10048
100492002-09-06 Juanma Barranquero <lektu@terra.es>
10050
10051 * coding.c (syms_of_coding): Fix spacing.
10052
10053 * composite.c (Fcompose_region_internal)
10054 (Fcompose_string_internal): Likewise.
10055
10056 * data.c (Flsh): Likewise.
10057
10058 * fontset.c (Fset_fontset_font): Likewise.
10059
10060 * macfns.c (Fx_server_max_request_size): Likewise.
10061
10062 * w16select.c (syms_of_win16select): Likewise.
10063
10064 * w32select.c (syms_of_w32select): Likewise.
10065
10066 * xselect.c (syms_of_xselect): Likewise.
10067
100682002-09-05 Richard M. Stallman <rms@gnu.org>
10069
10070 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
10071 call EXTEND_RANGE_TABLE and return a proper value.
10072 (set_image_of_range): Don't call set_image_of_range_1
10073 if no TRANSLATE or if range includes all of Latin-1.
10074 Only call it for the Latin-1 part of the range.
10075 For other cases, make two separate ranges,
10076 one for the original specified characters and one for
10077 their case-conversions.
10078
100792002-09-04 Richard M. Stallman <rms@gnu.org>
10080
10081 * s/sol2-5.h (UNEXEC): Use unexsol.o.
10082
10083 * window.c (displayed_window_lines): Correct for one-off bug
10084 in HEIGHT on non-window displays.
10085
10086 * regex.c (set_image_of_range_1): New function.
10087 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
10088 Return a value to indicate running out of memory.
10089 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
10090 (extend_range_table_work_area): New subroutine.
10091 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
10092 Different calling conventions, and used from set_image_of_range{,_1}.
10093 (IMMEDIATE_QUIT_CHECK): Definitions moved.
10094
100952002-09-04 Juanma Barranquero <lektu@terra.es>
10096
10097 * makefile.w32-in: All dependencies updated.
10098
100992002-09-01 Richard M. Stallman <rms@gnu.org>
10100
10101 * unexsol.c: New file.
10102
10103 * xfns.c (Qbox): Declare external, don't define.
10104
10105 * xdisp.c (redisplay_window) <force-start case>:
10106 If point is on semi-visible last line, reposition
10107 it at previous line.
10108
10109 * alloc.c (display_malloc_warning): Use display-warning.
10110 (malloc_warning_1): Function deleted.
10111
10112 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
10113
10114 * lread.c (read1): Handle #! by skipping the line.
10115
101162002-08-31 Richard M. Stallman <rms@gnu.org>
10117
10118 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
10119 Don't include LDFLAGS.
10120 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
10121
101222002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
10123
10124 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
10125 member of x_display_info unless we compile for some window system.
10126
101272002-08-31 Kim F. Storm <storm@cua.dk>
10128
10129 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
10130 (get_window_cursor_type): Don't use them.
10131 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
10132
101332002-08-30 Kenichi Handa <handa@etl.go.jp>
10134
10135 * xdisp.c (get_next_display_element): Fix previous change.
10136
101372002-08-30 Andrew Choi <akochoi@shaw.ca>
10138
10139 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
10140 (expose_window): Use it to fix the display of overlapping
10141 rows (merge code from xterm.c).
10142
10143 * macfns.c (Qbox): Add extern declaration.
10144
101452002-08-30 Juanma Barranquero <lektu@terra.es>
10146
10147 * w32fns.c (Qbox): Make extern.
10148 (syms_of_w32fns): Remove initialization of Qbox.
10149
101502002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
10151
10152 * xfns.c (Fx_open_connection): Fix error message.
10153
101542002-08-30 Kim F. Storm <storm@cua.dk>
10155
10156 The following changes consolidates the handling of the cursor
10157 type in xdisp.c, moving duplicate code and functionality from
10158 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
10159
10160 * frame.h (enum text_cursor_kinds): Consolidated here.
10161 Added DEFAULT_CURSOR value.
10162 (struct frame) <desired_cursor, cursor_width>
10163 <blink_off_cursor, blink_off_cursor_width>: New fields.
10164 Consolidated from output_x, output_w32 and output_mac structs.
10165 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
10166 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
10167
10168 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
10169 Variables consolidated here.
10170 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
10171 (Vcursor_in_non_selected_windows): Renamed from
10172 cursor_in_non_selected_windows and changed to Lisp_Object.
10173 (syms_of_xdisp): Define and staticpro new and moved variables.
10174 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
10175 consolidated here. Recognize Qhollow setting.
10176 (set_frame_cursor_types): New function to set frame cursor types
10177 based on the frame parameters.
10178 (get_window_cursor_type): New function to calculate new cursor
10179 type and width for the specified window. Based on duplicated
10180 code consolidated here.
10181 Enhancements: cursor-in-non-selected-windows may be a cursor type,
10182 check buffer-local alternate-cursor-type and blink-cursor-alist
10183 before using built-in blink off methods.
10184
10185 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
10186
10187 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
10188 (get_specified_cursor_type, get_window_cursor_type)
10189 (set_frame_cursor_types): Added prototypes.
10190
10191 * macfns.c (x_specified_cursor_type): Removed.
10192 (x_set_cursor_type): Use set_frame_cursor_types.
10193 (Qbar, Qbox): Removed.
10194 (syms_of_macfns): Don't intern or staticpro them.
10195
10196 * macterm.c (x_specified_cursor_type): Remove prototype.
10197 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
10198 (x_display_and_set_cursor): Use get_window_cursor_type.
10199 Remove unused local variables cursor_non_selected, active_cursor.
10200 Redraw cursor if hbar cursor width changes.
10201 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
10202
10203 * macterm.h (enum text_cursor_kinds): Removed.
10204 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
10205 <blink_off_cursor, blink_off_cursor_width>: Members removed.
10206 (FRAME_DESIRED_CURSOR): Macro removed.
10207
10208 * w32fns.c (Vblink_cursor_alist): Removed.
10209 (Qbar, Qhbar, Qbox, Qhollow): Removed.
10210 (syms_of_w32fns): Don't intern, staticpro, or define them.
10211 (x_specified_cursor_type): Removed.
10212 (x_set_cursor_type): Use set_frame_cursor_types.
10213
10214 * w32term.c (x_specified_cursor_type): Remove prototype.
10215 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
10216 (x_display_and_set_cursor): Use get_window_cursor_type.
10217 Remove unused local variables cursor_off_state.
10218 Redraw cursor if hbar cursor width changes.
10219 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
10220
10221 * w32term.h (enum text_cursor_kinds): Removed.
10222 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
10223 <blink_off_cursor, blink_off_cursor_width>: Members removed.
10224 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
10225 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
10226 (struct w32_display_info) <x_highlight_frame>: Renamed member from
10227 w32_highlight_frame.
10228
10229 * xfns.c (Vblink_cursor_alist): Removed.
10230 (Qbar, Qhbar, Qbox, Qhollow): Removed.
10231 (syms_of_xfns): Don't intern, staticpro, or define them.
10232 (x_specified_cursor_type): Removed.
10233 (x_set_cursor_type): Use set_frame_cursor_types.
10234
10235 * xterm.c (x_specified_cursor_type): Remove prototype.
10236 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
10237 (x_display_and_set_cursor): Use get_window_cursor_type.
10238 Remove unused local variables cursor_off_state.
10239 Redraw cursor if hbar cursor width changes.
10240
10241 * xterm.h (enum text_cursor_kinds): Removed.
10242 (struct output_x) <current_cursor, desired_cursor, cursor_width>
10243 <blink_off_cursor, blink_off_cursor_width>: Members removed.
10244 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
10245 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
10246 (x_specified_cursor_type): Remove prototype.
10247
102482002-08-28 Richard M. Stallman <rms@gnu.org>
10249
10250 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
10251 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
10252 (Vblink_cursor_alist): New variable.
10253 (syms_of_w32fns): Initialize and defvar it.
10254 (x_specified_cursor_type): Recognize Qbox for filled box.
10255 Exceptions are hollow boxes.
10256 (Qbox, Qhollow): New variables.
10257 (syms_of_w32fns): Initialize and staticpro them.
10258
10259 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
10260 New macros.
10261 (struct w32_output): New fields blink_off_cursor,
10262 blink_off_cursor_width.
10263 (FRAME_CURSOR_WIDTH): New macro.
10264
10265 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
10266 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
10267
10268 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
10269 for bar cursor.
10270
10271 * w32term.c (expose_overlaps): New function.
10272 (expose_window): Use it to fix the display of overlapping rows.
10273
102742002-08-28 Simon Josefsson <jas@extundo.com>
10275
10276 * xfns.c (Fx_open_connection): Improve help when X connection
10277 fails, xhost is insecure and xauth is better.
10278
102792002-08-28 Juanma Barranquero <lektu@terra.es>
10280
10281 * makefile.w32-in: Add missing dependencies on w32term.h and
10282 composite.h.
10283
10284 * emacs.c (USAGE1): Add missing newline.
10285
102862002-08-27 Andrew Choi <akochoi@shaw.ca>
10287
10288 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
10289
102902002-08-27 Richard M. Stallman <rms@gnu.org>
10291
10292 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
10293 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
10294 (Vblink_cursor_alist): New variable.
10295 (syms_of_xfns): Initialize and defvar it.
10296 (x_specified_cursor_type): Recognize Qbox for filled box.
10297 Exceptions are hollow boxes.
10298 (Qbox, Qhollow): New variables.
10299 (syms_of_xfns): Initialize and staticpro them.
10300
10301 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
10302 New macros.
10303 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
10304
10305 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
10306 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
10307
10308 * emacs.c (main): Handle --script.
10309 (USAGE1): Mention --script.
10310 (standard_args): Define sort order for --script.
10311
103122002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
10313
10314 * xdisp.c (redisplay_updating_p): Variable removed.
10315 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
10316 New variables.
10317 (init_iterator): Don't free realized faces if
10318 inhibit_free_realized_faces is set.
10319 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
10320 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
10321 initialize Qinhibit_free_realized_faces.
10322
10323 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
10324 when iterator is adding glyphs to a glyph matrix.
10325
103262002-08-27 Kenichi Handa <handa@etl.go.jp>
10327
10328 * xdisp.c (get_next_display_element): In unibyte case, don't use
10329 octal form for such eight-bit characters that can be converted to
10330 multibyte char.
10331
103322002-08-26 Kim F. Storm <storm@cua.dk>
10333
b6189c3b
KS
10334 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize
10335 foreground and background colors. From Joe Buehler.
048addec
JD
10336
103372002-08-26 Miles Bader <miles@gnu.org>
10338
10339 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
10340
103412002-08-25 Andrew Choi <akochoi@shaw.ca>
10342
10343 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
10344 defined instead of MAC_OSX.
10345
10346 * s/darwin.h (select): Define select to sys_select only if
10347 HAVE_CARBON is defined.
10348 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
10349 (DONT_REOPEN_PTY): #def it.
10350
10351 * macterm.c (XTread_socket): Remove code to call
10352 SendEventToEventTarget for keys with command modifiers when
10353 mac_command_key_is_meta is nil.
10354
103552002-08-24 Andreas Schwab <schwab@suse.de>
10356
10357 * eval.c (Fdefvar): Fix last change.
10358
103592002-08-23 Richard M. Stallman <rms@gnu.org>
10360
10361 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
10362 Record variables in load history as (defvar . VAR).
10363 (Fdefvar): Don't record in load history if no initial value.
10364 (Qdefvar): New variable.
10365 (syms_of_eval): Init and staticpro it.
10366
10367 * lread.c (syms_of_lread): Doc fix.
10368 (build_load_history): Use Fmember to see if a definition
10369 is already in the Vload_history element.
10370
10371 * process.c (Fstart_process): Remove /: from program name.
10372
10373 * emacs.c (decode_env_path): Don't add /: if file name handler
10374 has a `safe-magic' property.
10375
10376 * callproc.c (Fcall_process): Remove /: from program name.
10377
103782002-08-23 Stefan Monnier <monnier@cs.yale.edu>
10379
10380 * regex.c (PATFETCH): Remove the translating fetch.
10381 (PATFETCH_RAW): Rename to PATFETCH.
10382 (set_image_of_range): New fun.
10383 (SET_RANGE_TABLE_WORK_AREA): Use it.
10384 (regex_compile): Don't translate the pattern chars so eagerly.
10385 Only do it when inserting an `exactn' bytecode or when handling
10386 a char-range.
10387 (mutually_exclusive_p): Avoid empty statement.
10388
103892002-08-22 Kim F. Storm <storm@cua.dk>
10390
10391 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
10392 end up on a partially visible line; this reverts a specific part
10393 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
10394 display error which has been reported several times now.
10395 However it introduces the problem that changes was supposed to fix.
10396 See my comments in the source if you want to debug this further.
10397
103982002-08-20 Kenichi Handa <handa@etl.go.jp>
10399
10400 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
10401
104022002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
10403
10404 * msdos.c (croak): Add `void' to definition.
10405
c1380aa6 10406 * sysdep.c (request_sigio, unrequest_sigio) [MSDOS]:
048addec
JD
10407 Don't define them, they are defined in msdos.c.
10408
10409 * mem-limits.h [MSDOS]: Declare etext.
10410
10411 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
10412 `const' since CORRECT_DIR_SEPS modifies its target.
10413
104142002-08-19 Kim F. Storm <storm@cua.dk>
10415
2fb0ce67 10416 * keyboard.c (Fclear_this_command_keys): Add optional arg
048addec
JD
10417 KEEP-RECORD to avoid clearing lossage when we just want to clear
10418 the current key sequence (kmacro needs this).
10419
104202002-08-19 Kenichi Handa <handa@localhost>
10421
10422 * composite.c (run_composition_function): Call FUNC if it is fboundp.
10423
10424 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
10425 cons, return Qnil.
10426
104272002-08-17 Richard M. Stallman <rms@gnu.org>
10428
10429 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
10430
10431 * sysdep.c [!VMS]: Include sys/files.h.
10432
10433 * editfns.c (save_restriction_restore): Defend from unchained marker.
10434
10435 * buffer.c (overlays_at): Handle extending vec uniformly.
10436 (overlays_in): Handle extending vec from length 0 as in overlays_at.
10437
104382002-08-15 Andrew Choi <akochoi@shaw.ca>
10439
10440 * mac.c (init_mac_osx_environment): New function.
10441
10442 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
10443
104442002-08-14 Kim F. Storm <storm@cua.dk>
10445
10446 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
10447 executing macro before appending to it (when used from Lisp).
10448 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
10449 which is called prior to each iteration of macro (for kmacro.el).
10450 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
10451
10452 * lisp.h (Fexecute_kbd_macro): Update prototype.
10453
10454 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
10455
104562002-08-14 Kenichi Handa <handa@etl.go.jp>
10457
10458 * xselect.c (QUTF8_STRING): New variable.
10459 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
10460 (x_atom_to_symbol): Likewise.
10461 (x_get_local_selection): New argument local_request. If it is
10462 nonzero, call handler_fn with the second arg nil.
10463 (x_handle_selection_request): Call x_get_local_selection with
10464 local_request 0.
10465 (lisp_data_to_selection_data): Don't encode the string here.
10466 (Fx_get_selection_internal): Call x_get_local_selection with
10467 local_request 1.
10468 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
10469
10470 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
10471
10472 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
10473
104742002-08-13 Richard M. Stallman <rms@gnu.org>
10475
10476 * minibuf.c (Fminibufferp): New function.
10477 (syms_of_minibuf): Defsubr it.
10478 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
10479
104802002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
10481
10482 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
10483
104842002-08-12 Richard M. Stallman <rms@gnu.org>
10485
10486 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
10487 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
10488 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
10489 already.
10490
10491 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
10492
104932002-08-11 Andrew Choi <akochoi@shaw.ca>
10494
10495 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
10496 (Vmac_pass_command_to_system): New variable.
10497 (Vmac_pass_control_to_system): New variable.
10498 (do_mouse_moved): Check wp with is_emacs_window.
10499 (XTread_socket): Check window_ptr with is_emacs_window.
10500 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
10501 events back to Mac Toolbox for processing, depending on values of
10502 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
10503 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
10504 Vmac_pass_control_to_system.
10505
105062002-08-10 Kenichi Handa <handa@etl.go.jp>
10507
10508 * coding.c (unencodable_char_position): New function.
10509 (Funencodable_char_position): New function.
10510 (syms_of_coding): Defsubr Funencodable_char_position.
10511
105122002-08-10 Andrew Choi <akochoi@shaw.ca>
10513
10514 * mac.c (sys_select) [MAC_OSX]: New function.
10515
10516 * macterm.c (MakeMeTheFrontProcess): New function.
10517 (mac_initialize): Call MakeMeTheFrontProcess.
10518
10519 * s/darwin.h: Define select to sys_select.
10520
105212002-08-09 Richard M. Stallman <rms@gnu.org>
10522
10523 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
10524
105252002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
10526
10527 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
10528 end of the buffer.
10529
105302002-08-08 Ken Raeburn <raeburn@mit.edu>
10531
10532 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
10533
10534 * puresize.h (BASE_PURESIZE): Increase to 910000.
10535
105362002-08-08 Kenichi Handa <handa@etl.go.jp>
10537
10538 * coding.c (Ffind_operation_coding_system): For write-region, if
10539 VISIT is a filename, make it the target.
10540
105412002-08-07 Richard M. Stallman <rms@gnu.org>
10542
10543 * alloc.c (mark_object): Detect long lists for debugging.
10544 (mark_object_loop_halt): New variable.
10545
10546 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
10547
10548 * data.c (Fmake_variable_frame_local): Doc fix.
10549
105502002-08-01 David Ponce <david@dponce.com>
10551
10552 * w32menu.c (local_heap, local_alloc, local_free): New macros.
10553 (malloc_widget_value, free_widget_value)
10554 (w32_free_submenu_strings): Use them.
10555
10556 (push_submenu_start, push_submenu_end, push_left_right_boundary)
10557 (push_menu_pane, push_menu_item, single_keymap_panes)
10558 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
10559 (single_submenu, set_frame_menubar)
10560 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
10561
10562 (Fx_popup_menu): Don't show pop up menu until preceding one is
10563 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
10564
10565 * w32menu.c: Changes adapted from xmenu.c
10566 (set_frame_menubar): First parse all submenus,
10567 then make widget_value trees from them.
10568 Don't allocate any widget_value objects
10569 until we are done with the parsing.
10570 (parse_single_submenu): New function.
10571 (digest_single_submenu): New function.
10572 (single_submenu): Function deleted, replaced by those two.
10573
105742002-08-04 Andrew Choi <akochoi@shaw.ca>
10575
10576 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
10577 returns a valid window pointer before proceeding for keyDown and
10578 autoKey events.
10579
105802002-08-03 Andrew Choi <akochoi@shaw.ca>
10581
10582 * macterm.c (USE_CARBON_EVENTS): New macro.
10583 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
10584 (x_iconify_frame): Call CollapseWindow.
10585 (Vmac_reverse_ctrl_meta): New variable.
10586 (Vmac_wheel_button_is_mouse_2): New variable.
10587 (init_mac_drag_n_drop): New function.
10588 (mac_do_receive_drag): New function.
10589 (mac_handle_service_event): New function.
10590 (init_service_handler): New function.
10591 (mac_to_emacs_modifiers): New function.
10592 (mac_event_to_emacs_modifiers): New function.
10593 (mac_get_mouse_btn): New function.
10594 (mac_convert_event_ref): New function.
10595 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
10596 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
10597 mac_get_mouse_btn.
10598 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
10599
10600 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
10601 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
10602 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
10603 TOOL_BAR_EVENT for MAC_OS as well.
10604 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
10605 as for WINDOWS_NT.
10606 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
10607
10608 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
10609
106102002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
10611
10612 * xdisp.c (forward_to_next_line_start): Fix a condition that
10613 lead to a newline being skipped.
10614
106152002-08-02 Andrew Choi <akochoi@shaw.ca>
10616
10617 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
10618
106192002-08-01 Richard M. Stallman <rms@gnu.org>
10620
10621 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
10622
106232002-07-31 Andrew Choi <akochoi@shaw.ca>
10624
10625 * macfns.c: #undef init_process before #define-ing it.
10626
10627 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
10628 HAVE_CARBON is defined.
10629
106302002-07-31 Richard M. Stallman <rms@gnu.org>
10631
10632 * xmenu.c (set_frame_menubar): First parse all submenus,
10633 then make widget_value trees from them.
10634 Don't allocate any widget_value objects
10635 until we are done with the parsing.
10636 (parse_single_submenu): New function.
10637 (digest_single_submenu): New function.
10638 (single_submenu): Function deleted, replaced by those two.
10639
106402002-07-30 Juanma Barranquero <lektu@terra.es>
10641
10642 * w32proc.c (syms_of_ntproc): Fix docstring of
10643 `w32-get-true-file-attributes'.
10644
106452002-07-28 Richard M. Stallman <rms@gnu.org>
10646
10647 * s/hpux8.h (HPUX8): Define this before including hpux.h.
10648 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
10649
10650 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
10651
10652 * keyboard.c (make_lispy_event):
10653 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
10654 Explicitly clear up_modifier in event->modifiers.
10655
106562002-07-27 Richard M. Stallman <rms@gnu.org>
10657
10658 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
10659
10660 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
10661 for bar cursor.
10662
106632002-07-26 Kenichi Handa <handa@etl.go.jp>
10664
10665 * coding.c (detect_coding_iso2022): While checking a byte sequence
10666 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
10667 it in the normal loop.
10668
106692002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
10670
10671 * xterm.c (expose_overlaps): New function.
10672 (expose_window): Use it to fix the display of overlapping rows.
10673
10674 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
10675
106762002-07-23 Ken Raeburn <raeburn@gnu.org>
10677
10678 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
10679 since it only depends on XUINT.
10680
10681 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
10682 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
10683 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
10684 Macros deleted.
3947677c 10685
77d1daf2
AS
10686 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
10687 its value over other approaches.
10688 * sysdep.c (start_of_data): Don't define the function if a macro
10689 form has been defined.
8a8e19a3 10690
048addec
JD
106912002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
10692
10693 * xdisp.c (redisplay_updating_p): New variable.
10694 (init_iterator): Don't free realized faces when
10695 redisplay_updating_p is set.
10696 (redisplay_internal): Set redisplay_updating_p while updating
10697 the display.
10698
106992002-07-23 Richard M. Stallman <rms@gnu.org>
10700
10701 * editfns.c (Fmessage): Treat "" like nil.
10702
107032002-07-23 Kenichi Handa <handa@etl.go.jp>
10704
10705 * xdisp.c (face_before_or_after_it_pos):
10706 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
10707
107082002-07-22 Juanma Barranquero <lektu@terra.es>
10709
10710 * callproc.c (init_callproc) [DOS_NT]:
10711 Initialize Vshared_game_score_directory to nil.
10712 (syms_of_callproc) [DOS_NT]: Likewise.
10713
107142002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
10715
10716 * xdisp.c (display_line): Replace an abort with xassert.
10717
107182002-07-21 Richard M. Stallman <rms@gnu.org>
10719
10720 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
10721 and END_UNCHANGED when setting buffer_unchanged_p.
10722 Use current_matrix_up_to_date_p to decide whether to use
10723 try_cursor_movement.
10724
10725 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
10726
10727 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
10728
10729 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
10730 Set to nil if dir does not exist.
10731 (syms_of_callproc): Init unconditionally and simply.
10732
10733 * buffer.c (Fbuffer_list): Doc fix.
10734
107352002-07-21 Ken Raeburn <raeburn@gnu.org>
10736
10737 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
10738
10739 * buffer.c (mmap_realloc): When shrinking, make sure number of
10740 pages to unmap is rounded towards zero.
10741
10742 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
10743 (XSETINT): Deleted.
10744
10745 * m/att3b.h (XINT): Don't define.
10746 (VALBITS, VALMASK, XTYPE): Deleted.
10747 (DATA_SEG_BITS): Define.
10748 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
10749 ARRAY_MARK_FLAG): Deleted.
10750 (DATA_SEG_BITS): Define.
10751 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
10752 (DATA_SEG_BITS): Define.
10753
107542002-07-20 Richard M. Stallman <rms@gnu.org>
10755
10756 * print.c (print_error_message): New args CONTEXT and CALLER.
10757 Calls changed.
10758
10759 * lisp.h (print_error_message): Declare new args.
10760
10761 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
10762 and CONTEXT to print_error_message, don't print them here.
10763 For a Quit, don't use Vsignaling_function.
10764 Call message_log_maybe_newline.
10765
10766 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
10767
107682002-07-20 Kim F. Storm <storm@cua.dk>
10769
10770 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
10771
107722002-07-19 Ken Raeburn <raeburn@gnu.org>
10773
10774 * bytecode.c (struct byte_stack): Pointers into byte string now
10775 point to const.
10776 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
10777 const.
10778 * charset.h (BCOPY_SHORT): Source pointer now points to const.
10779 * coding.c (encode_eol, detect_coding, detect_eol):
10780 (decode_coding, encode_coding, detect_coding_system):
10781 Source strings now treated as const.
10782 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
10783 modify Lisp string contents.
10784 * coding.h (decode_coding, encode_coding, detect_coding,
10785 detect_eol): Declarations updated.
10786 * composite.c (compose_chars_in_text): Treat Lisp string contents
10787 as const.
10788 * dispnew.c (safe_bcopy): Source pointer now points to const.
10789 * lisp.h (STRING_COPYIN): New macro.
10790 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
10791 (internal_with_output_to_temp_buffer): Declarations updated.
10792 * print.c (temp_output_buffer_setup):
10793 (internal_with_output_to_temp_buffer): Buffer name argument is now
10794 pointer to const.
10795 * sound.c (struct sound_device): Function pointer field "write"
10796 buffer argument now points to const.
10797 (vox_write): Buffer argument points to const.
10798 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
10799 contents as const.
10800 * sysdep.c (emacs_write): Buffer pointer now const.
10801 * term.c (encode_terminal_code): Buffer pointer now const.
10802 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
10803 (x_face_list_fonts, x_update_menu_appearance):
10804 (hash_string_case_insensitive): Treat Lisp string contents as const.
10805
108062002-07-19 Juanma Barranquero <lektu@terra.es>
10807
048addec
JD
10808 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
10809
10810 * fileio.c (syms_of_fileio): Likewise.
c62aec78
JB
10811 (Ffile_name_as_directory): Fix argument name in docstring.
10812 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
048addec
JD
10813
108142002-07-18 Richard M. Stallman <rms@gnu.org>
10815
10816 * data.c (Fdefalias): Doc fix.
10817
108182002-07-17 Dave Love <fx@gnu.org>
10819
10820 * intervals.h (text_property_stickiness): Use P_.
10821
10822 * ccl.c: Remove `emacs' conditionals.
10823 (ccl_backtrace_table): Fix size spec.
10824 (ccl_driver): Fix type errors.
10825
108262002-07-16 Ken Raeburn <raeburn@gnu.org>
10827
10828 * alloc.c (xstrdup, make_string, make_unibyte_string)
10829 (make_multibyte_string, build_string): String pointer args now
10830 point to const.
10831 * charset.c (find_charset_in_text, c_string_width):
10832 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
10833 * fileio.c (report_file_error):
10834 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
10835 (count_combining_before, count_combining_after, insert_1_both):
10836 (insert, insert_and_inherit, insert_string):
10837 (insert_before_markers, insert_before_markers_and_inherit):
10838 * lread.c (intern, oblookup, hash_string):
10839 * minibuf.c (temp_echo_area_glyphs):
10840 * search.c (fast_c_string_match_ignore_case):
10841 * sysdep.c (emacs_open, set_file_times):
10842 * xfaces.c (xstricmp):
10843 * xdisp.c (store_frame_title, string_char_and_length):
10844 (message_dolog, message2, message2_nolog, set_message): Likewise.
10845 (set_message_1): Cast message string argument to const pointer.
10846 * editfns.c (general_insert_function): Insertion function now
10847 takes pointer to const for input data.
10848 * charset.h (find_charset_in_text, c_string_width):
10849 (parse_str_as_multibyte): Declarations updated.
10850 * dispextern.h (xstricmp): Declaration updated.
10851 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
10852 (count_size_as_multibyte, count_combining_before):
10853 (count_combining_after, insert_1, insert_1_both, message_dolog):
10854 (insert, insert_and_inherit, insert_before_markers)
10855 (insert_before_markers_and_inherit, set_message, message2):
10856 (message2_dolog, build_string, make_string, make_unibyte_string):
10857 (make_multibyte_string, intern, oblookup, report_file_error):
10858 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
10859 (emacs_open, xstrdup): Declarations updated.
10860 * systime.h (set_file_times): Declaration updated.
10861
10862 * charset.c (find_charset_in_text, lisp_string_width): Use const
10863 for pointer to lisp string data.
10864 * charset.h (FETCH_STRING_CHAR_ADVANCE):
10865 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
10866 * coding.c (Ffind_coding_systems_region_interval):
10867 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
10868 (Fmake_directory_internal, Fdelete_directory):
10869 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
10870 * fontset.c (font_family_registry, fs_query_fontset):
10871 (list_fontsets):
10872 * frame.c (Fframe_parameter):
10873 * keyboard.c (cmd_error_internal):
10874 * keymap.c (Fdescribe_buffer_bindings):
10875 * lread.c (complete_filename_p, openp):
10876 * minibuf.c (Fminibuffer_complete_word):
10877 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
10878 (face_before_or_after_it_pos, next_element_from_string):
10879 (get_overlay_arrow_glyph_row, display_mode_element):
10880 (decode_mode_spec_coding):
10881 * xterm.c (same_x_server): Likewise.
10882
10883 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
10884 settings of non-existent fields.
10885
10886 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
10887 copy a lisp value.
10888
10889 * lread.c (Fintern_soft): Use string macros instead of
10890 Lisp_String fields.
10891 * keyboard.c (echo_char, parse_modifiers_uncached):
10892 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
10893 * textprop.c (validate_interval_range, interval_of): Likewise.
10894
10895 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
10896
10897 * charset.h (FETCH_STRING_CHAR_ADVANCE)
10898 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
10899 XSTRING()->size_byte.
10900
10901 * lisp.h (SDATA, SREF): Produce rvalue.
10902 (SSET): New macro.
10903 * alloc.c (make_event_array): Use SSET for storing into a string.
10904 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
10905 a string.
10906 * casefiddle.c (casify_object): Use SSET.
10907 * charset.h (FETCH_STRING_CHAR_ADVANCE)
10908 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
10909 address of string contents.
10910 * data.c (Faref): Use SDATA.
10911 (Faset): Use SDATA, SSET.
10912 * dired.c (directory_files_internal): Use SSET.
10913 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
10914 (Fread_file_name): Use SREF, SSET.
10915 * fns.c (concat): Use SSET.
10916 (concat, Fdelete): Use SDATA.
10917 * insdel.c (insert_from_string_1): Use SDATA.
10918 * keyboard.c (Fevent_convert_list): Use SREF.
10919 * lread.c (Fload): Use SDATA, SSET.
10920 * macfns.c (validate_x_resource_name): Use SSET.
10921 * process.c (status_message): Use SSET.
10922 * search.c (wordify): Use SDATA.
10923 (Freplace_match): Use SREF.
10924 * w32fns.c (validate_x_resource_name): Use SSET.
10925 * xfns.c (validate_x_resource_name): Use SSET.
10926 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
10927
109282002-07-16 Richard M. Stallman <rms@gnu.org>
10929
10930 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
10931
10932 * xdisp.c (reconsider_clip_changes):
10933 Don't test prevent_redisplay_optimizations_p.
10934 (redisplay_internal): Test prevent_redisplay_optimizations_p
10935 along with clip_changed in some cases.
10936 (try_window_id): Likewise.
10937 (redisplay_window): New local var buffer_unchanged_p.
10938
10939 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
10940
10941 * process.c (create_process): Test USG_SUBTTY_WORKS.
10942 (process_send_signal): Clean up handling of GID.
10943 Detect errors in ioctls meant to set GID.
10944
10945 * window.c (temp_output_buffer_show):
10946 Don't set prevent_redisplay_optimizations_p.
10947
109482002-07-15 Juanma Barranquero <lektu@terra.es>
10949
10950 * eval.c (Fdefvaralias): Add docstring argument.
10951
109522002-07-15 Ken Raeburn <raeburn@gnu.org>
10953
10954 * lisp.h (STRING_INTERVALS): Produce rvalue.
10955 (STRING_SET_INTERVALS): New macro.
10956 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
10957 * fns.c (Fstring_as_multibyte): Likewise.
10958 * intervals.c (balance_possible_root_interval, delete_interval)
10959 (create_root_interval, copy_intervals_to_string): Likewise.
10960 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
10961 instead of 0.
10962
109632002-07-14 Ken Raeburn <raeburn@gnu.org>
10964
10965 * lisp.h (STRING_SET_CHARS): New macro.
10966 (SCHARS, SBYTES): Produce rvalues.
10967 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
10968 * fns.c (concat): Likewise.
10969 * lread.c (read_vector): Likewise.
10970
10971 * lisp.h (SMBP): Deleted. All uses changed to STRING_MULTIBYTE.
10972 (STRING_SET_UNIBYTE): New macro.
10973 (SET_STRING_BYTES): Deleted. Callers (all of which supplied a
10974 length of -1) changed to use STRING_SET_UNIBYTE.
10975 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
10976 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
10977 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
10978 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
10979 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
10980 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
10981 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
10982 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
10983 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
10984 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
10985 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
10986 STRING_BYTES or indirection changed to SCHARS, SBYTES,
10987 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
10988 unchanged for now.
10989
109902002-07-13 Kim F. Storm <storm@cua.dk>
10991
10992 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
10993
109942002-07-12 Richard M. Stallman <rms@gnu.org>
10995
10996 * fileio.c (Fwrite_region): Doc fix.
10997
10998 * print.c (print_error_message): Don't handle Vsignaling_function here.
10999
11000 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
11001 (command_loop_1): Avoid certain actions after memory-full error.
11002
11003 * eval.c (Fsignal): Don't call cancel_hourglass.
11004 For a memory-full error, don't call Vsignal_hook_function
11005 and don't set Vsignaling_function.
11006
11007 * process.c (process_send_signal): Add abort call.
11008
110092002-07-11 Markus Rost <rost@math.ohio-state.edu>
11010
11011 * keymap.c (Fkey_binding): Fix typo.
11012
110132002-07-11 Richard M. Stallman <rms@gnu.org>
11014
11015 * alloc.c (Vmemory_full): New variable.
11016 (Vmemory_signal_data): Renamed from memory_signal_data.
11017 Uses changed.
11018 (syms_of_alloc): Defvar them.
11019 (memory_full, buffer_memory_full): Set Vmemory_full.
11020
11021 * lisp.h (Vmemory_full): Add declaration.
11022 (current_column, indented_beyond_p): Change declaration.
11023
11024 * indent.c (last_known_column): Declare as double, not float.
11025 (current_column, current_column_1, string_display_width)
11026 (position_indentation): Return `double'.
11027 (indented_beyond_p): Arg `column' is `double'. Callers changed.
11028
11029 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
11030 (back_to_previous_visible_line_start)
11031 (reseat_at_next_visible_line_start, next_element_from_buffer):
11032 Use `double', not `float', when calling indented_beyond_p.
11033
11034 * s/hpux11.h (BROKEN_SA_RESTART): Defined.
11035
11036 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
11037
110382002-07-11 Juanma Barranquero <lektu@terra.es>
11039
11040 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
f9711de4
JB
11041 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
11042 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
11043 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
11044 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
11045 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
048addec
JD
11046
110472002-07-10 Juanma Barranquero <lektu@terra.es>
11048
d814862a
JB
11049 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE.
11050 All callers changed.
048addec
JD
11051
110522002-07-09 Stefan Monnier <monnier@cs.yale.edu>
11053
11054 * data.c (Fdefalias): Add an optional `docstring' argument.
11055 (set_internal, Fsetq_default): Use XCAR/XCDR.
11056
11057 * composite.c (HASH_VALUE, HASH_KEY):
11058 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
11059
110602002-07-09 Kenichi Handa <handa@etl.go.jp>
11061
11062 * callproc.c (Fcall_process): Fix previous change.
11063
110642002-07-07 Stefan Monnier <monnier@cs.yale.edu>
11065
11066 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
11067 Add support for hash-tables.
11068 (Ftry_completion): Return t even if the string appears multiple times.
11069
11070 * fns.c (Fnconc): Use XCDR.
11071 (Fprovide): Use CONSP and XCDR.
11072 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
11073 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
11074 (Fmake_hash_table): Accept `:size nil'.
11075 (Fmakehash): Delete: moved to subr.el.
11076 (syms_of_fns): Don't defsubr makehash.
11077
11078 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
11079 (HASH_TABLE_SIZE): Move from fns.c.
11080
110812002-07-07 Richard M. Stallman <rms@gnu.org>
11082
11083 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
11084 Instead just return 0 when there is something to be done.
11085 (try_scrolling): If make_cursor_line_fully_visible returns 0,
11086 retry scrolling as if cursor were off the bottom.
11087 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
11088 return CURSOR_MOVEMENT_MUST_SCROLL.
11089 (redisplay_window): If make_cursor_line_fully_visible returns 0,
11090 go to try_to_scroll.
11091
11092 * buffer.c (Fbuffer_local_value): Store current value into its binding
11093 so we get the up-to-date value for the binding that is loaded.
11094
11095 * eval.c (Fdefmacro): Doc fix.
11096
110972002-07-05 Dave Love <fx@gnu.org>
11098
11099 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
11100 correctly.
11101
11102 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
11103 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
11104 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
11105 CCL_LookupCharConstTbl.
11106 (syms_of_ccl): Defvar translation-hash-table-vector.
11107
111082002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11109
11110 * xdisp.c: Remove unused variable `face'.
11111
111122002-07-04 Juanma Barranquero <lektu@terra.es>
11113
11114 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
11115 obsolescence information.
11116
111172002-07-03 Andrew Choi <akochoi@shaw.ca>
11118
11119 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
11120 pattern. Search cache first.
11121 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
11122 for Japanese font.
11123 (XLoadQueryFont): Use it.
11124
111252002-07-02 Richard M. Stallman <rms@gnu.org>
11126
11127 * keymap.c (Fdefine_key): Doc fix.
11128
11129 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
11130
111312002-07-02 Juanma Barranquero <lektu@terra.es>
11132
11133 * keymap.c (syms_of_keymap): Fix typo.
11134
111352002-07-01 Andrew Choi <akochoi@shaw.ca>
11136
11137 * s/darwin.h: Define POSIX_SIGNALS.
11138
11139 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
11140 and FSRefMakePath to convert FSSpec returned with Apple Event to
11141 Posix pathname.
11142 (mac_initialize) [TARGET_API_MAC_CARBON]:
11143 Call init_required_apple_events and disable the `Quit' menu item
11144 provided automatically by the Carbon Toolbox.
11145
111462002-07-01 Dave Love <fx@gnu.org>
11147
11148 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
11149 for K&R.
11150
11151 * xterm.c: Fix prototype for K&R.
11152
11153 * term.c (costs_set): Declare static, non-initialized for pcc.
11154
111552002-07-01 Richard M. Stallman <rms@gnu.org>
11156
11157 * keyboard.c (timer_last_idleness_start_time): New variable.
11158 (timer_start_idle): Set that.
11159 (read_key_sequence): Use that to reset timer_idleness_start_time
11160 to previous value.
11161
11162 * window.c (Frecenter): With arg, set optional_new_start.
11163
11164 * xdisp.c (redisplay_internal): Make optional_new_start really work.
11165
11166 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
11167 buffer for completion.
11168
111692002-06-29 Ken Raeburn <raeburn@gnu.org>
11170
11171 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
11172
111732002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11174
11175 * keyboard.c (readable_filtered_events): New function that filters
11176 FOCUS_IN_EVENT depending on parameter.
11177 (readable_events): Calls readable_filtered_events, not filtering
11178 FOCUS_IN_EVENT.
11179 (get_filtered_input_pending): New function, filtering parameter passed
11180 to readable_filtered_events.
11181 (get_input_pending): Calls get_filtered_input_pending, not filtering
11182 FOCUS_IN_EVENT.
11183 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
11184 FOCUS_IN_EVENT.
11185
11186 * xterm.h (struct x_output): Add focus_state.
11187
11188 * xterm.c (x_focus_changed): New function.
11189 (x_detect_focus_change): New function.
11190 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
11191 EnterNotify and LeaveNotify to track X focus changes.
11192
111932002-06-28 Andreas Schwab <schwab@suse.de>
11194
11195 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
11196
111972002-06-27 Kim F. Storm <storm@cua.dk>
11198
11199 * xdisp.c: (mode_line_string_list, mode_line_string_face)
11200 (mode_line_string_face_prop): New variables.
11201 (store_mode_line_string): New function.
11202 (display_mode_element): Use store_mode_line_string to
11203 add mode-line string elements to mode_line_string_list
11204 when mode_line_string_list is non-nil.
11205 (Fformat_mode_line): Now returns propertized string by
11206 default. New arg NO-PROPS to ignore properties.
11207 (decode_mode_spec): Only add two dashes for %- in propertized
11208 mode-line string.
11209 (syms_of_xdisp): Init and staticpro mode_line_string_list.
11210
112112002-06-27 Stefan Monnier <monnier@cs.yale.edu>
11212
11213 * minibuf.c (minibuffer_completion_contents): Add return type.
11214
112152002-06-27 Juanma Barranquero <lektu@terra.es>
11216
11217 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
11218
112192002-06-26 Juanma Barranquero <lektu@terra.es>
11220
11221 * fileio.c (read_file_name_cleanup): Add missing return.
11222
112232002-06-26 Richard M. Stallman <rms@gnu.org>
11224
11225 * window.c (Frecenter): Don't set force_start flag.
11226
11227 * minibuf.c (do_completion, Fminibuffer_complete_word)
11228 (Fminibuffer_completion_help): Complete just the text before point.
11229 (minibuffer_completion_contents): New function.
11230
11231 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
11232
11233 * frame.c (frames_bury_buffer): Function deleted.
11234
112352002-06-25 Miles Bader <miles@gnu.org>
11236
11237 * callint.c (Fcall_interactively): When checking to see if doprnt hit
11238 the end of callint_message, allow for a terminating '\0'.
11239
112402002-06-24 Juanma Barranquero <lektu@terra.es>
11241
11242 * w32select.c: Include composite.h
11243
11244 * w16select.c: Likewise.
11245
112462002-06-24 Kenichi Handa <handa@etl.go.jp>
11247
11248 * callproc.c (Fcall_process): If code detection is necessary,
11249 call detect_coding directly here.
11250
11251 * coding.c (detect_eol): Preserve coding->cmp_data.
11252
11253 * w16select.c (Fw16_get_clipboard_data):
11254 * w32fns.c (w32_to_x_font):
11255 * w32select.c (Fw32_get_clipboard_data):
11256 * xselect.c (selection_data_to_lisp_data):
11257 * xterm.c (XTread_socket): Disable composition handling.
11258
112592002-06-24 Stefan Monnier <monnier@cs.yale.edu>
11260
11261 * print.c (temp_output_buffer_setup): Kill all local variables.
11262
112632002-06-22 Stefan Monnier <monnier@cs.yale.edu>
11264
11265 * lread.c (Fread): Remove redundant and imprecise declaration.
11266
11267 * xfns.c (check_x_display_info): Use check_x_frame.
11268
11269 * .gdbinit (xprintsym): Use the new `xname' field.
11270 (xsymbol): Use it.
11271
112722002-06-22 Jason Rumney <jasonr@gnu.org>
11273
11274 * w32fns.c (file_dialog_callback): New function.
11275 (Fx_file_dialog): Allow selecting directories as well as files.
11276
112772002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11278
11279 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
f63fd14e 11280 OpenBSD. Add support for mipseb-*-netbsd* machines.
048addec
JD
11281
112822002-06-17 Andrew Choi <akochoi@shaw.ca>
11283
11284 * macterm.c (mac_scroll_area): Set foreground and backcolor to
11285 black and white before scrolling. Restore frame background and
11286 foreground color after scrolling.
11287 (do_window_update): Call XClearWindow before calling expose_frame.
11288 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
11289 FRAME_FOREGROUND_PIXEL of frame.
11290
11291 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
11292 test Mac command key as <ALT> key.
11293
112942002-06-17 Stefan Monnier <monnier@cs.yale.edu>
11295
11296 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
11297
11298 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
11299 Lookup keys in function-key-map immediately so that key-translation-map
11300 can be applied earlier.
11301 Remove function_key_possible and key_translation_possible, replaced
11302 by checking `keytran_start < t'.
11303
11304 * .gdbinit (xsymbol): Use the new `xname' field.
11305
113062002-06-17 Andrew Choi <akochoi@shaw.ca>
11307
11308 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
11309 test Mac command key as <ALT> key.
11310
11311 * mac.c (do_applescript): Call initialize_applescript if necessary
11312 when first called. Dispose of result_desc only when there is no error.
11313 (Fdo_applescript): Use %d format specifier instead of %ld.
11314
113152002-06-16 Andrew Choi <akochoi@shaw.ca>
11316
11317 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
11318 of FrontWindow for cases keyDown and autoKey.
11319
11320 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
11321 Vdefault_fontset to Monaco with mac-roman coding.
11322
11323 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
11324 init_process before and after inclusion of Carbon/Carbon.h, resp.
11325
11326 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
11327 cursor_gc.
11328 (add_font_name_table_entry): New function.
11329 (init_font_name_table): Use add_font_name_table_entry; add italic,
11330 bold, and bold-italic entries for truetype fonts.
11331
11332 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
11333 for Mac too.
11334 (try_font_list) [MAC_OS]: If no font matches given registry, try
11335 fonts with any registry matching face_family.
11336 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
11337
11338 * s/darwin.h: If autoconf detects the Ncurses library, define
11339 LIBS_TERMCAP to -lncurses to use it.
11340
113412002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
11342
11343 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
11344
113452002-06-15 Richard M. Stallman <rms@gnu.org>
11346
11347 * window.c (Fset_window_configuration): Explicitly preserve
11348 the point value that new_current_buffer had at the start.
11349
113502002-06-14 Juanma Barranquero <lektu@terra.es>
11351
11352 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
11353 Fix typos.
11354
113552002-06-14 Kim F. Storm <storm@cua.dk>
11356
11357 * insdel.c (insert_1_both, insert_from_string_1)
11358 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
11359 insert happened in the end_unchanged region. Otherwise, the
11360 redisplay may be confused and duplicate the last line in the
11361 buffer [seen after save-buffer when require-final-newline==t].
11362
113632002-06-13 Jason Rumney <jasonr@gnu.org>
11364
11365 * w32.c (init_environment): Remove EMACSLOCKDIR.
11366 (stat): Swap _S_IFDIR and _S_IFREG.
11367
113682002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11369
11370 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
11371 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
11372 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
11373 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
11374 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
11375 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
11376 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
11377 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
11378 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
11379 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
11380 SELECTION_REQUEST_EVENT, selection_clear_event to
11381 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
11382 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
11383 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
11384 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
11385 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
11386 no_event to NO_EVENT.
11387
113882002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11389
11390 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
11391
113922002-06-12 Stefan Monnier <monnier@cs.yale.edu>
11393
11394 * intervals.c (textget): Don't forget to `return'.
11395 (lookup_char_property): Use XCAR/XCDR.
11396
113972002-06-12 Juanma Barranquero <lektu@terra.es>
11398
11399 * xdisp.c (Fformat_mode_line): Fix typo.
11400
114012002-06-12 Kim F. Storm <storm@cua.dk>
11402
11403 * xdisp.c (Fformat_mode_line): New function.
11404 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
11405 (store_frame_title_char, store_frame_title): Use unconditionally.
11406 (init_xdisp): Defsubr Fformat_mode_line.
11407 Initialize frame_title_buf etc. unconditionally.
11408
114092002-06-11 Stefan Monnier <monnier@cs.yale.edu>
11410
11411 * keyboard.c (read_key_sequence):
11412 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
11413 things through those maps after downcasing events.
11414 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
11415 applies after function-key-map.
11416 Make sure that keytran can be done in the middle in the sequence.
11417 Be careful not to throw away events past the one we downcase.
11418
11419 * lread.c (read_integer): Remove unused var `tem'.
11420 (read1): Fix int/Lisp_Object mixup.
11421
11422 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
11423
114242002-06-11 Richard M. Stallman <rms@gnu.org>
11425
11426 * keyboard.c (readable_events): Ignore any number of
11427 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
11428
114292002-06-09 Miles Bader <miles@gnu.org>
11430
11431 * xfaces.c (Ftty_supports_face_attributes_p): New function.
11432 (parse_rgb_list, tty_lookup_color): New functions.
11433 (tty_defined_color): Use `tty_lookup_color' to do all the work.
11434 (color_distance, Fcolor_distance): New functions.
11435 (TTY_SAME_COLOR_THRESHOLD): New macro.
11436 (Qtty_color_standard_values): New variable.
11437 (syms_of_xfaces): Initialize new vars & functions.
11438
114392002-06-08 Colin Walters <walters@verbum.org>
11440
11441 * textprop.c (Vchar_property_alias_alist): New variable.
11442 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
11443
11444 * intervals.c (lookup_char_property): New function for looking up
11445 overlay and text properties, created from textget.
11446 (textget): Use it.
11447
11448 * intervals.h (lookup_char_property): Declare.
11449 (Vchar_property_alias_alist): Declare.
11450
11451 * buffer.c (Foverlay_get): Use lookup_char_property.
11452
114532002-06-07 Sam Steingold <sds@gnu.org>
11454
11455 * xselect.c (lisp_data_to_selection_data): Fix last change:
11456 *data_ret is not a Lisp string, while unibyte_string is.
11457
114582002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
11459
11460 * xselect.c (lisp_data_to_selection_data): Fix last change:
11461 set size_ret.
11462
114632002-06-07 Andreas Schwab <schwab@suse.de>
11464
11465 * m/amdx86-64.h: New file.
11466
114672002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
11468
11469 * fns.c (Fstring_make_unibyte): Doc fix.
11470
11471 * xselect.c (lisp_data_to_selection_data): If the requested type
11472 is STRING, call string_make_unibyte to encode the selected text
11473 as a string.
11474
11475 * window.c (Fset_window_hscroll): Doc fix.
11476
114772002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11478
11479 * fileio.c (choose_write_coding_system):
11480 Call select-safe-coding-system properly.
11481
114822002-06-03 Richard M. Stallman <rms@gnu.org>
11483
11484 * xdisp.c (message_with_string): Error if STRING is not a string.
11485
11486 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
11487
11488 * fileio.c (choose_write_coding_system): Pass FILE arg to
11489 Vselect_safe_coding_system_function.
11490
114912002-06-03 Ken Raeburn <raeburn@gnu.org>
11492
11493 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
11494
114952002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
11496
11497 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
11498 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
11499 * keymap.c (describe_command): Likewise.
11500 * minibuf.c (read_minibuf): Likewise.
11501
11502 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
11503 Cast `current_column' return value to int.
11504 (back_to_previous_visible_line_start)
11505 (reseat_at_next_visible_line_start, next_element_from_buffer):
11506 Cast `indented_beyond_p' 3rd arg to float.
11507
11508 * indent.c (last_known_column): Now a float.
11509 (current_column_1, position_indentation, current_column)
11510 (string_display_width): Return float.
11511 (Fcurrent_column): Cast `current_column' return value to int.
11512 (Fcurrent_indentation): Cast `position_indentation' retval to int.
11513 (indented_beyond_p): Third arg now a float.
11514 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
11515
11516 * lisp.h (current_column): Now returns float.
11517 (indented_beyond_p): 3rd arg now a float.
11518
115192002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
11520
11521 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
11522 is Qcompound_text_with_extensions.
11523
11524 * xselect.c (lisp_data_to_selection_data): Always set selection
11525 type as string if x_encode_text returns streingp non-NULL.
11526
11527 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
11528
115292002-05-30 Richard M. Stallman <rms@gnu.org>
11530
11531 * window.c (Fset_window_configuration): Correct the handling
11532 of point in current buffer, to work with multiple windows.
11533
115342002-05-29 Colin Walters <walters@verbum.org>
11535
11536 * lread.c (Fread_from_string): Don't depend on order of evaluation
11537 for C function parameters.
11538
115392002-05-28 Richard M. Stallman <rms@gnu.org>
11540
11541 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
11542 way for blinked-off state and for a nonselected window.
11543
11544 * window.c (window_scroll_pixel_based): Don't call Fbolp;
11545 instead, see if the new start pos is at beginning of line.
11546
11547 * fileio.c (Fwrite_region): If START is a string, don't
11548 make any annotations.
11549
11550 * eval.c (syms_of_eval): Doc fix.
11551
115522002-05-28 Colin Walters <walters@debian.org>
11553
11554 * emacs.c (USAGE1): Add --no-splash.
11555 (standard_args): Ditto.
11556
115572002-05-28 Colin Walters <walters@gnu.org>
11558
11559 * lread.c (readchar_count): New variable.
11560 (readchar): Increment it.
11561 (unreadchar): Decrement it.
11562 (read_multibyte): Decrement it.
11563 (Vread_with_symbol_positions): New variable.
11564 (Vread_symbol_positions_list): New variable.
11565 (read_internal_start): New function, created from Fread and
11566 Fread_from_string. Handle Vread_symbol_positions_list and
11567 Vread_with_symbol_positions.
11568 (readevalloop, Fread, Fread_from_string): Use it.
11569 (read1): Use readchar_count to add symbol positions to
11570 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
11571 (syms_of_lread): DEFVAR_LISP and initialize them.
11572
11573 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
11574 (substitute_object_recurse, substitute_object_in_subtree)
11575 (substitute_in_interval): Prototype.
11576 (read_multibyte): Return c if it's less than zero.
11577
115782002-05-28 Kim F. Storm <storm@cua.dk>
11579
11580 * fileio.c (Fread_file_name_internal): Added brute-force
11581 speed up for using predicate file-directory-p.
11582
115832002-05-28 Kim F. Storm <storm@cua.dk>
11584
11585 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
11586 New variables.
11587 (syms_of_fileio): DEFVAR_LISP them.
11588 (read_file_name_cleanup): New unwind function.
11589 (Fread_file_name_internal): Only return completions satifying
11590 Vread_file_name_predicate. Temporarily unwind protect and rebind
11591 default-directory while checking completions against the predicate.
11592 (Fread_file_name): Added PREDICATE argument. Specbind it to
11593 Vread_file_name_predicate during completion.
11594 Call Vread_file_name_function to read the file name if non-nil.
11595
11596 * lisp.h (Fread_file_name): Now has 6 args.
11597
11598 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
11599 predicate for Fread_file_name when reading directory name.
11600 Supply Qnil for predicate in other calls to Fread_file_name.
11601
116022002-05-26 Miles Bader <miles@gnu.org>
11603
11604 * term.c (tty_capable_p): New function.
11605 * dispextern.h (tty_capable_p): New function declaration.
11606 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
11607 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
11608
116092002-05-23 Stefan Monnier <monnier@cs.yale.edu>
11610
11611 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
11612 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
11613 (Vwrite_region_annotate_functions): Docstring fix.
11614
116152002-05-23 Kim F. Storm <storm@cua.dk>
11616
11617 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
11618 phys_cursor's hpos is overwritten. This is still not completely
11619 correct, as it doesn't really make sense to use hpos at all to
11620 get the cursor glyph (as that is relative to the width of the
11621 characters on the line, which may have changed during the update).
11622
116232002-05-22 Jason Rumney <jasonr@gnu.org>
11624
11625 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
11626 Lisp_Object.
11627 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
11628 Use modified enumfont_t struct.
11629
11630 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
11631
11632 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
11633 Handle the `hbar' cursor type.
11634 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
11635
11636 * w32fns.c (Qhbar): New variable.
11637 (x_specified_cursor_type): Use it.
11638
116392002-05-21 Ken Raeburn <raeburn@gnu.org>
11640
11641 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
11642 now, when the address is needed.
11643
116442002-05-21 Colin Walters <walters@gnu.org>
11645
11646 * Makefile.in (shortlisp): Add font-core.el.
11647
116482002-05-20 Richard M. Stallman <rms@gnu.org>
11649
11650 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
11651
11652 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
11653 equivalent key bindings here.
11654
116552002-05-20 Ken Raeburn <raeburn@gnu.org>
11656
11657 Change symbol structure to contain a lisp object for the symbol
11658 name:
11659 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
11660 object field named "xname".
11661 (SYMBOL_NAME): New macro.
11662 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
11663 name field.
11664 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
11665 (mark_object, gc_sweep): Use symbol xname field and XSTRING
11666 instead of name field.
11667 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
11668 SYMBOL_NAME instead of XSYMBOL and name field.
11669 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
11670 instead of XSYMBOL and name field.
11671 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
11672 and SYMBOL_NAME instead of XSYMBOL and name field.
11673 * coding.c (Fread_coding_system, code_convert_region1)
11674 (code_convert_string1, code_convert_string_norecord)
11675 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
11676 XSYMBOL and name field.
11677 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
11678 (Fmake_variable_buffer_local, Fmake_local_variable)
11679 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
11680 of XSYMBOL and name field.
11681 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
11682 XSYMBOL and name field.
11683 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
11684 instead of XSYMBOL and name field.
11685 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
11686 XSYMBOL and name field.
11687 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
11688 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
11689 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
11690 instead of XSYMBOL and name field.
11691 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
11692 (parse_modifiers, apply_modifiers, Fevent_convert_list)
11693 (parse_solitary_modifier, Fexecute_extended_command):
11694 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
11695 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
11696 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
11697 of XSYMBOL and name field.
11698 (describe_command, describe_translation): Use SYMBOL_NAME and
11699 assignment instead of XSYMBOL and name field and XSETSTRING.
11700 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
11701 instead of XSYMBOL and name field.
11702 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
11703 name field and XSETSTRING.
11704 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
11705 of XSYMBOL and name field.
11706 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
11707 assignment instead of XSYMBOL and name field and XSETSTRING.
11708 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
11709 XSTRING instead of XSYMBOL and name field.
11710 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
11711 and XSTRING instead of XSYMBOL and name field.
11712 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
11713 and XSTRING instead of XSYMBOL and name field.
11714 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
11715 XSTRING instead of XSYMBOL and name field.
11716 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
11717 of XSYMBOL and name field.
11718 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
11719 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
11720
117212002-05-19 Ken Raeburn <raeburn@gnu.org>
11722
11723 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
11724 and XCDR real rvalues in most configurations.
11725
11726 * buffer.c (fix_overlays_in_range, fix_overlays_before):
11727 Don't take the address of the cdr part of a cons cell; instead, track
11728 the parent cell and call XSETCDR, or set the variable for the head
11729 of the list if we haven't started down the list yet.
11730
117312002-05-19 Richard M. Stallman <rms@gnu.org>
11732
11733 * doc.c (reread_doc_file): Don't ask for confirmation.
11734
117352002-05-18 Jason Rumney <jasonr@gnu.org>
11736
11737 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
11738 (xbm_load_image): Use it.
11739 (xbm_load): Ditto.
11740 (xbm_read_bitmap_data): Reverted to xfns.c version.
11741 From David Ponce <david@dponce.com>.
11742
117432002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
11744
11745 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
11746 2.02 and later.
11747
117482002-05-16 Juanma Barranquero <lektu@terra.es>
11749
11750 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
11751
117522002-05-15 Stefan Monnier <monnier@cs.yale.edu>
11753
11754 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
11755 meaningful test.
11756 (read_char_minibuf_menu_prompt): Fix typo.
11757
117582002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
11759
11760 * eval.c (Fcommandp): Doc fix.
11761
117622002-05-13 Stefan Monnier <monnier@cs.yale.edu>
11763
11764 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
11765 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
11766 (Fset_keymap_parent): Gcpro a bit more.
11767 (access_keymap): Gcpro around meta_map call and around the main loop.
11768 (get_keyelt): Gcpro when following indirect references.
11769 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
11770 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
11771 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
11772 Remove useless ad-hoc remap code.
11773
117742002-05-13 Richard M. Stallman <rms@gnu.org>
11775
11776 * search.c (search_buffer): Give up boyer moore search if inverse
11777 translation change charset_base.
11778
117792002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
11780
11781 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
11782 characters is carried over from the previous block of text, adjust
11783 coding->produced to account for the extra character.
11784
117852002-05-11 Andreas Schwab <schwab@suse.de>
11786
11787 * coding.c (intersection): Keep the elements of the returned list
11788 in the same order as in the first list.
11789
117902002-05-11 Kim F. Storm <storm@cua.dk>
11791
11792 * keymap.c (current_minor_maps): Fixed resizing of cmm_maps;
11793 only update cmm_size if realloc actually succeeds.
11794 Testing with initial size of 2 elements revealed that using
11795 realloc on GNU/Linux would cause a random trap in xmalloc
11796 later on, so I rewrote the code to use malloc/bcopy/free instead
11797 of realloc.
11798
117992002-05-10 Jason Rumney <jasonr@gnu.org>
11800
11801 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
11802
118032002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
11804
11805 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
11806 parens, to ensure correct evaluation order.
11807
118082002-05-10 Kim F. Storm <storm@cua.dk>
11809
11810 * keymap.c (Vemulation_mode_map_alists): New variable.
11811 (syms_of_keymap): DEFVAR_LISP it.
11812 (current_minor_maps): Process keymap alists in that list before
11813 minor-mode-overriding-map-alist and minor-mode-map-alist.
11814
118152002-05-09 Richard M. Stallman <rms@gnu.org>
11816
11817 * search.c (Freplace_match): Doc fix.
11818
118192002-05-09 Kim F. Storm <storm@cua.dk>
11820
11821 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
11822 Enlarge cursor rectangle drawn around image with non-zero relief.
11823
11824 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
11825 Enlarge cursor rectangle drawn around image with non-zero relief.
11826
11827 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
11828 Enlarge cursor rectangle drawn around image with non-zero relief.
11829
118302002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
11831
11832 * xselect.c (lisp_data_to_selection_data): Don't set selection
11833 type if comes from the Lisp object's car. If the selection
11834 contains a pure ASCII text, always return QSTRING as its type.
11835
118362002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11837
11838 * mac.c (mac-cut-function): Doc fix.
11839
118402002-05-05 Richard M. Stallman <rms@gnu.org>
11841
11842 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
11843
118442002-05-04 Jason Rumney <jasonr@gnu.org>
11845
11846 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
11847 for event-click-count.
11848
11849 * process.c (init_process): Only add server subfeature if we can
11850 use non-blocking I/O.
11851
118522002-05-04 Andrew Choi <akochoi@shaw.ca>
11853
11854 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
11855 repeatedly.
11856
118572002-05-03 Jason Rumney <jasonr@gnu.org>
11858
11859 * process.c (Fmake_network_process): Only support server sockets
11860 when we can make them non-blocking.
11861
11862 * s/ms-w32.h (HAVE_SELECT): Define.
11863
11864 * w32.h (FILE_NDELAY): New flag.
11865
11866 * w32.c (sys_getpeername, fcntl): New functions.
11867 (_sys_read_ahead): Temporarily block on non-blocking sockets.
11868
11869 * w32proc.c: include sys/file.h.
11870
118712002-05-03 Colin Walters <walters@verbum.org>
11872
11873 * callproc.c (Vgame_score_directory): Renamed to
11874 Vshared_game_score_directory.
11875
118762002-04-30 Richard M. Stallman <rms@gnu.org>
11877
11878 * s/gnu.h [emacs]: Include stdio.h.
11879 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
11880
11881 * eval.c (do_autoload): Error if called while preparing to dump.
11882
11883 * fns.c (Frequire): Error if need to load while preparing to dump.
11884
118852002-04-28 Colin Walters <walters@verbum.org>
11886
11887 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
11888 Default to "~/.emacs.d/games".
11889
118902002-04-29 Stefan Monnier <monnier@cs.yale.edu>
11891
11892 * lread.c (openp): Change arg exec_only to predicate.
11893 (build_load_history): Use XCAR/XCDR.
11894 (Flocate_file_internal): New fun.
11895 (syms_of_lread): Defsubr it.
11896 (Fload): Update call to openp.
11897
11898 * lisp.h (openp): Update prototype.
11899
11900 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
11901 * w32proc.c (sys_spawnve):
11902 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
11903 * w32.c (check_windows_init_file):
11904 * sound.c (Fplay_sound_internal):
11905 * process.c (Fstart_process):
11906 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
11907 * mac.c (run_mac_command):
11908 * emacs.c (init_cmdargs):
11909 * callproc.c (Fcall_process): Update call to openp.
11910
11911 * textprop.c (remove_properties): Don't use XCAR without CONSP.
11912
11913 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
11914
119152002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11916
11917 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
11918 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
11919
119202002-04-28 Richard M. Stallman <rms@gnu.org>
11921
11922 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
11923
11924 * eval.c (Fcommandp): New arg for_call_interactively.
11925 * lisp.h (Fcommandp): Declare new arg.
11926
119272002-04-28 Jason Rumney <jasonr@gnu.org>
11928
11929 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
11930
11931 * w32.c (stat, fstat): Use file index information to generate
11932 inodes for directories where available.
11933
119342002-04-26 Andrew Choi <akochoi@shaw.ca>
11935
11936 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
11937 [HAVE_CARBON]: Include Mac object files.
11938
11939 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
11940 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
11941 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
11942 MAC_OSX, and MAC_OS instead of macintosh.
11943
11944 * editfns.c [MAC_OS8]: Include stdio.h.
11945
11946 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
11947
11948 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
11949 Apple Monaco.
11950
11951 * process.c: Declare QCfamily and QCfilter as extern.
11952 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
11953 calling select.
11954
11955 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
11956
11957 * tparam.c [MAC_OSX]: Don't define BC and UP.
11958
11959 * config.in [HAVE_CARBON]: Add.
11960
11961 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
11962 Move here from mac/src and mac/inc.
11963
11964 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
11965
119662002-04-26 Gerd Moellmann <gerd@gnu.org>
11967
11968 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
11969 Compute phys_cursor_width from the x position returned
11970 by x_draw_glyhs, which is cheaper.
11971 (x_display_and_set_cursor): Compute the buffer-local value
11972 of `cursor-in-non-selected-windows' only when needed.
11973
119742002-04-25 Gerd Moellmann <gerd@gnu.org>
11975
11976 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
11977 cursor on a stretch glyph has a width that depends on
11978 x_stretch_cursor_p.
11979
119802002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11981
11982 * abbrev.c (abbrev-start-location): Doc fix.
11983
11984 * indent.c (Fvertical_motion): Fix last change.
11985
119862002-04-25 Gerd Moellmann <gerd@gnu.org>
11987
11988 * indent.c (Fvertical_motion): Move to the start of the line
11989 containing PT before moving up or down.
11990
119912002-04-24 Gerd Moellmann <gerd@gnu.org>
11992
11993 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
11994 case of writing a whole row, more or less analogous to the case of
11995 writing only parts of a row.
11996
11997 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
11998 0 for NO_CURSOR.
11999
12000 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
12001
120022002-04-23 Colin Walters <walters@verbum.org>
12003
12004 * buffer.c (syms_of_buffer): Doc fix.
12005
120062002-04-23 Gerd Moellmann <gerd@gnu.org>
12007
12008 * xterm.c (notice_overwritten_cursor): Handle the special case
12009 of the cursor being in the first blank non-text line at the
12010 end of a window.
12011
12012 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
12013 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
12014 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
12015 bar cursors only, to make phys_cursor_width contain what its name
12016 suggests.
12017 (notice_overwritten_cursor): Consider the cursor image erased if
12018 the output area intersects the cursor image in y-direction.
12019
120202002-04-23 Simon Marshall <simon@gnu.org>
12021
12022 * xfns.c (x_set_mouse_color): Change default for cross_cursor
12023 to XC_hand2.
12024
120252002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12026
12027 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
12028
120292002-04-22 Kim F. Storm <storm@cua.dk>
12030
12031 * textprop.c (remove_properties): Fixed trap for malformed plist.
12032
120332002-04-22 Richard M. Stallman <rms@gnu.org>
12034
12035 * cmds.c (Fend_of_line): Handle intangible text in mid line.
12036
12037 * window.c (make_window): Initialize height_fixed_p,
12038 last_cursor_off_p, and p->cursor_off_p slots.
12039
120402002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12041
12042 * fns.c (use-dialog-box): Doc fix.
12043
120442002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12045
12046 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
12047 variables `row', `i' and `area'.
12048 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
12049 toolkit library.
12050
120512002-04-19 Stefan Monnier <monnier@cs.yale.edu>
12052
12053 * xfaces.c (clear_font_table): Don't free the default font of
12054 a frame even if it's on another display.
12055 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
12056 that could be Qt.
12057
120582002-04-19 Juanma Barranquero <lektu@terra.es>
12059
12060 * indent.c (Fmove_to_column): Remove unused local variable
12061 `next_boundary_byte'.
12062 (current_column_1): Likewise.
12063
120642002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
12065
12066 * msdos.c (Qhbar): New variable.
12067 (syms_of_msdos): Intern and staticpro it.
12068 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
12069 cursor type.
12070
120712002-04-19 Dave Lambert <dlambert@acm.org>
12072
12073 Theses change implement an underscore-like (`hbar') cursor.
12074
12075 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
12076
12077 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
12078 Handle the `hbar' cursor type.
12079 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
12080
12081 * xfns.c (Qhbar): New variable.
12082 (syms_of_xfns): Intern and staticpro it.
12083 (x_specified_cursor_type): Handle `hbar' cursor.
12084
12085 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
12086 not defined.
12087
120882002-04-18 Richard M. Stallman <rms@gnu.org>
12089
12090 * textprop.c (remove_properties): New arg LIST allows scanning
12091 either a list or a plist.
12092 (interval_has_some_properties_list): New function, like
12093 interval_has_some_properties using list instead of plist.
12094 All callers changed.
12095 (Fremove_list_of_text_properties): New function.
12096 (syms_of_textprop): Defsubr it.
12097
120982002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
12099
12100 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
12101
121022002-04-17 Juanma Barranquero <lektu@terra.es>
12103
12104 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
12105
121062002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
12107
12108 * window.c (coordinates_in_window): Don't report on margin area
12109 if its width is zero.
12110
121112002-04-16 Jason Rumney <jasonr@gnu.org>
12112
12113 * w32fns.c (Fx_file_dialog): Decode file name before using.
12114
12115 * w32term.c (construct_drag_n_drop): Likewise.
12116
121172002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
12118
12119 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
12120 store load-history in pure space.
12121
12122 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
12123
121242002-04-16 Stefan Monnier <monnier@cs.yale.edu>
12125
12126 * xterm.c (Qlatin_1, Qutf_8): New vars.
12127 (syms_of_xterm): Initialize them.
12128 (XTread_socket): Eliminate incorrect optimization that tried to avoid
12129 decoding the output of X*LookupString.
12130 Always use latin-1 to decode the output of XLookupString.
12131 Try Xutf8LookupString if XmbLookupString failed.
12132
12133 * region-cache.c (new_region_cache): Use BEG.
12134
121352002-04-16 Gerd Moellmann <gerd@gnu.org>
12136
12137 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
12138 configuration files.
12139 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
12140 returns 0.
12141
121422002-04-15 Andreas Schwab <schwab@suse.de>
12143
12144 * config.in: Regenerated using autoheader.
12145
12146 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
12147 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
12148 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
12149 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
12150 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
12151 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
12152 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
12153 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
12154 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
12155 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
12156 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
12157 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
12158 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
12159 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
12160 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
12161 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
12162 STACK_DIRECTION, now set by autoconf.
12163
121642002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12165
12166 * dispnew.c (marginal_area_string): Sort arguments.
12167
12168 * dispextern.h (marginal_area_string): Add prototype.
12169
121702002-04-13 Richard M. Stallman <rms@gnu.org>
12171
12172 * fileio.c (Finsert_file_contents):
12173 Don't call temp_output_buffer_setup--do just part, by hand.
12174
12175 * coding.c (run_pre_post_conversion_on_str):
12176 Don't call temp_output_buffer_setup--do just part, by hand.
12177
12178 * keyboard.c (command_loop_1): Don't call start_hourglass
12179 or cancel_hourglass when executing a macro.
12180
12181 * marker.c (count_markers): New function.
12182
12183 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
12184 grow without limit. Move recently used elements to the front.
12185
121862002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
12187
12188 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
12189
121902002-04-12 Gerd Moellmann <gerd@gnu.org>
12191
12192 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
12193 rows marginal areas.
12194 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
12195 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
12196
12197 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
12198
121992002-04-12 Dave Love <fx@gnu.org>
12200
12201 * dispnew.c (marginal_area_string): New.
12202
12203 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
12204 (Qleft_margin, Qright_margin): Declare.
12205 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
12206
12207 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
12208 note_mode_line_highlight and extended.
12209
12210 * keyboard.c (Qleft_margin, Qright_margin): Declare.
12211 (make_lispy_event): Deal with mouse events in margins.
12212
122132002-04-12 Stefan Monnier <monnier@cs.yale.edu>
12214
12215 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
12216
12217 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
12218 than deactivating the mark if tmm is set to `lambda'.
12219 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
12220 Use a single event for HELP_EVENT.
12221 (Fexecute_extended_command): Save last_point_position.
12222
122232002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12224
12225 * lisp.h (Fpropertize): Add prototype.
12226
12227 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
12228
122292002-04-10 Colin Walters <walters@verbum.org>
12230
12231 * config.in: Add HAVE_SHARED_GAME_DIR.
12232
12233 * callproc.c: (Vgame_score_directory): New variable.
12234 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
12235
122362002-04-10 Richard M. Stallman <rms@gnu.org>
12237
12238 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
12239
122402002-04-09 Stefan Monnier <monnier@cs.yale.edu>
12241
12242 * minibuf.c (read_minibuf): Use empty_string.
12243 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
12244 Short-circuit the search as soon as it "failed".
12245 (Fall_completions): Allow lambda forms and lists of strings for alist.
12246 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
12247 when require_match is nil.
12248 (Ftest_completion): Rename from `test_completion' and export to elisp.
12249 Call the predicate also when alist is a list.
12250 Obey Vcompletion_regexp_list.
12251 (do_completion, Fminibuffer_complete_and_exit): Use it.
12252 (Fassoc_string): Rename from `assoc_for_completion'.
12253 Allow list of strings as well and export to elisp.
12254
122552002-04-08 Stefan Monnier <monnier@cs.yale.edu>
12256
12257 * puresize.h (BASE_PURESIZE): Increase to 900KB.
12258
122592002-04-08 Juanma Barranquero <lektu@terra.es>
12260
12261 * w32.c (sys_accept): Don't hide variable `s'.
12262
122632002-04-05 Gerd Moellmann <gerd@gnu.org>
12264
12265 * callint.c (Fcall_interactively): Use INTEGERP instead of
12266 NUMBERP for checking Vhistory_length.
12267
122682002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12269
12270 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
12271 Doc fix to reflect it.
12272
122732002-04-04 Richard M. Stallman <rms@gnu.org>
12274
12275 * xdisp.c (display_mode_element): New arg RISKY.
12276 Disregard text props found or specified within a variable
12277 that isn't marked risky-local-variable.
12278 (Qrisky_local_variable): New variable.
12279 (syms_of_xdisp): Init and staticpro it.
12280
122812002-04-04 Stefan Monnier <monnier@cs.yale.edu>
12282
12283 * undo.c (record_point): New fun.
12284 (record_delete, record_insert): Use it.
12285
122862002-04-03 Juanma Barranquero <lektu@terra.es>
12287
12288 * doc.c (Fdocumentation): Add missing parentheses.
12289 (Fdocumentation_property): Likewise.
12290
122912002-04-03 Stefan Monnier <monnier@cs.yale.edu>
12292
12293 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
12294 data is 0, just return nil.
12295
122962002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
12297
12298 * msdos.c (syms_of_msdos): Fix last change with
12299 mouse_autoselect_window.
12300
123012002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12302
12303 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
12304 mouse_autoselect_window.
12305
123062002-04-02 Stefan Monnier <monnier@cs.yale.edu>
12307
12308 * keyboard.c (make_lispy_event): Handle unknown keysyms together
12309 with system-specific keysyms. Use it also for unknown function keys.
12310
12311 * doc.c (reread_doc_file): Return whether reload was attempted.
12312 (Fdocumentation, Fdocumentation_property): Don't try to reload
12313 if the doc is 0 and only ask once.
12314
12315 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
12316
123172002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
12318
12319 * keyboard.c (read_char): If the event was Qselect_window,
12320 restore timer_idleness_start_time to its previous value.
12321
12322 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
12323
123242002-04-01 Stefan Monnier <monnier@cs.yale.edu>
12325
12326 * region-cache.c (new_region_cache): Use BEG.
12327
12328 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
12329 Use BEG and BEG_BYTE.
12330
12331 * doc.c (get_doc_string): Return nil if the location is wrong.
12332 (reread_doc_file): New fun.
12333 (Fdocumentation, Fdocumentation_property):
12334 Call it if get_doc_string fails.
12335 (Fsnarf_documentation): Make it work for a dumped Emacs.
12336
12337 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
12338 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
12339
12340 * charset.c (Fstring): Allow 0 arguments.
12341
12342 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
12343
12344 * process.c (DATAGRAM_CONN_P, list_processes_1)
12345 (Fprocess_datagram_address, Fset_process_datagram_address)
12346 (Fset_network_process_options, server_accept_connection):
12347 Fix some int/Lisp_Object confusions (thank you union types).
12348
123492002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12350
12351 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
12352
12353 * w32term.c: Likewise.
12354 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
12355
12356 * keyboard.c (Qselect_window): New symbol.
12357 (head_table): Use it.
12358 (keys_of_keyboard): Bound select-window event to handle-select-window.
12359 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
12360
12361 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
12362 (last_window): New variable.
12363 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
12364 (note_mouse_movement): Remove reimplemented code in #if 0.
12365 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
12366 Emacs windows.
12367
12368 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
12369
123702002-03-31 Gerd Moellmann <gerd@gnu.org>
12371
12372 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
12373 Callers changed.
12374
123752002-03-30 Richard M. Stallman <rms@gnu.org>
12376
12377 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
12378 loop whenever it stops making progress.
12379
12380 * widget.c (set_frame_size): Don't call change_frame_size.
12381
123822002-03-30 Gerd Moellmann <gerd@gnu.org>
12383
12384 * dispnew.c (direct_output_for_insert):
12385 Call mark_window_display_accurate.
12386
123872002-03-29 Jason Rumney <jasonr@gnu.org>
12388
12389 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
12390
123912002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
12392
12393 * Makefile.in (lread.o): Depend on coding.h.
12394
12395 * lread.c (openp, Fload): Encode the file name before passing it
12396 to `stat', `access', and `emacs_open'.
12397 (openp): GCPRO the encoded file name. Don't recompute Lisp
12398 strings unnecessarily.
12399
124002002-03-29 Kim F. Storm <storm@cua.dk>
12401
12402 * fns.c (Flax_plist_put): Doc fix.
12403
124042002-03-28 Miles Bader <miles@gnu.org>
12405
12406 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
12407
124082002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12409
12410 * process.c (set-network-process-options): Add usage.
12411 (make-network-process): Doc fix.
12412
124132002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
12414
12415 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
12416
124172002-03-26 Richard M. Stallman <rms@gnu.org>
12418
12419 * fns.c (Fsubstring_no_properties): New function.
12420 (Flax_plist_get, Flax_plist_put): New functions.
12421 (syms_of_fns): defsubr them.
12422
12423 * xdisp.c (update_menu_bar): Test only update_mode_lines;
12424 don't test or alter w->update_mode_line.
12425
12426 * window.c (Fdisplay_buffer): Doc fix.
12427
124282002-03-24 Richard M. Stallman <rms@gnu.org>
12429
12430 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
12431
124322002-03-24 Gerd Moellmann <gerd@gnu.org>
12433
12434 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
12435 (Fdefmacro): Handle `(declare ...)'.
12436 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
12437 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
12438
124392002-03-24 Jason Rumney <jasonr@gnu.org>
12440
12441 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
12442 (xbm_file_p): Add prototypes.
12443 (xbm_format, xbm_image_p): Sync with xfns.c.
12444 (reflect_byte): New function.
12445 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
12446 (xbm_load_image): Create bitmaps with a depth of 1.
12447 (init_xfns): Enable XBM images.
12448
124492002-03-23 Jason Rumney <jasonr@gnu.org>
12450
12451 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
12452 correctly. Do not pass up_modifier to keyboard buffer.
12453
12454 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
12455
124562002-03-22 Stefan Monnier <monnier@cs.yale.edu>
12457
12458 * Makefile.in (bootstrapclean): New target.
12459 (bootstrap-temacs, bootstrap-doc): Remove.
12460 (bootstrap-emacs): Use a bog-standard `temacs'.
12461 Don't bother to build a DOC file.
12462
12463 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
12464
12465 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
12466 in temacs even if !CANNOT_DUMP.
12467 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
12468
12469 * alloc.c (check_pure_size): Only output a warning.
12470
124712002-03-22 Jason Rumney <jasonr@gnu.org>
12472
12473 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
12474 supported.
12475
12476 * w32term.c (zv_bits): Declare as short, for word alignment.
12477 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
12478 (syms_of_w32term): Define x-use-underline-position-properties.
12479
12480 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
12481 (clear_image_cache): Block input, fix logic, clear matrices in
12482 all frames that share this cache.
12483
124842002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
12485
12486 * emacs.c (main): Update the Copyright year in the blurb printed
12487 by "emacs --version".
12488
12489 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
12490
12491 * xterm.c (XTread_socket): If XK_ISO_Lock and
12492 XK_ISO_Last_Group_Lock are defined, handle keysyms between
12493 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
12494
124952002-03-21 Kim F. Storm <storm@cua.dk>
12496
12497 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
12498 menu-bar bindings in keymap and local-map properties _are_ used.
12499 But try keymap property first in accordance with 2002-01-03 patch.
12500 Added comment describing why this is not always reliable.
12501 (tool_bar_items): Ditto for tool-bar.
12502
125032002-03-21 Jason Rumney <jasonr@gnu.org>
12504
12505 * w32fns.c (x_clear_image_1): Disable color table code.
12506
125072002-03-21 Kim F. Storm <storm@cua.dk>
12508
12509 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
12510 removed the wrong version of the DEFUN macro; fixed it.
12511
12512 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
12513 Fmember rather than Fmemq).
12514 (Fprovide): Check that subfeatures is a list.
12515
12516 * process.c (QCfeature, QCdatagram): Removed variables.
12517 (QCtype, Qdatagram): New variables.
12518 (network_process_featurep): Removed function.
12519 (Fmake_network_process): Removed :feature check.
12520 Use :type 'datagram instead of :datagram t to create a datagram
12521 socket. This allows us to add other connection types (e.g. raw
12522 sockets) later in a consistent manner.
12523 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
12524 supported subfeatures for feature make-network-process.
12525 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
12526 Intern and staticpro QCtype and Qdatagram.
12527 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
12528
12529 * xfns.c: (QCtype): Remove duplicate declaration and
12530 initialization (is now declared in process.c).
12531
12532 * w32fns.c: (QCtype): Remove duplicate declaration and
12533 initialization (is now declared in process.c).
12534
125352002-03-21 Richard M. Stallman <rms@gnu.org>
12536
12537 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
12538 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
12539 when jumping to `fail' to avoid undoing reg changes in the
12540 last iteration of the loop.
12541 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
12542
12543 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
12544 Depend on process.h.
12545
125462002-03-20 Jason Rumney <jasonr@gnu.org>
12547
12548 Most of the following changes are still conditional on HAVE_IMAGES
12549 which is not set by default on Windows.
12550
12551 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
12552
12553 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
12554 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
12555 (four_corners_best, x_clear_image_1, x_clear_image)
12556 (x_alloc_image_color, postprocess_image)
12557 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
12558 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
12559 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
12560
12561 * w32gui.h (struct XImage): Define.
12562
12563 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
12564 extract mouse co-ordinates.
12565
125662002-03-20 Jason Rumney <jasonr@gnu.org>
12567
12568 * w32.c (init_winsock): Dynamically load new server and UDP
12569 socket functions.
12570 (socket_to_fd): New function.
12571 (sys_socket): Use it.
12572 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
12573 (sys_recvfrom, sys_sendto): New wrapper functions.
12574
12575 * process.c (QCfamily, QCfilter): Remove duplicate declaration
12576 and initialization.
12577
12578 * makefile.w32-in (LIBS): Remove $(WSOCK32).
12579
125802002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
12581
12582 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
12583 Don't use "sun" as a variable, it's a predefined constant on Sun
12584 machines.
12585
125862002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12587
12588 * bytecode.c (Fbyte_code): Revert last change.
12589
125902002-03-19 Kim F. Storm <storm@cua.dk>
12591
12592 * makefile.w32-in (LIBS): Add $(WSOCK32).
12593 From David Ponce <dponce@voila.fr>.
12594
125952002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12596
12597 * process.c (wait_reading_process_input): Move variables `pname'
12598 and `pnamelen' down where they are used.
12599
12600 * bytecode.c (Fbyte_code): Discard unused computed value to
12601 prevent gcc warning.
12602
12603 * lisp.h (Fplist_member): Add prototype.
12604
126052002-03-18 Kim F. Storm <storm@cua.dk>
12606
12607 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
12608 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
12609
12610 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
12611 Remove explicit GNU_LINUX settings for datagram support.
12612
126132002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12614
12615 * process.c (Fmake_network_process): Remove unused variable `sa'.
12616 Doc fix. Add usage:.
12617 (set_socket_options): Remove unused variables `optnum' and `opttype'.
12618
126192002-03-17 Richard M. Stallman <rms@gnu.org>
12620
12621 * xdisp.c (cursor_type_changed): New variable.
12622 (redisplay_internal): Redisplay all windows if cursor_type_changed.
12623 Clear it when clearing windows_or_buffers_changed.
12624 (try_cursor_movement, redisplay_window, try_window_id)
12625 (try_window_reusing_current_matrix): Test cursor_type_changed
12626 along with windows_or_buffers_changed.
12627
12628 * window.h (cursor_type_changed): New variable.
12629
12630 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
12631 not update_mode_lines, and always set it to 1.
12632
12633 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
12634 if no frames needed redrawing.
12635
126362002-03-17 Kim F. Storm <storm@cua.dk>
12637
12638 The following changes add support for network server processes,
12639 datagram connections, and local (unix) sockets.
12640
12641 * process.h (struct Lisp_Process): New member log.
12642 Doc fix: Member command used to indicate stopped network process.
12643 Doc fix: Member childp contains plist for network process.
12644 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
12645
12646 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
12647 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
12648 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
12649 New variables.
12650 (NETCONN1_P): New macro.
12651 (DATAGRAM_SOCKETS): New conditional symbol.
12652 (datagram_address): New array.
12653 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
12654 (status_message): Use concat3.
12655 (Fprocess_status): Add `listen' status to doc string. Return `stop'
12656 for a stopped network process.
12657 (Fset_process_buffer): Update contact plist for network process.
12658 (Fset_process_filter): Ditto. Don't enable input for stopped
12659 network processes. Server must listen, even if filter is t.
12660 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
12661 New functions.
12662 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
12663 (Fprocess_contact): Added KEY argument. Handle datagrams.
12664 (list_processes_1): Optionally show only processes with the query
12665 on exit flag set. Dynamically adjust column widths. Omit tty
12666 column if not needed. Report stopped network processes.
12667 Identify server and datagram network processes.
12668 (Flist_processes): New optional arg `query-only'.
12669 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
12670 (conv_lisp_to_sockaddr, set_socket_options)
12671 (network_process_featurep, unwind_request_sigio): New helper functions.
12672 (Fprocess_datagram_address, Fset_process_datagram_address):
12673 (Fset_network_process_options): New lisp functions.
12674 (Fopen_network_stream): Removed. Now defined in simple.el.
12675 (Fmake_network_process): New lisp function. Code is based on previous
12676 Fopen_network_stream, but heavily reworked with new property list based
12677 argument list, support for datagrams, server processes, and local
12678 sockets in addition to old client-only functionality.
12679 (server_accept_connection): New function.
12680 (wait_reading_process_input): Use it to handle incoming connects.
12681 Do not enable input on a new connection if process is stopped.
f63fd14e 12682 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
048addec
JD
12683 (send_process): Handle datagram sockets.
12684 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
12685 network process is indicated by setting command field to t .
12686 (Fprocess_send_eof): No-op if datagram connection.
12687 (Fstatus_notify): Don't read input for a stream server socket or a
12688 stopped network process.
12689 (init_process): Initialize datagram_address array.
12690 (syms_of_process): Intern and staticpro new variables, defsubr new
12691 functions.
12692
126932002-03-16 Jason Rumney <jasonr@gnu.org>
12694
12695 * w32fns.c (w32_to_all_x_charsets): Return correct type in
12696 startup case.
12697
126982002-03-16 Richard M. Stallman <rms@gnu.org>
12699
12700 * xdisp.c (redisplay_internal, redisplay_windows):
12701 Use list_of_error to call internal_condition_case_1.
12702 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
12703 so as to catch all errors with no possibility of debugger redisplay.
12704 (list_of_error): New variable.
12705 (syms_of_xdisp): Init and staticpro it.
12706
12707 * print.c (print_object): Delete `\ ' from printed rep of frame.
12708
127092002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
12710
12711 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
12712 until its implementation is fixed.
12713
127142002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12715
12716 * xfns.c (png_load): Remove unused variable `gamma_str'.
12717
127182002-03-14 Richard M. Stallman <rms@gnu.org>
12719
12720 * xfns.c (x_real_positions): Handle failure in XQueryTree.
12721
127222002-03-14 Miles Bader <miles@gnu.org>
12723
12724 * intervals.c (adjust_for_invis_intang): New function.
12725 (set_point_both): Use `adjust_for_invis_intang' to do most of the
12726 work for dealing with invisible+intangible regions. Do so before
12727 and after both forward and backward movements, to handle both
12728 front-sticky and rear-sticky cases.
12729 * textprop.c (text_property_stickiness): Function moved here from
12730 `editfns.c'.
12731 * intervals.h (text_property_stickiness): New declaration.
12732 * editfns.c (char_property_eq): Function removed.
12733 (text_property_stickiness): Function moved to `textprop.c'.
12734
127352002-03-13 Jason Rumney <jasonr@gnu.org>
12736
12737 * config.in: Add STRFTIME_NO_POSIX2.
12738
12739 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
12740 and %OX when underlying strftime does not.
12741
127422002-03-13 Stefan Monnier <monnier@cs.yale.edu>
12743
12744 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
12745 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
12746 line) to avoid annoying flicker.
12747 (xm_scroll_callback): Get rid of the now unnecessary kludge.
12748 (XTread_socket): Mark it static.
12749
12750 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
12751
127522002-03-13 Kim F. Storm <storm@cua.dk>
12753
12754 * puresize.h (BASE_PURESIZE): Increase to 775000.
12755
127562002-03-12 Juanma Barranquero <lektu@terra.es>
12757
12758 * editfns.c (syms_of_editfns): Fix typo.
12759
127602002-03-12 Gerd Moellmann <gerd@gnu.org>
12761
12762 * xsmfns.c: Include stdio.h because termhooks.h needs it.
12763 Include termopt.h for interrupt_input.
12764
127652002-03-11 Andreas Schwab <schwab@suse.de>
12766
12767 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
12768
127692002-03-11 Gerd Moellmann <gerd@gnu.org>
12770
12771 * xterm.c (note_mouse_movement): Put code for
12772 x_autoselect_window_p in #if 0.
12773
12774 * lread.c (Fload): Don't assume that message_with_string uses the
12775 string it is given like a C string.
12776
127772002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12778
12779 * xterm.h (x_session_check_input, x_session_initialize): Declared.
12780
12781 * xterm.c: (XTread_socket): Add call to x_session_check_input and
12782 x_session_have_connection.
12783 (x_initialize): Add call to x_session_initialize.
12784
12785 * termhooks.h (enum event_kind): Add save_session_event.
12786
12787 * keyboard.c: Add Emacs event save_session_event.
12788
12789 * emacs.c (main): Add call to syms_of_xsmfns.
12790
12791 * lisp.h: Declare syms_of_xsmfns as extern.
12792
12793 * config.in: Add HAVE_X_SM.
12794
12795 * Makefile.in (LIBXT): Add -lSM -lICE
12796 if HAVE_X_SM and not USE_X_TOOLKIT.
12797 (XOBJ): New file xsmfns.c added.
12798
12799 * xsmfns.c: New file for X session management.
12800
128012002-03-09 Jason Rumney <jasonr@gnu.org>
12802
12803 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
12804 read-only when setting modified time.
12805
128062002-03-08 Gerd Moellmann <gerd@gnu.org>
12807
12808 * xdisp.c (move_it_vertically_backward): At the end of the function,
12809 when moving forward by lines, treat terminal frames specially.
12810
12811 * keyboard.c (echo_char): Make sure to add a separator between
12812 keys even if echo_dash hasn't been called.
12813
12814 * xdisp.c: Use new string macros.
12815 (update_echo_area): Pass number of bytes to message3 instead of
12816 number of chars.
12817 (set_message_1): Don't access a string's size_byte directly.
12818 (decode_mode_spec_coding): Use number of bytes of eoltype string
12819 instead number of chars.
12820
12821 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
12822
128232002-03-08 Juanma Barranquero <lektu@terra.es>
12824
12825 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
12826 24-bit.
12827
128282002-03-06 Jason Rumney <jasonr@gnu.org>
12829
12830 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
12831
128322002-03-06 Gerd Moellmann <gerd@gnu.org>
12833
12834 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
12835 (cancel_echoing, echo_length, echo_truncate): Changed to
12836 work with new kboard definition.
12837 (echo_now): Use message3_nolog instead of message2_nolog.
12838
12839 * alloc.c (mark_kboards): Mark echo_string.
12840
12841 * keyboard.h (ECHOBUFSIZE): Removed.
12842 (struct kboard): Member echoptr removed, member echobuf renamed
12843 to echo_string.
12844
12845 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
12846 message3 instead of message2 to display the message using STRING's
12847 text properties.
12848
128492002-03-05 Andreas Schwab <schwab@suse.de>
12850
12851 * xdisp.c (hscroll_margin): Change to EMACS_INT.
12852
128532002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
12854
12855 * frame.c (default-frame-alist): Explain that setting it doesn't
12856 affect existing frames.
12857
128582002-03-05 Stefan Monnier <monnier@cs.yale.edu>
12859
12860 * indent.c (skip_invisible): Fix my brain fart.
12861
12862 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
12863
128642002-03-04 Stefan Monnier <monnier@cs.yale.edu>
12865
12866 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
12867 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
12868 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
12869 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
12870 and variables to use EMACS_INT instead of just int.
12871
12872 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
12873
128742002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
12875
12876 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
12877 environment, pass it down with corrected value.
12878
128792002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12880
12881 * lread.c (read_filtered_event): Do not call start_hourglass
12882 before returning.
12883
128842002-03-04 Juanma Barranquero <lektu@terra.es>
12885
12886 * w32term.c (x_display_and_set_cursor): Fix typo.
12887
128882002-03-03 Richard M. Stallman <rms@gnu.org>
12889
12890 * fileio.c (Fmake_temp_name): Doc fix.
12891
128922002-03-03 Gary Wong <gtw@gnu.org>
12893
12894 * termcap.c [!emacs]: Replace ospeed for building standalone
12895 libtermcap, for binary compatibility.
12896
12897 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
12898
128992002-03-03 Richard M. Stallman <rms@gnu.org>
12900
12901 * xrdb.c (file_p): Rename arg `path' to `filename'.
12902
12903 * abbrev.c (Fexpand_abbrev): Increment plist as use count
12904 only if it is an integer.
12905
12906 * xfns.c (png_load): Set screen_gamma based on f->gamma.
12907 If png_get_sRGB gives an answer, call png_set_gamma
12908 using the default image gamma value.
12909
12910 * lread.c (read1): When reading from a file, default string to
12911 multibyte only if it has some multibyte characters.
12912
12913 * print.c (print_object): Output multibyte chars 128...255
12914 using \x even if ! print_escape_multibyte.
12915
12916 * xdisp.c (display_mode_element): Move the places where
12917 bytepos, charpos, this, and lisp_string are set.
12918 Use lisp_string to set bytepos.
12919
12920 * xdisp.c (redisplay_internal):
12921 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
12922
12923 * xdisp.c (display_mode_element): Merge properties specified with
12924 :propertize onto those that come with the string.
12925
129262002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
12927
12928 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
12929 automatic-hscrolling. Users changed.
12930 <hscroll-margin>: Renamed from automatic-hscroll-margin.
12931 Users changed.
12932 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
12933
129342002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
12935
12936 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
12937
129382002-03-02 Kim F. Storm <storm@cua.dk>
12939
12940 * window.c (Fminibuffer_selected_window): New function.
12941 (syms_of_window): Defsubr it.
12942
129432002-03-01 Kim F. Storm <storm@cua.dk>
12944
12945 * window.h (struct window): New member phys_cursor_width.
12946
12947 * window.c (make_window, replace_window): Init phys_cursor_width.
12948
12949 * xterm.c (x_display_and_set_cursor): Blink box cursor using
12950 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
12951
12952 * w32term.c (x_display_and_set_cursor): Blink box cursor using
12953 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
12954
12955 * lisp.h (GCPRO6): New macro.
12956
12957 * process.c (Fopen_network_stream): Use GCPRO6.
12958
129592002-03-01 Kim F. Storm <storm@cua.dk>
12960
12961 * process.c (Qconnect, Qfailed): New variables.
12962 (syms_of_process): Intern and staticpro them.
12963 (Fprocess_status): Document connect and failed return values.
12964 [NON_BLOCKING_CONNECT]: New conditional.
12965 (connect_wait_mask, num_pending_connects): New variables.
12966 (status_message): Convert Qfailed status.
12967 (Fopen_network_stream): Added support for non-blocking connect.
12968 New optional args: filter, sentinel, non_blocking. Doc updated.
12969 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
12970 (deactivate_process): Handle pending non-blocking connect.
12971 (wait_reading_process_input): Poll for status of non-blocking
12972 connects. Exec sentinel directly when connect succeeds.
12973 (status_notify): Don't read process output if not yet connected.
12974
129752002-02-28 Kim F. Storm <storm@cua.dk>
12976
12977 * window.c: (minibuf_selected_window): Renamed from
12978 Vminibuf_selected_window. Users changed.
12979 (syms_of_window): Staticpro it.
12980
129812002-02-26 Kim F. Storm <storm@cua.dk>
12982
12983 The following changes add a new Vminibuf_selected_window variable
12984 which is similar to Vminibuf_scroll_window, but which is only set
12985 on entry to the minibuffer (from a non-minibuffer window):
12986
12987 * window.c: (Vminibuf_selected_window): New variable.
12988 (struct save_window_data): New member minibuf_selected_window.
12989 (Fset_window_configuration): Restore Vminibuf_selected_window.
12990 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
12991 Set minibuf_scroll_window member to nil if minibuf_level is 0.
12992 (compare_window_configurations): Compare minibuf_selected_window.
12993
12994 * window.h: (Vminibuf_selected_window): Declare extern.
12995
12996 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
12997 entry to minibuffer or on entry from a non-minibuffer window.
12998
12999 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
13000 Vminibuf_selected_window instead of Vminibuf_scroll_window.
13001
13002 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
13003 instead of Vminibuf_scroll_window when deciding in which window
13004 the region should be highlighted. Consequently, the region remains
13005 highlighteded even when a completion buffer is also displayed.
13006
130072002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
13008
13009 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
13010
13011 * xselect.c (Qcompound_text_with_extensions): Renamed from
13012 Qcompound_text_no_extensions.
13013 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
13014
130152002-02-26 Juanma Barranquero <lektu@terra.es>
13016
13017 * w32proc.c (syms_of_ntproc): Doc fix.
13018
130192002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13020
13021 * intervals.h: Include "dispextern.h" unconditionally.
13022
130232002-02-24 Jason Rumney <jasonr@gnu.org>
13024
13025 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
13026 and disp-table.elc.
13027 (lisp): Add emacs-lisp/backquote.elc.
13028
130292002-02-24 Kim F. Storm <storm@cua.dk>
13030
13031 * keymap.c (Flookup_key): Fixed problem in 2001-12-28 patch:
13032 The validation of the event type was too strict as it didn't
13033 allow string events; buffer names are used in bindings for
13034 menu-bar-select-buffer (see `menu-bar-update-buffers').
13035
130362002-02-23 Kim F. Storm <storm@cua.dk>
13037
13038 The following changes rework my patch of 2002-02-06 which
13039 added command remapping by entering the commands directly into
13040 the keymaps. Now, command remapping uses an explicit `remap'
13041 prefix in the keymaps, i.e. [remap COMMAND].
13042
13043 * keymap.c (Qremap, remap_command_vector): New variables.
13044 (is_command_symbol): Removed function.
13045 (Fdefine_key): No longer accept a symbol for KEY.
13046 Added validation of [remap COMMAND] argument for KEY.
13047 The DEF is no longer required to be a symbol when remapping a command.
13048 (Fremap_command): New function to remap command through keymaps.
13049 (Flookup_key): Perform command remapping initiated by
13050 Fremap_command directly for speed.
13051 (Fkey_binding): Use Fremap_command for command remapping.
13052 (where_is_internal): Handle new command remapping representation.
13053 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
13054 staticpro them. Defsubr Fremap_command.
13055
13056 * keymap.h (Fremap_command): Declare extern.
13057 (is_command_symbol): Remove extern.
13058
13059 * keyboard.c (command_loop_1): Use Fremap_command for command
13060 remapping; now try command remapping for all symbols.
13061
130622002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
13063
13064 * coding.h (run_pre_post_conversion_on_str): Add prototype.
13065
130662002-02-23 Jason Rumney <jasonr@gnu.org>
13067
13068 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
13069 on the string before encoding it.
13070 (Fw32_get_clipboard_data): Run post-read-conversion on the string
13071 after decoding it.
13072
13073 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
13074
130752002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13076
13077 * w32term.c (enter_timestamp): Remove unused static variable to
13078 prevent warning.
13079
13080 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
13081
130822002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
13083
13084 * w16select.c (Fw16_get_clipboard_data): Fix last change.
13085
13086 * xselect.c (selection_data_to_lisp_data): Fix last change.
13087
130882002-02-22 Jason Rumney <jasonr@gnu.org>
13089
13090 * w32term.h (struct w32_output): New member menu_command_in_progress.
13091
13092 * w32menu.c (menubar_selection_callback): Free the menu and
13093 clear the menu_command_in_progress flag.
13094
13095 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
13096 (menu_free_timer): New variable.
13097 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
13098 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
13099 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
13100 menu command is in progress.
13101 <WM_COMMAND>: Set the menu_command_in_progress flag.
13102 Kill any menu_free_timer that is running.
13103
13104 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
13105 Call ExtTextOutA rather than ExtTextOut.
13106
131072002-02-22 Eli Zaretskii <eliz@gnu.org>
13108
13109 * puresize.h (BASE_PURESIZE): Increase to 755000.
13110
131112002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
13112
13113 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
13114 on the string before encoding it.
13115 (Fw16_get_clipboard_data): Run post-read-conversion on the string
13116 after decoding it.
13117
131182002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
13119
13120 Support for ICCCM Extended Segments in X selections:
13121
13122 * xselect.c <Qcompound_text_no_extensions>: New variable.
13123 (syms_of_xselect): Intern and staticpro it.
13124 (selection_data_to_lisp_data): Run post-read-conversion on decoded
13125 selection text.
13126 (lisp_data_to_selection_data): If next-selection-coding-system is
13127 compound-text-no-extensions, set the type of selection to be
13128 compound-text.
13129
13130 * xterm.h (x_encode_text): Update prototype.
13131
13132 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
13133 callers changed. If SELECTIONP is non-zero, run the
13134 pre-write-conversion function before encoding the selection text.
13135
131362002-02-21 Kim F. Storm <storm@cua.dk>
13137
13138 * frame.c (syms_of_frame): Change mouse-highlight default to t.
13139
13140 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
13141 Correct composing of language-change event.
13142
131432002-02-20 Kim F. Storm <storm@cua.dk>
13144
13145 * keyboard.c (menu_bar_items): Don't include keymap or local-map
13146 bindings at PT when building menu (the menu is not updated often
13147 enough for this to work reliable).
13148 (tool_bar_items): Likewise.
13149 (current_active_maps): Removed unused (and buggy) function.
13150
131512002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13152
13153 * xfns.c (gif_load): Use correct width and height for GIF images.
13154
131552002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
13156
13157 * floatfns.c (Fatan): Accept an optional second arg and call
13158 atan2 if passed 2 args.
13159
131602002-02-18 Jason Rumney <jasonr@gnu.org>
13161
13162 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
13163
131642002-02-17 Jason Rumney <jasonr@gnu.org>
13165
13166 * w32term.c (x_autoselect_window_p): New variable.
13167 (syms_of_w32term): DEFVAR_BOOL and initialize it.
13168 (note_mouse_movement): Use it.
13169
13170 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
13171
13172 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
13173
13174 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
13175 New variables.
13176 (syms_of_w32fns): Intern and staticpro them.
13177 (x_frame_parms) <"fullscreen">: New parameter.
13178 (x_fullscreen_move, x_set_fullscreen): New functions.
13179 (x_set_frame_parameters): Support Qfullscreen.
13180 (x_real_positions): Save x/y_pixels_diff frame params.
13181 (x_figure_window_size): Support full-screen frames.
13182 (Fx_create_frame): Default the fullscreen parameter.
13183
13184 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
13185 (x_fullscreen_adjust): New functions.
13186 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
13187 fullscreen. Call x_check_fullscreen_move, and set the
13188 want_fullscreen member of output_data.w32
13189 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
13190
13191 * w32term.h: New enum for FULLSCREEN_* constants.
13192 (struct w32_output): New members want_fullscreen, x_pixels_diff,
13193 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
13194 (x-fullscreen-adjust): New prototype.
13195
131962002-02-17 Kim F. Storm <storm@cua.dk>
13197
13198 * frame.c: (Vmouse_highlight): New variable.
13199 (syms_of_frame): DEFVAR_LISP it.
13200
13201 * frame.h: (Vmouse_highlight): Declare extern.
8a8e19a3 13202
048addec 13203 * xterm.h (struct x_display_info): Add mouse_face_hidden.
8a8e19a3 13204
048addec
JD
13205 * xterm.c (disable_mouse_highlight): Removed variable.
13206 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
13207 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
13208 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
13209 and on after keyboard input.
13210 (x_term_init): Initialize mouse_face_hidden.
8a8e19a3 13211
048addec 13212 * msdos.h (struct display_info): Add mouse_face_hidden.
8a8e19a3 13213
048addec
JD
13214 * msdos.c (disable_mouse_highlight): Removed variable.
13215 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
13216 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
13217 (internal_terminal_init): Initialize mouse_face_hidden.
13218 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
13219 and on after keyboard input.
4f1b1854 13220
048addec 13221 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
4f1b1854 13222
048addec
JD
13223 * w32term.c (disable_mouse_highlight): Removed variable.
13224 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
13225 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
13226 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
13227 and on after keyboard input.
13228 (w32_initialize_display_info): Initialize mouse_face_hidden.
4f1b1854 13229
048addec 132302002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
4f1b1854 13231
048addec
JD
13232 * msdos.c (last_mouse_window): New variable.
13233 (dos_rawgetc): Fix last change--if the mouse is in the same window
13234 as recorded in last_mouse_window, don't select this window.
5cb6905d 13235
048addec 13236 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
5cb6905d 13237
048addec
JD
13238 * msdos.c (x_autoselect_window_p): New variable.
13239 (syms_of_msdos): Defvar it.
13240 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
13241 which the last mouse movement occured, unless it is already selected.
437dfb9f 13242
048addec
JD
13243 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
13244 New variables.
13245 (syms_of_xdisp): DEVFAR them.
13246 (hscroll_window_tree): Use automatic_hscroll_margin and
13247 Vautomatic_hscroll_step to compute the amount of window scrolling.
437dfb9f 13248
048addec 132492002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9f696a00 13250
048addec
JD
13251 * xterm.c (x-autoselect-window): New variable.
13252 (note_mouse_movement): Use it.
9f696a00 13253
048addec 13254 * keyboard.c: Do not include "systime.h" twice.
d57966d7 13255
048addec 132562002-02-15 Andreas Schwab <schwab@suse.de>
d57966d7 13257
bfa02563 13258 * puresize.h (PURESIZE_RATIO): Increase to 9/5.
d57966d7 13259
048addec 13260 * alloc.c (NSTATICS): Increase to 1280.
74779f52 13261
048addec 132622002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
74779f52 13263
048addec 13264 * alloc.c (NSTATICS): Bump to 1026.
a474d59c 13265
048addec
JD
13266 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
13267 (Vx_super_keysym): New variables.
13268 (syms_of_xterm): DEFVAR_LISP them.
13269 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
13270 variables to determine which keys to use for the various modifiers.
a474d59c 13271
048addec 132722002-02-13 Kim F. Storm <storm@cua.dk>
fbb70ad9 13273
048addec
JD
13274 * window.c: (Vmode_line_in_non_selected_windows): Removed.
13275 (mode_line_in_non_selected_windows): New variable.
13276 (syms_of_window): DEFVAR_BOOL it.
fbb70ad9 13277
048addec
JD
13278 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
13279 Use mode_line_in_non_selected_windows.
13280 (mode_line_in_non_selected_windows): Declare extern.
13281 (Vmode_line_in_non_selected_windows): Removed extern.
2d10309f 13282
048addec 132832002-02-13 Richard M. Stallman <rms@gnu.org>
2d10309f 13284
048addec
JD
13285 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
13286 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
13287 (Fclear_this_command_keys): Doc fixes.
2d10309f 13288
048addec
JD
13289 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
13290 (update_face_from_frame_parameter): Increment face_change_count
13291 and windows_or_buffers_changed to force redisplay using changed faces.
7f2cddf3 13292
048addec
JD
13293 * xdisp.c (QCpropertize): New variable.
13294 (mode_line_proptrans_alist): New variable.
13295 (display_mode_element): New arg PROPS; all calls changed.
13296 Implement this, for strings.
13297 Handle literal output of strings by sharing the
13298 main-line code for strings, using local var `literal'.
13299 Handle :propertize feature.
13300 (syms_of_xdisp): Initialze and staticpro QCpropertize and
13301 mode_line_proptrans_alist.
0b1e6b54 13302
048addec 133032002-02-11 Kim F. Storm <storm@cua.dk>
7f2cddf3 13304
048addec
JD
13305 * window.c: (Vmode_line_in_non_selected_windows): New variable.
13306 (syms_of_window): DEFVAR_LISP it.
7f2cddf3 13307
048addec
JD
13308 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
13309 (CURRENT_MODE_LINE_FACE_ID): Use it.
13310 (Vmode_line_in_non_selected_windows): Declare extern.
e17144de 13311
048addec
JD
13312 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
13313 to get mode line face.
e17144de 13314
048addec 133152002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 13316
048addec
JD
13317 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
13318 variables; cus-start.el doesn't need them anymore.
44368f8f 13319
048addec 133202002-02-09 Kim F. Storm <storm@cua.dk>
f884b6f4 13321
048addec
JD
13322 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
13323 reduction. This fixes a display problem where stray newlines were
13324 inserted in the window (corrected by C-l). Clarified code (IMHO).
6637c996 13325
048addec 133262002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 13327
048addec 13328 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
6637c996 13329
048addec 13330 * xdisp.c (display_mode_lines): Fix last change.
453c5510 13331
048addec 133322002-02-09 Jason Rumney <jasonr@gnu.org>
453c5510 13333
048addec
JD
13334 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
13335 match each other.
13336 (w32_load_system_font): Prevent Cleartype fonts from loading.
13337 (Fx_show_tip): Ensure tip frames are above other topmost windows.
d1d070e3 13338
048addec 133392002-02-09 Kim F. Storm <storm@cua.dk>
d1d070e3 13340
048addec
JD
13341 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
13342 (CURRENT_MODE_LINE_HEIGHT): Use it.
13343 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 13344
048addec
JD
13345 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
13346 (pos_visible_p, handle_face_prop): Likewise.
13347 (display_mode_lines): Likewise, but for the real selected window.
13348 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 13349
048addec
JD
13350 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
13351 in non-selected windows.
13352 (realize_basic_faces): Realize it.
13353 (syms_of_term): Intern and staticpro it.
308dd672 13354
048addec 133552002-02-08 Kim F. Storm <storm@cua.dk>
edde72f6 13356
048addec
JD
13357 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
13358 Changed mail addresses to emacs-devel@gnu.org.
308dd672 13359
048addec 133602002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
3c1e6b46 13361
048addec
JD
13362 * fileio.c (Fsubstitute_in_file_name): If the file name includes
13363 ~user, and there's no such user, don't discard everything before ~user.
03950b5b 13364
048addec 13365 * floatfns.c (Fround): Doc fix.
3c1e6b46 13366
048addec 133672002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c1e11810 13368
048addec 13369 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
c1e11810 13370
048addec 133712002-02-07 Stefan Monnier <monnier@cs.yale.edu>
1996baee 13372
048addec 13373 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
1996baee 13374
048addec 133752002-02-07 Kim F. Storm <storm@cua.dk>
0065bb74 13376
048addec
JD
13377 * keymap.c (where_is_internal): Only check whether definition is
13378 remapped if it fulfills is_command_symbol.
0065bb74 13379
048addec 133802002-02-07 Andreas Schwab <schwab@suse.de>
0065bb74 13381
048addec 13382 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
b5cb6072 13383
048addec 13384 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
b5cb6072 13385
048addec 133862002-02-06 Kim F. Storm <storm@cua.dk>
15fff01d 13387
048addec
JD
13388 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
13389 defining command remapping. Doc updated.
13390 (Flookup_key): Remap command through keymap if KEY is a symbol.
13391 (is_command_symbol): New function.
13392 (Fkey_binding): Use it. New optional argument NO-REMAP.
13393 Doc updated. Callers changed. Perform command remapping via
13394 recursive call unless that arg is non-nil.
13395 (where_is_internal): New argument no_remap. Callers changed.
13396 Call recursively to find original key bindings for a remapped
13397 comand unless that arg is non-nil.
13398 (Fwhere_is_internal): New optional argument NO-REMAP.
13399 Doc updated. Callers changed. Pass arg to where_is_internal.
0065bb74 13400
048addec
JD
13401 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
13402 (is_command_symbol): Added prototype.
0d8466cc 13403
048addec
JD
13404 * keyboard.c (Vthis_original_command): New variable.
13405 (syms_of_keyboard): DEFVAR_LISP it.
13406 (command_loop_1): Set it, and perform command remapping.
15fff01d 13407
048addec 134082002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2fae9111 13409
048addec 13410 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
2d6c1fc0 13411
048addec 134122002-02-06 Jason Rumney <jasonr@gnu.org>
07025a55 13413
048addec 13414 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
07025a55 13415
048addec 134162002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
07025a55 13417
048addec 13418 * charset.c (get_charset_id): Use if-else instead of ?:.
3a232704 13419
048addec 134202002-02-06 Richard M. Stallman <rms@gnu.org>
539e92ad 13421
048addec 13422 * filelock.c (S_ISLNK): Define if not defined.
3a232704 13423
048addec 134242002-02-03 Richard M. Stallman <rms@gnu.org>
0cb8bb48 13425
048addec 13426 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
539e92ad 13427
048addec
JD
13428 * lread.c (read1): Redesign strategy for force_multibyte and
13429 force_singlebyte. Now is_multibyte records whether read_buffer
13430 is multibyte. Encountering any multibyte character makes it so.
4e02881b 13431
048addec 134322002-02-02 Stefan Monnier <monnier@cs.yale.edu>
4e02881b 13433
048addec
JD
13434 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
13435 with the same sequence, map that sequence to f10 rather than f0.
1ab964d7 13436
048addec 134372002-02-03 Andreas Schwab <schwab@suse.de>
1ab964d7 13438
048addec
JD
13439 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
13440 latter never being defined on GNU/Linux.
749f499f 13441
048addec 134422002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
749f499f 13443
048addec
JD
13444 * xfaces.c (realize_default_face): Don't set the weight and slant of
13445 the default face to Qnormal, unless these attributes are unspecified.
b5d9aaba 13446
048addec 134472002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3a232704 13448
048addec
JD
13449 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
13450 Call cancel_hourglass unconditionally.
d0fd26dd 13451
048addec
JD
13452 * eval.c (Fsignal): Remove duplicated declaration of
13453 the variable `display_hourglass_p'.
b4c45162 13454
048addec 134552002-01-31 Richard M. Stallman <rms@gnu.org>
d0fd26dd 13456
048addec 13457 * editfns.c (region_limit): Nicer error message.
c95eaa61 13458
048addec
JD
13459 * coding.c (decode_composition_emacs_mule):
13460 Give up if NCOMPONENT gets too large to index `component'.
c95eaa61 13461
048addec
JD
13462 * callint.c (check_mark): New arg to specify clearer error message.
13463 Callers changed.
c95eaa61 13464
048addec 134652002-01-27 Richard M. Stallman <rms@gnu.org>
c95eaa61 13466
048addec 13467 * minibuf.c (Fcompleting_read): Doc fix.
c95eaa61 13468
048addec 134692002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c95eaa61 13470
048addec
JD
13471 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
13472 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
13473 Fix doc-strings.
c95eaa61 13474
048addec 134752002-01-26 Richard M. Stallman <rms@gnu.org>
c95eaa61 13476
048addec 13477 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
c95eaa61 13478
048addec
JD
13479 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
13480 and scroll_up_aggressively.
c95eaa61 13481
048addec 134822002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
31877e0a 13483
048addec 13484 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
31877e0a 13485
048addec 134862002-01-25 Stefan Monnier <monnier@cs.yale.edu>
e2c3786a 13487
048addec
JD
13488 * textprop.c (Fnext_property_change, Fnext_single_property_change)
13489 (Fprevious_property_change, Fprevious_single_property_change):
13490 Stay within the narrowed-buffer boundaries.
e2c3786a 13491
048addec 134922002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
c513fc03 13493
048addec
JD
13494 * term.c (Ftty_display_color_cells): New function.
13495 (syms_of_term): Defsubr it.
13496 (Ftty_display_color_cells, Ftty_display_color_p): Change the
13497 argument name to DISPLAY. Doc fix.
bf794306 13498
048addec
JD
13499 * dispextern.h: Add prototype for set_tty_color_mode and
13500 tty_setup_colors.
bf794306 13501
048addec 135022002-01-24 Jason Rumney <jasonr@gnu.org>
bf794306 13503
048addec
JD
13504 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
13505 If region left to draw is not what was expected, mark the frame as
13506 garbaged.
62582985 13507
048addec
JD
13508 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
13509 Combine the regions returned by BeginPaint and GetUpdateRect.
c513fc03 13510
048addec 135112002-01-23 Jason Rumney <jasonr@gnu.org>
3509a04c 13512
048addec
JD
13513 * w32term.c (x_update_window_begin): Only hide caret if
13514 w32_use_visible_system_caret is set.
13515 (x_update_window_end): Only show caret if
13516 w32_use_visible_system_caret is set.
13517 (syms_of_w32term): Handle SystemParametersInfo call failing.
3509a04c 13518
048addec 13519 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
3509a04c 13520
048addec 135212002-01-22 Richard M. Stallman <rms@gnu.org>
3509a04c 13522
048addec
JD
13523 * unexelf.c (unexec): Define n so as to cause compilation error
13524 for the code where people have often written n instead of nn.
1e9a6186 13525
048addec 13526 * .gdbinit (hookpost-run): Defined.
1e9a6186 13527
048addec 135282002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e4e34e31 13529
048addec 13530 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
e4e34e31 13531
048addec 135322002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4521d1fc 13533
048addec
JD
13534 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
13535 if fullscreen is being set.
7c75be36 13536
048addec 135372002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4521d1fc 13538
048addec
JD
13539 * minibuf.c (Fminibuffer_contents)
13540 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
13541 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
4521d1fc 13542
048addec 135432002-01-21 Richard M. Stallman <rms@gnu.org>
4521d1fc 13544
048addec 13545 * window.c (check_frame_size): Fix minimum height calculation.
93dec019 13546
048addec 135472002-01-20 Ken Raeburn <raeburn@gnu.org>
93dec019 13548
048addec
JD
13549 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
13550 height before comparison.
13551 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
905cc05a 13552
048addec 135532002-01-20 Jason Rumney <jasonr@gnu.org>
2ed06289 13554
048addec
JD
13555 * w32term.c (w32_system_caret_width): Remove.
13556 (w32_use_visible_system_caret): New user flag.
13557 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
13558 Windows reports a screen reader running.
13559 (x_update_window_begin): Hide the system caret.
13560 (x_update_window_end): Show the system caret.
13561 (x_display_and_set_cursor): Don't draw a cursor when
13562 w32_use_visible_system_caret is set. Do not adjust width.
0e79d667 13563
048addec
JD
13564 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
13565 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
13566 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
13567 the user requests it. Use system default width when creating.
13568 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
0e79d667 13569
048addec
JD
13570 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
13571 New window messages.
905cc05a 13572
048addec 135732002-01-20 Richard M. Stallman <rms@gnu.org>
82a7ab23 13574
048addec 13575 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
d75bec6a 13576
048addec 135772002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
52dcb476 13578
048addec 13579 * doprnt.c (doprnt1): Fix typos in error call.
82a7ab23 13580
048addec 135812002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
82a7ab23 13582
048addec 13583 * unexelf.c (unexec) [__sgi]: Support the .got sections.
82a7ab23 13584
048addec 135852002-01-20 Jason Rumney <jasonr@gnu.org>
4d0fa4f3 13586
048addec
JD
13587 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
13588 that Windows returns. If a double check fails, try to guess how
13589 ExtTextOut is going to act.
4d0fa4f3 13590
048addec
JD
13591 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
13592 in place of stricmp.
13593 (w32_list_synthesized_fonts): Removed.
13594 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
13595 (struct enumfont_t): New element; list.
13596 (enum_font_cb2): List all style and charset variations of a font.
13597 (Fw32_select_font): New optional argument; include_proportional.
13598 Exclude vertical fonts. Exclude proportional fonts unless
13599 include_proportional is non-nil.
13600 (w32_enable_synthesized_fonts): Change to a boolean.
13601 (Fw32_send_sys_command): Doc fix.
493faf20 13602
048addec 136032002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
493faf20 13604
048addec
JD
13605 * dispnew.c (update_frame): Move the variable `tem' to the block
13606 where it is used.
4971e491 13607
048addec 136082002-01-19 Jason Rumney <jasonr@gnu.org>
4971e491 13609
048addec
JD
13610 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
13611 call to face-set-after-frame-default.
4971e491 13612
048addec 136132002-01-18 Richard M. Stallman <rms@gnu.org>
d911a0fa 13614
048addec
JD
13615 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
13616 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
d911a0fa 13617
048addec 136182002-01-17 Richard M. Stallman <rms@gnu.org>
d911a0fa 13619
048addec
JD
13620 * window.c (enlarge_window): When exceeding size of parent,
13621 directly delete all the siblings instead of trying to resize it.
201c831a 13622
048addec 136232002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
201c831a 13624
048addec 13625 * term.c (set_tty_color_mode): Remove unused variable `tem'.
201c831a 13626
048addec 136272002-01-16 Henrik Enberg <henrik@enberg.org>
34e39c95 13628
048addec 13629 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
34e39c95 13630
048addec 136312002-01-16 Kim F. Storm <storm@cua.dk>
d77fbc16 13632
048addec
JD
13633 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
13634 is invisible. This can happen if cursor is on top line of a
13635 window, and we switch to a buffer with a header line.
d77fbc16 13636
048addec 13637 * w32term.c (x_erase_phys_cursor): Ditto.
61e3b944 13638
048addec 136392002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
61e3b944 13640
048addec
JD
13641 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
13642 `dont_resize' only when used.
61e3b944 13643
048addec 13644 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
70da46c3 13645
048addec 136462002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
70da46c3 13647
048addec
JD
13648 * xdisp.c (display_mode_element): When computing charpos, depend
13649 on multibyteness of elt, not the text in field.
8af01033 13650
048addec 136512002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8af01033 13652
048addec
JD
13653 * buffer.c (Fkill_all_local_variables):
13654 Increment `update_mode_lines' only once.
7363986a 13655
048addec 136562002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7363986a 13657
048addec
JD
13658 * lisp.h (adjust_after_replace_noundo)
13659 (Fupdate_coding_systems_internal): Add prototypes.
d9e6c4b1 13660
048addec 13661 * sound.c (Fplay_sound): Initialize header_size also for :data case.
d20fc48a 13662
048addec 136632002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
d9e6c4b1 13664
048addec
JD
13665 Support for the --color command-line argument and tty-color-mode
13666 frame parameter:
f1a85b89 13667
048addec
JD
13668 * term.c (tty_default_color_capabilities, tty_setup_colors)
13669 (set_tty_color_mode): New functions.
13670 (term_init): Call tty_default_color_capabilities.
13671 (Qtty_color_mode_alist): New variable.
13672 (syms_of_term): Intern and staticpro it.
f1a85b89 13673
048addec
JD
13674 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
13675 frames.
13676 (do_switch_frame): For termcap frames, switch the tty
13677 color mode as specified by the frame's parameters.
13678 (Qtty_color_mode): New variable.
13679 (syms_of_frame): Intern and staticpro it.
3a62677f 13680
048addec
JD
13681 * emacs.c (USAGE2): Add the --color option.
13682 (standard_args): Ditto.
72244db2 13683
048addec
JD
136842002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13685
13686 * xterm.h (struct x_output): New members want_fullscreen,
13687 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
13688 y_pixels_outer_diff.
13689 New enum for FULLSCREEN_* constants.
13690 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
13691 is NULL.
13692 (x_fullscreen_adjust): Add prototype.
3a62677f 13693
048addec
JD
13694 * emacs.c (USAGE2): Add the new full-screen arguments.
13695 (standard_args): Ditto.
3a62677f 13696
048addec
JD
13697 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
13698 New variables.
13699 (syms_of_xfns): Intern and staticpro them.
13700 (x_frame_parms) <"fullscreen">: New parameter.
13701 (x_fullscreen_move, x_set_fullscreen): New functions.
13702 (x_set_frame_parameters): Support for Qfullscreen.
13703 (x_real_positions): More accurate computation of the frame position.
13704 (x_figure_window_size): Support full-screen frames.
13705 (Fx_create_frame): Default the fullscreen parameter.
3a62677f 13706
048addec
JD
13707 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
13708 (XTread_socket) <Expose>: Call x_check_fullscreen.
13709 <ConfigureNotify>: Don't resize to fullscreen.
13710 Call x_check_fullscreen_move, and set the want_fullscreen member of
13711 output_data.x.
3a62677f 13712
048addec 137132002-01-13 Jason Rumney <jasonr@gnu.org>
9d113d9d 13714
048addec
JD
13715 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
13716 for mice with more than 3 buttons.
b8523839 13717
048addec
JD
13718 * w32term.c (parse_button): New parameter xbutton. Callers changed.
13719 (w32_read_socket): Handle new "XBUTTON" messages.
9464dea4 13720
048addec
JD
13721 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
13722 (syms_of_w32fns): DEFVAR_BOOL it.
13723 (w32_wnd_proc): Handle new "XBUTTON" messages.
9d113d9d 13724
048addec 137252002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
70ec1377 13726
048addec 13727 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
70ec1377 13728
048addec 137292002-01-13 Andreas Schwab <schwab@suse.de>
92f7dd37 13730
048addec 13731 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
92f7dd37 13732
048addec 137332002-01-12 Andreas Schwab <schwab@suse.de>
c93674bb 13734
048addec
JD
13735 * .gdbinit (xbuffer): Remove address operator since data is now a
13736 pointer.
c93674bb 13737
048addec 137382002-01-11 Richard M. Stallman <rms@gnu.org>
59b59892 13739
048addec 13740 * insdel.c (adjust_after_replace_noundo): New function.
59b59892 13741
048addec 13742 * coding.c (code_convert_region): Don't copy old text if undo disabled.
c6ea2775 13743
048addec 137442002-01-09 Jason Rumney <jasonr@gnu.org>
c6ea2775 13745
048addec
JD
13746 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
13747 when checking for multiple frames.
91175673 13748
048addec 137492002-01-08 Richard M. Stallman <rms@gnu.org>
91175673 13750
048addec
JD
13751 * window.c (delete_window): Rewrite the code for changing the
13752 selected window to handle the case where WINDOW is not a leaf.
91175673 13753
048addec 137542002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
e0fead5d 13755
048addec
JD
13756 * process.c (send_process): Set src_multibyte to 1 after the call
13757 top setup_coding_system, not before the call.
e0fead5d 13758
048addec 137592002-01-07 Jason Rumney <jasonr@gnu.org>
e0fead5d 13760
048addec
JD
13761 * xmenu.c (set_frame_menubar, xmenu_show):
13762 (xdialog_show): Initialize wv->help to Qnil.
c186cdb3 13763
048addec
JD
13764 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
13765 (w32_dialog_show): Initialize wv->help to Qnil.
c186cdb3 13766
048addec 137672002-01-06 Jason Rumney <jasonr@gnu.org>
c186cdb3 13768
048addec 13769 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
c186cdb3 13770
048addec 13771 * w32menu.c (w32_menu_display_help): Revert last change.
58cfce98 13772
048addec 13773 * xmenu.c (menu_highlight_callback): Revert last change.
58cfce98 13774
048addec 137752002-01-06 Andreas Schwab <schwab@suse.de>
62854fe2 13776
048addec
JD
13777 * insdel.c (make_gap_larger): Make sure buffer size does not
13778 overflow range of int.
62854fe2 13779
048addec 137802002-01-05 Jason Rumney <jasonr@gnu.org>
656f46bb 13781
048addec
JD
13782 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
13783 OVERLAPS_P.
656f46bb 13784
048addec 13785 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
656f46bb 13786
048addec
JD
13787 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
13788 to the left or to the right of the pointer, put it against
13789 the left screen edge.
13790 (x_frame_parms): Add missing braces around initializer.
036e218d 13791
048addec
JD
13792 * w32term.c (x_setup_relief_colors): Don't compute an image's
13793 background color if it doesn't have a Pixmap.
13794 (notice_overwritten_cursor): Don't depend on
13795 output_cursor and updated_area. Compare pixel coordinates with
13796 window's cursor pixel coordinates.
13797 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
13798 Call notice_overwritten_cursor with new arg list.
13799 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
13800 unconditionally.
13801 (x_draw_image_relief): Use predefined macro instead of
13802 constant when the value of `tool_bar_button_relief' is negative.
036e218d 13803
048addec 13804 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
7ddb2c16 13805
048addec 138062002-01-04 Richard M. Stallman <rms@gnu.org>
7ddb2c16 13807
048addec 13808 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
ace9b298 13809
048addec 138102002-01-03 Richard M. Stallman <rms@gnu.org>
90647b07 13811
048addec
JD
13812 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
13813 (Fkey_binding): Try the `keymap' property map first.
13814 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
13815 minor mode bindings.
90647b07 13816
048addec 138172002-01-03 Kim F. Storm <storm@cua.dk>
ace9b298 13818
048addec 13819 * keyboard.c (read_key_sequence): Fixed cast of submaps arg to bcopy.
ace9b298 13820
048addec 138212002-01-02 Richard M. Stallman <rms@gnu.org>
ace9b298 13822
048addec
JD
13823 * keyboard.c (read_key_sequence): Handle the keymap property
13824 before minor mode maps.
9fbc32aa 13825
048addec
JD
13826 * editfns.c (Fformat): Update thissize from field_width
13827 based on the actual width, in the string case.
036e218d 13828
048addec 138292002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fbc32aa 13830
048addec
JD
13831 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
13832 when used as truth value to prevent gcc warnings.
9fbc32aa 13833
048addec
JD
13834 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
13835 * w32proc.c: Include <config.h>.
9fbc32aa 13836
048addec 138372002-01-01 Andreas Schwab <schwab@suse.de>
9fbc32aa 13838
048addec
JD
13839 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
13840 not EMACS_INT, to make them compatible with DEFVAR_INT.
13841 * lisp.h (max_specpdl_size): Adjust declaration.
9fbc32aa 13842
048addec 138432002-01-01 Richard M. Stallman <rms@gnu.org>
9fbc32aa 13844
048addec
JD
13845 * print.c (print_object): Test print_escape_nonascii only for
13846 unibyte strings.
13847 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
13848 when outputting to a multibyte buffer.
9fbc32aa 13849
048addec 138502001-12-29 Richard M. Stallman <rms@gnu.org>
9fbc32aa 13851
048addec
JD
13852 * print.c (print_object): In multibyte string, use hex escapes.
13853 Use octal only for unibyte strings.
13854 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
0142178a 13855
048addec
JD
13856 * lread.c (read_escape): New arg BYTEREP for reporting whether
13857 escape forces unibyte or multibyte.
13858 (read1): When reading a string, take note of that info.
0142178a 13859
048addec 138602001-12-29 Ken Raeburn <raeburn@gnu.org>
d4824a5d 13861
048addec
JD
13862 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
13863 comparison to test lisp value returned by Fget.
d4824a5d 13864
048addec 138652001-12-29 Richard M. Stallman <rms@gnu.org>
b1356234 13866
048addec 13867 * lisp.h (max_specpdl_size): Add declaration.
b1356234 13868
048addec 13869 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
3ce081f5 13870
048addec
JD
13871 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
13872 Handle modifier bits. Correct typo in error message.
99e380ee 13873
048addec 138742001-12-28 Richard M. Stallman <rms@gnu.org>
3ce081f5 13875
048addec
JD
13876 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
13877 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
13878 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
13879 Update calls to Fdefine_abbrev.
13880 (write_abbrev): Update for changed data format.
13881 Don't list "system" abbrevs.
13882 (Fexpand_abbrev): Update use count with new data format.
13883 (describe_abbrev): Update for changed data format.
13884 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
66458f32 13885
048addec 13886 * config.in (HAVE_MBSINIT): Add #undef.
66458f32 13887
048addec 13888 * strftime.c (mbsinit): Define as no-op if not available.
66458f32 13889
048addec
JD
13890 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
13891 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
59a86c99 13892
048addec
JD
13893 * keymap.c (Flookup_key): Error message if key has wrong data type.
13894 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
13895 (exclude_key): New variable.
59a86c99 13896
048addec 138972001-12-28 Gerd Moellmann <gerd@gnu.org>
eb77a5f4 13898
048addec
JD
13899 * xterm.c (x_setup_relief_colors): Don't compute an image's
13900 background color if it doesn't have a Pixmap.
eb77a5f4 13901
048addec
JD
13902 * xterm.c (notice_overwritten_cursor): Don't depend on
13903 output_cursor and updated_area. Compare pixel coordinates with
13904 window's cursor pixel coordinates.
13905 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
13906 Call notice_overwritten_cursor with new arg list.
13907 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
13908 unconditionally.
eb77a5f4 13909
048addec
JD
13910 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
13911 height of the cursor line to the amount to scroll.
eb77a5f4 13912
048addec 139132001-12-27 Richard M. Stallman <rms@gnu.org>
bb313871 13914
048addec
JD
13915 * intervals.c (set_point_both): The position after an invisible,
13916 intangible character is not an acceptable stopping point.
bb313871 13917
048addec 139182001-12-27 Ken Raeburn <raeburn@gnu.org>
55b43a63 13919
048addec
JD
13920 * window.c (enlarge_window): In new preserve_before code, convert
13921 CURBEG from lisp object to integer before doing arithmetic.
6052529b 13922
048addec 139232001-12-27 Richard M. Stallman <rms@gnu.org>
3ce081f5 13924
048addec 13925 * bytecode.c (Fbyte_code): Undo previous change.
3ce081f5 13926
048addec 139272001-12-26 Kim F. Storm <storm@cua.dk>
3ce081f5 13928
048addec
JD
13929 * keyboard.c (record_char): Ignore duplicate help-echo events only
13930 separated by mouse-movement. When tracking mouse, only record
13931 first and last mouse-movement event in same window.
13932 Don't record mouse-movement events in keyboard macros.
3ce081f5 13933
048addec 139342001-12-25 Richard M. Stallman <rms@gnu.org>
55b43a63 13935
048addec
JD
13936 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
13937 (Fenlarge_window): New arg PRESERVE_BEFORE.
111ed14e 13938
048addec
JD
13939 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
13940 instead of Fstring_as_unibyte.
9fabb2f5 13941
048addec 139422001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fabb2f5 13943
048addec 13944 The following changes remove mocklisp support:
9fabb2f5 13945
048addec 13946 * mocklisp.h, mocklisp.c: Files removed.
111ed14e 13947
048addec
JD
13948 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
13949 `Qmocklisp' and `Qmocklisp_arguments'.
13950 Remove prototype of syms_of_mocklisp.
2fa0eedf 13951
048addec 13952 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
d1420435 13953
048addec
JD
13954 * callint.c: Do not include mocklisp.h.
13955 (Fcall_interactively): Do not test for mocklisp case.
2fa0eedf 13956
048addec
JD
13957 * eval.c: Remove variables `Qmocklisp_arguments',
13958 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
13959 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
13960 Do not test for mocklisp case.
13961 (Fwhile): Remove unused variable `tem'.
13962 (syms_of_eval): Remove variable `moclisp-arguments'.
ebcbef4e 13963
048addec 13964 * data.c (wrong_type_argument): Remove mocklisp case.
5c131048 13965
048addec 13966 * doc.c (Fdocumentation): Remove mocklisp case.
5c131048 13967
048addec 13968 * emacs.c (main): Do not call syms_of_mocklisp.
5c131048 13969
048addec 139702001-12-21 Richard M. Stallman <rms@gnu.org>
96d276c3 13971
048addec
JD
13972 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
13973 to the left or to the right of the pointer, put it against
13974 the left screen edge.
6108b49c 13975
048addec 139762001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
96d276c3 13977
048addec
JD
13978 * Makefile.in (distclean): Remove .gdbinit if we are building
13979 outside the source tree.
5eea19a4 13980
048addec 139812001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
5eea19a4 13982
048addec 13983 * w32.c (emacs_root_dir): New function.
5eea19a4 13984
048addec 13985 * msdos.c (emacs_root_dir): New function.
5eea19a4 13986
048addec
JD
13987 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
13988 of the current drive as the fallback for default_directory.
438e57dd 13989
048addec
JD
13990 * dired.c (file_name_completion): Run the elements of
13991 completion-ignored-extensions through ENCODE_FILE.
438e57dd 13992
048addec
JD
13993 * lisp.h (scmp): Remove prototype, since it's now a static
13994 function private to dired.c.
c88e5347 13995
048addec 139962001-12-18 Richard M. Stallman <rms@gnu.org>
c88e5347 13997
048addec
JD
13998 * dired.c (scmp): Function moved from minibuf.c.
13999 Delete multibyte handling--used only on encoded strings.
59ce1461 14000
048addec 14001 * minibuf.c (scmp): Function moved to dired.c.
59ce1461 14002
048addec 14003 * fns.c (merge): Add QUIT call.
59ce1461 14004
048addec 140052001-12-18 Dave Love <fx@gnu.org>
8727d588 14006
048addec
JD
14007 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
14008 language/georgian.el.
8727d588 14009
048addec 140102001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
cc63037e 14011
048addec
JD
14012 * Makefile.in (lisp, shortlisp): Synchronize with changes to
14013 lisp/Makefile.in:DONTCOMPILE.
cc63037e 14014
048addec 140152001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
cc63037e 14016
048addec
JD
14017 * xdisp.c (window_box_height): Do not return negative values.
14018 From Gerd Moellmann <gerd@gnu.org>.
cc63037e 14019
048addec 14020 * keyboard.c (head_table): Add missing braces around initializer.
cc63037e 14021
048addec 14022 * term.c (keys): Likewise.
deece6f5 14023
048addec 14024 * xfns.c (x_frame_parms, visual_classes): Likewise.
deece6f5 14025
048addec 140262001-12-17 Sam Steingold <sds@gnu.org>
1b944d9c 14027
048addec
JD
14028 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
14029 patch (COMPOSING_P, not COMPOSING).
28ff4293 14030
048addec 140312001-12-17 Richard M. Stallman <rms@gnu.org>
a395ef6a 14032
048addec 14033 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
a395ef6a 14034
048addec
JD
14035 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
14036 before calling decode_coding.
9b46de40 14037
048addec 14038 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
9b46de40 14039
048addec
JD
14040 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
14041 instead of only for COMPOSITION_DISABLED.
9b46de40 14042
048addec 140432001-12-16 Richard M. Stallman <rms@gnu.org>
aff37336 14044
048addec 14045 * alloc.c (pure_alloc): After overflow, allocate just a small block.
aff37336 14046
048addec 14047 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
b9937f07 14048
048addec
JD
14049 * buffer.h (struct buffer): New field `display_error_modiff'.
14050 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
b9937f07 14051
048addec 14052 * window.c (Frecenter): Clear display_error_modiff field.
2cd23960 14053
048addec
JD
14054 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
14055 Call redisplay_window, but not if display_error_modiff field says no.
14056 (redisplay_window_error): New function.
14057 (displayed_buffer): New variable.
14058 (redisplay_internal, redisplay_windows): Call the new functions
14059 instead of redisplay_window directly.
2cd23960 14060
048addec 140612001-12-15 Richard M. Stallman <rms@gnu.org>
2cd23960 14062
048addec 14063 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
2cd23960 14064
048addec 140652001-12-14 Andrew Innes <andrewi@gnu.org>
a4184c1c 14066
048addec 14067 * makefile.w32-in (EMACSLOADPATH): Define.
f9711de4 14068 ($(EMACS)): Run `list-load-path-shadows' after dumping Emacs.
048addec 14069 (bootstrap-temacs): Remove dependency on bootstrap-clean.
a4184c1c 14070
048addec 140712001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
f6fa0866 14072
048addec
JD
14073 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
14074 parameter have a numeric value all the time.
f6fa0866 14075
048addec 14076 * w32fns.c (x_report_frame_params): Likewise.
f4ca4b00 14077
048addec 140782001-12-12 Richard M. Stallman <rms@gnu.org>
f4ca4b00 14079
048addec 14080 * fileio.c (Fwrite_region): Doc fix.
f4e25f94 14081
048addec
JD
14082 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
14083 (redisplay_internal): Call clear_image_cache only for window terminals.
f4e25f94 14084
048addec 140852001-12-12 Gerd Moellmann <gerd@gnu.org>
91c153e2 14086
048addec
JD
14087 * xdisp.c (move_it_vertically_backward): Change heuristic
14088 for the case that we didn't move far enough initially.
91c153e2 14089
048addec
JD
14090 * window.c (Frecenter): Simplify computation in the case of window
14091 system frames and ARG < 0; use window_box_height.
65b7d3e7 14092
048addec 140932001-12-11 Richard M. Stallman <rms@gnu.org>
65b7d3e7 14094
048addec
JD
14095 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
14096 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
6b5f6311 14097
048addec 140982001-12-11 Andrew Innes <andrewi@gnu.org>
6b5f6311 14099
048addec
JD
14100 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
14101 arg is negative.
be676094 14102
048addec 141032001-12-11 Richard M. Stallman <rms@gnu.org>
be676094 14104
048addec
JD
14105 * m/hp800.h: Split the __hpux conditional into the parts
14106 that are right for GNU/Linux too and the parts that are not.
14107 Use the former if GNU_LINUX.
14108 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
032a857d 14109
048addec 14110 * s/gnu-linux.h (GNU_LINUX): Defined.
032a857d 14111
048addec 141122001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
032a857d 14113
048addec
JD
14114 * macros.c, msdos.c, w16select.c: Change doc-string comments to
14115 `new style' [w/`doc:' keyword].
032a857d 14116
048addec 141172001-12-10 Jason Rumney <jasonr@gnu.org>
b6270150 14118
048addec
JD
14119 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
14120 before using.
b6270150 14121
048addec 141222001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
792e5cbd 14123
048addec
JD
14124 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
14125 keyword].
98cbb9fa 14126
048addec 141272001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
98cbb9fa 14128
048addec 14129 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
98cbb9fa 14130
048addec 14131 * s/hpux10.h (srand48): Don't undefine.
98cbb9fa 14132
048addec 141332001-12-09 Jason Rumney <jasonr@gnu.org>
792e5cbd 14134
048addec
JD
14135 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
14136 Add comment to explain where the struct came from.
14137 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
14138 (add_menu_item): Process pop-up menus first to avoid memory leak.
14139 (add_menu_item, w32_menu_display_help): Use `help' field as
14140 Lisp_Object.
14141 (w32_free_submenu_strings): Only free owner-drawn strings.
fa336b91 14142
048addec 141432001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
fa336b91 14144
048addec 14145 * COPYING: Moved back.
fa336b91 14146
048addec
JD
14147 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
14148 Add parentheses around && within ||.
077907d4 14149
048addec 14150 * indent.c (compute_motion): Likewise.
aa2af83a 14151
048addec 14152 * intervals.c (merge_properties_sticky): Likewise.
60a653f1 14153
048addec
JD
14154 * coding.c (setup_coding_system, shrink_encoding_region)
14155 (Fdecode_sjis_char): Likewise.
60a653f1 14156
048addec 141572001-12-07 Andreas Schwab <schwab@suse.de>
60a653f1 14158
048addec
JD
14159 * xdisp.c (display_mode_element): Don't read past end of string if
14160 it ends with '%'.
60a653f1 14161
048addec
JD
14162 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
14163 can hold.
60a653f1 14164
048addec
JD
14165 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
14166 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
14167 type changed to Lisp_Object.
14168 (syms_of_data): DEFVAR_LISP them.
60a653f1 14169
048addec 141702001-12-07 Richard M. Stallman <rms@gnu.org>
60a653f1 14171
048addec
JD
14172 * callproc.c (init_callproc): Set Vdata_directory based on the source
14173 location whenever Emacs was run uninstalled.
60a653f1 14174
048addec 141752001-12-06 Paul Eggert <eggert@twinsun.com>
60a653f1 14176
048addec
JD
14177 * config.in (HAVE_WORKING_VFORK): New #undefs.
14178 * process.c (create_process):
14179 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
14180 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
14181 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
14182 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
14183 * m/intel386.h (HAVE_VFORK): Likewise.
14184 * m/mips-siemens.h (HAVE_VFORK): Likewise.
14185 * m/mips.h (HAVE_VFORK): Likewise.
14186 * s/freebsd.h (vfork): Remove #define.
14187 * s/lynxos.h (HAVE_VFORK): Remove #undef.
14188 * s/usg5-4-2.h: Fix comment about vfork.
60a653f1 14189
048addec 141902001-12-06 Richard M. Stallman <rms@gnu.org>
60a653f1 14191
048addec
JD
14192 * s/hpux10.h (random): Add undef.
14193 (HAVE_RANDOM): Define it just once.
60a653f1 14194
048addec 141952001-12-06 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 14196
048addec 14197 * eval.c: Undo last change: the standard syntax is not wanted.
60a653f1 14198
048addec 141992001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 14200
048addec
JD
14201 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
14202 scroll bars of the frame before deleting the frame itself. If the
14203 frame has a widget, delete the frame with XtDestroyWidget, and do
14204 not call XDestroyWindow before that.
60a653f1 14205
048addec 142062001-12-06 Kim F. Storm <storm@cua.dk>
60a653f1 14207
048addec 14208 * xfns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 14209
048addec 14210 * w32fns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 14211
048addec 142122001-12-05 Andrew Innes <andrewi@gnu.org>
60a653f1 14213
048addec
JD
14214 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
14215 excessively large.
60a653f1 14216
048addec
JD
14217 * insdel.c (make_gap_larger): New function.
14218 (make_gap_smaller): New function.
14219 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
14220 Call make_gap_smaller if arg is negative.
60a653f1 14221
048addec 142222001-12-04 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 14223
048addec
JD
14224 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
14225 Pass a dummy argument when calling interrupt_signal.
14226 (parse_menu_item): Mark disabled items before checking for empty def.
14227 (read_char_minibuf_menu_prompt): Make safety more visible.
14228 (read_key_sequence): Add a `first_unbound' variable.
14229 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
14230 unbound prefix as soon as we can detect it.
60a653f1 14231
048addec
JD
14232 * doc.c (Fsnarf_documentation): Add prototype.
14233 (get_doc_string): Handle negative arguments.
14234 (Fdocumentation): Use AREF and ASIZE.
14235 Move the calls to get_doc_string to a single place.
14236 Don't confuse an interactive-spec for a docstring reference.
14237 (Fdocumentation_property): Take advantage of the fact that
14238 get_doc_string now ignores the sign of the docstring position.
60a653f1 14239
048addec 14240 * eval.c: Use standard syntax for usage in docstrings.
60a653f1 14241
048addec 142422001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 14243
a64387ee 14244 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
60a653f1 14245
048addec 142462001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 14247
048addec
JD
14248 * xterm.c (x_draw_image_relief): Use predefined macro instead of
14249 constant when the value of `tool_bar_button_relief' is negative.
60a653f1 14250
048addec 142512001-12-02 Richard M. Stallman <rms@gnu.org>
60a653f1 14252
048addec
JD
14253 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
14254 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
60a653f1 14255
048addec 14256 * fileio.c (read_non_regular): Delete Fsignal call.
60a653f1 14257
048addec 142582001-12-01 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 14259
048addec 14260 * lisp.h (run_hook_list_with_args): Undo last change.
60a653f1 14261
048addec 142622001-12-01 Gerd Moellmann <gerd@gnu.org>
60a653f1 14263
048addec 14264 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
60a653f1 14265
048addec 142662001-12-01 Jason Rumney <jasonr@gnu.org>
60a653f1 14267
f63fd14e 14268 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
60a653f1 14269
048addec
JD
14270 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
14271 [!WM_MOUSELEAVE]: Define.
60a653f1 14272
048addec
JD
14273 * w32menu.c (current_popup_menu, get_menu_item_info):
14274 (set_menu_item_info): New vars.
14275 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
14276 (w32_menu_show): Set current_popup_menu.
14277 (add_menu_item): Allocate new strings for owner-drawn menu items
14278 and help strings.
14279 Use owner-draw for disabled menu items again.
14280 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
14281 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
60a653f1 14282
048addec
JD
14283 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
14284 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
14285 <WM_EXITMENULOOP>: Free menu strings.
14286 <WM_MOUSELEAVE>: Stop tracking mouse.
14287 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
60a653f1 14288
048addec
JD
14289 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
14290 and mouse face.
60a653f1 14291
048addec 142922001-12-01 Kim F. Storm <storm@cua.dk>
60a653f1 14293
048addec
JD
14294 The following changes add left-fringe and right-fringe
14295 frame parameters to adjust fringe widths, or remove one or
14296 both fringes.
60a653f1 14297
048addec
JD
14298 * frame.h (struct frame): Remove trunc_area_pixel_width and
14299 trunc_area_cols fields.
14300 (Qleft_fringe, Qright_fringe): Declare.
14301 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
60a653f1 14302
048addec
JD
14303 * frame.c (Qleft_fringe, Qright_fringe): New vars.
14304 (syms_of_frame): Initialize them.
60a653f1 14305
048addec
JD
14306 * window.c (coordinates_in_window): Handle separate left and right
14307 fringe widths.
60a653f1 14308
048addec
JD
14309 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
14310 and fringe_cols fields.
14311 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
14312 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
14313 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
14314 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
14315 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
14316 (x_compute_fringe_widths): Add prototype.
60a653f1 14317
048addec
JD
14318 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
14319 fill fringe evenly with small dashes.
f63fd14e 14320 (x_draw_fringe_bitmap): Clear background if necessary. Align and
048addec
JD
14321 clip the new ZV bitmap to avoid jitter between rows.
14322 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
14323 background. Don't draw fringe bitmaps if fringe width is zero.
14324 (x_compute_fringe_widths): New function.
14325 (x_new_font, x_set_window_size_1): Use it.
60a653f1 14326
048addec
JD
14327 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
14328 (x_set_frame_parameters): Process `font' parameter before other
14329 parameters as fringe widths depend on it.
14330 (x_set_fringe_width): New function.
14331 (x_figure_window_size): Use x_compute_fringe_widths.
14332 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
14333 parameters.
60a653f1 14334
048addec
JD
14335 * widget.c (set_frame_size): Use x_compute_fringe_widths.
14336 (EmacsFrameSetCharSize): Ditto.
60a653f1 14337
048addec
JD
14338 * w32term.h: Merged changes from xterm.h.
14339 * w32term.c: Merged changes from xterm.c.
14340 * w32fns.c: Merged changes from xfns.c.
60a653f1 14341
048addec 143422001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 14343
048addec 14344 * COPYING: Removed.
60a653f1 14345
048addec 143462001-11-29 Dave Love <fx@gnu.org>
60a653f1 14347
048addec
JD
14348 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
14349 extra extra slot.
14350 (detect_coding_mask): Fix call of detect_coding_iso2022.
60a653f1 14351
048addec 143522001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 14353
048addec
JD
14354 * fileio.c (file-name-coding-system)
14355 (default-file-name-coding-system): Doc fix (links to referenced
14356 variables added).
60a653f1 14357
048addec 143582001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 14359
048addec
JD
14360 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
14361 Add dummy uses of gcproN variables.
60a653f1 14362
048addec
JD
14363 * category.c (describe_category, describe_category_1)
14364 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
14365 (syms_of_category): Don't defsubr Sdescribe_categories.
60a653f1 14366
048addec 143672001-11-28 Richard M. Stallman <rms@gnu.org>
60a653f1 14368
048addec 14369 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
60a653f1 14370
048addec
JD
14371 * Makefile.in (lispdir): New variable, referring to build dir.
14372 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
60a653f1 14373
048addec 143742001-11-28 Andrew Innes <andrewi@gnu.org>
60a653f1 14375
048addec
JD
14376 * w32menu.c (w32_menu_display_help): Actually add the new argument
14377 OWNER.
60a653f1 14378
048addec 143792001-11-28 Jason Rumney <jasonr@gnu.org>
60a653f1 14380
048addec
JD
14381 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
14382 menu items. From David Ponce <dponce@wanadoo.fr>.
14383 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
14384 conditionally.
f63fd14e 14385 (w32_menu_display_help): New argument OWNER. Rewritten to store a
048addec 14386 help event in the owner frame's keyboard buffer.
60a653f1 14387
048addec
JD
14388 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
14389 (Fx_show_tip): Don't subtract last width from row width.
14390
14391 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
14392 (w32_read_socket): Use EQ to compare frames.
60a653f1 14393
048addec 143942001-11-28 Gerd Moellmann <gerd@gnu.org>
60a653f1 14395
048addec
JD
14396 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
14397 OVERLAPS_P.
60a653f1 14398
048addec 143992001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 14400
048addec
JD
14401 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
14402 `gcpro3' and `gcpro4'.
60a653f1 14403
048addec 14404 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
60a653f1 14405
048addec 144062001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 14407
048addec 14408 * ccl.c: Use AREF and ASIZE.
60a653f1 14409
048addec 144102001-11-27 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 14411
048addec
JD
14412 * lisp.h (run_hook_list_with_args): Remove.
14413 (LIST_END_P): Fix call to wrong_type_argument.
14414 (make_fixnum_or_float): Use EMACS_INT rather than int.
60a653f1 14415
048addec 144162001-11-26 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 14417
048addec
JD
14418 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
14419 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
60a653f1 14420
048addec
JD
14421 * eval.c: Use AREF and ASIZE.
14422 (Ffetch_bytecode): Add the file name to the error message.
60a653f1 14423
048addec
JD
14424 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
14425 which match the end of the file-name.
14426 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
14427 is not a valid env var, but leave it as is instead.
60a653f1 14428
048addec
JD
14429 * keymap.c (access_keymap): Handle t bindings like nil bindings.
14430 Make nil bindings in char-tables transparent.
14431 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
60a653f1 14432
048addec 144332001-11-26 Richard M. Stallman <rms@gnu.org>
60a653f1 14434
048addec
JD
14435 * textprop.c (set_text_properties_1): Allow START, END in either order.
14436 Do nothing if range is empty.
60a653f1 14437
048addec 14438 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
60a653f1 14439
048addec
JD
14440 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
14441 (clean): Not here.
60a653f1 14442
048addec 144432001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 14444
048addec
JD
14445 * textprop.c (set_text_properties_1): Clearly mark that the
14446 interval should not be empty.
60a653f1 14447
048addec
JD
14448 * intervals.c (graft_intervals_into_buffer):
14449 Don't call set_text_properties_1 on an empty interval.
60a653f1 14450
048addec 144512001-11-25 Richard M. Stallman <rms@gnu.org>
60a653f1 14452
048addec 14453 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
60a653f1 14454
048addec
JD
14455 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
14456 don't lose the data in it.
60a653f1 14457
048addec 144582001-11-25 Juanma Barranquero <lektu@terra.es>
60a653f1 14459
048addec 14460 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
60a653f1 14461
c62aec78 14462 * buffer.c (Fkill_buffer): Likewise.
60a653f1 14463
c62aec78 14464 * print.c (temp_output_buffer_setup): Likewise.
60a653f1 14465
048addec 144662001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 14467
048addec 14468 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
60a653f1 14469
048addec 144702001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 14471
048addec
JD
14472 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
14473 Niemitalo <kon@iki.fi>.
60a653f1 14474
048addec 144752001-11-25 Jason Rumney <jasonr@gnu.org>
60a653f1 14476
048addec 14477 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
60a653f1 14478
048addec
JD
14479 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
14480 (Fx_show_tip): Block input during frame creation.
14481 (Fx_show_tip, Fx_hide_tip): Enable.
60a653f1 14482
048addec 144832001-11-24 Richard M. Stallman <rms@gnu.org>
60a653f1 14484
048addec
JD
14485 * lread.c (Fload): Detect recursive load error for more than 3
14486 nestings of the same file.
14487 (Vrecursive_load_depth_limit): Variable deleted.
14488 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
60a653f1 14489
048addec 144902001-11-24 Jason Rumney <jasonr@gnu.org>
60a653f1 14491
048addec
JD
14492 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
14493 mouse position if either left or top is not specified.
60a653f1 14494
048addec
JD
14495 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
14496 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
14497 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
14498 (my_create_tip_window): Assign tip_window.
14499 (x_create_tip_frame): Use same defaults as X.
14500 (compute_tip_xy): Remove unused variable. Use full screen width.
f63fd14e 14501 (Fx_show_tip): Do not double height. Call ShowWindow directly.
60a653f1 14502
048addec
JD
14503 * w32term.c (x_after_update_window_line): Doc fix.
14504 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
14505 frames.
14506 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
60a653f1 14507
048addec
JD
14508 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
14509 for all Windowed systems.
60a653f1 14510
048addec 145112001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 14512
048addec
JD
14513 * msdos.c (IT_clear_screen): If the frame's faces are not yet
14514 realized, use the initial screen colors to clear the screen.
60a653f1 14515
048addec 145162001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 14517
048addec
JD
14518 * textprop.c (Fset_text_properties): Remove unused variables
14519 `unchanged', `prev_changed', `s' and `len'.
60a653f1 14520
048addec
JD
14521 * search.c (Freplace_match): Remove unused variable `inslen'.
14522
14523 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
14524
145252001-11-22 Jason Rumney <jasonr@gnu.org>
14526
14527 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
14528 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
14529 (my_create_tip_window): New function.
14530 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
14531 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
14532
145332001-11-20 Jason Rumney <jasonr@gnu.org>
14534
14535 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
14536 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
14537
14538 * w32fns.c (Vw32_system_coding_system): Remove.
14539 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
14540
145412001-11-19 Stefan Monnier <monnier@cs.yale.edu>
14542
14543 * fileio.c (Fwrite_region): Move choose_write_coding_system to
14544 after build_annotations.
14545
14546 * syntax.c (describe_syntax): Add dummy arg.
14547 (describe_syntax_1): Update call to describe_vector.
14548
14549 * category.c (describe_category): Add dummy arg.
14550 (describe_category_1): Update call to describe_vector.
14551
14552 * keymap.c (Fdescribe_vector): Add `describer' parameter.
14553 (describe_command, describe_translation): Add dummy second param.
14554 (describe_map): Call elt_describer with two arguments.
14555 (describe_vector_princ): Add `fun' parameter.
14556 Call it instead of the hardcoded `princ'.
14557 (describe_vector): Add arg `args'.
14558 Pass it as a new second argument to elt_describer.
60a653f1 14559
048addec 14560 * keymap.h (describe_vector): Update prototype.
60a653f1 14561
048addec
JD
14562 * frame.c: Don't include keymap.h any more.
14563 (keys_of_frame): Remove.
60a653f1 14564
048addec 14565 * lisp.h (keys_of_frame): Remove declaration.
60a653f1 14566
048addec 14567 * emacs.c (main): Don't call `keys_of_frame' any more.
60a653f1 14568
048addec 145692001-11-14 Andreas Schwab <schwab@suse.de>
60a653f1 14570
048addec
JD
14571 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
14572 if defined, 0 otherwise.
14573 (MAP_FAILED): Define if not defined and use it to test mmap failure.
14574 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
60a653f1 14575
048addec 145762001-11-19 Richard M. Stallman <rms@gnu.org>
60a653f1 14577
048addec 14578 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
60a653f1 14579
048addec 145802001-11-18 Jason Rumney <jasonr@gnu.org>
60a653f1 14581
048addec
JD
14582 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
14583 (x_draw_bar_cursor): If the background color of the glyph under
14584 the cursor equals the frame's cursor color, use the glyph's
14585 foreground color for drawing the bar cursor.
14586 (x_after_update_window_line): Clear internal border in different
14587 circumstances.
14588 (w32_set_vertical_scroll_bar): Check for width and height > 0.
14589 (w32_draw_relief_rect): Correct relief by 1 pixel.
14590 (x_set_glyph_string_background_width):
14591 Set extends_to_end_of_line_p if the row's fill_line_p is set and
14592 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
14593 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
14594 if cursor_in_non_selected_windows is false.
14595 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
14596 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
14597 Notice if cursor gets overwritten.
14598 (notice_overwritten_cursor): Renamed from
14599 note_overwritten_text_cursor. Rewritten to take glyph widths
14600 into account, and to take X positions as parameters.
14601 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
14602 around call to x_draw_glyphs.
14603 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
14604 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
14605 color to use for image glyph reliefs.
14606 (x_draw_image_relief): Accept zero tool_bar_button_relief.
14607 (glyph_rect): Remove unused variable `area'.
60a653f1 14608
048addec
JD
14609 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
14610 some items.
14611 (x_set_internal_border_width): Set frame garbaged when window
14612 doesn't exist yet.
14613 (Fx_create_frame): Accept zero tool_bar_button_relief.
14614 (x_clear_image_1, four_corners_best, image_background)
14615 (image_background_transparent): New functions.
14616 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
14617 (gs_format): Add `:background' entry.
14618 (lookup_image): Set IMG's background color if specified.
14619 (pbm_load, xbm_load_image, png_load): Set IMG's background field
14620 when appropriate.
14621 (x_clear_image_1): Reset `background_valid' and
14622 `background_transparent_valid' fields.
14623 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
14624 calculating it here. Set IMG's background_transparent field.
14625 (enum xpm_keyword_index): Add XPM_BACKGROUND.
14626 (enum png_keyword_index): Add PNG_BACKGROUND.
14627 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
14628 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
14629 (enum gif_keyword_index): Add GIF_BACKGROUND.
14630 (enum gs_keyword_index): Add GS_BACKGROUND.
14631 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
14632 Pre-calculate image background color where necessary.
14633 (x_create_x_image_and_pixmap, xbm_load, gs_load):
14634 Use display info's n_cbits entry for screen depth.
14635 (Fx_show_tip): Remove unused variables `buffer', `top',
14636 `left', `max_width' and `max_height'.
60a653f1 14637
048addec 14638 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
60a653f1 14639
048addec 146402001-11-18 Gerd Moellmann <gerd@gnu.org>
60a653f1 14641
048addec 14642 * puresize.h (BASE_PURESIZE): Increase to 750000.
60a653f1 14643
048addec 146442001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 14645
048addec 14646 * frame.c (Fframe_live_p): Doc fix.
60a653f1 14647
048addec 146482001-11-18 Richard M. Stallman <rms@gnu.org>
60a653f1 14649
048addec
JD
14650 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
14651 (message_dolog_marker3): New static variables hold three markers.
14652 (syms_of_xdisp): Initialize and staticpro them.
14653 (message_dolog): Use message_dolog_marker1..3 instead of
14654 allocating markers each time. Unchain them when done.
60a653f1 14655
048addec 146562001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 14657
048addec 14658 * doc.c (Fsnarf_documentation): Doc fix.
60a653f1 14659
048addec 146602001-11-17 Andreas Schwab <schwab@suse.de>
60a653f1 14661
048addec 14662 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
60a653f1 14663
048addec 146642001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 14665
048addec 14666 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
60a653f1 14667
048addec 146682001-11-17 Jason Rumney <jasonr@gnu.org>
60a653f1 14669
048addec 14670 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
60a653f1 14671
048addec 146722001-11-17 Gerd Moellmann <gerd@gnu.org>
60a653f1 14673
048addec
JD
14674 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
14675 with invalid position.
60a653f1 14676
048addec 146772001-11-16 Richard M. Stallman <rms@gnu.org>
60a653f1 14678
048addec 14679 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
60a653f1 14680
048addec
JD
14681 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
14682 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
14683 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
60a653f1 14684
048addec 14685 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
60a653f1 14686
048addec 146872001-11-16 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 14688
048addec
JD
14689 * fileio.c (build_annotations): Split off the tail.
14690 (build_annotations_2): New fun. Extracted from build_annotations.
14691 (Fwrite_region): Split the call to build_annotations into two
14692 calls to build_annotations and build_annotations_2.
077907d4 14693
048addec 146942001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
1756e2fb 14695
048addec
JD
14696 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
14697 clear_waiting_for_input with argument.
1756e2fb 14698
048addec 14699 * xterm.h (x_update_cursor): Remove duplicated prototype.
06e8f738 14700
048addec 14701 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
06e8f738 14702
048addec 14703 * xterm.c (waiting_for_input): Remove unnecessary declaration.
fa336b91 14704
048addec 14705 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
fa336b91 14706
048addec 147072001-11-16 Stefan Monnier <monnier@cs.yale.edu>
fa336b91 14708
048addec
JD
14709 * fileio.c (choose_write_coding_system): New fun, extracted
14710 from Fwrite_region.
14711 (Fwrite_region): Use it.
fa336b91 14712
048addec
JD
14713 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
14714 (funcall_lambda, run_hook_with_args): Make static and add prototype.
14715 (ml_apply, find_handler_clause): Add prototype.
fa336b91 14716
048addec 147172001-11-16 Eli Zaretskii <eliz@gnu.org>
fa336b91 14718
048addec 14719 * config.in: Add #undef HAVE_COFF_H.
fa336b91 14720
048addec
JD
14721 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
14722 Required for ISC 4.1.
fa336b91 14723
048addec 147242001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
fa336b91 14725
048addec
JD
14726 * syswait.h: (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
14727 Andrew Wiseman <a.wiseman@btclick.com>.
fa336b91 14728
048addec 147292001-11-16 Kim F. Storm <storm@cua.dk>
fa336b91 14730
048addec
JD
14731 The following changes are made to clean up the various internal
14732 references to the fringes to actually use the term `fringe' for
14733 them. Previously, they were called `flags areas', `bitmap areas',
14734 `left/right side of windows', or implicitly as `flags' or
14735 `bitmaps':
fa336b91 14736
048addec 14737 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
f63fd14e 14738 Comments fixed. Use renamed symbols.
06e8f738 14739
f63fd14e 14740 * dispnew.c: Comment fix. Use renamed symbols.
06e8f738 14741
048addec
JD
14742 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
14743 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
14744 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
9ce647f4 14745
048addec 14746 * msdos.c: Comment fix.
9ce647f4 14747
048addec 14748 * w32fns.c: Use renamed symbols.
9b784ab8 14749
f63fd14e 14750 * w32term.c: Comment fixes. Use renamed symbols.
048addec
JD
14751 (fringe_bitmap_type): Renamed from bitmap_type.
14752 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
14753 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
14754 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
9f7e52b4 14755
f63fd14e 14756 * w32term.h: Comment fixes. Use renamed symbols.
048addec
JD
14757 (fringes_extra): Renamed from flags_areas_extra.
14758 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
14759 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
14760 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
14761 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
14762 (FRAME_X_LEFT_FRINGE_WIDTH):
14763 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
14764 (FRAME_X_RIGHT_FRINGE_WIDTH):
14765 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
9f7e52b4 14766
048addec 14767 * widget.c: Use renamed symbols.
9f7e52b4 14768
f63fd14e 14769 * window.c: Comment fixes. Use renamed symbols.
048addec 14770 (coordinates-in-window-p): Doc fix.
fa336b91 14771
f63fd14e 14772 * xdisp.c: Comment fixes. Use renamed symbols.
34e5d0af 14773
048addec 14774 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
9b784ab8 14775
048addec 14776 * xfns.c: Use renamed symbols.
89512fcd 14777
f63fd14e 14778 * xterm.c: Comment fixes. Use renamed symbols.
048addec
JD
14779 (fringe_bitmap_type): Renamed from bitmap_type.
14780 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
14781 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
14782 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
89512fcd 14783
f63fd14e 14784 * xterm.h: Comment fixes. Use renamed symbols.
048addec
JD
14785 (fringes_extra): Renamed from flags_areas_extra.
14786 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
14787 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
14788 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
14789 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
14790 (FRAME_X_LEFT_FRINGE_WIDTH):
14791 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
14792 (FRAME_X_RIGHT_FRINGE_WIDTH):
14793 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
14794
147952001-11-15 Jason Rumney <jasonr@gnu.org>
14796
14797 * w32menu.c (add-menu-item): Make help_echo and radio buttons
14798 work for most menu items. From David Ponce
14799 <david.ponce@wanadoo.fr>.
14800
148012001-11-15 Gerd Moellmann <gerd@gnu.org>
14802
14803 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
14804 Some x_set_* function expect to be called even if old and new
14805 value are equal.
14806
14807 * xdisp.c (build_desired_tool_bar_string): Accept zero
14808 tool_bar_button_relief.
14809
14810 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
14811
14812 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
14813
14814 * xterm.c (x_draw_bar_cursor): If the background color of the
14815 glyph under the cursor equals the frame's cursor color, use
14816 the glyph's foreground color for drawing the bar cursor.
14817
14818 * dispnew.c (direct_output_forward_char): Fix character/byte
14819 position comparison.
7d18891d 14820
048addec 148212001-11-15 Miles Bader <miles@gnu.org>
d2936d21 14822
048addec
JD
14823 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
14824 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
14825 Update arguments to find_field.
14826 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
14827 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
14828 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
14829 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
7d18891d 14830
048addec 148312001-11-14 Richard M. Stallman <rms@gnu.org>
7d18891d 14832
048addec 14833 * editfns.c (Fpropertize): Allow call with 1 arg.
7d18891d 14834
048addec
JD
14835 * dispextern.h (image_background, image_background_transparent):
14836 Conditionalize on HAVE_X_WINDOWS.
7d18891d 14837
048addec 148382001-11-13 Richard M. Stallman <rms@gnu.org>
7d18891d 14839
048addec 14840 * print.c (Fprin1_to_string): Doc fix.
7d18891d 14841
048addec 14842 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
7d18891d 14843
048addec 14844 * floatfns.c (Fceiling, Ffloor): Doc fixes.
7d18891d 14845
048addec 14846 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
7d18891d 14847
048addec 14848 * fileio.c (Ffile_accessible_directory_p): Doc fix.
7d18891d 14849
048addec 14850 * eval.c (syms_of_eval): Doc fix.
7d18891d 14851
048addec 14852 * coding.c (syms_of_coding): Doc fix.
7d18891d 14853
048addec 14854 * doc.c (Fsnarf_documentation): Doc fix.
7d18891d 14855
048addec 14856 * dispnew.c (syms_of_display): Doc fix.
9474c847 14857
048addec 14858 * category.c (Fget_unused_category): Doc fix.
9474c847 14859
048addec 14860 * buffer.c (syms_of_buffer): Doc fixes.
e3059a5d 14861
048addec 148622001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
e3059a5d 14863
048addec 14864 * print.c (prin1, print): Doc fix.
e3059a5d 14865
048addec 148662001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
b3700ae7 14867
048addec
JD
14868 * fontset.h: Remove declarations of variables
14869 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
b3700ae7 14870
048addec
JD
14871 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
14872 `Vclip_large_size_font'.
eae936e2 14873
048addec 148742001-11-13 Jason Rumney <jasonr@gnu.org>
4bb962be 14875
048addec 14876 * w32fns.c: Doc fix.
ddb67bdc 14877
048addec 148782001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3467c402 14879
048addec 14880 * xfaces.c (Fface_attributes_as_vector): Doc fix.
3467c402 14881
048addec 14882 * fns.c: Doc fix.
6e1b91d7 14883
048addec 14884 * emacs.c: Doc fix.
1c1d3d69 14885
048addec 14886 * coding.c: Doc fix.
1c1d3d69 14887
048addec
JD
14888 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
14889 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
14890 `new style' [w/`doc:' keyword].
b6f4c7ba 14891
048addec 148922001-11-12 Richard M. Stallman <rms@gnu.org>
b6f4c7ba 14893
048addec
JD
14894 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
14895 LeaveNotify events. Only FocusIn and FocusOut do that now.
14896 (x_display_and_set_cursor): Do display hollow cursors in active
14897 minibuffer windows when they are not selected.
b6f4c7ba 14898
048addec 148992001-11-12 Jason Rumney <jasonr@gnu.org>
a89f435d 14900
048addec 14901 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
f63fd14e
JB
14902 * w32term.c: Change doc-string comments to `new style'
14903 [w/`doc:' keyword]. Doc fixes.
a89f435d 14904
048addec
JD
14905 * w32fns.c: Don't define max.
14906 (Fx_open_connection): Only execute once.
a4cd0cd7 14907
048addec 149082001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
eafb659a 14909
048addec
JD
14910 * ccl.c: Change macros to use do-while block instead of if-else.
14911 Use braces to follow GNU Coding Standards.
eafb659a 14912
048addec 149132001-11-11 Richard M. Stallman <rms@gnu.org>
a4cd0cd7 14914
048addec 14915 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
a4cd0cd7 14916
048addec 14917 * lread.c (read_escape): Use end_of_file_error for reporting eof.
a4cd0cd7 14918
048addec
JD
14919 * insdel.c (replace_range): Use adjust_markers_for_replace
14920 instead of adjust_markers_for_delete and adjust_markers_for_insert.
a4cd0cd7 14921
048addec 14922 * intervals.h: Declare set_text_properties and set_text_properties_1.
a4cd0cd7 14923
048addec
JD
14924 * textprop.c (set_text_properties_1): New subroutine
14925 broken out of set_text_properties.
14926 (set_text_properties): Use set_text_properties_1.
91823618 14927
048addec
JD
14928 * intervals.c (graft_intervals_into_buffer):
14929 Use set_text_properties_1 to clear out properties.
91823618 14930
048addec
JD
14931 * search.c (Freplace_match): Use replace_range to insert
14932 and delete. Don't request property inheritance from
14933 surrounding text.
86928dfb 14934
048addec 149352001-11-10 Jason Rumney <jasonr@gnu.org>
86928dfb 14936
048addec 14937 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
f63fd14e 14938 vertical fonts. Allow them if face name is explicitly specified.
048addec 14939 Do not give up if we find a font that cannot be converted to an xlfd.
40ef1eda 14940
048addec 149412001-11-10 Gerd Moellmann <gerd@gnu.org>
ab8469eb 14942
048addec
JD
14943 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
14944 instead of malloc/free.
a78e0303 14945
048addec 149462001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
40ef1eda 14947
048addec
JD
14948 * xfaces.c (merge_face_vectors): Use braces to follow GNU
14949 Coding Standards.
14950 (Finternal_set_lisp_face_attribute): Likewise.
fabf4a91 14951
048addec 14952 * buffer.c (Fbury_buffer): Likewise.
0c99b139 14953
048addec 14954 * indent.c (current_column_1): Remove unused variable `prev_col'.
0c99b139 14955
048addec
JD
14956 * coding.c (encode_coding): Use precomputed value of `src'.
14957 (encode_coding): Remove unused variable `src_end'.
14958 (code_convert_region): Remove unused variables `count'.
830ddd77 14959
048addec 149602001-11-07 Jason Rumney <jasonr@gnu.org>
830ddd77 14961
048addec
JD
14962 * w32term.c (x_display_and_set_cursor): Do not move system caret
14963 if cursor_glyph is NULL.
55c6d645 14964
048addec 149652001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
55c6d645 14966
048addec 14967 * keymap.c (access_keymap): Fix compilation error.
5de38842 14968
048addec 149692001-11-07 Miles Bader <miles@gnu.org>
7a4564a4 14970
048addec 14971 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
5de38842 14972
048addec 149732001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4fa23df5 14974
048addec
JD
14975 * intervals.c (graft_intervals_into_buffer):
14976 Remove #ifdef'd-out code.
14977 (graft_intervals_into_buffer): Remove unused variable `middle'.
4fa23df5 14978
048addec
JD
14979 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
14980 code (eval-current-buffer).
14981 Change doc-string comments to `new style' [w/`doc:' keyword].
7a6a97d7 14982
048addec 149832001-11-06 Richard M. Stallman <rms@gnu.org>
c191d13c 14984
048addec 14985 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
7a6a97d7 14986
048addec 149872001-11-06 Stefan Monnier <monnier@cs.yale.edu>
44dc78e0 14988
048addec 14989 * lread.c (read1): Fix behavior with nested backquoting.
44dc78e0 14990
048addec
JD
14991 * keyboard.c (make_lispy_event): Check integerness and fix
14992 Lisp_Object/int mixup.
17893c65 14993
048addec 149942001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4d994a79 14995
048addec 14996 * fns.c (copy_hash_table): Remove unused variable `v'.
d5360cc7 14997
048addec
JD
14998 * fontset.c (fontset_font_pattern): Remove unused variable
14999 `family_registry'.
d5360cc7 15000
048addec 15001 * indent.c (current_column_1): Remove unused variable `prev_col'.
d5360cc7 15002
048addec 150032001-11-05 Richard M. Stallman <rms@gnu.org>
96238a5a 15004
048addec 15005 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
96238a5a 15006
048addec
JD
15007 * buffer.c (Fkill_buffer): Don't delete auto save file
15008 if buffer is modified.
d9d54213 15009
048addec 150102001-11-05 Andrew Innes <andrewi@gnu.org>
d9d54213 15011
048addec
JD
15012 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
15013 CHECK_NUMBER_CDR.
b116830b 15014
048addec 150152001-11-05 Richard M. Stallman <rms@gnu.org>
b116830b 15016
048addec 15017 * unexelf.c (unexec): Minor changes; clean up comments.
3297e2a1 15018
048addec 150192001-11-05 Sam Steingold <sds@gnu.org>
3297e2a1 15020
048addec 15021 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
6fb8339c 15022
048addec 150232001-11-05 Andreas Schwab <schwab@suse.de>
6fb8339c 15024
048addec 15025 * sound.c (sound_perror): Save errno from being clobbered.
7dd73b78 15026
048addec 150272001-11-05 Dale Hagglund <rdh@yottayotta.com>
7dd73b78 15028
048addec
JD
15029 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
15030 the program image directly.
982f6c7e 15031
048addec 150322001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d31053f9 15033
048addec 15034 * buffer.h (Fbuffer_local_value): Add prototype.
d31053f9 15035
048addec 150362001-11-04 Richard M. Stallman <rms@gnu.org>
d31053f9 15037
048addec
JD
15038 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
15039 and CHECK_BUFFER.
d31053f9 15040
048addec
JD
15041 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
15042 (record_char): Likewise.
d31053f9 15043
048addec
JD
15044 * keyboard.c (make_lispy_event): Don't insist a drag event must
15045 move to a different buffer position. Instead, check for moving at
15046 least double_click_fuzz.
982f6c7e 15047
048addec 15048 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
830047fd 15049
048addec 15050 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
b116830b 15051
048addec
JD
15052 * indent.c (current_column_1, Fmove_to_column): Separate the code
15053 for display-table glyphs from the code for buffer text, to fix
15054 bugs in the former.
830047fd 15055
048addec 150562001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
b116830b 15057
048addec
JD
15058 * buffer.c (Fbuffer_local_value): New function.
15059 (syms_of_buffer): Defsubr it.
2df5238c 15060
048addec
JD
15061 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
15062 value of `cursor-in-non-selected-windows'.
4e397688 15063
048addec
JD
15064 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
15065 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
15066 (syms_of_xdisp): Initialize it.
48b0f3ae 15067
048addec 150682001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2df5238c 15069
048addec 15070 * xfns.c (Fx_create_frame): Doc fix.
3ecaf7e5 15071
048addec
JD
15072 * coding.c: Change doc-string comments to `new style' [w/`doc:'
15073 keyword].
3ecaf7e5 15074
048addec
JD
15075 * eval.c (top_level_value, top_level_set): Remove commented and
15076 #ifdef'd-out code.
15077 (Fdefvar): Fix usage in doc-string.
3ecaf7e5 15078
048addec 150792001-11-03 Richard M. Stallman <rms@gnu.org>
3ecaf7e5 15080
048addec 15081 * xfns.c: Include unistd.h, if it exists.
8db2e33b 15082
048addec 15083 * editfns.c: Move the include of ctype.h after unistd.h.
8db2e33b 15084
048addec 15085 * gmalloc.c: Test BROKEN_PROTOTYPES.
aed29b97 15086
048addec 150872001-11-03 Ken Raeburn <raeburn@gnu.org>
aed29b97 15088
048addec
JD
15089 * lisp.h (CHECK_STRING_CAR): New macro.
15090 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
15091 treating XCAR and XCDR as lvalues.
15092 (openp): Use CHECK_STRING_CAR.
15093 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
aed29b97 15094
048addec 150952001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
6cb16f95 15096
048addec
JD
15097 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
15098 (SIGMASKTYPE): Define.
1b1acc13 15099
048addec 15100 * syssignal.h (sigunblock): Don't define if already defined.
020f9b38 15101
048addec 151022001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
020f9b38 15103
048addec
JD
15104 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
15105 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
15106 Fix typos in comments.
6cb16f95 15107
048addec
JD
15108 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
15109 and #ifdef'd-out code.
15110 Fix and reindent comments.
6cb16f95 15111
048addec 15112 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
6cb16f95 15113
048addec
JD
15114 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
15115 argument `i' in macros.
6cb16f95 15116
048addec
JD
15117 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
15118 `i' in macros.
7e9d3c2f 15119
048addec
JD
15120 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
15121 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
15122 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
15123 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
15124 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
15125 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
15126 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
15127 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
15128 in macros.
7e9d3c2f 15129
048addec
JD
15130 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
15131 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
15132 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
15133 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
15134 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
15135 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
15136 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
15137 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
15138 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
15139 (remove unused second argument).
7e9d3c2f 15140
048addec 151412001-11-02 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 15142
048addec
JD
15143 * syntax.c (describe_syntax): New wrapper.
15144 (Finternal_describe_syntax_value): Rename from describe_syntax.
15145 Don't insert space at front and \n at the end.
15146 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
e6bff182 15147
048addec
JD
15148 * regex.c (re_wctype): Try to fix some warnings.
15149 (regcomp, regexec): Don't forget the __restrict.
9ba48103 15150
048addec 151512001-11-02 Richard M. Stallman <rms@gnu.org>
9ba48103 15152
048addec 15153 * textprop.c (Fget_char_property): Doc fix.
9ba48103 15154
048addec 151552001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9ba48103 15156
048addec 15157 * process.c (Fstart_process): Add usage to doc-string.
c22e59e1 15158
048addec 15159 * data.c (Fsetq_default): Ditto.
c22e59e1 15160
048addec 15161 * callint.c (Finteractive): Ditto.
9271ed2c 15162
048addec 151632001-11-01 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 15164
048addec
JD
15165 * macros.c: Don't include keymap.h any more.
15166
151672001-11-01 Richard M. Stallman <rms@gnu.org>
15168
15169 * data.c (Fmake_local_variable): Doc fix.
15170
15171 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
15172 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
e6bff182 15173
048addec 15174 * keymap.c (Fdescribe_buffer_bindings): Print character property
9271ed2c
RS
15175 bindings along with or instead of the buffer local map.
15176 Make the overriding maps override what they should.
15177
f00691a3 151782001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8b8bd9c6
PJ
15179
15180 * window.c (grow_mini_window): Fix typo in comment.
15181
27188d11
GM
151822001-11-01 Gerd Moellmann <gerd@gnu.org>
15183
7b49b9d2
GM
15184 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
15185 (XTset_vertical_scroll_bar): Likewise.
15186
43f7c3ea
GM
15187 * xfns.c (x_build_heuristic_mask): Use four_corners_best
15188 instead of IMAGE_BACKGROUND.
c22e59e1 15189
b350c2e5
GM
15190 * xfns.c (four_corners_best): Reindent.
15191
c22e59e1 15192 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
27188d11
GM
15193 Handle :box so that it is possible to specify sexprs.
15194
bf00d461
EZ
151952001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
15196
15197 * s/hpux11.h: New file.
15198
f00691a3 151992001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e10df59 15200
2b209b97
PJ
15201 * emacs.c (USAGE1): Show command line option --no-window-system
15202 instead of --no-windows in usage.
15203 (standard_args): Rename --no-windows to --no-window-system.
15204 (bug_reporting_address): Follow Emacs coding conventions.
15205
9dbc9081
PJ
15206 * eval.c (Fcommandp): Doc fix.
15207 Change doc-string comments to `new style' [w/`doc:' keyword].
15208
4e10df59
PJ
15209 * frame.c (Fframe_live_p): Doc fix.
15210
15211 * buffer.c (selective-display-ellipses): Doc fix.
15212
dd387b25
GM
152132001-10-31 Gerd Moellmann <gerd@gnu.org>
15214
fe957e65
GM
15215 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
15216
dd387b25
GM
15217 * xfaces.c (realize_x_face): If C is not a single-byte character,
15218 set the face's colors_copied_bitwise_p instead of the defaulted_p
15219 members which have a different meaning.
15220 (free_face_colors): Do nothing for a face whose colors have been
15221 copied bitwise.
15222
c22e59e1 15223 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
dd387b25 15224
f00691a3 152252001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2e1280f8 15226
687784e8
PJ
15227 * marker.c, mocklisp.c: Change doc-string comments to `new style'
15228 [w/`doc:' keyword].
2e1280f8 15229
b9d9a9b9
GM
152302001-10-31 Gerd Moellmann <gerd@gnu.org>
15231
15232 * fns.c (require_unwind): Return Lisp_Object.
15233
f00691a3 152342001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
48400103 15235
fa1361cb
PJ
15236 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
15237 (last-input-char): Revert doc-string to be the same as the
15238 doc-string of `last-input-event'.
15239
6c465a15 15240 * xdisp.c: Fix typos in comments.
48400103 15241
eafa3196
GM
152422001-10-31 Gerd Moellmann <gerd@gnu.org>
15243
15244 * window.c (grow_mini_window): Handle case that the root
15245 window is already smaller than the nominal mininum height.
15246
747d3f2a
SM
152472001-10-30 Stefan Monnier <monnier@cs.yale.edu>
15248
bf9bb76f
SM
15249 * emacs.c (main): Don't call keys_of_macros any more.
15250
15251 * lisp.h (keys_of_macros): Remove.
15252
15253 * macros.c (keys_of_macros): Remove.
15254
747d3f2a
SM
15255 * xfaces.c (Fface_attribute_relative_p): Declare args.
15256
5e905a57
JR
152572001-10-30 Jason Rumney <jasonr@gnu.org>
15258
15259 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
15260 (enum_font_cb2): Ignore fonts with vertical orientation.
15261
3a426197
RS
152622001-10-30 Richard M. Stallman <rms@gnu.org>
15263
15264 * keyboard.c (Finput_pending_p): Doc fix.
15265
a742d646
GM
152662001-10-30 Gerd Moellmann <gerd@gnu.org>
15267
259cf6bc
GM
15268 * xterm.c (x_after_update_window_line): Don't run the code
15269 clearing in borders for rows whose visible height is 0.
15270
3f99f948
GM
15271 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
15272 resized_p flag is set. If not set, use the much less flickering
15273 method previously used.
15274
15275 * dispnew.c (change_frame_size_1): Set frame's resized_p.
15276
15277 * frame.h (struct frame) <resized_p>: New member.
15278
b4a3be43
GM
15279 * lread.c (to_multibyte): Ensure read_buffer is at least twice
15280 as large as the number of bytes to convert.
747d3f2a 15281
a742d646
GM
15282 * lread.c (to_multibyte): New function.
15283 (read1): Use it.
15284
cacbb9e9
EZ
152852001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
15286
15287 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
15288
99cb6b2f
GM
152892001-10-30 Gerd Moellmann <gerd@gnu.org>
15290
327f42ee 15291 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
747d3f2a
SM
15292 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
15293 if the row's fill_line_p is set and drawing the last glyph with
15294 DRAW_IMAGE_{RAISED,SUNKEN}.
327f42ee 15295
99cb6b2f
GM
15296 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
15297
8e8223e2
SM
152982001-10-29 Stefan Monnier <monnier@cs.yale.edu>
15299
15300 * xmenu.c: Include coding.h and charset.h.
15301 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
15302 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
15303 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
15304 Explicitly set wv->help. Use `TRUE' rather than `True'.
15305 (menu_help_callback): Use empty_string.
15306
15307 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
15308 (Fx_popup_dialog): Explicitly init f.
15309 (w32_menu_display_help): Use empty_string.
15310
4d083a8f
RS
153112001-10-29 Richard M. Stallman <rms@gnu.org>
15312
b2304472
RS
15313 * fns.c (Frequire): Detect recursive try to require the same
15314 feature 3 or more levels deep, and get error.
15315 (require_unwind): New subroutine.
15316 (require_nesting_list): New variable.
15317 (syms_of_fns): Init and staticpro it.
15318
4d083a8f
RS
15319 * print.c (print_object): Clarify indication of insertion type.
15320
2fe41216
EZ
153212001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
15322
90480000
EZ
15323 * coding.c (syms_of_coding): Document that locale-coding-system is
15324 used for decoding input on X.
15325
2fe41216
EZ
15326 * window.c (Fscroll_left, Fscroll_right): Doc fix.
15327
f00691a3 153282001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
74e79967
PJ
15329
15330 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
15331 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
15332
60ebcfe8
GM
153332001-10-29 Gerd Moellmann <gerd@gnu.org>
15334
9a7bdceb
GM
15335 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
15336 use NO_CURSOR if cursor_in_non_selected_windows is false.
15337
3f08fcd2
GM
15338 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
15339 the slant attribute if FRAME is t.
15340
0ccfdad2
GM
15341 * xfns.c (x_set_internal_border_width): Set frame garbaged
15342 when X window doesn't exist yet.
15343
ef253080
GM
15344 * xterm.c (x_after_update_window_line): Clear internal border
15345 in different circumstances.
b116830b 15346
60ebcfe8
GM
15347 * xterm.c (XTread_socket) <KeyPress>: Don't use
15348 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
15349 <handa@etl.go.jp>.
15350
73d25f9c
EZ
153512001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
15352
15353 * m/ibms390.h: New file. From Adam Thornton
15354 <athornton@sinenomine.net>.
15355
cac1daf0
GM
153562001-10-28 Gerd Moellmann <gerd@gnu.org>
15357
053b3256 15358 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
b116830b 15359
cac1daf0
GM
15360 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
15361 a loop counter.
15362
f00691a3 153632001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13b1a09c 15364
f9711de4 15365 * emacs.c: Use argv[0] instead of "emacs" when -t was specified.
186486eb 15366
4707d2d0
PJ
15367 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
15368 keyword].
15369 Fix typos in comments.
b116830b 15370
d883731c
PJ
15371 * emacs.c (bug_reporting_address): New function.
15372 Use it when displaying usage message.
15373
04012254
PJ
15374 * minibuf.c (read_minibuf): Remove unused external declaration of
15375 variable `Qread_only'.
15376
13b1a09c
PJ
15377 * keymap.c (access_keymap): Remove unused variable `charset'.
15378
5bbf4378
MB
153792001-10-28 Miles Bader <miles@gnu.org>
15380
15381 * xfaces.c (merge_face_heights): Handle TO being relative as well.
15382 Remove #ifdef'd-out code.
15383 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
15384 (syms_of_xfaces): Initialize them.
15385
1ce1e4ee
JR
153862001-10-27 Jason Rumney <jasonr@gnu.org>
15387
15388 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
15389 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
15390 position using the system caret.
15391
15392 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
15393 (w32_system_caret_height, w32_system_caret_x)
15394 (w32_system_caret_y): New variables for tracking system caret.
15395 (w32_initialize): Initialize them.
c2d53558 15396 (x_display_and_set_cursor): Make system caret follow the active cursor.
1ce1e4ee 15397
c2d53558
SM
15398 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
15399 New messages types.
1ce1e4ee
JR
15400
15401 * w32term.c (note_mouse_highlight): Clear old help_echo.
15402
f00691a3 154032001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e30ce42 15404
bb4600a4
PJ
15405 * xterm.c: Fix typo in a comment.
15406
7db35a48
PJ
15407 * emacs.c: Fix typos in comments.
15408 Remove unnecessary spaces.
15409 Change doc-string comments to `new style' [w/`doc:' keyword].
15410 (USAGE2): Fix typos in usage string.
15411
a7248e4f
PJ
15412 * xterm.c: Fix typo in a comment.
15413
4e30ce42
PJ
15414 * lisp.h: (gdb_lisp_params): Remove code in #if 0 which is now in
15415 emacs.c.
15416
62725a92
GM
154172001-10-27 Gerd Moellmann <gerd@gnu.org>
15418
798dbe1f 15419 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
c2d53558 15420 instead of 1/2 line_height in the heuristic for skipping
798dbe1f
GM
15421 farther backward when target_y was not reached.
15422
62725a92
GM
15423 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
15424 Display errno only if non-zero.
15425 (sound_warning): New function.
15426 (vox_configure): Don't treat failing to set sample rate as error.
15427 (various places): Improve error messages.
15428
d4e34d24
EZ
154292001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
15430
944e6f60
EZ
15431 * fileio.c (Faccess_file): Run the argument filename through
15432 Fexpand_file_name, before using it.
15433
d4e34d24
EZ
15434 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
15435 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
15436
38d2af0c
GM
154372001-10-26 Gerd Moellmann <gerd@gnu.org>
15438
da80a8d5
GM
15439 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
15440
38d2af0c
GM
15441 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
15442 Fix clearing in the case of scroll bars on the right.
c2d53558 15443
45de4a6f 154442001-10-26 Juanma Barranquero <lektu@terra.es>
56f508dd
EZ
15445
15446 * w32gui.h (XImage): Add a dummy typedef.
15447
fbd5ceb2
GM
154482001-10-26 Gerd Moellmann <gerd@gnu.org>
15449
c2d53558 15450 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
fbd5ceb2 15451
b23236fb
EZ
154522001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
15453
15454 * frame.c (Fframe_parameter): Fix last change.
15455
5d991fc4
EZ
15456 * fileio.c: Revert last change (which removed old commented-out
15457 version of expand-file-name). Add a comment that explains why
15458 this old version should not be removed.
15459
879eadc3
GM
154602001-10-25 Gerd Moellmann <gerd@gnu.org>
15461
75700ff2
GM
15462 * frame.c (Fframe_parameter): Fix a bug whereby some
15463 ``artificial'' frame parameters, like `minibuffer' were not
15464 obtained by calling Fframe_parameters.
15465
dfe92a6a
GM
15466 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
15467 cursor differently.
15468
879eadc3
GM
15469 * xdisp.c (move_it_vertically_backward): Compute line height
15470 differently. Add heuristic to try to be more compatible to 20.x.
15471
e1010ebe
SM
154722001-10-25 Stefan Monnier <monnier@cs.yale.edu>
15473
d73a471b
SM
15474 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
15475
d6da5a06
GM
15476 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
15477 boolean.
e1010ebe 15478
f66bd220
MB
154792001-10-25 Miles Bader <miles@gnu.org>
15480
15481 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
15482 BG is a pointer to a structure, not a structure.
15483 (gif_format, png_format): Add missing commas.
15484
d436d538
RS
154852001-10-24 Richard M. Stallman <rms@gnu.org>
15486
15487 * xfaces.c (Fface_attributes_as_vector): New function.
c2d53558 15488 (syms_of_xfaces): Defsubr it.
d436d538 15489
f00691a3 154902001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
075c507b
PJ
15491
15492 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
15493 variable `area'.
15494
f00691a3 154952001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d492b584 15496
c2d53558 15497 * search.c (scan_newline): Remove unused variable `selective_display'.
d492b584 15498
e2a57b34
MB
154992001-10-25 Miles Bader <miles@gnu.org>
15500
15501 * dispextern.h (struct image): Add `background',
15502 `background_valid', and `background_transparent' fields.
15503 (image_background, image_background_transparent): New declarations.
15504 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
15505 * xfns.c (image_background, image_background_transparent)
15506 (four_corners_best): New functions.
c2d53558 15507 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
e2a57b34
MB
15508 (gs_format): Add `:background' entry.
15509 (lookup_image): Set IMG's background color if specified.
15510 (pbm_load, xbm_load_image, png_load): Set IMG's background field
15511 when appropriate.
15512 (x_clear_image_1): Reset `background_valid' and
15513 `background_transparent_valid' fields.
15514 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
15515 calculating it here. Set IMG's background_transparent field.
15516 (enum xpm_keyword_index): Add XPM_BACKGROUND.
15517 (enum png_keyword_index): Add PNG_BACKGROUND.
15518 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
15519 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
15520 (enum gif_keyword_index): Add GIF_BACKGROUND.
15521 (enum gs_keyword_index): Add GS_BACKGROUND.
c2d53558 15522 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
e2a57b34
MB
15523 Pre-calculate image background color where necessary.
15524 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
15525 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
15526 color to use for image glyph reliefs.
15527
b547b6e8
GM
155282001-10-24 Gerd Moellmann <gerd@gnu.org>
15529
d9e3b8c6
GM
15530 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
15531 in full-width rows.
c2d53558 15532
b547b6e8
GM
15533 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
15534 Fix clearing of area not covered by scroll bar.
15535
f00691a3 155362001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2beb36f9
PJ
15537
15538 * xterm.c: (x_insert_glyphs): Remove unused variables `real_end'
15539 and `real_start'.
c2d53558 15540 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
2beb36f9
PJ
15541 (glyph_rect): Remove unused variable `area'.
15542
76cb5e06
GM
155432001-10-24 Gerd Moellmann <gerd@gnu.org>
15544
bdbdebff 15545 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
c2d53558
SM
15546
15547 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
15548 (row_containing_pos): Take additional argument DY.
15549 Treat rows ending in middle of char differently.
62e33982
GM
15550 (display_line): Handle tabs on window systems differently.
15551
15552 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
15553 with additional argument.
15554
15555 * dispextern.h (row_containing_pos): Adjust prototype.
15556
76cb5e06
GM
15557 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
15558 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
15559 (try_window_id, try_window_reusing_current_matrix)
15560 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
6c465a15 15561 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
76cb5e06 15562
f00691a3 155632001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
996fee11 15564
c9e60620
PJ
15565 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
15566 gnuemacs).
15567 (HAVE_BOXES): Fix typo in comment.
15568 (push_menu_pane): Fix typo in comment.
15569
3b552d56
PJ
15570 * xdisp.c: (display_prop_string_p): Remove unused local declaration
15571 of `Qwhen'.
15572 (single_display_prop_string_p): Remove unused local declarations
15573 of `Qwhen' and `Qmargin'.
15574 (string_buffer_position): Remove unused variable `around'.
15575 (store_frame_title): Remove unused variable `width'.
15576
15c565ac
PJ
15577 * window.c: Don't define max.
15578 (coordinates_in_window): Remove unused variable `uy'.
15579
a8818eb9
PJ
15580 * widget.c: Don't define max.
15581
996fee11
PJ
15582 * process.c: Don't define max.
15583 (create_process): Remove unused variable `buffer'.
15584
496e1a5b
GM
155852001-10-23 Gerd Moellmann <gerd@gnu.org>
15586
c2d53558 15587 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
496e1a5b 15588
5905ae8b
EZ
155892001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
15590
15591 * xfaces.c (Finternal_set_lisp_face_attribute)
15592 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
15593 frame is on a windowed display.
15594
24db49fb
GM
155952001-10-23 Gerd Moellmann <gerd@gnu.org>
15596
c2d53558
SM
15597 * dispnew.c (sync_window_with_frame_matrix_rows):
15598 Fix handling of windows which aren't full-width, fix handling
c51488cd
GM
15599 of marginal areas.
15600
c2d53558 15601 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
24db49fb 15602
f0487f05
EZ
156032001-10-23 Andreas Schwab <schwab@suse.de>
15604
15605 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
15606 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
15607
f0a48a01
GM
156082001-10-23 Gerd Moellmann <gerd@gnu.org>
15609
c2d53558 15610 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
f0a48a01
GM
15611 REAL_END. Notice if cursor gets overwritten.
15612 (notice_overwritten_cursor): Take X positions as parameters.
15613 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
15614 around call to x_draw_glyphs.
15615
f00691a3 156162001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
a50a10a0 15617
fc11dff0
PJ
15618 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
15619 instead of C) and usage.
a50a10a0 15620
fc11dff0
PJ
15621 * editfns.c (char-to-string): Fix argument names (use CHAR instead
15622 of C) and usage.
a50a10a0
PJ
15623
15624 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
15625 `left', `max_width' and `max_height'.
15626
8738febd
GM
156272001-10-23 Gerd Moellmann <gerd@gnu.org>
15628
15629 * xdisp.c (display_line): For a tab continued to the next line,
15630 set row's ends_in_middle_of_char_p.
15631
653c329b
GM
156322001-10-22 Gerd Moellmann <gerd@gnu.org>
15633
15634 * xdisp.c (display_line): Fix computation of continuation lines
15635 width for TABs.
15636
f00691a3 156372001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
f958c5ac 15638
7ba51063
PJ
15639 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
15640 `Qlaplace'.
15641
f958c5ac
PJ
15642 * fileio.c: Remove unused code.
15643
eb360291
MB
156442001-10-22 Miles Bader <miles@gnu.org>
15645
15646 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
15647 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
15648 Remove `DOC_STRINGS_IN_COMMENTS' cases.
15649
98515cf0
JR
156502001-10-21 Jason Rumney <jasonr@gnu.org>
15651
15652 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
15653
93026d88
EZ
156542001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
15655
15656 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
15657 (Finsert_string): Avoid the multi-line string literals warning.
15658
c9a95b79
MB
156592001-10-22 Miles Bader <miles@gnu.org>
15660
15661 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
15662 (Fdocumentation): Don't use it.
15663 (syms_of_doc): Don't initialize it.
15664
15665 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
15666 * print.c (Fwith_output_to_temp_buffer): Likewise.
15667 * window.c (Fsave_window_excursion): Likewise.
c2d53558 15668 * editfns.c (Fsave_excursion, Fsave_current_buffer)
c9a95b79 15669 (Fsave_restriction): Likewise.
c2d53558
SM
15670 * eval.c (Frun_hooks, Frun_hook_with_args)
15671 (Frun_hook_with_args_until_failure)
15672 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
15673 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
15674 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
c9a95b79
MB
15675 (Funwind_protect, Fcondition_case): Likewise.
15676 * coding.c (Ffind_operation_coding_system): Likewise.
15677 * keyboard.c (Ftrack_mouse): Likewise.
15678
a3b10252
MB
156792001-10-21 Miles Bader <miles@gnu.org>
15680
c2d53558 15681 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
a3b10252
MB
15682 (Fmake_hash_table): Add usage: string to doc string.
15683 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
c2d53558 15684 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
a3b10252
MB
15685 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
15686 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
15687 (Fml_prefix_argument_loop): Likewise.
15688
f00691a3 156892001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c6f73eec 15690
c2d53558 15691 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
888ebd13 15692
c6f73eec
PJ
15693 * sysdep.c (init_sys_modes): Change doc-string comments to `new
15694 style' [w/`doc:' keyword].
15695
15696 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
15697 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
15698 comments to `new style' [w/`doc:' keyword].
15699
3cf3436e
JR
157002001-10-21 Jason Rumney <jasonr@gnu.org>
15701
15702 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
15703
c169b8f1
JR
15704 * w32term.c (remember_mouse_glyph): New function.
15705 (w32_mouse_position): Use it.
15706 (note_mouse_movement): If the mouse moved off the glyph, remember
15707 its new position.
c2d53558 15708
4fdd691b
JR
15709 * w32term.h (struct w32_output): Correct spelling of x_compatible.
15710 (w32_display_info): Add mouse_face_overlay.
15711
c169b8f1
JR
15712 * w32term.c (notice_overwritten_cursor): Renamed from
15713 note_overwritten_text_cursor. Rewritten to take glyph widths into
15714 account.
15715 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
15716 (fast_find_string_pos): New function.
15717 (fast_find_position): Return the correct vpos. Add parameter
15718 STOP. In the final row, stop before glyphs having STOP as object.
15719 Don't consider glyphs that are not from a buffer.
15720 (fast_find_position) [0]: Add a presumably more correct version
15721 for after 21.1.
15722 (expose_window_tree, expose_frame): Don't compute intersections here.
15723 (expose_window): Do it here instead.
15724 (expose_window_tree, expose_window, expose_line): Return 1 when
15725 overwriting mouse-face.
15726 (expose_window): If W is the window currently being updated, mark
15727 the frame garbaged.
15728 (expose_frame): If mouse-face was overwritten, redo it.
15729 (x_use_underline_position_properties): New variable.
15730 (syms_of_xterm): DEFVAR_BOOL it.
15731 (x_draw_glyph_string): Add comment to use it in future.
15732 (x_draw_glyph_string): Restore clipping after drawing box.
15733 Fix a computation of the underline position.
15734 (w32_get_glyph_string_clip_rect): Minor cleanup.
15735 (x_fill_stretch_glyph_string): Remove an assertion.
15736 (x_produce_glyphs): Don't convert multibyte characters
15737 to unibyte characters in unibyte buffers.
15738 (cursor_in_mouse_face_p): New function.
15739 (x_draw_stretch_glyph_string): Use it to choose a different GC
15740 when drawing a cursor within highlighted text. Don't draw
15741 background again if it has already been drawn.
15742 (x_draw_glyph_string_box): Don't draw a full-width
15743 box just because the glyph row's full_width_p flag is set.
15744 (x_draw_glyphs): Fix computation of rightmost x for
15745 full-width rows.
15746 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
15747 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
f63fd14e 15748 change bottom shadow accordingly. Some cleanup.
c169b8f1
JR
15749 (x_update_window_end): Handle overwritten mouse face
15750 also for tool bar windows.
15751 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
15752 DRAW is DRAW_IMAGE_RAISED.
15753 (clear_mouse_face): Return 1 if text with mouse face was
2c568af5
SM
15754 actually redrawn. Make the function static.
15755 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
c169b8f1
JR
15756 optimize away highlighting if we pass over that same overlay again.
15757 (note_mouse_highlight): Call mouse_face_overlay_overlaps
15758 to detect a case where we have to highlight a different region
15759 despite not having left the currently highlighted region.
15760 Set mouse_face_overlay in the x_display_info. Avoid changing the
15761 mouse pointer shape when show_mouse_face has already done it, or
15762 there is no need. Handle mouse-face and help-echo in strings.
15763 (glyph_rect): New function.
15764 (w32_mouse_position): Use it to raise the threshold for mouse
15765 movement event generation.
15766 (w32_initialize_display_info): Initialize the x_display_info's
15767 mouse_face_overlay.
15768 (w32_set_vertical_scroll_bar): Don't clear a zero height
15769 or width area.
15770 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
15771 a widget to zero height.
15772
3cf3436e 15773 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
4fdd691b 15774 Protect unibyte strings created by replacing their multibyte
3cf3436e
JR
15775 equivalents in menu_items.
15776 (w32_menu_show): Don't overwrite an item's name with its key
15777 description in case the description is a multibyte string.
15778 (single_submenu): Some cleanup.
15779
15780 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
15781 (postprocess_image): New function.
15782 (lookup_image): Call it for all image types except PostScript.
15783 (x_kill_gs_process): Call postprocess_image.
15784 (tiff_error_handler, tiff_warning_handler): New functions.
15785 (tiff_load): Install them as handlers.
15786 (x_kill_gs_process): Recognize if someone has cleared the image
15787 cache under us.
15788 (valid_image_p): Protect better against invalid image
15789 specifications. Previous code could signal an error.
15790 (Fx_hide_tip, Fshow_tip): Doc fix.
15791 (Fv_max_tooltip_size): New variable.
15792 (syns_of_xfns): DEFVAR_LISP it.
15793 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
f63fd14e 15794 window buffer to *tip* right after creating the frame. Set frame's
3cf3436e
JR
15795 window_width. Use a maximum tooltip size specified by
15796 Vx_max_tooltip_size, if that has valid contents.
15797 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
15798 Make sure the tooltip is completely visible.
15799 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
15800 (Fx_create_frame): Adjust the frame's height for presence
15801 of the tool bar before calling x_figure_window_size.
15802 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
15803 when the window gets smaller.
15804 (x_set_foreground_color): Set frame's cursor_pixel.
15805 (x_set_foreground_color, x_set_background_color): Cleaned up.
15806 (x_set_font): Handle case of x_new_fontset returning the same name
15807 as before, although there was a change in fontsets.
15808
386ca361
MB
158092001-10-21 Miles Bader <miles@gnu.org>
15810
c2d53558 15811 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
386ca361
MB
15812 (Flogxor): Add usage: string to doc string.
15813 * charset.c (Fstring): Likewise.
15814 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
15815 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
15816
f00691a3 158172001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14ff1ee0 15818
03be2694
PJ
15819 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
15820
15821 * alloc.c: Reindent DEFUNs with doc: keywords.
15822
15823 * abbrev.c (Finsert_abbrev_table_description): Reindent.
15824
14ff1ee0
PJ
15825 * frame.c: Change doc-string comments to `new style' [w/`doc:'
15826 keyword].
15827
2f147815 15828See ChangeLog.9 for earlier changes.
6922b018
KH
15829
15830;; Local Variables:
49b3bd82 15831;; coding: iso-2022-7bit
6922b018 15832;; End:
2a34a036 15833
2f147815 15834 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
2a34a036
GM
15835 Copying and distribution of this file, with or without modification,
15836 are permitted provided the copyright notice and this notice are preserved.
ab5796a9
MB
15837
15838;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4