* .cvsignore: Add buildobj.lst.
[bpt/emacs.git] / src / ChangeLog
CommitLineData
d87a9ab8
JD
12004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2
a8b16c80
JD
3 * .cvsignore: Add buildobj.lst.
4
d87a9ab8
JD
5 * doc.c: New variable Vbuild_files.
6 (Fsnarf_documentation): If Vbuild_files is nil, populate it with
7 file names from buildobh.lst. Only attach docstrings from files
8 that are in Vbuild_files.
9 (syms_of_doc): Defvar Vbuild_files.
10
11 * Makefile.in (SOME_MACHINE_OBJECTS): Add fringe.o, image.o
12 and w32*.o.
13 (temacs${EXEEXT}): Generate buildobj.lst when temacs is linked.
14 (mostlyclean): rm buildobj.lst
15
16 * makefile.w32-in ($(TEMACS)): Generate buildobj.lst when temacs
17 is linked.
18
b6709e77
KS
192004-11-09 Kim F. Storm <storm@cua.dk>
20
21 * fringe.c (update_window_fringes): Update fringe bitmaps if
22 cur and row ends_at_zv_p differs. If bitmaps of a row is updated,
23 also update previous row to get rid of misc. artifacts.
24
bae9677d
KS
252004-11-08 Kim F. Storm <storm@cua.dk>
26
27 * xdisp.c (fast_find_position): Fix start pos if header line present.
b7127aa8 28 (note_mouse_highlight): Clear mouse face if we move out of text area.
bae9677d 29
3f8ea68c
EZ
302004-11-08 Eli Zaretskii <eliz@gnu.org>
31
32 * editfns.c: Move #include "systime.h" before <sys/resource.h>.
33 Don't include <sys/time.h> explicitly.
34 Include <stdio.h> unconditionally, not just on MacOS.
35
a653f812
KH
362004-11-08 Kenichi Handa <handa@m17n.org>
37
38 * fontset.c (fontset_pattern_regexp): Cancel my previous change;
39 don't pay attention to '\' before '*'.
40 (fontset_pattern_regexp): Change the meaning of the second arg.
41 (Fnew_fontset): Call fs_query_fontset, not Fquery_fontset.
42 (check_fontset_name): Try NAME as literal at first, and if it
43 failes, try NAME as pattern.
44
c37caf9d
JD
452004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
46
47 * emacs.c (Fdump_emacs): Only output warning on GNU/Linux.
48
b72915a7
AS
492004-11-07 Andreas Schwab <schwab@suse.de>
50
51 * lisp.h: Declare Fmsdos_downcase_filename.
52 * dired.c: Don't declare Fmsdos_downcase_filename.
53 * fileio.c: Likewise.
54
238a44a8
JD
552004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
56
57 * dosfns.c (Fdos_memget, Fdos_memput): Use integer variable offs in
58 comparisons with integers instead of Lisp_Object address.
59 (Fmsdos_set_keyboard): Declare argument allkeys.
60
61 * msdos.c (IT_set_frame_parameters): Use EQ, not ==, for Lisp_Object:s.
62
63 * dired.c: extern declare Fmsdos_downcase_filename on MSDOS to avoid
64 int/Lisp_Object mixup.
65
66 * fileio.c: Ditto.
67
31141c13
ST
682004-11-06 Steven Tamm <steventamm@mac.com>
69
70 * editfns.c: Need to include sys/time.h before resource.h on darwin.
71
f28c1bd9
RS
722004-11-06 Richard M. Stallman <rms@gnu.org>
73
74 * callint.c (Fcall_interactively): Avoid reusing EVENT for other data.
75
76 * xfaces.c (merge_named_face): GCPRO the face_name in the
77 named_merge_point struct that we make.
78 (merge_face_heights): Eliminate GCPRO arg. All callers changed.
79
80 * keyboard.c (command_loop_1): Change Vtransient_mark_mode
81 before deciding whether to inactivate mark.
82
59dede22
EZ
832004-11-06 Lars Brinkhoff <lars@nocrew.org>
84
85 * config.in: Regenerate (add HAVE_GETRUSAGE).
6159c232
EZ
86 * editfns.c (Fget_internal_run_time): New function.
87 (syms_of_data): Defsubr it.
88 * fns.c (sxhash): As far as possible, merge calculation of
89 hash code for symbols and strings.
59dede22 90
27540e81
EZ
912004-11-06 Eli Zaretskii <eliz@gnu.org>
92
93 * frame.c (syms_of_frame): Fix the example in the doc string.
94
df470e3b
JD
952004-11-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
96
97 * eval.c (Feval): Remove check for INPUT_BLOCKED_P.
98
99 * xmenu.c (popup_get_selection, create_and_show_popup_menu)
100 (create_and_show_dialog): Revert change from 2004-10-31.
bae9677d 101
4cc8522c
LT
1022004-11-05 Luc Teirlinck <teirllm@auburn.edu>
103
104 * macros.c (syms_of_macros) <defining-kbd-macro>: Doc fix.
105
d4a42098
KS
1062004-11-05 Kim F. Storm <storm@cua.dk>
107
a8490886
KS
108 * print.c (print_object): Print Lisp_Misc_Save_Value objects.
109
d4a42098
KS
110 * fileio.c (Ffile_modes): Doc fix.
111 (auto_save_1): Check for Ffile_modes nil value.
112
36a2b04c
KS
1132004-11-05 Kim F. Storm <storm@cua.dk>
114
115 * xselect.c (struct selection_event_queue, selection_queue)
116 (x_queue_selection_requests, x_queue_event)
117 (x_start_queuing_selection_requests)
118 (x_stop_queuing_selection_requests): Add new queue for selection
119 input events to replace previous XEvent queue in xterm.c.
120 (queue_selection_requests_unwind): Adapt to new queue.
121 (x_reply_selection_request): Adapt to new queue. Unexpect
122 wait_object in case of x errors (memory leak).
123 (x_handle_selection_request, x_handle_selection_clear): Make static.
124 (x_handle_selection_event): New function. May queue selection events.
125 (wait_for_property_change_unwind): Use save_value instead of cons.
126 Clear property_change_reply_object.
127 (wait_for_property_change): Abort if already waiting.
128 Use save_value instead of cons for unwind data.
129 (x_handle_property_notify): Skip events already arrived, but don't
130 free them, as "arrived" field is checked by wait_for_property_change,
131 and it will be freed by unwind or explicit unexpect_property_change.
132 (x_get_foreign_selection): Add to new queue.
133 (receive_incremental_selection): Don't unexpect wait_object when done
134 as it has already been freed by previous wait_for_property_change.
135
136 * xterm.h (x_start_queuing_selection_requests)
137 (x_stop_queuing_selection_requests, x_handle_selection_request)
138 (x_handle_selection_clear): Remove prototypes.
139 (x_handle_selection_event): Add prototype.
140
141 * xterm.c (handle_one_xevent): Don't queue X selection events
142 here, it may be too late if we start queuing after we have already
143 stored some selection events into the kbd buffer.
144 (struct selection_event_queue, queue, x_queue_selection_requests)
145 (x_queue_event, x_unqueue_events, x_start_queuing_selection_requests)
146 (x_stop_queuing_selection_requests): Remove/move to xselect.c.
147 (x_catch_errors_unwind): Block input around final XSync.
148
149 * keyboard.h (kbd_buffer_unget_event): Add prototype.
150
151 * keyboard.c (kbd_buffer_store_event_hold): Remove obsolete code.
152 (kbd_buffer_unget_event): New function.
153 (kbd_buffer_get_event, swallow_events): Combine SELECTION events
154 and use x_handle_selection_event.
155 (mark_kboards): Don't mark x and y of SELECTION_CLEAR_EVENT.
156
9c3ad9e1
JD
1572004-11-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
158
159 * xselect.c (TRACE3): New debug macro.
160 (x_reply_selection_request): Use it.
161 (receive_incremental_selection): In call to TRACE0, the name of
162 a symbol is in xname.
163
a33b89de
KS
1642004-11-05 Kim F. Storm <storm@cua.dk>
165
166 * fontset.c (fontset_pattern_regexp): Use unsigned char.
167
a872928c
JD
1682004-11-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
169
88208bb8
JD
170 * fileio.c (Fnext_read_file_uses_dialog_p): New function.
171
0a4f23f3
JD
172 * gtkutil.h: Declare use_old_gtk_file_dialog.
173
174 * gtkutil.c: Make use_old_gtk_file_dialog non-static.
175 (xg_initialize): Moved DEFVAR_BOOL for use_old_gtk_file_dialog ...
176 * xfns.c (syms_of_xfns): ... to here.
177
a872928c
JD
178 * gtkutil.c (xg_get_file_with_chooser): Expand DEFAULT_FILENAME if
179 it doesn't start with /.
180
b912921c
KH
1812004-11-04 Kenichi Handa <handa@m17n.org>
182
183 * fontset.c (fontset_pattern_regexp): If '*' is preceded by '\',
184 treat it as a literal character.
185
c524d9a6
KS
1862004-11-03 Kim F. Storm <storm@cua.dk>
187
188 * .gdbinit (ppt): New function.
189
8cfd0f36
JD
1902004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
191
a11e1dce
JD
192 * xterm.c (x_window_to_scroll_bar): Only call
193 xg_get_scroll_id_for_window if toolkit scroll bars are used.
194
8cfd0f36
JD
195 * gtkutil.c (xg_get_file_with_chooser): Use GTK_STOCK_OK instead
196 of save.
197
a93563fd
AS
1982004-11-02 Andreas Schwab <schwab@suse.de>
199
200 * window.c (Fscroll_right): Fix last change.
201
2b2d59d8
KS
2022004-11-02 Kim F. Storm <storm@cua.dk>
203
204 * Makefile.in (callproc.o): Depend on blockinput.h atimer.h systime.h.
205
2062004-11-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
207
208 * callproc.c (Fcall_process): Block input around vfork.
209
ca28104d
KS
2102004-11-02 Kim F. Storm <storm@cua.dk>
211
212 * eval.c (Fcalled_interactively_p): Rename from Fcall_interactive_p.
213 (syms_of_eval): Defsubr it.
214
29bb7127
RS
2152004-11-02 Richard M. Stallman <rms@gnu.org>
216
217 * insdel.c (replace_range_2): New function.
218
219 * casefiddle.c (casify_region): Handle changes in byte-length
220 using replace_range_2.
221
222 * emacs.c (USAGE3): Delete --horizontal-scroll-bars, -hb.
223
b6189c3b 224 * xdisp.c (back_to_previous_visible_line_start):
29bb7127
RS
225 Subtract 1 from pos when checking previous newline for invisibility.
226
227 * window.c (window_scroll_pixel_based): Update preserve_y
228 for header line if any.
229 (Fscroll_left, Fscroll_right): Don't call interactive_p;
230 use a new second argument instead.
231
232 * eval.c (Fcall_interactive_p): New function.
233 (interactive_p): Don't test INTERACTIVE here.
234 (Finteractive_p): Doc fix.
235
236 * eval.c (Feval): Abort if INPUT_BLOCKED_P.
237
b6189c3b 2382004-11-02 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
a3fe4aaf
JR
239
240 * w32fns.c (w32_font_match): Use fast_string_match_ignore_case for
b6189c3b 241 comparing font names.
a3fe4aaf 242
2a00cdb4
JD
2432004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
244
f9d64bb3
JD
245 * fileio.c (Fread_file_name): Pass Qt as fifth parameter to
246 Fx_file_dialog if only directories should be read.
247
248 * lisp.h: Fx_file_dialog takes 5 parameters.
249
250 * xfns.c (Fx_file_dialog): Both Motif and GTK version: Add
251 parameter only_dir_p.
252 In Motif version, don't put DEFAULT_FILENAME in filter part of the
253 dialog, just text field part. Do not add DEFAULT_FILENAME
254 to list of files if it isn't there.
255 In GTK version, pass only_dir_p parameter to xg_get_file_name.
256
257 * macfns.c (Fx_file_dialog): Add parameter only_dir_p. Check
258 only_dir_p instead of comparing prompt to "Dired". When using
259 a save dialog, add option kNavDontConfirmReplacement, change title
260 to "Enter name", change text for save button to "Ok".
261
262 * w32fns.c (Fx_file_dialog): Add parameter only_dir_p. Check
263 only_dir_p instead of comparing prompt to "Dired".
264
265 * gtkutil.c (xg_get_file_with_chooser)
266 (xg_get_file_with_selection): New functions, only defined ifdef
267 HAVE_GTK_FILE_CHOOSER_DIALOG_NEW and HAVE_GTK_FILE_SELECTION_NEW
268 respectively.
269 (xg_get_file_name): Add parameter only_dir_p.
270 Call xg_get_file_with_chooser or xg_get_file_with_selection
271 depending on HAVE_GTK_FILE* and the value of use_old_gtk_file_dialog.
272 (xg_initialize): New DEFVAR_BOOL use_old_gtk_file_dialog.
273
274 * gtkutil.h (xg_get_file_name): Add parameter only_dir_p.
275
2a00cdb4
JD
276 * config.in: Rebuild (added HAVE_GTK_FILE_*).
277
f6749d5d
KS
2782004-11-01 Kim F. Storm <storm@cua.dk>
279
280 * process.c (connect_wait_mask, num_pending_connects): Only
281 declare and use them if NON_BLOCKING_CONNECT is defined.
bad49fc7 282 (init_process): Initialize them if NON_BLOCKING_CONNECT defined.
f6749d5d
KS
283 (IF_NON_BLOCKING_CONNECT): New helper macro.
284 (wait_reading_process_output): Only declare and use local vars
285 Connecting and check_connect when NON_BLOCKING_CONNECT is defined.
f6749d5d 286
1a99fe1a
JR
2872004-11-01 Andy Petrusenco <Igrek@star-sw.com> (tiny change)
288
289 * w32term.c (x_scroll_run): Delete region objects after use.
290
fcdb28b4
JD
2912004-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
292
495ef86b
JD
293 * xmenu.c: Add prototypes for forward function declarations.
294 (popup_get_selection): Remove parameter do_timers, remove call to
295 timer_check.
f6749d5d 296 (create_and_show_popup_menu, create_and_show_dialog): Remove
495ef86b
JD
297 parameter do_timers from call to popup_get_selection.
298
12e6566a
JD
299 * xdisp.c (update_tool_bar): Pass a copy of f->tool_bar_items to
300 tool_bar_items and assign the result to f->tool_bar_items if
301 not equal. Move BLOCK/UNBLOCK_INPUT from around call to
302 tool_bar_items to assignment of result.
303
fcdb28b4
JD
304 * atimer.c (alarm_signal_handler): Do not call set_alarm if
305 pending_atmers is non-zero.
306
1a1a0c4c
KS
3072004-10-31 Kim F. Storm <storm@cua.dk>
308
309 * dispnew.c (margin_glyphs_to_reserve): Don't use ncols_scale_factor.
310
a36f1680
JW
3112004-10-28 Will <will@glozer.net>
312
313 * macterm.c: allow user to assign key modifiers to the Mac Option
314 key via a 'mac-option-modifier' variable.
315
2d586478
SM
3162004-10-28 Stefan <monnier@iro.umontreal.ca>
317
318 * xselect.c (Vx_lost_selection_functions, Vx_sent_selection_functions):
319 Rename from Vx_lost_selection_hooks and Vx_sent_selection_hooks.
320 (x_handle_selection_request, x_handle_selection_clear)
321 (x_clear_frame_selections, syms_of_xselect): Adjust accordingly.
322
4f71c13f
RS
3232004-10-28 Richard M. Stallman <rms@gnu.org>
324
325 * w32fns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
326
327 * xfns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
328
068f3848
SM
3292004-10-27 Stefan Monnier <monnier@iro.umontreal.ca>
330
331 * syntax.c (scan_sexps_forward): Give precedence to a 2-char
332 comment-starter over a 1-char one.
333
4660a9e3
RS
3342004-10-27 Richard M. Stallman <rms@gnu.org>
335
336 * xdisp.c (get_next_display_element): In mode lines,
337 treat newline and tab like other control characters.
338
339 * editfns.c (Fmessage): Doc fix.
340
341 * indent.c (vmotion): When moving up, check the newline before.
342 Make prevline an int, not a Lisp_Object.
343
233f3db6
KS
3442004-10-27 Kim F. Storm <storm@cua.dk>
345
346 * editfns.c (Fformat): Allocate discarded table with SAFE_ALLOCA.
347 Only allocate info and discarded tables once.
348
349 * lisp.h (USE_SAFE_ALLOCA): Add and init sa_must_free integer.
350 (SAFE_ALLOCA, SAFE_ALLOCA_LISP): Increment it when malloc is used.
351 (SAFE_FREE): Test it to determine if we need to unwind to free.
352 Remove size arg. All users changed.
353 (SAFE_FREE_LISP) Remove. All users changed to use SAFE_FREE.
354
1442465d
JD
3552004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
356
357 * gtkutil.c: Put empty line between comment and function body.
068f3848
SM
358 (xg_destroy_widgets): Rename from remove_from_container.
359 Just destroy all widgets in list. Argument wcont removed.
1442465d
JD
360 (xg_update_menubar, xg_update_submenu): Call xg_destroy_widgets
361 instead of remove_from_container.
362 (xg_display_close, xg_create_tool_bar, update_frame_tool_bar)
363 (free_frame_tool_bar): Add comment.
364
365 * xfns.c (xic_create_xfontset): Check that FRAME_XIC_BASE_FONTNAME
366 is not NULL before strcmp.
367
c8636435
KS
3682004-10-26 Kim F. Storm <storm@cua.dk>
369
370 * callint.c (Fcall_interactively): Add 'U' code to get the
371 up-event discarded by a previous 'k' or 'K' argument.
372
5629f29b
DK
3732004-10-26 David Kastrup <dak@gnu.org>
374
375 * buffer.c (syms_of_buffer): Fix a few typos.
376
4f2f546e
JD
3772004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
378
379 * xsmfns.c: Put empty line between comment and function body.
380 Use two spaces before comment end.
381
fc1062f5
KH
3822004-10-25 Kenichi Handa <handa@m17n.org>
383
384 * fontset.c (fontset_pattern_regexp): Optimize for the case that
385 PATTERN is full XLFD.
386
be13f5e5
KH
3872004-10-24 Kenichi Handa <handa@m17n.org>
388
389 * regex.h (enum reg_errcode_t): New value REG_ERANGEX.
390
391 * regex.c (re_error_msgid): Add an entry for REG_ERANGEX.
392 (regex_compile): Return REG_ERANGEX if appropriate.
393
d0ee2ed3
KH
3942004-10-22 Kenichi Handa <handa@m17n.org>
395
396 * editfns.c (Ftranslate_region_internal): New function.
397 (syms_of_editfns): Defsubr it.
398
63ea8ea5
JD
3992004-10-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
400
401 * xfns.c (xic_create_xfontset): Initialize missing_list to NULL.
402
c27ed90a
JD
4032004-10-21 K\e,Aa\e(Broly L\e$,1 q\e(Brentey <lorentey@elte.hu>
404
068f3848
SM
405 * xterm.h (x_output): New member `xic_base_fontname'.
406 (FRAME_XIC_BASE_FONTNAME): New macro.
407 (xic_free_xfontset): Declare.
c27ed90a 408
068f3848
SM
409 * xfns.c (xic_create_xfontset): Share fontsets between frames
410 based on base_fontname.
411 (xic_free_xfontset): New function.
412 (free_frame_xic): Use it.
413 (xic_set_xfontset): Ditto.
c27ed90a 414
068f3848 415 * xterm.c (xim_destroy_callback): Ditto.
c27ed90a
JD
416
417
59508699
JR
4182004-10-20 B. Anyos <banyos@freemail.hu> (tiny change)
419
420 * w32term.c (x_draw_glyph_string): Use overline_color for overlines.
421
dede2792
JD
4222004-10-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
423
3aca2078
JD
424 * xterm.h (XSync): If USE_GTK, define XSync as process_all and then
425 XSync.
426
dede2792
JD
427 * emacs.c (my_heap_start, heap_bss_diff, MAX_HEAP_BSS_DIFF):
428 New variables and constant.
429 (main): Calculate heap_bss_diff. If we are dumping and the
430 heap_bss_diff is greater than MAX_HEAP_BSS_DIFF, set PER_LINUX32
431 and exec ourself again.
432 (Fdump_emacs): If heap_bss_diff is greater than MAX_HEAP_BSS_DIFF
433 print a warning.
434
435 * lastfile.c: Make my_endbss and my_endbss_static available on all
436 platforms.
437
438 * Makefile.in (RUN_TEMACS): Remove @SETARCH@.
439 * config.in (HAVE_PERSONALITY_LINUX32): Regenerate.
440
1dc5ba01
LT
4412004-10-19 Luc Teirlinck <teirllm@auburn.edu>
442
443 * data.c (Flocal_variable_if_set_p): Doc fix.
444
950090be
JR
4452004-10-19 Jason Rumney <jasonr@gnu.org>
446
447 * w32.c (init_environment): Set emacs_dir correctly when running
448 emacs from the build directory.
449
8550b998
RS
4502004-10-19 Richard M. Stallman <rms@gnu.org>
451
452 * editfns.c (Fdelete_and_extract_region):
453 If region is empty, return null string.
454
08dedea6
JD
4552004-10-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
456
1dc5ba01 457 * gtkutil.h (xg_update_scrollbar_pos): Remove arguments real_left
08dedea6 458 and canon_width.
068f3848 459 (xg_frame_cleared): Remove.
08dedea6 460
068f3848
SM
461 * gtkutil.c (xg_frame_cleared, xg_fixed_handle_expose)
462 (xg_find_top_left_in_fixed): Remove.
08dedea6
JD
463 (xg_create_scroll_bar): Put an event box widget between
464 the scroll bar widget and the edit widget.
465 (xg_show_scroll_bar): Show the parent widget (the event box).
466 (xg_remove_scroll_bar): Destroy parent (the event box) also.
467 (xg_update_scrollbar_pos): Remove arguments real_left and canon_width.
468 Move the parent (the event box) widget inside the fixed widget.
469 Move window clear to xterm.c.
470
068f3848 471 * gtkutil.h (xg_frame_cleared): Remove.
1dc5ba01 472
08dedea6 473 * xterm.c (x_clear_frame): Remove call to xg_frame_cleared
068f3848
SM
474 (x_scroll_bar_create, XTset_vertical_scroll_bar):
475 Remove arguments left and width to xg_update_scrollbar_pos.
08dedea6
JD
476 (XTset_vertical_scroll_bar): Do x_clear_area for USE_GTK also.
477
8550b998 4782004-10-19 Kenichi Handa <handa@m17n.org>
e3e55463
KS
479
480 * xdisp.c (display_mode_element): Fix display of wide chars.
e3e55463 481
84338890
JD
4822004-10-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
483
484 * gtkutil.c (xg_update_scrollbar_pos): Change XClearWindow to
485 gdk_window_clear and move gdk_window_process_all_updates after
486 clear so events are sent to the X server in correct order.
487
6e1b0d8c
KH
4882004-10-18 Kenichi Handa <handa@m17n.org>
489
490 * fontset.c (fs_load_font): Use fast_string_match_ignore_case for
491 comparing font names.
8550b998 492 (fs_query_fontset): Use fast_string_match for comparing fontset names.
6e1b0d8c
KH
493 (list_fontsets): Likewise.
494
495 * search.c (fast_string_match_ignore_case): New function.
496
497 * lisp.h (fast_string_match_ignore_case): Extern it.
498
345e75a8
KS
4992004-10-17 Kim F. Storm <storm@cua.dk>
500
501 * xdisp.c (overlay_arrow_at_row): Return overlay string rather
502 than bitmap if there is not left fringe.
503 (get_overlay_arrow_glyph_row): Also used on windows system.
504 (display_line): Display overlay string if no left fringe.
505
be13cbb7
JR
5062004-10-16 Jason Rumney <jasonr@gnu.org>
507
508 * w32fns.c (w32_font_match): Encode font name being matched.
509
c2e2ede7
RS
5102004-10-16 Richard M. Stallman <rms@gnu.org>
511
512 * window.c (Fspecial_display_p): Doc fix.
513
3584d95d
SM
5142004-10-15 Stefan <monnier@iro.umontreal.ca>
515
516 * doc.c (Fsubstitute_command_keys): Fix remap-handling.
517 Don't ignore menus, because where-is-internal already does it for us.
518
699a0392
KS
5192004-10-15 Kim F. Storm <storm@cua.dk>
520
b3c7a89b
KS
521 * xdisp.c (redisplay_window): Only update fringes and vertical
522 border on window frames.
699a0392 523
4e382b0f
AS
5242004-10-14 Andreas Schwab <schwab@suse.de>
525
526 * m/ia64.h (DATA_SEG_BITS): Don't define.
527
329a7be2
KS
5282004-10-14 Kim F. Storm <storm@cua.dk>
529
530 * xterm.h: Include Xutil.h after keysym.h to work around bug
dbb37962 531 in some X versions.
329a7be2 532
982241b1
SM
5332004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
534
535 * fns.c (map_char_table): Add missing gcpros.
536
9238467d
SM
5372004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
538
539 * keymap.c (get_keymap): An autoload form is not a keymap.
540
541 * textprop.c (syms_of_textprop): Make `syntax-table' nonsticky.
542
4440e3ca
KS
5432004-10-13 Kim F. Storm <storm@cua.dk>
544
7cfdabde
KS
545 * callproc.c (Fcall_process): Simplify handling of display arg.
546 Resume `display_on_the_fly' once a coding system is determined.
547
4440e3ca
KS
548 * xdisp.c (redisplay_preserve_echo_area): Fix last change.
549
1c8dec6a
KS
5502004-10-12 Kim F. Storm <storm@cua.dk>
551
552 * xdisp.c (redisplay_preserve_echo_area): Flush display in case
553 caller, such as call-process, is not going to poll for input.
554 (calc_line_height_property): Handle case where it->object is nil.
555
556 * xterm.c (x_redisplay_interface): Fix flush_display_optional.
557
170b174c
KH
5582004-10-12 Kenichi Handa <handa@m17n.org>
559
9238467d
SM
560 * xdisp.c (get_next_display_element):
561 If unibyte_display_via_language_environment is zero, display 8-bit
170b174c
KH
562 chars in octal in unibyte buffer.
563
b583964c
KS
5642004-10-12 Kim F. Storm <storm@cua.dk>
565
566 * doc.c (Fsubstitute_command_keys): Ignore remappings unless there
567 are no ordinary bindings.
568
29fabd8c
JD
5692004-10-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
570
9238467d 571 * xfns.c (syms_of_xfns): Defsubr x-file-dialog for GTK also.
29fabd8c 572
c3f4c690
ST
5732004-10-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
574
9238467d
SM
575 * macterm.c (x_raise_frame): Add BLOCK_INPUT around SelectWindow.
576 (x_lower_frame): Add BLOCK_INPUT around SendBehind.
c3f4c690 577 (make_mac_frame): Add BLOCK_INPUT around the making of a
9238467d
SM
578 terminal frame.
579 (mac_initialize): Add BLOCK_INPUT around carbon initialization.
580 * macgui.h (mktime): Use emacs_mktime.
c3f4c690
ST
581 * macfns.c (Fx_file_dialog): Add BLOCK_INPUT around more code.
582 Make a cancel file-open dialog be like C-g.
9238467d
SM
583 * mac.c (mktime): Use emacs_mktime.
584 (Fdo_applescript): Add BLOCK_INPUT around do_applescript.
585 (Fmac_paste_function): Add better error handling for carbon cut/paste.
c3f4c690 586
9688f9eb
KS
5872004-10-10 Kim F. Storm <storm@cua.dk>
588
589 * keyboard.c (timer_resume_idle): New function to resume idle
590 timer without resetting timers on the idle list.
591 (read_char): Use timer_resume_idle. Remove local var last_idle_start.
592 (timer_start_idle, timer_stop_idle): Declare static.
593 (read_key_sequence): Use timer_resume_idle instead of timer_start_idle.
594
595 * keyboard.h (timer_start_idle, timer_stop_idle): Remove prototypes.
596
f7f3a65f
ST
5972004-10-08 Steven Tamm <steventamm@mac.com>
598
9238467d 599 * config.in (HAVE_MALLOC_MALLOC_H): Regenerate.
f7f3a65f 600 * macterm.c (mac_check_for_quit_char): Remove warning for using
9238467d 601 NULL where 0 should be used.
f7f3a65f
ST
602 * unexmacosx.c: Use malloc/malloc.h on Tiger instead of
603 objc/malloc.h
9238467d 604 * mac.c: Include time.h for Tiger compatibility.
f7f3a65f 605
3c7d999a
KS
6062004-10-07 Kim F. Storm <storm@cua.dk>
607
608 * xdisp.c (redisplay_window): Fix flicker on vertical line between
609 windows. Update vertical line after drawing window fringes, but
610 only if actually drawing any bitmaps--or there is no fringe.
611
612 * xterm.c (x_update_window_end): Likewise.
613 * macterm.c (x_update_window_end): Likewise.
614 * w32term.c (x_update_window_end): Likewise.
615
616 * fringe.c (draw_window_fringes): Return value now indicates if
617 any fringe bitmaps were redrawn (or there are no fringes).
618
619 * dispextern.h (draw_window_fringes): Update prototype.
620
bf06c82f
ST
6212004-10-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
622
623 * macfns.c (mac_get_window_bounds): Add extern.
624 (x_real_positions): Use mac_get_window_bounds.
625
626 * macmenu.c (update_submenu_strings): Apply 2004-09-07 change for
627 xmenu.c (YAILOM).
3c7d999a 628
bf06c82f
ST
629 * macterm.c [!MAC_OSX]: Include Windows.h.
630 (front_emacs_window): Rename from mac_front_window. All uses
631 changed. Return the frontmost non-tooltip emacs window.
632 (mac_get_window_bounds): New function.
633 (x_calc_absolute_position): Use the difference of width and height
634 between the inner and outer window.
635 (x_set_offset): Specify window position by the coordinae of the
636 outer window. Adjust the position if the title bar is completely
637 outside the screen.
638 (app_is_suspended, app_sleep_time): Remove unused variables.
639 (do_app_resume, do_app_suspend): Remove their contents because
640 window-activate/deactivate events will do the job.
641 (do_zoom_window): Remove unused variables. Make compliant to the
642 standard way of zooming. Set f->left_pos and f->top_pos.
643 (XTread_socket): Don't use argument `expected'. Don't use
644 FrontWindow to determine the clicked window. Exclude unprocessed
645 mouseUp cases in the early stage. Add parentheses to fix operator
646 precedence.
647 (XTread_socket) [TARGET_API_MAC_CARBON]: Don't specify drag area.
648
649
4cbbf6b7 6502004-10-05 Jan Dj\e,Ad\e(Brv. <jan.h.d@swipnet.se>
d8b43276
JD
651
652 * config.in: Regenerate.
653
654 * Makefile.in (RUN_TEMACS): Check HAVE_RANDOM_HEAPSTART instead of
655 HAVE_EXECSHIELD.
656
b90ee8b5
JD
6572004-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
658
659 * xterm.c (x_find_modifier_meanings): Ignore any Super or Hyper for
660 a row if Alt or Meta has been found for that row. Also stop scanning
661 for Keysyms for that row.
662
904db1a2
KS
6632004-10-04 Kim F. Storm <storm@cua.dk>
664
0207b8ad
KS
665 * fringe.c (Ffringe_bitmaps_at_pos): Change return value from cons
666 to list. Include overlay arrow bitmap in return value.
667
25f7220c
KS
668 * xterm.c (XTset_vertical_scroll_bar): Improve handling of scroll
669 bars with fractional column width. If scroll bar separates two
670 windows, move it towards the window it belongs to. Only update
671 the padding area below the scroll bar widget when necessary,
672 i.e. when scroll bar widget is created, moved, or resized.
673
562020fe
KS
674 * xdisp.c (define_frame_cursor1): Do not change frame cursor
675 while tracking/dragging mouse.
676 (x_draw_vertical_border): Do not draw line if frame has scroll bars.
677
37e34af7
KS
678 * window.c (coordinates_in_window): Relax check for cursor
679 on vertial border between mode lines.
680 (Fset_window_fringes): Do not allow negative widths.
681 (Fset_window_scroll_bars): Likewise.
682
904db1a2
KS
683 * .gdbinit (pp): Shorthand for p ARG + pr.
684 (ff): New command: flush frame updates (X only).
685
38fe4f64
MA
6862004-10-03 Michael Albinus <michael.albinus@gmx.de>
687
688 * fileio.c (auto_save_1) Call Ffile_modes for remote files.
689
9de36315
KH
6902004-09-30 Kenichi Handa <handa@m17n.org>
691
07c381ad 692 * process.c (send_process): Free composition data.
9de36315 693
07c381ad 694 * fileio.c (Finsert_file_contents): Free composition data.
9de36315
KH
695
696 * coding.c (code_convert_region): Don't skip ASCIIs if there are
07c381ad
KH
697 compositions to encode.
698 (encode_coding_string): Likewise. Free composition data.
699
b6189c3b 7002004-09-30 Florian Weimer <fw@deneb.enyo.de>
07c381ad
KH
701
702 * coding.c (code_convert_region): Free composition data.
9de36315 703
f2a54fbc
KS
7042004-09-29 Kim F. Storm <storm@cua.dk>
705
dc5d6435
KS
706 * fringe.c: Remove limit on number of bitmaps.
707 (fringe_bitmaps, fringe_faces): Change to pointers.
708 (max_fringe_bitmaps): New var.
709 (Fdefine_fringe_bitmap): Expand fringe_bitmaps and fringe_faces.
710 (init_fringe): Allocate fringe_bitmaps and fringe_faces.
711
712 * dispextern.h (FRINGE_ID_BITS): Increase to 16 bits (64K bitmaps).
713 (struct glyph_row): Reorder fringe_bitmap related fields.
714 (struct it): Likewise.
715
716 * w32term.c (fringe_bmp): Change to pointer.
717 (max_fringe_bmp): New var.
718 (w32_define_fringe_bitmap): Expand fringe_bmp.
719 (w32_draw_fringe_bitmap): Check max_fringe_bmp.
720 (w32_destroy_fringe_bitmap): Likewise.
721
7222004-09-29 Kim F. Storm <storm@cua.dk>
723
724 * fringe.c: Simplify last change.
f2a54fbc
KS
725 (lookup_fringe_bitmap): New function.
726 (valid_fringe_bitmap_p, resolve_fringe_bitmap): Remove.
727 (Fdestroy_fringe_bitmap): Use lookup_fringe_bitmap.
728 Keep standard bitmaps in Vfringe_bitmaps.
729 (Fdefine_fringe_bitmap): Use lookup_fringe_bitmap.
730 (Fset_fringe_bitmap_face): Likewise.
731
732 * dispextern.h (lookup_fringe_bitmap): Add prototype.
733 (valid_fringe_bitmap_p): Remove prototype.
734
735 * xdisp.c (handle_single_display_prop): Use lookup_fringe_bitmap.
736
841a8bca
KS
7372004-09-29 Kim F. Storm <storm@cua.dk>
738
1f2da365
KS
739 * fringe.c (destroy_fringe_bitmap, init_fringe_bitmap)
740 (w32_init_fringe, w32_reset_fringes): Fix bootstrap (NULL rif).
741
841a8bca
KS
742 * dispextern.h (valid_fringe_bitmap_p): Fix prototype.
743
744 * fringe.c (Vfringe_bitmaps): New variable.
745 (syms_of_fringe): DEFVAR_LISP it.
746 (valid_fringe_bitmap_p): Rename from valid_fringe_bitmap_id_p.
747 Change arg to Lisp_Object and fail if not an integer.
748 (get_fringe_bitmap_name, resolve_fringe_bitmap)
749 (destroy_fringe_bitmap): New functions.
9238467d
SM
750 (Fdestroy_fringe_bitmap): Change arg to bitmap symbol.
751 Use destroy_fringe_bitmap. Remove symbol from Vfringe_bitmaps and
841a8bca
KS
752 clear its fringe property.
753 (init_fringe_bitmap): Use destroy_fringe_bitmap instead of
754 Fdestroy_fringe_bitmap.
755 (Fdefine_fringe_bitmap): Add BITMAP arg specifying new or existing
756 bitmap symbol; remove WHICH arg. Add symbol to Vfringe_bitmaps
757 and set fringe property. Signal error if no free slots.
758 (Fset_fringe_bitmap_face): Change arg to bitmap symbol.
759 (Ffringe_bitmaps_at_pos): Return bitmap symbols instead of numbers.
760
761 * xdisp.c (handle_single_display_prop): Fringe bitmaps are now
762 symbols with a fringe property.
763
4d965590
KS
7642004-09-27 Kim F. Storm <storm@cua.dk>
765
766 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>:
767 Doc fix. Format may now be a symbol or alist, not a cons.
768
769 * fringe.c (update_window_fringes): Handle new formats of
770 indicate-buffer-boundaries (symbol or alist). No longer
771 allow a simple cons.
772 (Ffringe_bitmaps_at_pos): Use nil value for no bitmap.
773
e888c2b3
JD
7742004-09-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
775
9238467d 776 * config.in: Rebuild.
e888c2b3 777
83f1cb94
JD
7782004-09-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
779
780 * config.in: Rebuild.
781
dd3b1d60 782 * Makefile.in: Run setarch i386 ./temacs if exec-shield is present.
83f1cb94 783
2c51754c
SM
7842004-09-18 Stefan Monnier <monnier@iro.umontreal.ca>
785
786 * xterm.c (x_term_init): Work around a bug in some X servers.
787
3df5f8aa
RS
7882004-09-18 Richard M. Stallman <rms@gnu.org>
789
557ca2c1
RS
790 * buffer.c (syms_of_buffer) <default-major-mode>: Doc fix.
791
3df5f8aa
RS
792 * xdisp.c (try_window_reusing_current_matrix):
793 Handle the case where we reach the old displayed text,
794 out of sync with the old line boundary.
795
9238467d 7962004-09-14 Stefan Monnier <monnier@iro.umontreal.ca>
4b70e2c9
SM
797
798 * fileio.c (Finsert_file_contents): Fix case of replacement in a
799 narrowed buffer.
800
bfa02563
KS
8012004-09-14 Kim F. Storm <storm@cua.dk>
802
a25fe164
KS
803 * puresize.h (PURESIZE_RATIO): Define based on BITS_PER_EMACS_INT.
804
bfa02563
KS
805 * xfaces.c (Qface_no_inherit): New var.
806 (syms_of_xfaces): Intern and staticpro it.
807 (Finternal_make_lisp_face, Finternal_set_lisp_face_attribute)
808 (Finternal_copy_lisp_face, update_face_from_frame_parameter):
809 Don't increment face_change_count when face has non-nil
810 face-no-inherit property.
811
126f9c02
SM
8122004-09-13 Stefan Monnier <monnier@iro.umontreal.ca>
813
892a8eb5
SM
814 * bytecode.c (BYTE_CODE_QUIT): Add missing AFTER_POTENTIAL_GC.
815 (Fbyte_code): Remove dead code after `wrong_type_argument'.
816
126f9c02 817 * alloc.c (Fgarbage_collect): Mark keyboards, gtk data, and specpdl
9238467d 818 before doing the mark_stack_check_gcpros since they're not on the stack.
126f9c02 819
c0ad3b38
KS
8202004-09-12 Kim F. Storm <storm@cua.dk>
821
822 * editfns.c (Fformat): Handle format strings with multiple text
823 properties. Reverse text property list from the format string,
824 so the positions are in increasing order.
825
844fc085
JD
8262004-09-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
827
828 * xselect.c (x_reply_selection_request): XSync and UNBLOCK before
829 x_uncatch_errors so that possible protocol errors are delivered.
830
b106731c
EZ
8312004-09-10 Eli Zaretskii <eliz@gnu.org>
832
21065c92
EZ
833 * Makefile.in (msdos.o): Depend on buffer.h, commands.h, and
834 blockinput.h.
835 (dosfns.o): Depend on blockinput.h, window.h, dispextern.h,
836 charset.h, and coding.h
9238467d 837 (w16select.o): Depend on buffer.h, charset.h, coding.h, and composite.h.
21065c92
EZ
838 (term.o): Depend on window.h and keymap.h.
839 (abbrev.o): Depend on syntax.h.
840 (callint.o): Depend on keymap.h.
841 (casefiddle.o): Depend on charset.h and keymap.h.
842 (category.o): Depend on keymap.h.
843 (coding.o): Depend on dispextern.h.
844 (cmds.o): Depend on keyboard.h and keymap.h.
845 (dispnew.o): Depend on indent.h and intervals.h.
846 (doc.o): Depend on keymap.h.
847 (editfns.o): Depend on frame.h.
848 (emacs.o): Depend on dispextern.h.
849 (fileio.o): Don't depend on ccl.h.
850 (filelock.o): Depend on charset.h and coding.h.
851 (frame.o): Depend on w32term.h and macterm.h.
852 (insdel.o): Depend on region-cache.h.
853 (keyboard.o): Depend on keymap.h, w32term.h, and macterm.h.
854 (minibuf.o): Depend on $(INTERVALS_SRC) and keymap.h.
855 (search.o): Depend on $(INTERVALS_SRC).
856 (syntax.o): Depend on keymap.h, regex.h, and $(INTERVALS_SRC).
857 (window.o): Depend on keymap.h, blockinput.h, $(INTERVALS_SRC),
858 xterm.h, w32term.h, and macterm.h.
859 (xdisp.o): Depend on keyboard.h, $(INTERVALS_SRC), xterm.h,
860 w32term.h, and macterm.h.
861 (xfaces.o): Depend on keyboard.h, $(INTERVALS_SRC),
862 region-cache.h, xterm.h, w32term.h, and macterm.h.
863 (bytecode.o): Depend on dispextern.h, frame.h, and xterm.h.
864 (data.o): Depend on frame.h.
865 (fns.o): Depend on keymap.h, xterm.h, and blockinput.h.
866 (print.o): Depend on termchar.h and $(INTERVALS_SRC).
867 (lread.o): Depend on $(INTERVALS_SRC), termhooks.h, and coding.h.
868 (intervals.o): Depend on keymap.h.
869
9238467d
SM
870 * msdos.c (msdos_set_cursor_shape, IT_display_cursor):
871 Add debugging print-out to termscript.
b106731c 872
64b7122d
RS
8732004-09-09 Richard M. Stallman <rms@gnu.org>
874
875 * xdisp.c (decode_mode_spec): Use current buffer for most purposes.
876
5670531e
RS
8772004-09-08 Richard M. Stallman <rms@gnu.org>
878
6cb4a892
RS
879 * window.c (Fset_window_buffer): Doc fix.
880
5670531e
RS
881 * xdisp.c (Fformat_mode_line): New arg BUFFER says which buffer to use.
882
7e388eb7
JL
8832004-09-08 Dan Nicolaescu <dann@ics.uci.edu>
884
885 * minibuf.c (history_delete_duplicates): New variable.
886 (read_minibuf): Use it.
887 (syms_of_minibuf): Create the corresponding lisp variable.
888
370e3587
KS
8892004-09-08 Kim F. Storm <storm@cua.dk>
890
891 * xdisp.c (set_cursor_from_row): Also look at 'cursor' property in
892 overlay just before point.
893
f844ba4e
LT
8942004-09-07 Luc Teirlinck <teirllm@auburn.edu>
895
896 * buffer.h (struct buffer): Add auto_save_file_format field.
9238467d
SM
897 * buffer.c (reset_buffer, init_buffer_once):
898 Handle auto_save_file_format field.
f844ba4e
LT
899 (syms_of_buffer): Add DEFVAR_PER_BUFFER for
900 `buffer-auto-save-file-format'.
f844ba4e
LT
901 * fileio.c: Delete declaration for removed Vauto_save_file_format.
902 (build_annotations): Adapt to replacement of
903 `auto-save-file-format' with the new buffer-local variable
904 `buffer-auto-save-file-format'.
905 (syms_of_fileio): Delete DEFVAR_LISP for auto-save-file-format.
906
f0f90717
JR
9072004-09-07 Jason Rumney <jasonr@gnu.org>
908
909 * w32term.h (AppendMenuW_Proc): Move declaration from w32menu.c.
910
9238467d
SM
911 * w32fns.c (w32_wnd_proc) [WM_MEASUREITEM, WM_DRAWITEM]:
912 Handle Unicode menu titles.
f0f90717 913
4e14f66c
KS
9142004-09-07 Kim F. Storm <storm@cua.dk>
915
916 * xdisp.c (set_cursor_from_row): Fix last change. Only use 'cursor'
917 property from text property or overlay strings at point.
918
9238467d 9192004-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
1806714a
SM
920
921 * xmenu.c (update_submenu_strings): YAILOM.
922 (set_frame_menubar): Make sure last_i is initialized.
923
1f06d367
JR
9242004-09-03 Jason Rumney <jasonr@gnu.org>
925
1806714a 926 * w32menu.c (_widget_value): Add lname and lkey.
1f06d367
JR
927 (digest_single_submenu): Set lname and lkey in widget_value
928 instead of name and key.
929 (update_submenu_strings): New function.
930 (set_frame_menubar): Remove call to inhibit_garbage_collection,
931 call update_submenu_strings.
932
933 * w32menu.c (globals_of_w32menu): Check for Unicode API.
934 (digest_single_submenu, w32_menu_show): Encode menu strings as
935 UTF-8 if Unicode API is available.
936 (utf8to16): New function.
937 (add_menu_item): Use it when calling Unicode API.
1806714a 938
46540080
KS
9392004-09-03 Kim F. Storm <storm@cua.dk>
940
941 * xdisp.c (set_cursor_from_row): Look for non-nil `cursor' property
942 in overlay or text-property strings; set cursor on corresponding
943 glyph rather than at end of the string.
944
9277ba61 9452004-09-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
46540080 946
9277ba61 947 * macfns.c (x_real_positions): Save the current window port and
1806714a
SM
948 set a new one before obtaining the global coordinate.
949 Use FRAME_MAC_WINDOW.
950 (x_set_name, x_set_title): Encode title to UTF8.
951 Use SetWindowTitleWithCFString.
9277ba61
ST
952 (Fx_server_version): Get correct OS version.
953
1806714a
SM
954 * macmenu.c (add_menu_item): Remove unused variable `i'.
955 Don't let separator items destroy refence constants of other menu items.
9277ba61
ST
956
957 * macterm.c (x_update_end): Move SetPortWindowPort to inside
958 BLOCK_INPUT.
959 (x_set_offset): Use FRAME_MAC_WINDOW.
960
961 * xdisp.c (note_mouse_highlight): Set the mouse pointer shape to
962 nontext_cursor if it is on a scroll bar.
963
964 * s/darwin.h (LIBS_CARBON): New define to specify libraries for
965 Carbon support.
1806714a
SM
966 (LD_SWITCH_SYSTEM_TEMACS): Don't link with unused libstdc++.
967 Use LIBS_CARBON.
9277ba61 968
b10daec7
JD
9692004-09-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
970
971 * xfns.c (x_set_name_internal): New function. Check if we shall call
972 xfree before ENCODE_UTF_8.
973 (x_set_name, x_set_title): Call x_set_name_internal.
974
f7e22385
JR
9752004-08-31 NAKAMURA Toshikazu <nr-tkz@nifty.com> (tiny change)
976
977 * w32fns.c (w32_load_font): If a BDF font is already loaded, do not
978 reload it.
979
2bf436c3
JD
9802004-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
981
1806714a 982 * macmenu.c (_widget_value): Add lname and lkey.
16ceacc2
JD
983 (single_submenu): Set lname and lkey in widget_value
984 instead of name and key.
985 (update_submenu_strings): New function.
986 (set_frame_menubar): Remove call to inhibit_garbage_collection,
987 call update_submenu_strings.
988
2bf436c3
JD
989 * xmenu.c (digest_single_submenu): Set lname and lkey in widget_value
990 instead of name and key.
991 (update_submenu_strings): New function.
992 (set_frame_menubar): Remove call to inhibit_garbage_collection,
ec867797 993 call update_submenu_strings.
2bf436c3
JD
994
995 * gtkutil.h (_widget_value): Added lname and lkey.
996
11715f92
ST
9972004-08-30 Steven Tamm <steventamm@mac.com>
998
999 * macmenu.c (mac_menu_show): Remove shadowing of menu variable
1000 by using different names for inner loop variables.
1001
5500be54
JD
10022004-08-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1003
059cd329
JD
1004 * xmenu.c (set_frame_menubar): Reintroduce inhibit_garbage_collection
1005 from 2002-07-15T00:01:34Z!raeburn@raeburn.org so that strings from ENCODE_UTF_8 isn't GC:ed before used.
1006
5500be54
JD
1007 * gtkutil.c (xg_create_frame_widgets): Compensate for tool bar when
1008 tool bar items is 0.
1009
383418e5
ST
10102004-08-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1011
1012 * macmenu.c (ENCODE_MENU_STRING): Added to handle multibyte
1013 strings in menu items.
1014 (single_submenu): Use ENCODE_MENU_STRING
1015 (mac_menu_show): Use ENCODE_MENU_STRING. Reset grabbed because
1016 button release isn't passed to event loop
1017 (add_menu_item): Use SetMenuItemWithCFString
1018
6eb3ee72
ST
10192004-08-26 Steven Tamm <steventamm@mac.com>
1020
1021 * fileio.c (Fread_file_name): Call x_file_dialog on carbon on
1022 tool-bar/menu click
1023 * macfns.c (Fx_file_dialog): Implemented using NavServices
1024
10b43ac3
JD
10252004-08-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1026
2728b5d0
JD
1027 * xterm.c (x_catch_errors_unwind): Do not XSync if display has closed.
1028
10b43ac3
JD
1029 * xfns.c (x_window_to_frame, x_any_window_to_frame)
1030 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
1031 (x_top_window_to_frame): Return 0 if wdesc is None.
1032
2ee3b79e
RS
10332004-08-22 Richard M. Stallman <rms@gnu.org>
1034
1035 * process.c (process_send_signal) [SIGNALS_VIA_CHARACTERS,
1036 HAVE_TERMIOS]: If there's no char for this signal, drop through
1037 and use system calls.
1038
1039 * bytecode.c (Fbyte_code) <unwind-protect>: Cannot GC.
1040
9a1ba2ea
KS
10412004-08-20 Kim F. Storm <storm@cua.dk>
1042
1043 * process.c (wait_reading_process_output): Rename from
1044 wait_reading_process_input. All uses changed.
1045 (wait_reading_process_output_1): Rename from
1046 wait_reading_process_input_1. All uses changed.
1047
1048 * dispnew.c (Fsleep_for): Remove obsolete code.
1049
295f3b30
KH
10502004-08-20 Kenichi Handa <handa@m17n.org>
1051
1052 * syntax.c (skip_chars): Fix for unibyte case.
1053
27615979
SM
10542004-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
1055
1056 * syntax.c (char_quoted): Mixup byte/char pos.
1057 (back_comment): Fixup globals in all cases.
1058
00267f94
JD
10592004-08-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1060
1061 * xfns.c (x_set_name, x_set_title): Encode title to UTF8 before
1062 passing it to gtk_window_set_title.
1063
2439909e
KS
10642004-08-19 Kim F. Storm <storm@cua.dk>
1065
6ba0f14c
KS
1066 * process.c (wait_reading_process_input): Clean up.
1067 Add wait_for_cell, wait_proc, and just_wait_proc args
1068 to avoid overloading `read_kbd' and `do_display' args.
1069 Change read_kbd arg to int. All callers changed.
1070
2439909e
KS
1071 * process.c (process_send_signal): Use CDISABLE.
1072
1073 * sysdep.c (child_setup_tty, init_sys_modes): Use CDISABLE.
1074
101c421e
KS
10752004-08-18 Kim F. Storm <storm@cua.dk>
1076
1077 * process.c (Faccept_process_output): Add arg JUST-THIS-ONE;
1078 forward to wait_reading_process_input via DO_DISPLAY arg.
1079 (wait_reading_process_input): If DO_DISPLAY < 0 for a process
1080 object, only process output from that process; also inhibit
1081 running timers if DO_DISPLAY==-2.
1082
c438dc33
KS
10832004-08-17 Kim F. Storm <storm@cua.dk>
1084
1085 * process.c (process_send_signal): Fix last change--use
1086 _POSIX_VDISABLE instead of CVDISABLE when available.
1087
8afc13c6
RS
10882004-08-16 Richard M. Stallman <rms@gnu.org>
1089
1090 * sysdep.c (child_setup_tty) [SIGNALS_VIA_CHARACTERS]:
1091 Set VQUIT and VINTR chars to the standard ones if they are unset.
1092 [AIX]: Don't do that here. And don't force VINTR to standard
1093 when SIGNALS_VIA_CHARACTERS.
1094
c438dc33 1095 * process.c (process_send_signal)
8afc13c6
RS
1096 [SIGNALS_VIA_CHARACTERS, HAVE_TERMIOS]: Clean up.
1097 Do nothing if the character is CVDISABLE.
1098
1099 * xfaces.c (merge_face_ref): Specifying `unspecified' is a no-op.
1100
c438dc33 1101 * intervals.c (move_if_not_intangible):
8afc13c6
RS
1102 Force POSITION to be between BEGV and ZV.
1103
6dad1714
JPW
11042004-08-14 John Paul Wallington <jpw@gnu.org>
1105
1106 * buffer.c (Frestore_buffer_modified_p): Doc fix.
1107
1108 * fileio.c (Fread_file_name): Doc fix.
1109
1110 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
1111
2bd77330
LT
11122004-08-09 Luc Teirlinck <teirllm@auburn.edu>
1113
1114 * keymap.c (Fmake_keymap, Fmap_keymap, Fwhere_is_internal): Doc fixes.
1115
c90e7e43
LT
11162004-08-08 Luc Teirlinck <teirllm@auburn.edu>
1117
1118 * keyboard.c: Declare Qdisabled_command_function instead of
8392e138 1119 Qdisabled_command_hook.
c90e7e43 1120 (Fcommand_execute): Use Qdisabled_command_function instead of
8392e138 1121 Qdisabled_command_hook.
c90e7e43
LT
1122 (syms_of_keyboard): Ditto.
1123
81909a1a
LT
11242004-08-07 Luc Teirlinck <teirllm@auburn.edu>
1125
1126 * keymap.c (Flocal_key_binding, Fglobal_key_binding)
1127 (syms_of_keymap) <key-translation-map>: Doc fixes.
1128
0cedd530
SM
11292004-08-07 Stefan Monnier <monnier@iro.umontreal.ca>
1130
1725a7c9
SM
1131 * window.c (window_list_1): YAILOM.
1132
0cedd530
SM
1133 * fileio.c (make_temp_name): Handle multibyte prefixes.
1134
2515a131
LT
11352004-08-06 Luc Teirlinck <teirllm@auburn.edu>
1136
1137 * keyboard.c (syms_of_keyboard) <overriding-terminal-local-map>:
1138 Doc fix.
1139
c8b20fb7
KH
11402004-08-03 Kenichi Handa <handa@m17n.org>
1141
1142 * coding.c (decode_coding_string): Adjust coding->consumed, and
1143 etc. with shrinked_bytes.
1144
fb8b092b
KS
11452004-08-03 Kim F. Storm <storm@cua.dk>
1146
1147 * indent.c (compute_motion): Fix check for full width window
1148 in non-window case. Do not count left truncation glyph on
1149 window systems.
1150
df133612
LT
11512004-08-02 Luc Teirlinck <teirllm@auburn.edu>
1152
1153 * data.c (Finteractive_form): Doc fix.
1154
0f7a93c1
KS
11552004-08-02 Kim F. Storm <storm@cua.dk>
1156
1157 * indent.c (compute_motion): Use actual window width if WIDTH is -1,
1158 properly accounting for continuation glyph on non-window systems.
1159 (Fcompute_motion): Use actual window width if WIDTH is nil, and
1160 actual window width/height if TOPOS is nil, properly accounting for
1161 continuation glyphs on non-window systems, and optional header lines.
1162 (vmotion): Let compute_motion calculate actual window width.
1163
1164 * window.c (window_scroll_line_based): Let compute_motion
1165 calculate actual window width.
1166
f491e1ed
KS
11672004-08-02 Kim F. Storm <storm@cua.dk>
1168
1169 * process.c (read_process_output): Use whole read buffer.
1170 Don't trigger adaptive read buffering on errors.
1171
83f64226
LT
11722004-07-31 Luc Teirlinck <teirllm@auburn.edu>
1173
1174 * keymap.c (Fset_keymap_parent, Fdefine_prefix_command): Doc fixes.
1175
1176 * keyboard.c (syms_of_keyboard) <disable-point-adjustment>: Doc fix.
1177
1178 * callint.c (Fcall_interactively): Doc fix.
1179
8afc13c6
RS
11802004-07-30 Richard M. Stallman <rms@gnu.org>
1181
1182 * abbrev.c (Fexpand_abbrev): Undo previous change.
1183
7c111482
KS
11842004-07-30 Kim F. Storm <storm@cua.dk>
1185
1186 * editfns.c (Fformat): Allocate extra (dummy) element in info.
1187
ee945d08
LT
11882004-07-28 Luc Teirlinck <teirllm@auburn.edu>
1189
1190 * eval.c (Fdefvar, Fdefconst): Doc fixes.
1191
3f911c94
KS
11922004-07-27 Kim F. Storm <storm@cua.dk>
1193
1194 * xdisp.c (move_it_in_display_line_to): Check BUFFER_POS_REACHED_P after
1195 we have ensured that the glyph fits on the current line (or returned
1196 MOVE_LINE_CONTINUED otherwise).
1197
f29ff8c7
KS
11982004-07-26 Kim F. Storm <storm@cua.dk>
1199
1200 * xdisp.c (move_it_in_display_line_to): If overflow-newline-into-fringe
1201 is enabled, return MOVE_LINE_CONTINUED rather than MOVE_POS_MATCH_OR_ZV
1202 if target position is at end of display line but char is not a newline.
1203
81159bb9
RS
12042004-07-25 Richard M. Stallman <rms@gnu.org>
1205
ab431b61
RS
1206 * window.c (coordinates_in_window): Return ON_SCROLL_BAR
1207 instead of ON_VERTICAL_BORDER, when on scroll bar.
1208 (Fcoordinates_in_window_p): Handle ON_SCROLL_BAR--return nil.
1209
1210 * dispextern.h (enum window_part): Add ON_SCROLL_BAR.
1211
f29ff8c7 1212 * window.c (Fcoordinates_in_window_p):
81159bb9
RS
1213 Take account of FRAME_INTERNAL_BORDER_WIDTH.
1214
1215 * alloc.c (check_cons_list): New function (contents commented out).
1216
fc820cc5
LT
12172004-07-24 Luc Teirlinck <teirllm@auburn.edu>
1218
1219 * xfaces.c (Fcolor_supported_p): Doc fix.
1220
1221 * frame.c (Fselect_frame, Fset_frame_selected_window)
1222 (Fframe_visible_p, Fraise_frame): Doc fixes.
1223
289978b5
LT
12242004-07-24 Richard M. Stallman <rms@gnu.org>
1225
7630911d
RS
1226 * keyboard.h (not_single_kboard_state): Declared.
1227
1228 * fileio.c (Fwrite_region): Doc fix.
1229
1230 * window.c (Fwindow_at): Take account of FRAME_INTERNAL_BORDER_WIDTH.
1231
1232 * abbrev.c (Fexpand_abbrev): Run Qpre_abbrev_expand_hook
1233 only when a real abbrev is present.
1234
289978b5
LT
1235 * xfns.c (x_icon_verify): New function.
1236 (Fx_create_frame): Use it.
1237
63cc10ae
KS
12382004-07-22 Barry Fishman <barry_fishman@att.net> (tiny change)
1239
1240 * s/gnu-linux.h: Use GC_MARK_STACK if __amd64__ is defined.
1241
36f826d4
KS
12422004-07-21 Kim F. Storm <storm@cua.dk>
1243
1244 * window.h (struct glyph_matrix): New members nrows_scale_factor
1245 and ncols_scale_factor.
1246
1247 * window.c (make_window): Initialize nrows_scale_factor and
1248 ncols_scale_factor members.
1249
1250 * dispnew.c (margin_glyphs_to_reserve): Apply ncols_scale_factor.
1251 (allocate_matrices_for_frame_redisplay): Fix left/right margin mix-up.
1252 (required_matrix_height): Apply nrows_scale_factor.
1253 (required_matrix_width): Apply ncols_scale_factor.
1254
1255 * xdisp.c (display_line): Increment nrows_scale_factor and set
1256 fonts_changed_p if past last allocated row.
1257 (append_glyph, append_composite_glyph, produce_image_glyph)
1258 (append_stretch_glyph): Increment ncols_scale_factor and set
1259 fonts_changed_p if current area is full.
1260
5fc1c546
JD
12612004-07-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1262
1263 * widget.c (EmacsFrameDestroy): Don't abort if normal_gc is 0.
1264
cb7516e5
LT
12652004-07-19 Luc Teirlinck <teirllm@auburn.edu>
1266
1267 * window.c (Fpos_visible_in_window_p, Fset_window_hscroll)
1268 (Fwindow_inside_pixel_edges, Fwindow_end, Fset_window_point)
1269 (Fset_window_start, Fscroll_up, Fscroll_down)
1270 (Fother_window_for_scrolling, Fscroll_other_window)
1271 (Fsave_window_excursion, Fset_window_vscroll)
1272 (syms_of_window) <window-size-fixed>: Doc fixes.
1273
b6189c3b 12742004-07-19 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
dda741ec
JR
1275
1276 * w32fns.c (Fx_file_dialog): Use ENCODE_FILE instead of
1277 ENCODE_SYSTEM for filenames.
1278
bfcf6608
ST
12792004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1280
1281 * mac.c (sys_select): Block input around call to
1282 ReceiveNextEvent to prevent breakage. Correctly handle
1283 blocking on event queue only by calling ReceiveNextEvent
1284 instead of select (since GUI events aren't on an fd).
1285 (sys_read): Remove function
1286 * sysdep.c: Remove redefine of read to sys_read if HAVE_CARBON
1287
e082ac9d
ST
12882004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1289
1290 * mac.c (sys_select): Redo sys_select to use alarm-based
cb7516e5 1291 polling instead of 1 sec timeouts (like solaris).
e082ac9d 1292
cb7516e5 1293 * macterm.c (x_make_frame_visible): Comment in polling on
e082ac9d
ST
1294 frame creation.
1295
1296 * keyboard.c: Undef SIGIO on Carbon
1297
1298 * atimer.c (alarm_signal_handler): Call alarm handlers after
1299 scheduling.
1300
1301 * eval.c (Feval): Remove quit_char test
1302
1303 * process.c (wait_reading_process_input): Remove clearing
1304 stdin for select call on process input.
1305
4b9da0fb
LT
13062004-07-18 Luc Teirlinck <teirllm@auburn.edu>
1307
1204e81c
LT
1308 * xdisp.c (syms_of_xdisp) <window-scroll-functions>: Correct
1309 capitalization error in docstring.
4b9da0fb 1310
26503ad2
JB
13112004-07-17 Juanma Barranquero <lektu@terra.es>
1312
1313 * keyboard.c (not_single_kboard_state): Do nothing unless
1314 MULTI_KBOARD is defined.
1315
3751eb00
RS
13162004-07-17 Richard M. Stallman <rms@gnu.org>
1317
1318 * window.c (coordinates_in_window): Inside the window but outside
1319 its box to the L or R, return ON_VERTICAL_BORDER.
1320 (window_list_1): Rotate the list to start with WINDOW.
1321
1322 * print.c (print_preprocess): Test for print_depth at limit
1323 before entering in being_printed.
1324
1325 * keyboard.c (not_single_kboard_state): New function.
1326 (stuff_buffered_input): Now no-op only if no SIGTSTP.
1327
1328 * frame.c (Fdelete_frame): If we're in single_bboard_state on
1329 this kboard, and we delete its last frame, go to any_kboard_state.
1330
1331 * buffer.c (syms_of_buffer) <transient-mark-mode>: Doc fix.
1332
b6189c3b 13332004-07-15 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
62eb6ca9
JR
1334
1335 * w32fns.c (Fx_file_dialog): Encode strings in system coding
1336 system before passing them to OS functions for display.
1337
0f6af254
DK
13382004-07-15 David Kastrup <dak@gnu.org>
1339
f9253326
KS
1340 * search.c (syms_of_search): Staticpro `saved_last_thing_searched'.
1341 Apparently fixes an abort condition.
0f6af254 1342
386c8f42
LT
13432004-07-14 Luc Teirlinck <teirllm@auburn.edu>
1344
1345 * fileio.c (Fvisited_file_modtime): Return a list of two integers,
1346 instead of a cons.
1347
366511da
MB
13482004-07-14 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
1349
1350 * keyboard.c (echo_dash): Do nothing if there already is a dash
1351 at the end of the echo string.
1352
f85409d3
KS
13532004-07-12 Kim F. Storm <storm@cua.dk>
1354
1355 * alloc.c (mark_object): Only look at Lisp_Misc_Save_Value
1356 if GC_MARK_STACK.
1357
0ba2e87b
LT
13582004-07-10 Luc Teirlinck <teirllm@auburn.edu>
1359
da38045d
LT
1360 * buffer.c (Fswitch_to_buffer, Fpop_to_buffer): Doc fixes.
1361
0ba2e87b
LT
1362 * window.c (Fwindow_buffer, Fother_window, Fget_lru_window)
1363 (Fget_largest_window, Fget_buffer_window, Fdelete_windows_on)
1364 (Freplace_buffer_in_windows, Fset_window_buffer)
1365 (Fselect-window, Fdisplay-buffer, Fsplit_window): Doc fixes.
1366 (syms_of_window): Expand docstring of `display-buffer-function'.
1367
5668fbb8
LT
13682004-07-09 Luc Teirlinck <teirllm@auburn.edu>
1369
1370 * editfns.c (Ffloat_time, Fformat_time_string, Fdecode_time)
1371 (Fcurrent_time_string, Fcurrent_time_zone): Mention in docstrings
1372 that time values of the type (HIGH . LOW) are considered obsolete.
1373
a085bf9d
LT
13742004-07-06 Luc Teirlinck <teirllm@auburn.edu>
1375
669de2fb
LT
1376 * keyboard.c (syms_of_keyboard): Fix `keyboard-translate-table'
1377 docstring.
1378
bac66325 1379 * fns.c (Fclear_string): Declare `len' before call to CHECK_STRING.
a085bf9d 1380
8e975df9
JPW
13812004-07-06 John Paul Wallington <jpw@gnu.org>
1382
1383 * eval.c (Fdefmacro): Signal an error if NAME is not a symbol.
1384
fa164e6a
JPW
1385 * fns.c (Fclear_string): Signal an error if STRING is not a string.
1386
2bac9bb1
JD
13872004-07-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1388
1389 * macterm.c (mac_initialize_display_info): Use CGGetActiveDisplayList
1390 instead of CGMainDisplayID (only in OSX 10.2 and later).
1391
316ef0dc
JPW
13922004-07-04 John Paul Wallington <jpw@gnu.org>
1393
1394 * fileio.c (read_file_name_completion_ignore_case): New variable.
1395 (syms_of_fileio): Declare and initialise it.
1396 (Fread_file_name): Bind `completion-ignore-case' to respect it.
1397
2a1a35c6
EZ
13982004-07-03 Eli Zaretskii <eliz@gnu.org>
1399
1400 * msdos.c (dos_rawgetc): Use make_number to produce Lisp objects
1401 for event.x and event.y.
1402
33a72331
KH
14032004-07-01 Kenichi Handa <handa@m17n.org>
1404
1405 * w32select.c (Fw32_set_clipboard_data): Update `nbytes' correctly
1406 after getting a new string by pre-write-conversion.
1407
9238467d 14082004-06-30 Stefan Monnier <monnier@iro.umontreal.ca>
07a6ab76
SM
1409
1410 * xterm.c (x_detect_focus_change): Remove unused var `nr_events'.
1411 (x_calc_absolute_position): Remove unused var `child'.
1412
1413 * xfaces.c (x_supports_face_attributes_p)
1414 (Fdisplay_supports_face_attributes_p): YAILOM.
1415 (tty_supports_face_attributes_p): Remove unused var `i'.
1416
1417 * syntax.c (skip_chars): Remove unused labels fwd_unibyte_ok and
1418 back_unibyte_ok.
1419
1420 * search.c (match_limit, Fmatch_data, Fset_match_data): YAILOM.
1421
1422 * fontset.c (Fset_fontset_font): Remove unused vars `family' and `registry'.
1423
1424 * Makefile.in (${etc}DOC): Fix file name of make-docfile.
1425
f96ec754
AS
14262004-06-30 Andreas Schwab <schwab@suse.de>
1427
1428 * image.c (CHECK_LIB_AVAILABLE): Add third parameter LIBRARIES.
1429 (Finit_image_library): Pass LIBRARIES through to
1430 CHECK_LIB_AVAILABLE. Declare parameters. Doc fix.
1431 (lookup_image_type): Pass Qnil as second argument to
1432 Finit_image_library.
1433
1434 * lisp.h: Declare Finit_image_library.
1435
59feca74 14362004-06-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
c8d09ad8 1437
31983645
AS
1438 * macterm.c (do_window_activate, do_window_deactivate): Remove.
1439 (XTread_socket): Send mouse button events to the toolbox
1440 dispatcher even when the mouse is grabbed. Don't process window
1441 activate events for non-Emacs windows. Replace function calls to
1442 do_window_activate and do_window_deactivate with their contents.
1443 Reset mouse grabbing status when a window is deactivated.
59feca74 1444
c61278bb
ST
14452004-06-29 Steven Tamm <steventamm@mac.com>
1446
1447 * macterm.c (mac_get_emulated_btn)
1448 (mac_event_to_emacs_modifiers): Fix emulated mouse button
1449 support to correctly mask out modifiers.
1450
c3762cbd
DK
14512004-06-29 David Kastrup <dak@gnu.org>
1452
1453 * search.c (Fset_match_data): Allow buffer before end of list
1454 which can happen if set-match-data is using a pre-consed list.
1455
c61278bb 14562004-06-28 Steven Tamm <steventamm@mac.com>
e439b925
ST
1457
1458 * macterm.c (XTread_socket): Correctly set the frame position
1459 after the window is moved.
1460
74cdfe05
JD
14612004-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1462
1463 * gtkutil.c (xg_get_image_for_pixmap): Call g_object_unref on
1464 gpix and gmask just before return to avoid memory leak.
03ecb80f
JD
1465 (xg_get_image_for_pixmap): Add workaround for monochrome displays
1466 so insensitive and activated icons look ok.
74cdfe05 1467
ef544dc8
JR
14682004-06-27 Jason Rumney <jasonr@gnu.org>
1469
1470 * w32fns.c (file_dialog_callback): Disable edit control if set
1471 to directories only on CDN_INITDONE message.
1472 (Fx_file_dialog): Default to directories only when prompt starts
1473 with "Dired".
1474
7b7990cc
KS
14752004-06-25 Kim F. Storm <storm@cua.dk>
1476
1477 * alloc.c (allocate_misc): Update total_free_markers.
1478 (free_misc): New function.
1479 (safe_alloca_unwind, free_marker): Use it.
1480
1481 * lisp.h (free_misc): Add prototype.
1482
1483 * fns.c (Fmapconcat, Fmapcar): Remove superfluous GCPROs.
1484
d8c379f8
RS
14852004-06-24 Richard M. Stallman <rms@gnu.org>
1486
1487 * emacs.c (Vsignal_USR1_hook, Vsignal_USR2_hook): Definitions deleted.
1488 (syms_of_emacs): Lisp variables deleted.
1489
559cdd07
DK
14902004-06-23 David Kastrup <dak@gnu.org>
1491
94939b84
DK
1492 * search.c (Freplace_match): Adjust the match-data more thoroughly
1493 when replacing strings in the buffer.
1494 (Fmatch_data): When INTEGERS is non-nil and the last match was in
1495 a buffer, add the buffer as last element to the match data.
1496 (Fset_match_data): If an additional element of the match-data is a
1497 buffer, restore it to last_thing_searched.
c8d09ad8 1498 (save_search_regs): Save last_thing_searched as part of the match data.
559cdd07
DK
1499 (restore_match_data): Restore it again.
1500
dce417e7
LT
15012004-06-23 Luc Teirlinck <teirllm@auburn.edu>
1502
1503 * keymap.c (Ftext_char_description): Doc fix.
1504 * doc.c (Fsnarf_documentation): Doc fix.
1505
ef54b2d0
KS
15062004-06-22 Kim F. Storm <storm@cua.dk>
1507
b5bc4d05
KS
1508 * fns.c (Fmapcar, Fmapconcat): GCPRO the args array.
1509
ef54b2d0
KS
1510 * lisp.h (struct Lisp_Save_Value): New member dogc.
1511 (SAFE_ALLOCA_LISP): Change second arg to number of elements.
1512 Set dogc member in Lisp_Save_Value object so it will be GC'ed.
1513 (SAFE_FREE_LISP): New macro.
1514
1515 * alloc.c (safe_alloca_unwind): Clear dogc and pointer members.
1516 (make_save_value): Init new dogc member.
1517 (mark_object): Mark Lisp_Save_Value pointer array if dogc is set.
1518
1519 * fns.c (Fmapconcat, Fmapcar): Use new SAFE_ALLOCA_LISP and
1520 SAFE_FREE_LISP macros.
1521
3d33d993
KS
15222004-06-22 Kim F. Storm <storm@cua.dk>
1523
1524 * lisp.h (SAFE_ALLOCA_LISP): New macro to allocate Lisp_Objects.
1525 Temporarily inhibits GC if memory is xmalloc'ed, as the Lisp_Objects
1526 in that memory area are unknown to GC. Add comments.
1527
1528 * fns.c (Fmapconcat, Fmapcar): Use SAFE_ALLOCA_LISP.
1529
5c917f98
KS
15302004-06-21 Kim F. Storm <storm@cua.dk>
1531
1532 * lisp.h (MAX_ALLOCA): Define here.
1533 (safe_alloca_unwind): Add prototype.
1534 (USE_SAFE_ALLOCA, SAFE_ALLOCA, SAFE_FREE): New macros.
1535
1536 * alloc.c (safe_alloca_unwind): New function.
1537
1538 * casefiddle.c (casify_object): Use SAFE_ALLOCA.
1539
1540 * charset.c (Fstring): Use SAFE_ALLOCA.
1541
1542 * coding.c (MAX_ALLOCA): Remove define.
1543
1544 * data.c (MAX_ALLOCA): Remove define.
1545 (Faset): Use SAFE_ALLOCA.
1546
1547 * editfns.c (Fformat, Ftranspose_regions): Use SAFE_ALLOCA.
1548
1549 * fns.c (string_make_multibyte, string_to_multibyte)
1550 (string_make_unibyte, Fmapconcat, Fmapcar): Use SAFE_ALLOCA.
1551 (MAX_ALLOCA): Remove define.
1552 (Fbase64_encode_region, Fbase64_encode_string)
1553 (Fbase64_decode_region, Fbase64_decode_string): Use SAFE_ALLOCA.
1554 (Fbase64_encode_region, Fbase64_encode_string): Fix potential
1555 memory leak if encoding fails.
1556
1557 * xdisp.c (add_to_log): Use SAFE_ALLOCA.
1558
9a09408e
EZ
15592004-06-21 Eli Zaretskii <eliz@gnu.org>
1560
1561 * print.c (Fwith_output_to_temp_buffer): Doc fix.
1562
376de739
RS
15632004-06-20 Richard M. Stallman <rms@gnu.org>
1564
1565 * xfaces.c (Finternal_copy_lisp_face): Small cleanup; doc fix.
1566
1567 * search.c (match_limit): Cleaner err msg when no match data available.
1568
1569 * window.c (syms_of_window): Doc fix.
1570
1571 * keyboard.c (command_loop_1): Handle values `only' and `identity'
1572 for Vtransient_mark_mode.
1573
1574 * buffer.c (syms_of_buffer): Doc fix.
1575
acd81db9
DK
15762004-06-21 David Kastrup <dak@gnu.org>
1577
1578 * minibuf.c (Ftry_completion, Fall_completions): Do lazy binding
1579 and unbinding of `case-fold-search' according to
1580 `completion-ignore-case' around calls of string-match and
1581 predicates, respectively. Should give satisfactory performance
1582 in all relevant cases.
1583
f303762d
JD
15842004-06-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1585
95911c74
JD
1586 * xterm.c (x_draw_image_foreground_1): Subtract slice.x/y from
1587 clip_x/y_origin.
1588
a6cb6b78
JD
1589 * fns.c (string_to_multibyte): Use xmalloc/xfree instead of alloca.
1590
f303762d
JD
1591 * macfns.c (Fx_display_color_cells): Do not limit return value to 256.
1592
1593 * macterm.c (mac_initialize_display_info): Initialize n_planes correctly
1594 on Mac OSX.
1595
bbdb2684
LT
15962004-06-16 Luc Teirlinck <teirllm@auburn.edu>
1597
1598 * buffer.c (syms_of_buffer): Clarify `fill-column' docstring.
1599
5ea48b1c
KS
16002004-06-16 Kim F. Storm <storm@cua.dk>
1601
1602 * dispextern.h (Vimage_types): Remove extern.
1603
803aac3e
MB
16042004-06-16 Miles Bader <miles@gnu.org>
1605
1606 * image.c (lookup_image_type): Initialize image type if necessary.
1607
cdc97764
KS
16082004-06-15 Kim F. Storm <storm@cua.dk>
1609
c4a5739c
KS
1610 * xdisp.c (try_cursor_movement): Exclude header line from scroll
1611 margin at top of window.
1612 (try_window_reusing_current_matrix): Calculate proper cursor position
1613 after scrolling up with non-zero scroll margin, as the old cursor
1614 position corresponds to value of PT before executing this command.
1615 (try_window_id): Consider scroll margin at bottom of window too;
1616 otherwise we fail to scroll when hl-line-mode is enabled.
1617
cdc97764
KS
1618 * syntax.c (skip_chars): Only recognize [:class:] when it has the
1619 proper format and class is a lower-case word.
1620
5b166323
JD
16212004-06-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1622
1623 * gtkutil.c (xg_get_image_for_pixmap): New function.
c8d09ad8 1624 (xg_get_gdk_pixmap_and_mask): Remove.
5b166323
JD
1625 (update_frame_tool_bar): Call xg_get_image_for_pixmap instead of
1626 xg_get_gdk_pixmap_and_mask.
cdc97764 1627
5b166323
JD
1628 * xterm.h (struct x_display_info): Typo in comment fixed.
1629
1ebd4f78
JB
16302004-06-14 Juanma Barranquero <lektu@terra.es>
1631
1632 * dispextern.h (Vimage_types): Make it conditional on
1633 HAVE_WINDOW_SYSTEM.
1634
1635 * image.c (Vimage_types): Move from xdisp.c.
1636 (Vimage_type_cache): New variable.
1637 (define_image_type): New argument indicating whether an image
1638 library was loaded; cache loaded status and return t on success,
1639 nil otherwise.
1640 (CACHE_IMAGE_TYPE, ADD_IMAGE_TYPE): New macros.
1641 (w32_delayed_load): New function to load an image library from a
1642 list of possible filenames.
1643 (init_xpm_functions, init_png_functions, init_jpeg_functions)
1644 (init_tiff_functions, init_gif_functions): Use `w32_delayed_load'.
c8d09ad8 1645 (CHECK_LIB_AVAILABLE): Call `define_image_library' with new argument.
1ebd4f78
JB
1646 (Finit_image_library): New function, extracted from `init_image'.
1647 Try to initialize an image library on demand and cache whether we
1648 were successful or not.
1649 (syms_of_image): Initialize `Vimage_types' and
1650 `Vimage_type_cache'. Add recognized image types to Vimage_types.
1651 Export `init-image-library'.
1652 (init_image): Remove initialization of all image types, except xbm
1653 and pbm.
1654
1655 * xdisp.c (Vimage_types): Delete (moved to image.c).
1656
904ee128
AS
16572004-06-14 Andreas Schwab <schwab@suse.de>
1658
1659 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
1660 Avoid calling specbind when completion-regexp-list is empty.
1661
092de21d
RS
16622004-06-13 Richard M. Stallman <rms@gnu.org>
1663
1664 * regex.h (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
1665 (re_wctype, re_iswctype, re_wctype_to_bit):
1666 Non-function definitions moved here from regex.c.
1ebd4f78 1667
092de21d
RS
1668 * regex.c (re_wctype, re_iswctype): Function defs longer static.
1669 (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
1670 (re_wctype, re_iswctype, re_wctype_to_bit):
1671 Non-function definitions moved to regex.h.
1672
1673 * window.c (Fselect_window): Doc fix.
1674
1675 * syntax.c: Include regex.h.
1676 (skip_chars): New arg HANDLE_ISO_CLASSES. Callers changed.
1677 If requested, make a list of classes, then check the scanned
1678 chars for membership in them.
1679 (in_classes): New function.
1680 Doc fix.
1681
1682 * keyboard.c (cmd_error): Don't call any_kboard_state
1683 if inside a recursive edit level.
1684
16852004-06-13 Lorentey K\e,Aa\e(Broly <lorentey@elte.hu>
1686
1687 * keyboard.c (command_loop): Call any_kboard_state before
1688 command_loop_2 when at top level.
1689
3ebc0939
AS
16902004-06-13 Andreas Schwab <schwab@suse.de>
1691
cea5d0d4
AS
1692 * print.c (print_object): Always use %ld for printing EMACS_INT.
1693
1694 * keyboard.c (cancel_hourglass_unwind): Return a value.
1695 (modify_event_symbol): Always use %ld for printing EMACS_INT.
1696 (Fexecute_extended_command): Likewise.
1697
1698 * syntax.h (SYNTAX_ENTRY_FOLLOW_PARENT): Rename local variable to
1699 avoid clashes.
1700 (SYNTAX): Likewise.
1701 (SYNTAX_WITH_FLAGS): Likewise.
1702 (SYNTAX_MATCH): Likewise.
1703
1704 * syntax.c (char_quoted): Avoid warning about undefined operation.
1705 (find_defun_start): Likewise.
1706 (scan_lists): Likewise.
1707 (INC_FROM): Likewise.
1708 (scan_sexps_forward): Likewise.
1709
be8c4ce4
AS
1710 * image.c: Include <ctype.h>.
1711
3ebc0939
AS
1712 * xfaces.c (face_attr_equal_p): Declare parameters.
1713
6fb41b5b
KH
17142004-06-13 Kenichi Handa <handa@m17n.org>
1715
1716 * ccl.c (CCL_READ_CHAR): If hit EOF, set REG to -1.
1717
fc3095ce
EZ
17182004-06-12 Matthew Mundell <matt@mundell.ukfsn.org>
1719
1720 * eval.c (Fdefun): Signal an error if NAME is not a symbol.
1721
66189a40
KH
17222004-06-12 Kenichi Handa <handa@m17n.org>
1723
1724 * ccl.c (CCL_CALL_FOR_MAP_INSTRUCTION): Save eof_ic in
1725 ccl_prog_stack_struct and update it.
1726 (CCL_INVALID_CMD): If CCL_DEBUG is defined, call ccl_debug_hook.
1727 (CCL_READ_CHAR): Get instruction counter from eof_ic, not from
1728 ccl->eof_ic on EOF.
1729 (ccl_debug_hook): New function.
1730 (struct ccl_prog_stack): New member eof_ic.
1731 (ccl_driver): Handle EOF in subrountine call correctly.
1732
17332004-06-11 Kenichi Handa <handa@m17n.org>
1734
1735 * coding.c (decode_coding_string): Check CODING_FINISH_INTERRUPT.
1736
1da71023
KS
17372004-06-11 Kim F. Storm <storm@cua.dk>
1738
1739 * emacs.c (shut_down_emacs): Inhibit redisplay during shutdown.
1740
e9efcef4
JB
17412004-06-11 Juanma Barranquero <lektu@terra.es>
1742
1743 * keyboard.c (Fposn_at_point): Doc fix.
1744
9b9ceb61
DK
17452004-06-11 David Kastrup <dak@gnu.org>
1746
1747 * search.c (match_limit): Don't flag an error if match-data
1748 exceeding the allocated search_regs.num_regs gets requested, just
1749 return Qnil.
1750
6e87ac8f
MB
17512004-06-08 Miles Bader <miles@gnu.org>
1752
1753 * xfaces.c (push_named_merge_point): Return 0 when a cycle is detected.
1754
0b0dea7b
JB
17552004-06-07 Juanma Barranquero <lektu@terra.es>
1756
1757 * editfns.c (Fuser_login_name, Ffloat_time, Fencode_time)
1758 (Fcurrent_time_string, Fcurrent_time_zone)
1759 (Finsert_buffer_substring, Ftranspose_regions): Doc fixes.
1760
a0a23346
MB
17612004-06-07 Miles Bader <miles@gnu.org>
1762
08384afd 1763 * xfaces.c (struct named_merge_point): New type.
a0a23346
MB
1764 (push_named_merge_point): New function.
1765 (merge_named_face): New function.
1766 (merge_face_ref, face_at_buffer_position, face_at_string_position):
1767 Use `merge_named_face'.
1768 (merge_face_inheritance): Function removed.
c8d09ad8 1769 (merge_face_ref): Rename from `merge_face_vector_with_property'.
a0a23346
MB
1770 Add new `err_msgs' and `named_merge_points' args. Return error
1771 status. Only print error messages if ERR_MSGS is true. Don't try to
1772 do :inherit attribute validation.
1773 (merge_face_heights): Handle `unspecified' in both directions.
1774 (merge_face_vectors): Rename `cycle_check' arg to `named_merge_points'.
1775 Call `merge_face_ref' instead of `merge_face_inheritance'.
1776 (Fdisplay_supports_face_attributes_p, Fface_attributes_as_vector)
1777 (compute_char_face, face_at_buffer_position)
1778 (face_at_string_position): Call `merge_face_ref' instead of
1779 `merge_face_vector_with_property'.
1780
12d5b185
KH
17812004-06-07 Kenichi Handa <handa@m17n.org>
1782
1783 * coding.c (find_safe_codings): Check NILP (safe_codings) only at
1784 the necessary places.
1785
2e2d7ee6
KS
17862004-06-07 Kim F. Storm <storm@cua.dk>
1787
1788 * process.c (Fdelete_process): Undo 2004-05-28 change.
1789 Instead, call status_notify also for network process.
1790 (status_message): Use process instead of status as arg.
1791 Give messages "deleted" or "connection broken by remote peer" for
1792 an exited network process.
1793 (status_notify): Change call to status_message.
1794 (read_process_output): Increase readmax to 4096. Do not increase
1795 buffer size for datagram channels (default is now large enough).
1796
fcf0d299
ST
17972004-06-06 Steven Tamm <tamm@Steven-Tamms-Computer.local>
1798
1799 * macfns.c (x_create_tip_frame): Fix Mac OS X 10.1 compilation
1800 problem due to newly defined variable.
1801
0722292b
MB
18022004-06-06 Miles Bader <miles@gnu.org>
1803
1804 * xfaces.c (Fdisplay_supports_face_attributes_p): Give up
1805 immediately if non-interactive or not initialized.
1806
ddfb8369
RS
18072004-06-05 Richard M. Stallman <rms@gnu.org>
1808
1809 * minibuf.c (Fcompleting_read): Doc fix.
1810
57015754
AS
18112004-06-05 Andreas Schwab <schwab@suse.de>
1812
1813 * macfns.c (x_create_tip_frame): Fix declaration after statement.
1814
23715ea6
JB
18152004-06-05 Juanma Barranquero <lektu@terra.es>
1816
1817 * keymap.c (Fdescribe_vector): Fix docstring.
1818 (Fkey_description, Fglobal_key_binding): Fix typo in docstring.
1819
8e330b22
MB
18202004-06-05 Miles Bader <miles@gnu.org>
1821
1822 * xfaces.c (tty_supports_face_attributes_p): Make sure the specified
1823 attributes have different values than the default face.
1824
9742a3a6
EZ
18252004-06-04 Eli Zaretskii <eliz@gnu.org>
1826
1827 * xfaces.c (x_supports_face_attributes_p): Make this function
1828 conditional on HAVE_WINDOW_SYSTEM.
c8d09ad8
SM
1829 (Fdisplay_supports_face_attributes_p) [HAVE_WINDOW_SYSTEM]:
1830 Don't call x_supports_face_attributes_p if it was not compiled in.
9742a3a6 1831
9717e36c
MB
18322004-06-04 Miles Bader <miles@gnu.org>
1833
1834 * xfaces.c (tty_supports_face_attributes_p): New function, mostly
1835 from Ftty_supports_face_attributes_p.
1836 (x_supports_face_attributes_p): New function.
1837 (Ftty_supports_face_attributes_p): Function deleted.
1838 (Fdisplay_supports_face_attributes_p): New function.
1839 (syms_of_xfaces): Initialize Sdisplay_supports_face_attributes_p.
f9711de4 1840 (face_attr_equal_p): New function.
9717e36c
MB
1841 (lface_equal_p): Use it.
1842
52deb19f
JB
18432004-06-03 Juanma Barranquero <lektu@terra.es>
1844
1845 * w32fns.c (Fx_display_grayscale_p, Fw32_send_sys_command)
1846 (Vw32_color_map): Fix typo in docstring.
1847 (Fx_create_frame, Fw32_find_bdf_fonts, Fx_show_tip)
1848 (Fw32_unregister_hot_key, Fw32_reconstruct_hot_key):
1849 Make argument names match their use in docstring.
1850
86d373e6
JB
18512004-06-02 Juanma Barranquero <lektu@terra.es>
1852
1853 Work around bugs/problems with MinGW builds of graphics libraries
1854 called from MSVC builds of Emacs.
1855
1856 * image.c (lookup_image): Make pointer to img static.
1857 (png_read_from_memory): Disable "global" optimization.
1858
2fb0ce67
SM
18592004-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
1860
c8d09ad8
SM
1861 * eval.c (Fcondition_case): Fix usage. Simplify.
1862
2fb0ce67
SM
1863 * mem-limits.h (EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true.
1864
50bf7673
ST
18652004-05-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1866
1867 * macfns.c: Don't include ccl.h.
1868 [MAC_OSX]: Don't include QuickTime/QuickTime.h.
86d373e6
JB
1869 [!MAC_OSX]: Don't include alloca.h, Windows.h, Gestalt.h, or
1870 TextUtils.h.
c8d09ad8 1871 (Fx_create_frame): Sync with xfns.c. Initialize cursor descriptors.
50bf7673
ST
1872 (Fx_display_mm_height, Fx_display_mm_width): Calculate length from
1873 display height/width.
1874 (compute_tip_xy, Vx_max_tooltip_size): Declare.
1875 (unwind_create_tip_frame, compute_tip_xy): New functions.
1876 (x_create_tip_frame, Fx_show_tip, Fx_hide_tip): Sync with xfns.c.
1877 (syms_of_macfns): Initialize Qcancel_timer, Vx_max_tooltip_size,
1878 and last_show_tip_args.
2fb0ce67 1879
50bf7673
ST
1880 * macgui.h [!MAC_OSX]: Include Gestalt.h.
1881 (Cursor, No_Cursor): New defines.
c8d09ad8 1882 [!TARGET_API_MAC_CARBON] (SetPortWindowPort): New compatibility macro.
50bf7673
ST
1883 [!TARGET_API_MAC_CARBON] (arrow_cursor): Declare.
1884
1885 * macmenu.c (mac_menu_show, mac_dialog): Use SetPortWindowPort.
1886
1887 * macterm.c: Don't include Gestalt.h.
1888 (enum mouse_tracking_type, mouse_tracking_in_progress): Remove.
1889 (XDrawLine, XClearArea, XClearWindow, mac_draw_bitmap)
1890 (mac_set_clip_rectangle, mac_reset_clipping, XCreatePixmap)
1891 (XFillRectangle, mac_draw_rectangle, mac_draw_string_common)
1892 (mac_copy_area, mac_copy_area_with_mask, x_update_end)
1893 (construct_mouse_click, XTmouse_position)
1894 (x_scroll_bar_report_motion, x_calc_absolute_position)
1895 (do_mouse_moved, do_zoom_window, mac_do_receive_drag)
1896 (XTread_socket, make_mac_frame): Use SetPortWindowPort.
1897 (note_mouse_movement): Clear the mouse face and reset the pointer
1898 shape when the pointer goes outside the frame without grabbing.
1899 (mac_front_window): New function.
1900 (mac_window_to_frame): New macro.
1901 (XTmouse_position, x_scroll_bar_report_motion, do_window_update)
1902 (do_window_activate, do_window_deactivate, do_app_resume)
1903 (do_app_suspend, do_mouse_moved, do_menu_choice, do_grow_window)
1904 (do_zoom_window, mac_do_receive_drag, XTread_socket)
1905 (mac_check_for_quit_char): Use mac_front_window and/or
1906 mac_window_to_frame.
1907 (x_scroll_bar_handle_click): Set `(PORTION . WHOLE)' part in a
1908 scroll-bar click event.
1909 (mac_define_frame_cursor): Change the pointer shape.
c8d09ad8 1910 (x_free_frame_resources): Reset tip_window to NULL when it is disposed.
50bf7673 1911 [!TARGET_API_MAC_CARBON] (arrow_cursor): New variable.
c8d09ad8 1912 [!TARGET_API_MAC_CARBON] (do_init_managers): Initialize arrow_cursor.
50bf7673
ST
1913 (do_window_update): Don't do anything if the updated window is the
1914 tooltip window.
1915 (do_mouse_moved): Handle mouse movement events here (previously in
1916 XTread_socket). Clear the mouse face if
1917 dpyinfo->mouse_face_hidden is set.
1918 (do_os_event, do_events): Remove (now in XTread_socket).
1919 (XTread_socket): Immediately return if interrupt_input_blocked.
c8d09ad8
SM
1920 Loop until all the events in the queue are processed.
1921 Rearrange codes for mouse grabbing. Add tooltip support. Include the
50bf7673
ST
1922 contents of do_os_event and do_events. Remove mouse movement
1923 handling (now in do_mouse_moved). Add the case where
1924 Vmouse_highlight has an integer value.
1925 (NewMacWindow): Remove.
1926 (make_mac_frame): Do what NewMacWindow previously did. Don't do
1927 excess initializations.
1928 (make_mac_terminal_frame): Previous initializations in
1929 make_mac_frame are moved here.
c8d09ad8
SM
1930 (mac_initialize_display_info):
1931 Initialize dpyinfo->mouse_face_overlay and dpyinfo->mouse_face_hidden.
50bf7673
ST
1932
1933 * xdisp.c [MAC_OS] (No_Cursor): Remove variable.
1934 (define_frame_cursor1): Don't treat HAVE_CARBON as a special case.
1935
08fd1251
RS
19362004-05-29 Richard M. Stallman <rms@gnu.org>
1937
1938 * lisp.h (truncate_undo_list): Update decl.
1939
1940 * alloc.c (undo_outer_limit): New variable.
1941 (syms_of_alloc): Defvar it.
1942 (Fgarbage_collect): Pass undo_outer_limit to truncate_undo_list.
1943
1944 * undo.c (truncate_undo_list): New arg LIMITSIZE.
1945
1946 * alloc.c (lisp_align_malloc): Check for base == 0
1947 regardless of HAVE_POSIX_MEMALIGN.
1948 Clean up HAVE_POSIX_MEMALIGN handling of `err'.
1949
227ef0ff
SM
19502004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
1951
1952 * alloc.c: Undo Kim's recent changes and fix the same bug differently.
1953 (marker_blocks_pending_free): Remove.
1954 (Fgarbage_collect): Sweep after cleaning up undo-lists.
1955 Mark the undo lists after claning them up.
1956 Don't free block in marker_blocks_pending_free.
1957 (mark_buffer): Don't mark undo_list.
1958 (gc_sweep): Sweep hash-tables and strings first.
1959 Do free marker blocks that are empty.
1960
034a6113
SM
19612004-05-28 Jim Blandy <jimb@redhat.com>
1962
1963 * regex.c (print_partial_compiled_pattern): Add missing 'break'
1964 after 'case wordend'. For symbeg and symend, print to stderr,
1965 like the other cases.
1966
33594a8d
NF
19672004-05-28 Noah Friedman <friedman@splode.com>
1968
1969 * process.c (Fdelete_process): Do not call remove_process.
1970
ce50a847
SM
19712004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
1972
1973 * alloc.c (struct backtrace): Remove.
1974 (Fgarbage_collect): Use the new mark_backtrace.
1975
1976 * eval.c (mark_backtrace): New function.
1977
1978 * minibuf.c (run_exit_minibuf_hook): New function.
1979 (read_minibuf_unwind): Don't run exit-minibuffer-hook any more.
1980 (read_minibuf): Use separate unwind handler to run exit-minibuf-hook.
1981
1e8dae36
KS
19822004-05-27 Kim F. Storm <storm@cua.dk>
1983
1984 * xdisp.c (back_to_previous_visible_line_start): Skip backwards
1985 over display properties, e.g. images, that replace buffer text.
1986
846faa3b
KS
19872004-05-25 Kim F. Storm <storm@cua.dk>
1988
1989 * alloc.c (marker_blocks_pending_free): New var.
1990 (gc_sweep): Store free marker blocks on that list.
1991 (Fgarbage_collect): Free them after undo-list cleanup.
1992
1993 * process.c (wait_reading_process_input): Check connect_wait_mask
1994 before actually accepting connection in case it has already been
1995 accepted due to recursion.
1996
b6189c3b 19972004-05-23 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
6239a668 1998
ce50a847
SM
1999 * coding.c (Fset_safe_terminal_coding_system_internal):
2000 Set suppress_error in safe_terminal_coding, not terminal_coding.
6239a668 2001
71d5a208
RS
20022004-05-22 Richard M. Stallman <rms@gnu.org>
2003
2004 * alloc.c (Fmake_string): Doc fix.
2005
2006 * buffer.c (clone_per_buffer_values): Copy the alist of local vars,
2007 and the alist pairs too.
2008
2009 * casefiddle.c (casify_object): Return OBJ unchanged if not real char.
2010
2011 * emacs.c (main): Update copyright year.
2012
2013 * fileio.c (Fread_file_name): Expand DIR if not absolute.
2014
2015 * insdel.c (del_range_2, replace_range): Don't write an anchor
2016 if the gap is empty.
2017
2018 * xdisp.c (try_scrolling): If scroll-up-aggressively or
2019 scroll-down-aggressively is small but positive, put point
2020 near the screen edge.
2021
f63fd14e
JB
20222004-05-22 Juanma Barranquero <lektu@terra.es>
2023
2024 * keymap.c (Fdefine_key): Doc fix.
2025
4d12067c
KS
20262004-05-22 Kim F. Storm <storm@cua.dk>
2027
2028 * alloc.c (struct backtrace): Add debug_on_exit member.
2029 (Fgarbage_collect): Clear out buffer undo_list markers after gc_sweep.
2030 Identify those markers as Lisp_Misc_Free objects. Clear car and cdr of
2031 the removed cons cells.
2032 (mark_object): Undo previous change - disallow Lisp_Misc_Free objects.
2033 (gc_sweep): Clear cons_blocks before sweeping strings, so we don't have
2034 any cons cells pointing to unallocated stings.
2035 Do not lisp_free any marker blocks, as there may still be pointers
2036 to them from buffer undo lists at this stage of GC.
2037
2038 * keyboard.c (struct backtrace): Add debug_on_exit member.
2039 (Fcommand_execute): Clear it.
2040
931285e2
LT
20412004-05-20 Luc Teirlinck <teirllm@auburn.edu>
2042
2043 * intervals.c (lookup_char_property): Do not prematurely return nil.
2044
669fa600
SM
20452004-05-19 Jim Blandy <jimb@redhat.com>
2046
2047 Add support for new '\_<' and '\_>' regexp operators, matching the
f63fd14e 2048 beginning and end of symbols.
4d12067c 2049
669fa600
SM
2050 * regex.c (enum syntaxcode): Add Ssymbol.
2051 (init_syntax_once): Set the syntax for '_' to Ssymbol, not Sword.
2052 (re_opcode_t): New opcodes `symbeg' and `symend'.
2053 (print_partial_compiled_pattern): Print the new opcodes properly.
2054 (regex_compile): Parse the new operators.
ce50a847 2055 (analyse_first): Skip sym(beg|end) (they match only the empty string).
669fa600
SM
2056 (mutually_exclusive_p): `symend' is mutually exclusive with \s_ and
2057 \sw; `symbeg' is mutually exclusive with \S_ and \Sw.
2058 (re_match_2_internal): Match symbeg and symend.
2059
2060 * search.c (trivial_regexp_p): \_ is no longer a trivial regexp.
2061
0d8c2e5c
KS
20622004-05-19 Kim F. Storm <storm@cua.dk>
2063
2064 * .gdbinit (xsymbol): Fix last change.
2065
669fa600
SM
20662004-05-18 Stefan Monnier <monnier@iro.umontreal.ca>
2067
2068 * .gdbinit (xprintstr): New fun.
2069 (xstring, xprintsym): Use it.
2070
2071 * w32proc.c (create_child): Use INTMASK.
2072
2073 * alloc.c (Fgarbage_collect): Do all the marking before flushing
2074 unmarked elements of the undo list.
2075
9a6a4c40
DP
20762004-05-18 David Ponce <david@dponce.com>
2077
2078 * print.c (print): Reset print_depth before to call print_object.
2079
f3c4ec74
JR
20802004-05-18 Jason Rumney <jasonr@gnu.org>
2081
2082 * w32console.c: Prefix RIF functions with w32con_ to avoid
2083 namespace clash with functions in term.c and w32term.c.
2084
2085 * w32menu.c (add_menu_item, w32_menu_display_help)
2086 [USE_LISP_UNION_TYPE]: Cast from Lisp_Object using i member.
2087
0d8c2e5c 2088 * w32term.h (display_x_get_resource, vga_stdcolor_name): Add prototype.
f3c4ec74 2089
6be49c3a
EZ
20902004-05-18 Eli Zaretskii <eliz@gnu.org>
2091
4d0b9a0a
EZ
2092 * lisp.h (DECL_ALIGN): Remove restriction on MS-DOS systems.
2093
6be49c3a
EZ
2094 * msdos.c (syms_of_msdos): Initialize dos-unsupported-char-glyph
2095 with make_number.
2096 (IT_write_glyphs): Extract glyph from dos-unsupported-char-glyph
2097 with XINT.
2098
0bc90bba
KS
20992004-05-18 Kim F. Storm <storm@cua.dk>
2100
89d19988
KS
2101 * blockinput.h (INPUT_BLOCKED_P): New macros.
2102
2103 * keyboard.c (Frecursive_edit): Return immediately if input blocked.
2104 (Ftop_level): Unblock input if blocked.
2105
0bc90bba
KS
2106 * buffer.h (GET_OVERLAYS_AT): New macro.
2107 * msdos.c (IT_note_mouse_highlight): Use it.
2108 * textprop.c (get_char_property_and_overlay): Use it.
2109 * xdisp.c (next_overlay_change, note_mouse_highlight): Use it.
2110 * xfaces.c (face_at_buffer_position): Use it.
2111
2112 * print.c (print_object): Increase buf size.
2113
653bd0f6
JR
21142004-05-17 Jason Rumney <jasonr@gnu.org>
2115
2116 * w32fns.c (Fw32_register_hot_key, Fw32_unregister_hot_key)
2117 (Fw32_toggle_lock_key) [USE_LISP_UNION_TYPE]: Cast from
2118 Lisp_Object using i member.
2119 (w32_quit_key): Rename from Vw32_quit_key, and make an int.
2120 (syms_of_w32fns, globals_of_w32fns): Use Lisp_Object and int
2121 consistently.
2122
2123 * w32proc.c (create_child): Use make_number instead of masking pid.
2124
2125 * w32fns.c (w32_color_map_lookup): Return a Lisp_Object.
2126 (x_to_w32_charset, w32_to_x_charset, w32_to_all_x_charsets):
2127 Use EQ to compare Lisp_Objects.
2128 (w32_parse_hot_key): Use int for lisp_modifiers consistently.
2129
2130 * w32term.c (w32_num_mouse_buttons): Rename from
2131 Vw32_num_mouse_buttons and make it an int.
2132
2133 * w32.c (init_environment): Use it.
2134
2135 * w32fns.c (w32_wnd_proc): Likewise.
2136
2137 * w32proc.c (w32_pipe_read_delay): Rename from
2138 Vw32_pipe_read_delay and make it an int.
2139
2140 * w32.c (_sys_read_ahead): Use it.
2141
2142 * lisp.h (egetenv) [USE_CRT_DLL]: Remove condition.
2143
2144 * w32proc.c (create_child) [USE_LSB_TAG]: Don't try to mask pid.
2145
2146 * w32inevt.c (w32_console_mouse_position, do_mouse_event)
2147 (key_event): Don't mix Lisp_Object and int.
2148
2149 * w32heap.c (init_heap) [USE_LSB_TAG]: Don't check heap location.
2150
2151 * keyboard.c (kbd_buffer_get_event): Don't use event->code and
2152 modifiers in language change event.
2153
54b53ba7
KS
21542004-05-17 Kim F. Storm <storm@cua.dk>
2155
2156 * alloc.c (mark_object): Ignore Lisp_Misc_Free objects.
2157 Such objects may be freed markers which still exist on an undo list.
2158
6e86a75d
JB
21592004-05-16 Juanma Barranquero <lektu@terra.es>
2160
2161 * data.c (Fset_default): Make argument names match their use in
2162 docstring.
2163
fc80da24
AS
21642004-05-15 Andreas Schwab <schwab@suse.de>
2165
2166 * emacs.c (gdb_array_mark_flag): Define.
2167 * .gdbinit: Mask off gdb_array_mark_flag from vector sizes.
2168
c1380aa6
EZ
21692004-05-15 Eli Zaretskii <eliz@gnu.org>
2170
2171 * lisp.h (DECL_ALIGN) [MSDOS]: Don't define DECL_ALIGN to use
2172 __attribute__((__aligned__)), so that USE_LSB_TAG would not become
2173 defined for the MS-DOS build.
2174
89458937
SM
21752004-05-14 Stefan Monnier <monnier@iro.umontreal.ca>
2176
2177 * w32fns.c (Fw32_define_rgb_color): Avoid XSET.
2178
08020f9a
KH
21792004-05-14 Kenichi Handa <handa@m17n.org>
2180
2181 * ccl.c (Fccl_execute_on_string): Fix setting elements of STATUS.
2182
a433994a
ST
21832004-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2184
2185 * lisp.h (Vx_resource_name, Vx_resource_class): Move from xfns.c
2186 section to frame.c section.
2187 (Fxw_display_color_p, Fx_file_dialog): Declare if
89458937 2188 HAVE_WINDOW_SYSTEM defined.
0d8c2e5c 2189
a433994a 2190 * macfns.c (Fx_create_frame): Fix int/Lisp_Object mixup.
0d8c2e5c 2191
a433994a 2192 * macmenu.c (set_frame_menubar): Use NILP to test a lisp value.
0d8c2e5c 2193
a433994a
ST
2194 * macterm.c (mac_get_emulated_btn, mac_event_to_emacs_modifiers)
2195 (mac_get_mouse_btn): Use NILP and EQ to test/compare lisp values.
2196 (XTread_socket): Fix int/Lisp_Object mixup.
2197 (mac_check_for_quit_char): Fix pointer/Lisp_Object mixup.
0d8c2e5c 2198
a433994a
ST
2199 * macterm.h (struct frame, struct face, struct image)
2200 (display_x_get_resource, Fx_display_color_p)
89458937
SM
2201 (Fx_display_grayscale_p, Fx_display_planes, x_free_gcs):
2202 Add prototypes.
a433994a 2203
b51a51b9
KS
22042004-05-14 Kim F. Storm <storm@cua.dk>
2205
2206 * process.c (wait_reading_process_input): Make reentrant.
2207 Make Available and Connecting non-static. Save and restore value
2208 of waiting_for_user_input_p.
2209
2bde1dd8
KS
22102004-05-13 Kim F. Storm <storm@cua.dk>
2211
2212 * keyboard.c (mark_kboards): Don't mark x and y members
2213 that are overloaded in selection request events.
2214
a267ab4d
SM
22152004-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
2216
2217 * lisp.h (USE_LSB_TAG): Make it the default when it is known to work.
2218
eb15ce9e
GM
22192004-05-13 Glenn Morris <gmorris@ast.cam.ac.uk>
2220
2221 * window.c (Fdisplay_buffer, Fsplit_window)
2222 (split-height-threshold): Doc fix.
2223
7fc92635
JB
22242004-05-13 Juanma Barranquero <lektu@terra.es>
2225
2226 * xfaces.c (Ftty_supports_face_attributes_p)
2227 (Finternal_copy_lisp_face): Fix typo in docstring.
2228 (Finternal_get_lisp_face_attribute): Fix docstring.
2229
1ec2a572
JD
22302004-05-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2231
2232 * xfns.c (syms_of_xfns): Provide x-toolkit also for GTK.
2233
ae9292e0
ST
22342004-05-11 Steven Tamm <steventamm@mac.com>
2235
2236 * macfns.c (Fx_create_frame): Default to using tool-bar by
2237 setting tool-bar-lines to 1 in default-frame-alist.
2238
22392004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
ea1aaa6f
ST
2240
2241 * image.c (xpm_scan, xpm_make_color_table_v, xpm_put_color_table_v)
2242 (xpm_get_color_table_v, xpm_make_color_table_h)
2243 (xpm_put_color_table_h, xpm_get_color_table_h)
2244 (xpm_str_to_color_key, xpm_load_image, xpm_load)
2245 (syms_of_image): Support XPM on Carbon Emacs. Does not
a267ab4d 2246 depend on libXpm, but only supports XPM version 3 without extensions.
ea1aaa6f 2247
fe97e8df
ST
22482004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2249
a267ab4d 2250 * macterm.c (x_flush, XTframe_up_to_date): Use FRAME_MAC_P
fe97e8df
ST
2251 instead of FRAME_X_P
2252
b47e779e
KS
22532004-05-11 Kim F. Storm <storm@cua.dk>
2254
2255 * process.c (read_process_output): Grow decoding_buf when needed;
2256 this could cause a crash in allocate_string and compact_small_strings.
2257
cdc9b845
EZ
22582004-04-29 Jim Blandy <jimb@redhat.com>
2259
2260 * regex.c (mutually_exclusive_p): In 'case wordbeg', compare op2
2261 against proper opcode.
2262
aa7094ba
JB
22632004-05-10 Juanma Barranquero <lektu@terra.es>
2264
2265 * process.c (Fstart_process): Fix docstring.
2266
2267 * charset.c (Fget_unused_iso_final_char): Fix typos in docstring.
2268 (Fchar_bytes, Fchar_width, Fstring_width, Fchar_direction)
2269 (Fsplit_char, Fchar_charset): Make argument names match their use
2270 in docstring.
2271
e109331a
RS
22722004-05-10 Richard M. Stallman <rms@gnu.org>
2273
2274 * print.c (print_preprocess): Use being_printed, loop_count and
2275 halftail to detect overdeep nesting and cyclic cdr chains.
2276
9a28b921
AS
22772004-05-10 Andreas Schwab <schwab@suse.de>
2278
2279 * lisp.h: Declare Fmake_symbolic_link.
2280
2281 * fileio.c (Frename_file): Remove extra argument in call to
2282 Fmake_symbolic_link.
2283
e2c02c1a
KS
22842004-05-10 Kim F. Storm <storm@cua.dk>
2285
2286 * xdisp.c (calc_line_height_property): Use string position when
2287 object is a string.
2288
cfe9d13e
KH
22892004-05-10 Kenichi Handa <handa@m17n.org>
2290
a57e8159
KH
2291 * print.c (temp_output_buffer_setup): Bind inhibit-read-only and
2292 inhibit-modification-hooks to t temporarily before calling
2293 Ferase_buffer.
2294
2295 * xfns.c (x_create_tip_frame): Bind inhibit-read-only and
2296 inhibit-modification-hooks to t temporarily before calling
2297 Ferase_buffer.
2298
2299 * w32fns.c (x_create_tip_frame): Bind inhibit-read-only and
2300 inhibit-modification-hooks to t temporarily before calling
2301 Ferase_buffer.
2302
cfe9d13e
KH
2303 * fns.c (count_combining): Delete it.
2304 (concat): Don't check combining bytes.
2305
ceb96489
JR
23062004-05-09 Jason Rumney <jasonr@gnu.org>
2307
2308 * w32fns.c (Vw32_ansi_code_page): New Lisp variable.
2309 (globals_of_w32fns): Set it.
2310
b6189c3b 23112004-05-09 Piet van Oostrum <piet@cs.uu.nl>
b1c661c7
JB
2312
2313 * data.c (Fquo): Simplify.
2314
28712a21
JB
23152004-05-08 Peter Whaite <emacs@whaite.ca> (tiny change)
2316
2317 * data.c (Fquo): If any argument is float, do the computation in
2318 floating point.
2319
0f0af7a8
JB
23202004-05-08 Juanma Barranquero <lektu@terra.es>
2321
88214ef6
JB
2322 * process.c (Fwaiting_for_user_input_p, Fmake_network_process)
2323 (Fset_process_query_on_exit_flag, Vprocess_adaptive_read_buffering):
2324 Fix spelling of Emacs on docstring.
2325 (Fset_process_coding_system, Fprocess_coding_system)
2326 (Fset_process_filter_multibyte, Fprocess_filter_multibyte_p):
2327 Make argument names match their use in docstring.
2328 (Fprocess_id, Fprocess_query_on_exit_flag, Finterrupt_process):
2329 Fix docstring.
2330
0f0af7a8
JB
2331 * editfns.c (Finsert_buffer_substring): Make argument names match their
2332 use in docstring.
2333
2334 * syntax.c (Fmodify_syntax_entry): Fix docstring.
2335
2a316a84
ST
23362004-05-07 Steven Tamm <steventamm@mac.com>
2337
2338 * macterm.c (mac_check_for_quit_char): Adding BLOCK_INPUT
2339 around call to ReceiveEvent to avoid certain crashes.
2340
23412004-05-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
0d8c2e5c 2342
2a316a84
ST
2343 * macterm.c (mac_draw_line_to_pixmap, XCreatePixmapFromBitmapData)
2344 (mac_fill_rectangle_to_pixmap, mac_draw_rectangle_to_pixmap)
2345 (mac_copy_area_to_pixmap, mac_copy_area_with_mask_to_pixmap):
2346 Save/restore the current graphics port and device handle when
2347 drawing into an offscreen graphics world.
2348
2349 * image.c [MAC_OS] (XPutPixel, XGetPixel, image_load_qt_1)
2350 (gif_load): Likewise.
2351
ab80314b
JB
23522004-05-07 Juanma Barranquero <lektu@terra.es>
2353
2354 * window.c (Fset_window_buffer): Fix docstring.
2355
70646bb5
TTN
23562004-05-06 Thien-Thi Nguyen <ttn@gnu.org>
2357
2358 * emacs.c (main) [VMS]: Fix var ref.
2359
b6189c3b 23602004-05-06 Romain Francoise <romain@orebokech.com>
b03a4fdd
JB
2361
2362 * data.c (Fsetq_default): Fix docstring.
2363
279d3293
JR
23642004-05-06 Jason Rumney <jasonr@gnu.org>
2365
2366 * image.c (Display) [HAVE_NTGUI]: Redefine while loading xpm.h
2367 to avoid name clash.
2368
f72b5416
JD
23692004-05-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2370
2371 * fileio.c (barf_or_query_if_file_exists): Use lstat.
2372 (Frename_file): Handle renaming of symlinks across file systems.
440c7d00 2373 (Frename_file): Put symlink handling inside #ifdef S_IFLNK.
f72b5416 2374
6ab66799
KS
23752004-05-04 Kim F. Storm <storm@cua.dk>
2376
2377 * xdisp.c (Qtotal): New var.
2378 (syms_of_xdisp): Intern and staticpro it.
2379 (calc_line_height_property): New arg total. Set it if
2380 line-spacing property has format (total . VALUE).
2381 (x_produce_glyphs): Ignore line-spacing if line-height is 0.
2382 Handle total line-spacing property.
2383
ab2d724b
JD
23842004-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2385
2386 * gtkutil.c (xg_update_scrollbar_pos): Call XClearWindow to clear
2387 "under" scroll bar when size/position changes.
2388
238add5e
JR
23892004-05-03 Jason Rumney <jasonr@gnu.org>
2390
2391 * makefile.nt: Remove.
2392
1644f4e4
EZ
23932004-05-02 Eli Zaretskii <eliz@gnu.org>
2394
a267ab4d
SM
2395 * syntax.h (SET_RAW_SYNTAX_ENTRY, SYNTAX_ENTRY_INT):
2396 Avoid compiler warnings.
05fdbeb8 2397
1644f4e4
EZ
2398 * Makefile.in (region-cache.o): Depend on config.h.
2399
b6189c3b 24002004-05-02 Romain Francoise <romain@orebokech.com>
6cbc951e
SM
2401
2402 * indent.c (compute_motion): Save vpos in prev_vpos when dealing
2403 with continuation lines, too.
2404
2b98b088
TTN
24052004-05-02 Thien-Thi Nguyen <ttn@gnu.org>
2406
2407 * syssignal.h (init_signals): Move decl outside `#ifdef POSIX_SIGNALS'.
2408
d9bf7950
SM
24092004-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
2410
2411 * xdisp.c (calc_line_height_property): YAILOM (yet another
2412 int/Lisp_Object mixup).
2413
affa509c
EZ
24142004-05-01 Eli Zaretskii <eliz@gnu.org>
2415
2416 * msdos.c (top-level): Add "#pragma pack(0)" after <dir.h>, to
2417 undo bad effect of pack(4) in some versions of system headers.
2418
07c07cfe
JR
24192004-05-01 Jason Rumney <jasonr@gnu.org>
2420
2421 * w32term.c (x_draw_hollow_cursor): Sync with xterm.c
2422
e71caa4e
KS
24232004-04-30 Kim F. Storm <storm@cua.dk>
2424
2425 * buffer.c (syms_of_buffer) <line-spacing>: Allow float value.
b2b55d03 2426 (syms_of_buffer) <cursor-type>: Doc fix.
e71caa4e
KS
2427
2428 * dispextern.h (struct it): Remove member use_default_face.
2429 Add members override_ascent, override_descent, override_boff.
2430
2431 * xdisp.c (init_iterator): Handle line-spacing float value.
2432 Initialize override_ascent member.
2433 (append_space_for_newline): Reset override_ascent.
2434 Remove use_default_face.
2435 (calc_line_height_property): New function to calculate value of
2436 line-height and line-spacing properties. Look at overlays, too.
2437 Set override_ascent, override_descent, override_boff members when
2438 using another face than the current face. Float values are now
2439 relative to the frame default font, by default; accept a cons
2440 of ratio and face name to specify value relative to a specific face.
2441 (x_produce_glyphs): Use calc_line_height_property.
2442 Use override_ascent etc. when set to handle different face heights.
2443 A negative line-spacing property value is interpreted as a total
2444 line height, rather than inter-line spacing.
2445 (note_mouse_highlight): Allocate room for 40 overlays initially.
2446
0fddae66
SM
24472004-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
2448
2449 * data.c (Fsubr_name): New fun.
2450 (syms_of_data): Defsubr it.
2451
712d23dc
KS
24522004-04-29 Kim F. Storm <storm@cua.dk>
2453
2454 * xdisp.c (null_glyph_slice): New var.
2455 (append_glyph, append_composite_glyph, append_stretch_glyph):
2456 Use it to initialize glyph slice.
2457
033ad8c6
SM
24582004-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
2459
2460 * xdisp.c (x_produce_glyphs): Fix the proverbial int/Lisp_Object mixup.
2461 (on_hot_spot_p): Make sure we always return a value.
2462 (Flookup_image_map): Remove unused var ix and iy.
2463 (note_mode_line_or_margin_highlight): Remove unused var `image'.
2464
93397360
EZ
24652004-04-27 Eli Zaretskii <eliz@gnu.org>
2466
2467 * msdos.c (init_environment): If one of the TMP... environment
2468 variables is set to a drive letter without a trailing slash,
2469 append a slash.
2470
0c54865e
EZ
24712004-04-27 Matthew Mundell <matt@mundell.ukfsn.org>
2472
2473 * editfns.c (lisp_time_argument): Provide externally.
2474
2475 * fileio.c (Fset_file_times): New function.
2476 (syms_of_fileio): Intern and staticpro it.
2477
d3b111bd
KS
24782004-04-27 Kim F. Storm <storm@cua.dk>
2479
07dc1231
KS
2480 * xdisp.c (x_produce_glyphs): Fix last change; handle newline in
2481 header line strings.
2482
360fe9d2
KS
2483 * dispextern.h (struct it): New member use_default_face.
2484
d3b111bd
KS
2485 * xdisp.c (Qline_height): New variable.
2486 (syms_of_xdisp): Intern and staticpro it.
2487 (append_space_for_newline): Partially undo 2004-04-25 change;
2488 add default_face_p arg, and restore callers.
2489 Clear it->use_default_face after use.
2490 (x_produce_glyphs): Set default font for ascii char if
2491 it->use_default_font is set. Change line-spacing property to set
2492 just extra line spacing. Handle new line-height property.
2493
0448588b
AS
24942004-04-26 Andreas Schwab <schwab@suse.de>
2495
2496 * print.c (print_object): Print non-ascii characters in bool
2497 vector representation as octal escapes.
2498
2499 * lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define.
2500 * print.c (print_object): Use it instead of BITS_PER_CHAR for
2501 bool vectors.
2502 * lread.c (read1): Likewise.
2503 * alloc.c (Fmake_bool_vector): Likewise.
2504 * data.c (Faref, Faset): Likewise.
2505 * fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray)
2506 (mapcar1): Likewise.
d3b111bd 2507
536d6baa
ST
25082004-04-26 Steven Tamm <tamm@Steven-Tamms-Computer.local>
2509
2510 * lread.c (init_lread): Fixing typo HAVE_CARBON test logic
2511
ae11577a
MB
25122004-04-26 Miles Bader <miles@gnu.org>
2513
2514 * lisp.h (CYCLE_CHECK): Macro moved from xfaces.c.
2515
e198ba87
JB
25162004-04-26 Juanma Barranquero <lektu@terra.es>
2517
2518 * buffer.c (Fpop_to_buffer): Fix docstring.
2519
f3d5f92d 25202004-04-26 Steven Tamm <steventamm@mac.com>
e198ba87 2521
f3d5f92d
ST
2522 * lread.c (init_lread): Don't display missing lisp directory
2523 warnings with Carbon Emacs because self-contained bundled Emacs
e198ba87 2524 may be built without correct installation path.
f3d5f92d 2525
03e35edc
KS
25262004-04-25 Kim F. Storm <storm@cua.dk>
2527
9ff3aa31
KS
2528 * macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
2529
2530 * xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
2531
03e35edc
KS
2532 * xdisp.c (append_space_for_newline): Rename from append_space.
2533 Remove DEFAULT_FACE_P arg; always use current face. Callers changed.
2534 (x_produce_glyphs): Handle line-spacing property on newline char.
2535 If value is t, adjust ascent and descent to fit current row height.
2536 If value is an integer or float, set extra_line_spacing to integer
2537 value, or to float value x current line height.
2538
f24814e0
KH
25392004-04-23 Kenichi Handa <handa@m17n.org>
2540
2541 * fontset.c (Finternal_char_font): If POSITION is nil, return
2542 font for displaying CH with the default face.
2543
d814862a
JB
25442004-04-23 Juanma Barranquero <lektu@terra.es>
2545
2546 * makefile.w32-in: Add "-*- makefile -*-" mode tag.
2547
063a45c5
SM
25482004-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
2549
2550 * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]:
2551 Don't make assumptions about the relative place of i and val.
2552 (EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well.
2553
ae7ab2d3
KS
25542004-04-21 Kim F. Storm <storm@cua.dk>
2555
2556 * dispextern.h (struct glyph_slice): New struct.
2557 (struct glyph): New member slice.
2558 (GLYPH_SLICE_EQUAL_P): New macro.
2559 (GLYPH_EQUAL_P): Use it.
2560 (struct glyph_string): New member slice.
2561 (struct it_slice): New struct.
2562 (struct it): New member slice, add member to stack too.
2563 New member constrain_row_ascent_descent_p.
2564 (image_ascent): Add prototype.
2565
2566 * dispnew.c (buffer_posn_from_coords): Return full image width
2567 and height even for image slices (posn is relative to full image).
2568 (marginal_area_string): Adjust x0,y0 for image slice.
2569
2570 * image.c (image_ascent): Add slice arg; calculate ascent for
2571 image slice (or full image).
2572
2573 * keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns.
2574 (syms_of_keyboard): Defsubr them.
2575
2576 * lisp.h (pos_visible_p): Fix prototype.
2577
c62aec78 2578 * macterm.c (x_draw_relief_rect): Add top_p and bot_p args.
ae7ab2d3
KS
2579 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
2580 (x_draw_image_foreground, x_draw_image_relief)
2581 (x_draw_image_foreground_1, x_draw_image_glyph_string):
2582 Draw sliced images.
2583
2584 * w32term.c (w32_draw_relief_rect): Add top_p and bot_p args.
2585 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
2586 (x_draw_image_foreground, x_draw_image_relief)
2587 (w32_draw_image_foreground_1, x_draw_image_glyph_string):
2588 Draw sliced images.
2589
2590 * w32term.h (image_ascent): Remove prototype.
2591
2592 * window.c (Fpos_visible_in_window_p): Return pixel position if
2593 PARTIALLY arg is non-nil. Simplify. Doc fix.
2594 (Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg
2595 to return/set vscroll in pixels.
2596
2597 * window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
2598
2599 * xdisp.c (Qslice): New variable.
2600 (syms_of_xdisp): Intern and staticpro it.
2601 (pos_visible_p): Return pixel position in new x and y args.
2602 (init_iterator): Reset it->slice info.
2603 (handle_display_prop): Parse (slice ...) property.
2604 (push_it, pop_it): Save/restore slice info.
2605 (make_cursor_line_fully_visible): Fix 2004-04-14 change. Do not
2606 force repositioning of tall row if window is vscrolled, as that
2607 would reset vscroll.
2608 (append_space): Set it->constrain_row_ascent_descent_p to avoid
2609 increasing row height if row is non-empty.
2610 (fill_image_glyph_string): Copy slice info.
2611 (take_vertical_position_into_account): Simplify.
2612 (produce_image_glyph): Handle iterator slice info, setup glyph
2613 slice info. Do not force minimum line height.
2614 (x_produce_glyphs): If it->constrain_row_ascent_descent_p is set,
2615 do not increase height (ascent/descent) of non-empty row when
2616 adding normal character glyph; instead reduce glyph ascent/descent
2617 appropriately; if row is higher than current glyph, adjust glyph
2618 descent/ascent to reposition glyph within the existing row.
2619 Likewise, when char is newline, only set ascent/descent if row is
2620 currently empty.
2621 (note_mouse_highlight): Handle hotspots with sliced image.
2622
2623 * xterm.c (x_draw_relief_rect): Add top_p and bot_p args.
2624 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
2625 (x_draw_image_foreground, x_draw_image_relief)
2626 (x_draw_image_foreground_1, x_draw_image_glyph_string):
2627 Draw sliced images.
2628
2629 * xterm.h (image_ascent): Remove prototype.
2630
d58f8753
SM
26312004-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
2632
2633 * keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup.
2634
4ce2719d
JPW
26352004-04-20 John Paul Wallington <jpw@gnu.org>
2636
2637 * fns.c (Fassoc, Feql): Fix indentation.
2638
d58f8753 2639 * fontset.c (regularize_fontname): Rename from regulalize_fontname.
4ce2719d 2640
95f8c3b9
JPW
26412004-04-19 John Paul Wallington <jpw@gnu.org>
2642
2643 * fns.c (Feql): New function.
d58f8753 2644 (syms_of_fns): Defsubr it.
95f8c3b9 2645
b7e85537
JR
26462004-04-18 Jason Rumney <jasonr@gnu.org>
2647
2648 * w32select.c (Fw32_set_clipboard_data): Get sequence number
2649 after closing the clipboard.
2650
5a72efd4
LT
26512004-04-16 Luc Teirlinck <teirllm@auburn.edu>
2652
2653 * buffer.c (Fbuffer_base_buffer): Doc fix.
2654
20dc8583
KS
26552004-04-17 Kim F. Storm <storm@cua.dk>
2656
60962ec4
KS
2657 * keymap.c (Fkey_description): Add optional PREFIX arg.
2658 Combine prefix with KEYS to make up the full key sequence to describe.
2659 Correlate meta_prefix_char and following (simple) key to describe
2660 as meta modifier. All callers changed.
2661 (describe_map): Rename arg `keys' to `prefix'. Remove local
2662 `elt_prefix' var. Use Fkey_description with prefix instead of
2663 elt_prefix combined with Fsingle_key_description.
2664 (describe_vector): Declare static. Replace arg `elt_prefix' with
2665 `prefix'. Add KEYMAP_P arg. Add local var `elt_prefix'; use it
2666 if !KEYMAP_P. Use Fkey_description with prefix instead of
2667 Fsingle_key_description.
2668
2669 * keymap.h (Fkey_description): Fix prototype.
2670 (describe_vector): Remove prototype.
2671
409368b9
KS
2672 * xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0.
2673
20dc8583
KS
2674 * image.c (PNG_BG_COLOR_SHIFT): Remove.
2675 (png_load): Fix calculation of transparent background color on X
2676 and W32 platforms.
2677
75c5501b
JB
26782004-04-16 Juanma Barranquero <lektu@terra.es>
2679
2680 * xdisp.c (try_scrolling): Make sure `scroll-conservatively' is
2681 not too large before computing how much to scroll.
2682
da879ae8
SM
26832004-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
2684
2685 * dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler.
2686
d01ca4a8
LT
26872004-04-14 Luc Teirlinck <teirllm@auburn.edu>
2688
2689 * fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime):
2690 Add hyperlink to Elisp manual to the docstring.
2691
572943b3
SM
26922004-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
2693
2694 * callint.c (fix_command): Use XDCR.
2695
5e30a0fb
NR
26962004-04-14 Nick Roberts <nick@nick.uklinux.net>
2697
2698 * window.c (Fget_lru_window): Doc fix.
2699
a27ddfaf
KS
27002004-04-14 Kim F. Storm <storm@cua.dk>
2701
2702 * editfns.c (Fformat): Fix allocation size of precision array.
2703
2704 * dispnew.c (update_window): Only set changed_p if
2705 scrolling_window actually did scroll.
2706 (scrolling_window): Only return 1 if we actually did scroll.
2707
2708 * xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor
2709 height to glyph height when cursor row is not fully visible.
2710 (make_cursor_line_fully_visible): Add FORCE_P arg to return
2711 failure in case row is higher than window. Callers changed.
2712 (try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd).
2713 Try to scroll partially visible, higher-than-window cursor row.
2714 (redisplay_window): Always try to scroll partially visible,
2715 higher-than-window cursor row - both initially and again with
2716 centering_position = 0.
2717 Clear desired matrix before retrying with centering_position = 0.
2718
da879ae8
SM
27192004-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
2720
2721 * syntax.c (scan_lists): Simplify backward string scan.
2722 Fix off-by-one boundary check for string and comment fences.
2723
5fc16e8e
SM
27242004-04-13 Joe Buehler <jbuehler@hekimian.com>
2725
2726 * sheap.c, unexcw.c: New files.
2727
c9aac8e6
LT
27282004-04-12 Luc Teirlinck <teirllm@auburn.edu>
2729
2730 * buffer.c (Fmake_indirect_buffer): Throw an error if the intended
2731 base buffer has been killed. Correct the error message if the
2732 base buffer does not exist.
2733
1e88a355
SM
27342004-04-12 Joe Buehler <jbuehler@hekimian.com>
2735
2736 * s/cygwin.h: Changes for Cygwin unexec() support, changes in
2737 Cygwin itself. Add support for Xaw3d scrollbars.
2738
2739 * puresize.h: Set up PURE_P() for Cygwin unexec() support.
2740
2741 * lastfile.c: Define my_endbss[] for Cygwin unexec() support.
2742
2743 * gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(),
2744 before Cygwin unexec.
2745
2746 * Makefile.in: Link changes for Cygwin unexec() support.
2747
8dbff9a0
AS
27482004-04-12 Andreas Schwab <schwab@suse.de>
2749
2750 * buffer.c (Fmake_indirect_buffer): Check that NAME is a string.
2751
54dffe35
LT
27522004-04-11 Luc Teirlinck <teirllm@auburn.edu>
2753
2754 * buffer.c (Fgenerate_new_buffer_name): Return NAME argument if
2755 IGNORE argument equals NAME. Doc fix.
2756
99a72bdf
MY
27572004-04-11 Masatake YAMATO <jet@gyve.org>
2758
1e88a355 2759 * buffer.c (fix_start_end_in_overlays): Make overlays
99a72bdf
MY
2760 empty if they are backwards.
2761
40899d7b
SM
27622004-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
2763
2764 * xfaces.c (face_color_supported_p): Fix compilation without X11.
2765
f8f853de
SM
27662004-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
2767
2768 * doc.c (Fsnarf_documentation): Ignore new file name entries.
2769
c953fe1b
KS
27702004-04-06 Kim F. Storm <storm@cua.dk>
2771
661e85c1
KS
2772 * msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden.
2773 (dos_rawgetc): Set mouse_face_hidden after clearing highlight.
2774
2775 * w32term.c (w32_read_socket): Set mouse_face_hidden after
2776 clearing highlight.
2777
2778 * xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden.
2779
2780 * xterm.c (handle_one_xevent): Set mouse_face_hidden after
2781 clearing highlight.
2782
c953fe1b
KS
2783 * indent.c (vmotion): Do not reserve one column for continuation
2784 marks on window frames.
2785
c1994268
EZ
27862004-04-04 Eli Zaretskii <eliz@gnu.org>
2787
2788 * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings
2789 from GCC.
2790
9f691b0d
SM
27912004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
2792
2793 * .gdbinit-union: Remove.
2794
2795 * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION.
2796 (xgetptr, xgetint, xgettype): New funs. Use them everywhere.
2797 ($nonvalbits): Remove.
2798 ($valmask): Set it by calling xreload to avoid redundancy.
2799
2800 * emacs.c (gdb_use_union, gdb_use_lsb): New vars.
2801 (gdb_emacs_intbits): Remove.
2802
7a8560d7
JD
28032004-03-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2804
9f691b0d 2805 * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes.
7a8560d7 2806
3c8111fc
KH
28072004-03-30 Kenichi Handa <handa@m17n.org>
2808
2809 * editfns.c (Fformat): Fix initialization of the array info.
2810
48a0bce4
KS
28112004-03-30 Kim F. Storm <storm@cua.dk>
2812
2813 * xterm.c (x_mouse_click_focus_ignore_position): New var.
2814 (syms_of_xterm): DEFVAR_BOOL it.
2815 (ignore_next_mouse_click_timeout): New var.
2816 (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify.
2817 Use it to filter mouse clicks following focus event.
2818
1cd0066c
KS
28192004-03-29 David Ponce <david@dponce.com>
2820
2821 * callint.c (Fcall_interactively): Fix last change.
2822
adb3b353
SM
28232004-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
2824
2825 * eval.c (Fcommandp): Simplify.
2826
2827 * data.c (Finteractive_form): Rename from Fsubr_interactive_form.
2828 Extend to handle all kinds of functions.
2829
2830 * lisp.h (Finteractive_form): Declare.
2831
2832 * callint.c (Fcall_interactively): Use it.
2833
6fc4c9c9
KS
28342004-03-26 Kim F. Storm <storm@cua.dk>
2835
2836 * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error
2837 to catch errors in calc_pixel_width_or_height during redisplay.
2838
abdb9b83
MY
28392004-03-26 Masatake YAMATO <jet@gyve.org>
2840
b17856dd 2841 * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range.
abdb9b83 2842
b17856dd 2843 * lisp.h (fix_start_end_in_overlays): Likewise.
abdb9b83 2844
b17856dd 2845 * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays.
abdb9b83 2846
b17856dd 2847 * editfns.c (Ftranspose_regions): Likewise.
abdb9b83 2848
e8a84b6c
JD
28492004-03-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2850
b17856dd 2851 * xterm.c (handle_one_xevent): Do not pass key press events to GTK.
e8a84b6c 2852
36a3fd05
RS
28532004-03-19 Richard M. Stallman <rms@gnu.org>
2854
2855 * s/sol2-6.h: Delete previous change.
2856
ab24c127
KS
28572004-03-19 Kim F. Storm <storm@cua.dk>
2858
2859 * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
2860 to_charpos corresponds to newline in right fringe. Use local
2861 BUFFER_POS_REACHED_P macro.
2862
992126de
JD
28632004-03-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2864
2865 * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
2866 to compile on non-window system.
2867
45dbfc84
KS
28682004-03-19 Kim F. Storm <storm@cua.dk>
2869
2870 * dispextern.h (calc_pixel_width_or_height): Add prototype.
2871
2872 * image.c (Qcenter): Move to xdisp.c.
2873
2874 * xdisp.c (Qcenter): Declare here.
adb3b353 2875 (syms_of_xdisp): Intern and staticpro it.
45dbfc84
KS
2876 (handle_single_display_prop): Allow space display property on all
2877 platforms.
2878 (display_mode_line): Set mode_line_p before displaying line.
2879 (calc_pixel_width_or_height): Declare extern. Add separate :align-to
2880 handling. Remove complex cases for fringes and scroll-bars.
2881 Add left, right, and center alignment positions. Add text (area)
2882 width/height. Return width or height for image specs.
2883 (produce_stretch_glyph): Improve handling of :align-to. Is now
2884 relative to left of text area by default, but other base offsets
2885 can be specified -- also for text lines.
2886
2887 * term.c (produce_glyphs): Handle IT_STRETCH.
2888 (produce_stretch_glyph): New function to handle space width and
2889 align-to display properties on non-window systems.
2890
37264101
SM
28912004-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
2892
2893 * fileio.c (Fread_file_name): Set completion-ignore-case for
2894 case-insensitive systems.
2895
73bc43da
MY
28962004-03-14 Masatake YAMATO <jet@gyve.org>
2897
2898 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
2899 when keymap and cursor are setup.
2900
9062aa89
ST
29012004-03-14 Steven Tamm <steventamm@mac.com>
2902
b17856dd 2903 * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o.
9062aa89 2904
e4b1b5ab
KS
29052004-03-14 Kim F. Storm <storm@cua.dk>
2906
2907 * dispextern.h (x_find_image_file): Add prototype.
2908
2909 * image.c (x_find_image_file): Make extern.
2910
2911 * xfns.c (x_find_image_file): Remove prototype.
2912
a6eeaa81 29132004-03-13 Eli Zaretskii <eliz@gnu.org>
5109b06a 2914
37264101 2915 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
5109b06a 2916
37264101 2917 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
5109b06a 2918
e69cfac2
RS
29192004-03-12 Richard M. Stallman <rms@gnu.org>
2920
2921 * fns.c (internal_equal): New arg PROPS controls comparing
2922 text properties. All callers changed.
2923 (Fequal_including_properties): New function.
2924 (syms_of_fns): defsubr it.
2925
45034953
KS
29262004-03-12 Kim F. Storm <storm@cua.dk>
2927
2928 Fix image support on MAC. From YAMAMOTO Mitsuharu.
37264101 2929
45034953
KS
2930 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
2931 (image_background, image_background_transparent): Fix prototypes.
2932
37264101 2933 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
45034953
KS
2934
2935 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
2936 (x_query_font, x_find_ccl_program, x_set_window_size)
2937 (x_make_frame_visible, mac_initialize, XCreatePixmap)
2938 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
2939 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
2940
2941 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
2942 (x_query_font, x_find_ccl_program, x_set_window_size)
2943 (x_make_frame_visible, mac_initialize, XCreatePixmap)
2944 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
2945 (mac_draw_line_to_pixmap): Add prototypes.
2946
29472004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2948
2949 * macterm.c (XTread_socket): Fix mouse click on tool bar.
2950
a12d3d87
KS
29512004-03-11 Kim F. Storm <storm@cua.dk>
2952
d3ab1cf1
KS
2953 * dispextern.h: Move image related prototypes from xfns.c section
2954 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
2955 HAVE_X_WINDOWS.
37264101 2956
37de9f51 2957 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
37264101 2958 Move gtkutil.o to new GTK_OBJ list.
a12d3d87
KS
2959 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
2960 (GTK_OBJ) [USE_GTK]: New declaration.
2961 (obj): Add $(GTK_OBJ) to list.
2962
5243c06a 29632004-03-11 Steven Tamm <steventamm@mac.com>
5109b06a 2964
5243c06a
ST
2965 * image.c [MAC_OSX]: Include sys/stat.h
2966
2967 * macfns.c (syms_of_macfns): Remove definitions of things now
2968 defined in image.c
2969
c0f97789
KS
29702004-03-11 Kim F. Storm <storm@cua.dk>
2971
2972 The following changes consolidates the identical/similar image
2973 support code previously found in xfns.c, w32fns.c, and macfns.c
2974 into a new file image.c.
2975
2976 * makefile.w32-in (OBJ1): Add image.o.
2977 ($(BLD)/image.$(O)): Add dependencies.
2978
2979 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
2980 (image.o): Add dependencies.
37264101 2981
c0f97789
KS
2982 * image.c: New file with consolidated image support code.
2983 (COLOR_TABLE_SUPPORT): New define to control whether
2984 color table support is available (X only).
2985 (Bitmap_Record): Common name for x_bitmap_record,
2986 w32_bitmap_record, and mac_bitmap_record.
2987 (XImagePtr): Common name for pointer to XImage or equivalent.
2988 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
2989 to XImagePtr on X+MAC, and to HDC on W32.
2990 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
2991 (NO_PIXMAP): Common name for "None" or equivalent.
2992 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
2993 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
2994 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
37264101
SM
2995 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
2996 Define with suitable equivalents on W32 and MAC for code sharing.
c0f97789
KS
2997 (XDrawLine): Define on MAC for code sharing.
2998 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
2999 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
3000 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
3001 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
3002 (x_reference_bitmap, x_create_bitmap_from_data)
3003 (x_create_bitmap_from_file, x_destroy_bitmap)
3004 (x_destroy_all_bitmaps, x_create_bitmap_mask)
3005 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
3006 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
3007 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
3008 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
3009 (define_image_type, lookup_image_type, valid_image_p)
3010 (image_error, enum image_value_type, struct image_keyword)
3011 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
3012 (make_image, free_image, prepare_image_for_display, image_ascent)
3013 (four_corners_best, image_background, image_background_transparent)
3014 (x_clear_image_1, x_clear_image, x_alloc_image_color)
3015 (make_image_cache, free_image_cache, clear_image_cache)
3016 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
3017 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
3018 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
3019 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
3020 (init_image_func_pointer, image_load_quartz2d)
3021 (struct ct_color, init_color_table, free_color_table)
3022 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
3023 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
3024 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
3025 (x_disable_image, x_build_heuristic_mask)
3026 (XBM support, XPM support, PBM support, PNG support, JPEG support)
3027 (TIFF support, GIF support, Ghostscript support): Consolidate image
3028 code from xfns.c, w32fns.c, and macfns.c.
3029 (syms_of_image): Consolidate image related symbol setup here.
3030 (init_image): Consolidate image related initializations here.
37264101 3031
c0f97789
KS
3032 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
3033 and init_image. Remove call to init_xfns.
3034
37264101
SM
3035 * macterm.h (struct mac_bitmap_record): Add file member.
3036 Not currently used, but simplifies code sharing.
c0f97789
KS
3037
3038 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
3039 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
3040 (x_reference_bitmap, x_create_bitmap_from_data)
3041 (x_create_bitmap_from_file, x_destroy_bitmap)
3042 (x_destroy_all_bitmaps, x_create_bitmap_mask)
3043 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
3044 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
3045 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
3046 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
3047 (define_image_type, lookup_image_type, valid_image_p)
3048 (image_error, enum image_value_type, struct image_keyword)
3049 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
3050 (make_image, free_image, prepare_image_for_display, image_ascent)
3051 (four_corners_best, image_background, image_background_transparent)
3052 (x_clear_image_1, x_clear_image, x_alloc_image_color)
3053 (make_image_cache, free_image_cache, clear_image_cache)
3054 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
3055 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
3056 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
3057 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
3058 (init_image_func_pointer, image_load_quartz2d)
3059 (struct ct_color, init_color_table, free_color_table)
3060 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
3061 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
3062 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
3063 (x_disable_image, x_build_heuristic_mask)
3064 (XBM support, XPM support, PBM support, PNG support, JPEG support)
3065 (TIFF support, GIF support, Ghostscript support): Merge with image
3066 code from xfns.c and macfns.c into image.c.
3067 (syms_of_xfns): Move image related symbols to image.c.
3068 (init_external_image_libraries, init_xfns): Remove; initialization
3069 moved to init_image in image.c.
3070
3071 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
3072 (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_destroy_all_bitmaps, x_create_bitmap_mask)
3076 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
3077 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
3078 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
3079 (define_image_type, lookup_image_type, valid_image_p)
3080 (image_error, enum image_value_type, struct image_keyword)
3081 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
3082 (make_image, free_image, prepare_image_for_display, image_ascent)
3083 (four_corners_best, image_background, image_background_transparent)
3084 (x_clear_image_1, x_clear_image, x_alloc_image_color)
3085 (make_image_cache, free_image_cache, clear_image_cache)
3086 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
3087 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
3088 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
3089 (struct ct_color, init_color_table, free_color_table)
3090 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
3091 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
3092 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
3093 (x_disable_image, x_build_heuristic_mask)
3094 (XBM support, XPM support, PBM support, PNG support, JPEG support)
3095 (TIFF support, GIF support, Ghostscript support): Merge with image
3096 code from xfns.c and macfns.c into image.c.
3097 (syms_of_xfns): Move image related symbols to image.c.
3098 (init_external_image_libraries, init_xfns): Remove; initialization
3099 moved to init_image in image.c.
3100
3101 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
3102 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
3103 (x_reference_bitmap, x_create_bitmap_from_data)
3104 (x_create_bitmap_from_file, x_destroy_bitmap)
3105 (x_destroy_all_bitmaps, x_create_bitmap_mask)
3106 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
3107 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
3108 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
3109 (define_image_type, lookup_image_type, valid_image_p)
3110 (image_error, enum image_value_type, struct image_keyword)
3111 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
3112 (make_image, free_image, prepare_image_for_display, image_ascent)
3113 (four_corners_best, image_background, image_background_transparent)
3114 (x_clear_image_1, x_clear_image, x_alloc_image_color)
3115 (make_image_cache, free_image_cache, clear_image_cache)
3116 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
3117 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
3118 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
3119 (struct ct_color, init_color_table, free_color_table)
3120 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
3121 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
3122 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
3123 (x_disable_image, x_build_heuristic_mask)
3124 (XBM support, XPM support, PBM support, PNG support, JPEG support)
3125 (TIFF support, GIF support, Ghostscript support): Merge with
3126 w32fns.c and macfns.c image code into image.c.
3127 (syms_of_xfns): Move image related symbols to image.c.
3128 (init_xfns): Remove; initialization moved to init_image in image.c.
3129
3130 * lisp.h (syms_of_image, init_image): Add protoypes.
3131 (init_xfns): Remove prototype.
3132
3133 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
3134 (x_reference_bitmap, x_create_bitmap_from_data)
3135 (x_create_bitmap_from_file, x_destroy_bitmap)
3136 (x_create_bitmap_mask): Move prototypes from dispextern.h.
3137 (gamma_correct) [MAC_OS]: Add prototype.
3138
3139 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
3140 (x_reference_bitmap, x_create_bitmap_from_data)
3141 (x_create_bitmap_from_file, x_destroy_bitmap)
3142 (x_create_bitmap_mask): Move prototypes to dispextern.h.
3143
6eced09c
KH
31442004-03-09 Kenichi Handa <handa@etlken2>
3145
3146 * coding.c (decode_coding_emacs_mule): Handle insufficent source
3147 correctly.
3148
9a7e95f3
RS
31492004-03-04 Richard M. Stallman <rms@gnu.org>
3150
04a6e76b
RS
3151 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
3152
9a7e95f3
RS
3153 * window.c (Fdisplay_buffer): Doc fix.
3154
3155 * buffer.c (Fpop_to_buffer): Doc fix.
3156
6c2488df
KS
31572004-03-03 Kim F. Storm <storm@cua.dk>
3158
3159 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
3160
d8d95bc7
SM
31612004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
3162
3163 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
3164
357589bf
RS
31652004-03-02 Richard M. Stallman <rms@gnu.org>
3166
3167 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
3168
409949b5
KH
31692004-03-02 Kenichi Handa <handa@m17n.org>
3170
3171 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
3172
d24bc50f
KS
31732004-03-02 Kim F. Storm <storm@cua.dk>
3174
3175 * window.h (struct window): New member overlay_arrow_bitmap.
3176
3177 * window.c (make_window): Initialize overlay_arrow_bitmap.
3178
3179 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
3180 implement and integrate multiple overlay arrows with redisplay.
3181 (syms_of_xdisp): DEFVAR_LISP and initialize it.
3182 (last_arrow_position, last_arrow_string): Replace by properties.
3183 (Qlast_arrow_position, Qlast_arrow_string)
3184 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
3185 (syms_of_xdisp): Intern and staticpro them.
3186 (overlay_arrow_string_or_property, update_overlay_arrows)
3187 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
3188 (overlay_arrow_at_row): New functions for multiple overlay arrows.
3189 (redisplay_internal): Use them instead of directly accessing
3190 Voverlay_arrow_position etc. for multiple overlay arrows.
3191 (mark_window_display_accurate): Use update_overlay_arrows.
3192 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
3193 (try_window_id): Use overlay_arrows_changed_p.
3194 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
3195 (display_line): Use overlay_arrow_at_row to check multiple
3196 overlay arrows, and get relevant overlay-arrow-string and
d8d95bc7 3197 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
d24bc50f
KS
3198 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
3199 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
3200
3201 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
3202 (update_window_fringes): Remove unused code.
3203
c1464661
JR
32042004-03-01 Jason Rumney <jasonr@gnu.org>
3205
3206 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
3207
a64387ee
JB
32082004-03-01 Juanma Barranquero <lektu@terra.es>
3209
3210 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
3211
3212 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
3213
334faa08
JD
32142004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3215
3216 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
3217 how many colors can be displayed.
3218
bb62616f
KH
32192004-03-01 Kenichi Handa <handa@m17n.org>
3220
3221 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
3222 correctly.
3223
0fd16104
KS
32242004-02-28 Kim F. Storm <storm@cua.dk>
3225
3226 * dispnew.c (update_window): Update header line also if there are
3227 no other changes in window (move code after set_cursor label).
3228
3229 * lisp.h (mark_window_display_accurate): Remove prototype.
3230
3231 * window.c (window_loop, Fforce_window_update): Force mode line
3232 updates by setting prevent_redisplay_optimizations_p and
3233 update_mode_lines.
3234
b59dd9c8
JD
32352004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3236
d8d95bc7 3237 * xfns.c (x_window): Fix indentation.
b59dd9c8
JD
3238
3239 * xterm.c (x_calc_absolute_position): Call x_real_positions
3240 to get WM window sizes and use those to calculate position.
d8d95bc7 3241 (x_set_offset): Remove code commented out.
b59dd9c8 3242
a874691c
MB
32432004-02-28 Miles Bader <miles@gnu.org>
3244
3245 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
3246
3e0c6482
KS
32472004-02-28 Kim F. Storm <storm@cua.dk>
3248
3249 * keyboard.c (kbd_buffer_store_event_hold): New function to store
3250 an event into kbd fifo, but with special handling of quit event;
3251 a quit event is saved for later, and further events are discarded
3252 until the saved quit event has been processed.
3253 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
3254 (gen_help_event): Store help event in kbd fifo.
3255 (NREAD_INPUT_EVENTS): Remove.
3256 (read_avail_input): Adapt to new read_socket_hook interface.
3257 Remove allocation and initialization of local input_event buffer,
3258 as read_socket_hook stores events directly in fifo. Allocate and
3259 initialize local hold_quit event to handle postponed quit event
3260 (and store it if set by kbd_buffer_store_event_hold).
3261
3262 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
3263 (gen_help_event): Fix prototype.
3264
a64387ee 3265 * macterm.c (XTread_socket): Remove bufp_r and
3e0c6482 3266 numcharsp args. Add hold_quit arg.
f63fd14e 3267 Rework to use just one, local, inev input_event. Store inev
3e0c6482
KS
3268 directly in fifo using kbd_buffer_store_event_hold.
3269
3270 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
3271 (read_input_waiting): Adapt to new read_socket_hook interface.
3272 Remove allocation and initialization of local input_event buffer,
3273 as read_socket_hook stores events directly in fifo. Allocate and
3274 initialize local hold_quit event to handle postponed quit event
3275 (and store it if set by kbd_buffer_store_event_hold).
3276
a64387ee 3277 * term.c (read_socket_hook): Fix arg list.
3e0c6482
KS
3278
3279 * termhooks.h (read_socket_hook): Fix prototype.
3280
3281 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
3282 numcharsp args. Add hold_quit arg.
f63fd14e 3283 Rework to use just one, local, inev input_event. Store inev
3e0c6482
KS
3284 directly in fifo using kbd_buffer_store_event_hold.
3285
3286 * w32inevt.h (w32_console_mouse_position): Fix prototype.
3287
3288 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
f63fd14e
JB
3289 Add hold_quit arg. Rework to use just one, local, inev
3290 input_event. Store inev directly in fifo using
3e0c6482
KS
3291 kbd_buffer_store_event_hold. Update count in one place.
3292 Postpone call to gen_help_event until inev is stored; use new
3293 local do_help for this.
3294 Remove local emacs_event in handing of ButtonPress event; just use
3295 inev instead (so no reason to copy it later).
3296
3297 * xsmfns.c (x_session_check_input): Remove numchars arg.
3298
d8d95bc7
SM
3299 * xterm.c (x_focus_changed, x_detect_focus_change):
3300 Remove numchars arg. Always store event into bufp arg.
3301 Return nothing. Callers changed accordingly.
3e0c6482
KS
3302 (glyph_rect): Simplify.
3303 (STORE_KEYSYM_FOR_DEBUG): New macro.
3304 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
3305 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
3306 (current_hold_quit) [USE_GTK]: Add.
3307 (event_handler_gdk): Adapt to new handle_one_xevent.
3308 (handle_one_xevent): Remove bufp_r and numcharsp args.
f63fd14e
JB
3309 Add hold_quit arg. Rework to use just one, local, inev
3310 input_event. Store inev directly in fifo using
3e0c6482
KS
3311 kbd_buffer_store_event_hold. Update count in one place.
3312 Postpone call to gen_help_event until inev is stored; use new
3313 local do_help for this.
3314 Simplify handling of keysyms (consolidate common code). Fix bug
3315 where count was updated with nchars instead of nbytes.
3316 Remove local emacs_event in handing of ButtonPress event; just use
3317 inev instead (so no reason to copy it later).
3318 Remove `out' label. Rename label `ret' to `done'; add various
3319 `goto done' to clarify code flow in deeply nested blocks.
3320 (x_dispatch_event): Simplify as handle_one_xevent now calls
3321 kbd_buffer_store_event itself.
f63fd14e 3322 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
3e0c6482
KS
3323 arg. Call handle_one_xevent with new arglist. Store event from
3324 x_session_check_input in fifo.
3325 [USE_GTK]: Setup current_hold_quit.
3326 Decrement handling_signal before unblocking input.
3327 (x_initialize) [USE_GTK]: Initialize current_count.
3328
3329 * xterm.h (x_session_check_input): Fix prototype.
3330
e3564461 33312004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
a64387ee 3332
d8d95bc7 3333 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
a64387ee 3334
e3564461
ST
3335 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
3336 macgui.h).
a64387ee 3337
e3564461 3338 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
a64387ee 3339
e3564461
ST
3340 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
3341 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
3342 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
3343 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
3344 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
3345 (Bitmap): Remove typedef.
3346 (Pixmap): Change int to GWorldPtr.
3347
d8d95bc7 3348 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
a64387ee 3349
d8d95bc7
SM
3350 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
3351 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
3352 New #define to extract 16-bit depth color components from unsigned
e3564461
ST
3353 long representation.
3354 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
3355 colors used for masks.
3356 (struct mac_display_info): Add color_p. Remove n_cbits.
a64387ee 3357
e3564461
ST
3358 * macfns.c: Include sys/types.h and sys/stat.h.
3359 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
3360 Include QuickTime/QuickTime.h.
3361 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
3362 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
3363 functions defined in macterm.c.
3364 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
3365 (ZPixmap): New #define for compatibility with xfns.c.
3366 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
3367 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
d8d95bc7
SM
3368 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
3369 New functions.
e3564461 3370 (four_corners_best, x_create_x_image_and_pixmap)
d8d95bc7
SM
3371 (x_destroy_x_image, unwind_create_frame, x_disable_image)
3372 (x_edge_detection, init_color_table, colors_in_color_table)
e3564461
ST
3373 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
3374 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
3375 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
3376 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
3377 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
3378 long mixup.
3379 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
3380 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
3381 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
3382 (x_set_cursor_type, Fxw_color_values, valid_image_p)
3383 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
3384 (x_alloc_image_color, clear_image_cache, lookup_image)
3385 (x_find_image_file, xbm_read_bitmap_file_data)
3386 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
3387 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
3388 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
3389 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
3390 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
d8d95bc7 3391 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
e3564461
ST
3392 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
3393 #if 0.
3394 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
3395 #if 0. Free white_relief.gc and black_relief.gc.
d8d95bc7
SM
3396 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
3397 New functions (from xfns.c).
e3564461
ST
3398 (Fx_create_frame): Record unwind_create_frame.
3399 (Fxw_display_color_p): Use dpyinfo->color_p.
3400 (Fx_display_grayscale_p, Fx_display_planes): Don't use
3401 dpyinfo->n_cbits.
3402 (Fx_display_color_cells): Use dpyinfo->n_planes;
3403 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
3404 (Qheuristic, cross_disabled_images, emboss_matrix)
3405 (laplace_matrix): New variables (from xfns.c).
3406 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
3407 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
3408 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
d8d95bc7
SM
3409 (image_background_transparent): New function (from xfns.c).
3410 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
3411 (image_load_quicktime): Add declaration.
3412 [MAC_OSX] (image_load_quartz2d): Likewise.
3413 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
3414 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
d8d95bc7 3415 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
e3564461
ST
3416 (xbm_load_image_from_file, x_laplace_read_row)
3417 (x_laplace_write_row, pbm_read_file): Remove functions.
3418 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
3419 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
3420 (colors_in_color_table): Sync with xfns.c (although not used).
3421 (lookup_rgb_color): Don't lookup color table. Just do gamma
3422 correction.
3423 (COLOR_INTENSITY): New #define (from xfns.c).
d8d95bc7
SM
3424 (x_disable_image): New function (from xfns.c).
3425 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
3426 (x_build_heuristic_mask): Sync with xfns.c.
3427 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
3428 (HAVE_PBM): Remove #ifdef.
3429 (pbm_load): Sync with xfns.c. Set img->width and img->height
3430 before IMAGE_BACKGROUND.
d8d95bc7 3431 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
e3564461
ST
3432 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
3433 Don't enclose with #if HAVE_PNG.
3434 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
d8d95bc7
SM
3435 symbol _CGImageCreateWithPNGDataProvider is defined.
3436 Otherwise use image_load_quicktime.
e3564461 3437 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
d8d95bc7
SM
3438 [HAVE_PNG] (png_load): Sync with xfns.c.
3439 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
3440 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
3441 HAVE_JPEG.
3442 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
3443 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
3444 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
3445 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
3446 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
3447 (tiff_image_p, tiff_load): Don't enclose declarations with #if
3448 HAVE_TIFF.
3449 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
3450 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
3451 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
d8d95bc7
SM
3452 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
3453 New functions (from xfns.c).
e3564461 3454 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
d8d95bc7 3455 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
e3564461
ST
3456 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
3457 Don't enclose with #if HAVE_GIF.
3458 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
3459 animated gif. Otherwise use image_load_quicktime.
3460 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
3461 gif_DrawText to avoid conflict with QuickdrawText.h.
3462 [HAVE_GIF] (gif_load): Sync with xfns.c.
3463 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
3464 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
3465 Ghostscript is not supported yet).
3466 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
3467 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
3468 cross_disabled_images (from xfns.c). Remove #if 0 for supported
3469 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
3470 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
3471 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
d8d95bc7
SM
3472 HAVE_PNG. Call EnterMovies to support animated gifs.
3473 Call init_image_func_pointer to bind a symbol
e3564461 3474 _CGImageCreateWithPNGDataProvider if it is defined.
a64387ee 3475
d8d95bc7 3476 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
e3564461
ST
3477 (x_draw_bar_cursor): Sync declaration with xterm.c.
3478 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
3479 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
3480 graphics).
3481 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
3482 (mac_draw_line_to_pixmap, XCreatePixmap)
3483 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
d8d95bc7
SM
3484 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
3485 New functions.
3486 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
3487 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
3488 Cast bits to char *.
e3564461
ST
3489 (reflect_byte): New function (from w32fns.c).
3490 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
3491 due to byte alignment.
d8d95bc7
SM
3492 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
3493 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
e3564461
ST
3494 (XSetForeground): Remove static (now used in macfns.c).
3495 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
3496 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
3497 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
3498 (x_draw_glyph_string_box, x_draw_image_foreground)
3499 (x_draw_image_foreground_1, x_draw_image_glyph_string)
3500 (x_draw_stretch_glyph_string, x_draw_glyph_string)
3501 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
3502 Sync with xterm.c.
3503 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
3504 than the xterm.c version when a strictly horizontal or vertical
3505 line is drawn.
3506 (XTset_terminal_window): Add static.
3507 (x_make_frame_visible): Add UNBLOCK_INPUT.
3508 (x_free_frame_resources): New funcion (from xterm.c).
3509 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
3510 occurs in tool bar area.
d8d95bc7
SM
3511 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
3512 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
e3564461
ST
3513 Initialize image cache.
3514 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
3515 Enclose unused functions with #if 0.
3516 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
3517 (decode_mac_font_name): New function to apply code conversions
d8d95bc7 3518 from a mac font name to an XLFD font name according to its script code.
e3564461 3519 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
d8d95bc7 3520 font name to a mac font name according to REGISTRY and ENCODING fields.
e3564461
ST
3521 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
3522 whose name starts with `.'.
3523 (init_font_name_table): Use decode_mac_font_name. Add both
3524 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
3525 of a font is smJapanese.
3526 (mac_do_list_fonts): New function to list fonts that match a given
3527 pattern.
3528 (x_list_fonts, XLoadQueryFont): Use it.
3529 (XLoadQueryFont): Set rbearing field for each variable width
3530 character to avoid needless redraw.
3531 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
3532
446f5f3d
KS
35332004-02-26 Kim F. Storm <storm@cua.dk>
3534
af617d0f
KS
3535 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
3536 as read_socket_hook handler on X aborts if buffer is too small
3537 and W32 handler doesn't always check buffer limit.
3538
446f5f3d
KS
3539 * xdisp.c (handle_single_display_prop): Handle left-fringe and
3540 right-fringe similar to a display margin image. Specifically,
3541 the characters having the fringe prop are no longer shown, and
3542 we use IT_IMAGE/next_element_from_image with image_id = -1 to
3543 do this. Set fringe bitmap face_id in it->face_id.
3544 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
3545 still realize it->face (i.e. the fringe bitmap face).
3546
7d8a0b55
MB
35472004-02-25 Miles Bader <miles@gnu.org>
3548
3549 * xdisp.c (check_it): Check string/string_pos consistency.
3550 (init_iterator): Initialize string-related fields properly.
3551
35522004-02-11 Miles Bader <miles@gnu.org>
3553
3554 * xdisp.c (produce_image_glyph): Force negative descents to zero.
3555
35562004-02-10 Miles Bader <miles@gnu.org>
3557
3558 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
3559 BLOCK_INPUT can be nested, so it doesn't make much sense.
3560
a64387ee 35612004-02-24 Michael Mauger <mmaug@yahoo.com>
ce35edd1
JR
3562
3563 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
3564 (xbm_read_bitmap_data): Use unsigned char for image data.
3565
92f5fba2
LT
35662004-02-23 Luc Teirlinck <teirllm@auburn.edu>
3567
3568 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
3569
8565fb3d
JR
35702004-02-22 Jason Rumney <jasonr@gnu.org>
3571
3572 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
3573 correctly over other bitmaps.
3574
a6eeaa81 35752004-02-21 Eli Zaretskii <eliz@gnu.org>
f8125c39
EZ
3576
3577 * emacs.c (USAGE1): Split into two halves.
3578 (USAGE2): Second half of the old USAGE1.
d8d95bc7
SM
3579 (USAGE3): Rename from USAGE2.
3580 (USAGE4): Rename from USAGE3.
f8125c39 3581
4effffca
EZ
35822004-02-21 Juri Linkov <juri@jurta.org>
3583
3584 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
3585 Fix --multibyte. Move --help, --version to USAGE2. Add alias
3586 --file. Fix -f, -l. Sort options. Untabify.
3587 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
3588
923c1e6f
LT
35892004-02-19 Luc Teirlinck <teirllm@auburn.edu>
3590
3591 * category.c (Fdefine_category, Fcategory_docstring)
3592 (Fget_unused_category, Fset_category_table)
3593 (Fcategory_set_mnemonics): Doc fixes.
3594
b0e225fd
KS
35952004-02-20 Kim F. Storm <storm@cua.dk>
3596
3597 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
3598 The following changes are relative to the 2004-01-21 revision.
3599 (NREAD_INPUT_EVENTS): Define as max number of input events to read
3600 in one call to read_socket_hook. Value is 8.
3601 (read_avail_input): Separate and rework handling of read_socket_hook
3602 and non-read_socket_hook cases. Use smaller input_event buffer
d8d95bc7
SM
3603 in read_socket_hook case, and repeat if full buffer is read.
3604 Use new local variable 'discard' to skip input after C-g.
b0e225fd
KS
3605 In non-read_socket_hook case, just use a single input_event, and
3606 call kbd_buffer_store_event on the fly for each character.
3607
b15aa9f9
SM
36082004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
3609
3610 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
3611 Remove unused `gu' alternative.
3612
83c9aa95
AS
36132004-02-19 Andreas Schwab <schwab@suse.de>
3614
3615 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
3616 warning.
3617
cc808173
KS
36182004-02-18 Kim F. Storm <storm@cua.dk>
3619
3620 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
3621 Fix last change.
3622
ab90a54d
KS
36232004-02-17 Kim F. Storm <storm@cua.dk>
3624
b26f249f
KS
3625 * xdisp.c (fast_find_position): Fix return value of new version;
3626 it was inverted compared to the 21.1 version.
3627 (get_window_cursor_type): Don't look at glyph if NULL.
3628 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
0bf7d005 3629
ab90a54d
KS
3630 * keyboard.c: Rework previous change; it didn't consider that the
3631 buf array was allocated on the stack.
3632 (prev_read): Remove variable.
3633 (read_avail_input_buf): New static event buffer array.
b9568dfc 3634 (in_read_avail_input): New static variable to handle re-entrancy.
ab90a54d 3635 (read_avail_input): Change buf to pinter to read_avail_input_buf.
b9568dfc
KS
3636 Use in_read_avail_input to handle re-entrance; when re-entered,
3637 fully initialize and use tmp_buf array instead of read_avail_input_buf.
3638 Do not initialize read_avail_input_buf in full here; instead assume it
ab90a54d
KS
3639 is always cleared on entry. To ensure that, we clear (just) the
3640 entries that were used before we return.
3641 (init_keyboard): Initialize read_avail_input_buf here.
3642
b6189c3b 36432004-02-16 Jesper Harder <harder@ifa.au.dk>
4e039f3f
EZ
3644
3645 * cmds.c (Fend_of_line): Doc fix.
3646
7b5368c1
EZ
36472004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
3648
3649 * keyboard.c (prev_read): New static variable.
3650 (read_avail_input): Use it to zero out only those slots in buf[]
3651 that were used last time we were called.
3652
a6eeaa81 36532004-02-16 Eli Zaretskii <eliz@gnu.org>
ca4bc494
EZ
3654
3655 * Makefile.in (obj): Move fringe.o from here...
3656 (XOBJ, MAC_OBJ): ...to here.
3657
159c348e
SE
36582004-02-16 Stephen Eglen <stephen@gnu.org>
3659
3660 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
3661
d2f14999
SM
36622004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
3663
b15aa9f9
SM
3664 * data.c (Fbyteorder):
3665 * fringe.c (Fdefine_fringe_bitmap):
3666 * xdisp.c (handle_single_display_prop):
d2f14999
SM
3667 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
3668
8d50508a
JR
36692004-02-16 Jason Rumney <jasonr@gnu.org>
3670
3671 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
3672
dd4497dc
ST
36732004-02-15 Steven Tamm <steventamm@mac.com>
3674
3675 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
3676 controlling emulation of a three button mouse with option and
3677 command keys.
3678 (Qreverse, mac_get_enumlated_btn): Handle the emulation
b15aa9f9 3679 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
dd4497dc 3680
c9159cb3
KS
36812004-02-15 Kim F. Storm <storm@cua.dk>
3682
2cc52658
KS
3683 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
3684
c9159cb3
KS
3685 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
3686 Perform byte-swapping.
3687
12fde2dc
KS
36882004-02-14 Kim F. Storm <storm@cua.dk>
3689
3690 * dispextern.h (struct draw_fringe_bitmap_params): Change member
3691 bits from char to short to facilitate wider bitmaps.
3692 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
3693 member.
3694
3695 * fringe.c (struct fringe_bitmap): Change member bits from char to
3696 short to facilitate 16 bits wide bitmaps. Modify all standard
3697 bitmaps accordingly.
3698 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
3699 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
3700 (draw_fringe_bitmap): Ditto.
3701 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
3702 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
3703 handle up to 16 bits wide bitmaps.
3704 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
f21a7192 3705 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
12fde2dc
KS
3706
3707 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
3708 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
3709 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
3710
3711 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
3712 so it is no longer necessary to expand them here.
3713
3714 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
3715
9d7271e8
KS
37162004-02-12 Kim F. Storm <storm@cua.dk>
3717
3718 * window.c (Fwindow_fringes): Doc fix.
3719
706c1e4f
JD
37202004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3721
3722 * xselect.c (x_get_foreign_selection): Add new optional parameter
3723 time_stamp.
3724 (Fx_get_selection_internal): Ditto, pass time_stamp to
3725 x_get_foreign_selection.
3726
3727 * data.c (Fbyteorder): New function.
3728
c2d12b5d
JD
37292004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3730
3731 * atimer.c: Move include stdio.h to same place as in other files.
3732
3733 * region-cache.c: Ditto.
3734
3735 * sysdep.c: Ditto.
3736
3737 * xfaces.c: Ditto.
3738
4c1947b9
SS
37392004-02-09 Sam Steingold <sds@gnu.org>
3740
89458937 3741 * w32term.c (w32_draw_fringe_bitmap): Fix a typo in the last patch.
4c1947b9 3742
82722af3
KS
37432004-02-09 Kim F. Storm <storm@cua.dk>
3744
3745 * fringe.c: New file. Move original fringe related declarations
3746 and code from dispextern.h and xdisp.c here.
3747 Rework code to support user defined fringe bitmaps, redefining
3748 standard bitmaps, ability to overlay user defined bitmap with
3749 overlay arrow bitmap, and add faces to bitmaps.
3750 (Voverflow_newline_into_fringe): Declare here.
3751 (enum fringe_bitmap_align): New enum.
3752 (..._bits): All bitmaps are now defined without bitswapping; that
3753 is now done in init_fringe_once (if necessary).
3754 (standard_bitmaps): New array with specifications for the
3755 standard fringe bitmaps.
3756 (fringe_faces): New array.
3757 (valid_fringe_bitmap_id_p): New function.
3758 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
3759 (draw_fringe_bitmap): New function which draws fringe bitmap,
3760 possibly overlaying bitmap with cursor in right fringe or the
3761 overlay arrow in the left fringe.
3762 (update_window_fringes): Do not handle overlay arrow here.
3763 Compare and copy fringe bitmap faces.
3764 (init_fringe_bitmap): New function.
3765 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
3766 define and destroy user defined fringe bitmaps.
3767 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
3768 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
3769 (syms_of_fringe): New function. Defsubr new DEFUNs.
3770 DEFVAR_LISP Voverflow_newline_into_fringe.
3771 (init_fringe_once, init_fringe): New functions.
3772 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
4c1947b9 3773
82722af3
KS
3774 * Makefile.in (obj): Add fringe.o.
3775 (fringe.o): New dependencies.
3776
3777 * dispextern.h (FRINGE_ID_BITS): New definition for number of
3778 bits allocated to hold a fringe number. Increase number of bits
3779 from 4 to 8 to allow user defined fringe bitmaps.
3780 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
3781 left_user_fringe_face_id, right_user_fringe_bitmap,
3782 right_user_fringe_face_id.
3783 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
3784 Move to new file fringe.c.
3785 (MAX_FRINGE_BITMAPS): Define here.
3786 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
3787 and overlay_p. Change member which to int.
3788 (struct redisplay_interface): New members define_fringe_bitmap
3789 and destroy_fringe_bitmap.
3790 (valid_fringe_bitmap_id_p): Add prototype.
3791 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
3792
3793 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
3794 arrows.
3795 (update_frame): Do flush_display if force_flush_display_p to
3796 ensure display (specifically fringes) are updated in a timely
3797 manner when resizing the frame by dragging the mouse.
3798 (update_window_line): Update row if overlay arrow changed.
3799 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
3800 or overlay arrow changed.
3801
3802 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
3803 syms_of_fringe, and init_fringe.
3804
3805 * frame.h (struct frame): New member force_flush_display_p.
3806
3807 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
3808 Add prototypes.
3809
a3993cc8 3810 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
a64387ee 3811 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
a3993cc8
KS
3812 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
3813 Use cursor color for displaying cursor in fringe.
82722af3
KS
3814 (x_redisplay_interface): Add null handlers for
3815 define_fringe_bitmap and destroy_fringe_bitmap functions.
3816
3817 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
3818 xterm.c to handle overlayed fringe bitmaps and to use cursor color
3819 for displaying cursor in fringe.
3820 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
3821 specific functions to define and destroy fringe bitmaps in fringe_bmp.
3822 (w32_redisplay_interface): Add them to redisplay_interface.
3823 (w32_term_init): Call w32_init_fringe instead of explicitly
3824 defining fringe bitmaps in fringe_bmp array.
3825 (x_delete_display): Call w32_reset_fringes instead of explicitly
3826 destroying fringe bitmaps in fringe_bmp array.
3827
3828 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
3829 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
3830 (continued_bits, continuation_bits, ov_bits, first_line_bits)
3831 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
3832 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
3833 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
3834 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
3835 Move fringe handling vars and code to new file fringe.c.
3836 (handle_display_prop): Handle left-fringe and right-fringe
3837 display properties; store user fringe bitmaps in iterator.
3838 (move_it_in_display_line_to): Handle cursor in fringe at eob.
3839 (clear_garbaged_frames): Set force_flush_display_p if resized.
3840 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
3841 (display_line): Handle cursor in fringe at eob.
3842 (display_line): Set row user fringe bitmaps from iterator.
3843
3844 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
3845 Use cursor color for displaying cursor in fringe.
3846 (x_redisplay_interface): Add null handlers for
3847 define_fringe_bitmap and destroy_fringe_bitmap functions.
3848
030400eb
JD
38492004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3850
3851 * macfns.c (Fx_change_window_property): Make doc string and
3852 parameters same as for X version.
3853
3854 * w32fns.c (Fx_change_window_property): Ditto.
3855
3af55251
KS
38562004-02-07 Kim F. Storm <storm@cua.dk>
3857
ec110e9e
KS
3858 * xdisp.c (hscroll_window_tree): Position cursor near to right
3859 margin in hscrolled window when jumping to end of line (rather
3860 than centering cursor).
3861
3af55251
KS
3862 * process.c (wait_reading_process_input): Don't do adaptive read
3863 buffering if waiting for a specific process.
3864
b0c138ce
LT
38652004-02-05 Luc Teirlinck <teirllm@auburn.edu>
3866
3867 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
3868 (Fread_minibuffer, Feval_minibuffer)
3869 (Fread_string, Fread_no_blanks_input)
3870 (Fcompleting_read): Doc fixes.
3871 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
3872 completion-regexp-list. Define Qcase_fold_search and staticpro it.
3873 (read_minibuf): Fix initial comment.
3874 (Ftry_completion, Fall_completions, Ftest_completion): Bind
e8eeaed8 3875 case-fold-search to the value of completion-ignore-case when
b0c138ce
LT
3876 checking completion-regexp-list.
3877 (Fdisplay_completion_list): Make it handle arguments that are
3878 symbols. Doc fix.
3879
9676f5ad 38802004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
64d1e373 3881
9676f5ad 3882 * xterm.h: Add declaration of free_frame_menubar.
64d1e373 3883
9676f5ad
JD
3884 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
3885 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
b0c138ce 3886 (Fx_change_window_property): Add declaration of parameters type and
9676f5ad 3887 format. Remove unused variable cons.
5b698285
JD
3888
3889 * xselect.c: Include stdio,h.
3890
fc1d15f6
KH
38912004-02-05 Kenichi Handa <handa@m17n.org>
3892
ebaff4af
KH
3893 * fns.c (Fset_char_table_range): Fix previous change.
3894
fc1d15f6
KH
3895 * buffer.c (Fset_buffer_multibyte): Fix docstring.
3896
9676f5ad
JD
38972004-02-04 Luc Teirlinck <teirllm@auburn.edu>
3898
3899 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
3900
da75761f
SM
39012004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
3902
3903 * keymap.c (Vmouse_events): Rename from Vmenu_events.
3904 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
3905
13c5d120
KH
39062004-02-04 Kenichi Handa <handa@m17n.org>
3907
3908 * fns.c (Fset_char_table_range): Handle charsets ascii,
3909 eight-bit-control, and eight-bit-graphic correctly.
3910
2883d842
JR
39112004-02-03 Jason Rumney <jasonr@gnu.org>
3912
3913 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
3914
3915 * w32fns.c (x_to_w32_font): Likewise.
3916
69eff41f
JD
39172004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3918
3919 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
3920 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
3921
3922 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
3923 ClientMessages.
3924
3925 * xselect.c: Include termhooks.h and X11/Xproto.h
3926 (x_check_property_data, x_fill_property_data)
3927 (x_property_data_to_lisp, mouse_position_for_drop)
3928 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
da75761f 3929 (Fx_send_client_event): Move here from xfns.c.
69eff41f
JD
3930 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
3931
da75761f 3932 * xfns.c (x-send-client-message): Move to xselect.c
69eff41f
JD
3933 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
3934 OUTER_P.
3935 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
3936 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
3937 if vector_ret_p is true.
3938 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
69eff41f 3939
a6eeaa81 39402004-02-02 Eli Zaretskii <eliz@gnu.org>
dcdbbb5d
EZ
3941
3942 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
3943 basename of FILE relative to it, not FILE itself.
3944
09721b31
KH
39452004-02-02 Kenichi Handa <handa@m17n.org>
3946
3947 * coding.c (coding_restore_composition): Check invalid
3948 composition data more rigidly.
3949
eb996101
LT
39502004-01-30 Luc Teirlinck <teirllm@auburn.edu>
3951
3952 * fileio.c (Fread_file_name_internal): Correctly handle the case
3953 where insert-default-directory is nil.
3954 (Fread_file_name): Always return an empty string if the user exits
3955 with an empty minibuffer. Adapt the docstring accordingly.
3956 (syms_of_fileio): Adapt the docstring of insert-default-directory
3957 to the change in Fread_file_name.
3958
a6eeaa81 39592004-01-29 Eli Zaretskii <eliz@gnu.org>
a0367d42
EZ
3960
3961 * alloca.c [!alloca]: Fix the prototype for xfree.
3962
13f52ed8
KH
39632004-01-29 Kenichi Handa <handa@m17n.org>
3964
3965 * fns.c (string_char_to_byte): Optimize for ASCII only string.
3966 (string_byte_to_char): Likewise.
3967
d57625a0
JR
39682004-01-28 Peter Runestig <peter@runestig.com>
3969
3970 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
3971
a64387ee 39722004-01-27 Steven Tamm <steventamm@mac.com>
911c78b4
ST
3973
3974 * unexmacosx.c (unexec_copy): Do not copy more than was
3975 requested to prevent overwriting during unexec.
3976
eb37b8fd
JD
39772004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3978
ce38070a
JD
3979 * process.c (sigchld_handler): Add comment about not calling malloc.
3980
eb37b8fd
JD
3981 * process.h: Add extern to synch_process_termsig.
3982
a64387ee 39832004-01-27 Steven Tamm <steventamm@mac.com>
21a3e657 3984
da75761f
SM
3985 * macterm.c (make_mac_frame, make_mac_terminal_frame):
3986 Move setting of scroll bars from make_mac_frame to
3987 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
21a3e657 3988
d62a265d
RS
39892004-01-26 Richard M. Stallman <rms@gnu.org>
3990
3991 * search.c (Freplace_match): Handle nonexistent
3992 back-references properly.
3993
39942004-01-03 Richard M. Stallman <rms@gnu.org>
3995
3996 * window.c (decode_any_window): New function.
3997 (Fwindow_height, Fwindow_width, Fwindow_edges)
3998 (Fwindow_pixel_edges, Fwindow_inside_edges)
3999 (Fwindow_inside_pixel_edges): Use decode_any_window.
4000
ff236419
JD
40012004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4002
4003 * process.h: synch_process_termsig new variable.
4004
4005 * callproc.c: Define synch_process_termsig.
4006 (Fcall_process): Initiate synch_process_termsig to zero and
4007 check if non-zero and get signal name after subprocess has ended.
4008
4009 * process.c (sigchld_handler): Set synch_process_termsig
4010 if terminated by a signal. synch_process_death setting removed.
4011
4012 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
4013
41b867ea
AS
40142004-01-26 Andreas Schwab <schwab@suse.de>
4015
4016 * print.c (print_preprocess): Declare size as EMACS_INT to not
4017 lose bits.
4018 (print_object): Likewise.
4019 * alloc.c (Fpurecopy): Likewise.
4020
a08084ff
LT
40212004-01-25 Luc Teirlinck <teirllm@auburn.edu>
4022
4023 * window.c (Fwindow_minibuffer_p): Doc fix.
4024
b19ac475
JY
40252004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
4026
4027 * editfns.c (Fformat): Make both passes accept the same set of flags.
4028
fe905025
KH
40292004-01-23 Kenichi Handa <handa@m17n.org>
4030
4031 * fns.c (Fmd5): If OBJECT is a buffer different from the current
4032 one, set buffer to OBJECT temporarily.
4033
438fc6c0
SM
40342004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
4035
455316e2
SM
4036 * keyboard.c (kbd_buffer_gcpro): Remove.
4037 (kbd_buffer_store_event, clear_event, Fdiscard_input)
4038 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
4039 Don't initialize and/or maintain the variable any more. It was made
4040 redundant by my commit of 2003-06-15.
4041
438fc6c0
SM
4042 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
4043
5335a4ee
JD
40442004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4045
4046 * lisp.h: Add undef DECL_ALIGN.
4047
dcdaeebc
SM
40482004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
4049
4050 * process.c (wait_reading_process_input) [SYNC_INPUT]:
4051 Check interrupt_input_pending explicitly.
4052
4053 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
4054
4055 * keyboard.c (handle_async_input): New fun,
4056 extracted from input_available_signal.
4057 (input_available_signal, reinvoke_input_signal): Use it.
4058
9076a823
SM
40592004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
4060
d7107586
SM
4061 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
4062
4063 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
4064 manipulation macros for when tags are in the lower bits.
4065 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
4066 (DECL_ALIGN): New macro.
4067 (DEFUN): Use it.
4068
4069 * lisp.h [ENABLE_CHECKING]: Don't force union type.
4070
4071 * s/darwin.h (__attribute__): Remove outdated workaround.
4072
4073 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
4074
4075 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
4076 Don't check range of malloc address.
4077 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
4078
9076a823
SM
4079 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
4080
4081 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
4082
ba029065
KH
40832004-01-19 Kenichi Handa <handa@m17n.org>
4084
4085 * fontset.c (fontset_font_pattern): Fix previous change.
4086
7af0e8d7
MB
40872004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
4088
4089 * xdisp.c (Voverflow_newline_into_fringe)
4090 (move_it_in_display_line_to, redisplay_internal)
4091 (update_window_fringes, redisplay_window, display_line, window):
4092 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
4093 that it compiles without a window-system.
4094 * dispnew.c (direct_output_for_insert, update_window): Likewise.
4095
77a9cf69
KS
40962004-01-16 Kim F. Storm <storm@cua.dk>
4097
4098 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
4099
a64387ee 4100 * buffer.c (init_buffer_once): Set buffer_defaults and
77a9cf69
KS
4101 buffer_local_flags for indicate_buffer_boundaries.
4102 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
4103 default- variable for it.
4104
4105 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
4106 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
d7107586 4107 New members exact_window_width_line_p and cursor_in_fringe_p for
77a9cf69
KS
4108 overflowing newlines into right fringe.
4109 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
4110 and indicate_bottom_line_p for buffer boundaries and scrolling.
4111 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
4112 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
4113 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
4114 and HOLLOW_SQUARE_BITMAP.
4115 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
4116 Add prototypes.
4117
4118 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
4119 instead of related indicator fields.
4120 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
4121 (direct_output_for_insert): Handle exact width lines like
4122 contined lines. Call update_window_fringes.
4123 (update_window): Call update_window_fringes.
4124 (scrolling_window): Don't skip desired rows with changed bitmaps.
4125 Check if fringe bitmaps changes when assigning scrolled rows.
4126
4127 * xdisp.c (Voverflow_newline_into_fringe): New variable.
4128 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
4129 (move_it_in_display_line_to): Overflow newline into fringe for
4130 rows that are exactly as wide as the window.
4131 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
4132 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
4133 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
4134 (fringe_bitmaps): Add new bitmaps.
4135 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
4136 Select proper bitmap for cursor in fringe when appropriate.
4137 Handle alignment of bitmap to top or bottom of row.
4138 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
4139 done by update_window_fringes.
4140 (update_window_fringes, draw_window_fringes): New functions.
4141 (redisplay_internal): Call update_window_fringes in case only
4142 cursor row is updated.
4143 (redisplay_window): Call update_window_fringes.
4144 Explicitly call draw_window_fringes if redisplay was done using
4145 the current matrix or the overlay arrow is in the window.
4146 (try_window_reusing_current_matrix): Mark scrolled rows for
4147 fringe update (to update buffer-boundaries / scrolling icons).
4148 (find_last_unchanged_at_beg_row): Handle exact width lines line
4149 continued lines.
4150 (display_line): Overflow newline into fringe for rows that are
4151 exactly as wide as the window. Don't append space for newline
d7107586 4152 in this case.
77a9cf69
KS
4153 (notice_overwritten_cursor): Explicitly clear cursor bitmap
4154 in fringe as if it had been overwritten.
4155 (erase_phys_cursor): Erase cursor bitmap in fringe.
d7107586 4156 (syms_of_xdisp): Mark show-trailing-whitespace and
77a9cf69
KS
4157 void-text-area-pointer as user options.
4158 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
d7107586 4159
77a9cf69
KS
4160 * xterm.c (x_update_window_end): Call draw_window_fringes.
4161 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
4162 in row instead of actually drawing fringe bitmaps.
4163 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
4164 (x_draw_window_cursor): Draw cursor in fringe.
4165
4166 * w32term.c (x_update_window_end): Call draw_window_fringes.
4167 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
4168 in row instead of actually drawing fringe bitmaps.
4169 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
4170 (w32_draw_window_cursor): Draw cursor in fringe.
4171
4172 * macterm.c (x_update_window_end): Call draw_window_fringes.
4173 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
4174 in row instead of actually drawing fringe bitmaps.
4175 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
4176 (mac_draw_window_cursor): Draw cursor in fringe.
4177
a633a954
JD
41782004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4179
4180 * xterm.c (handle_one_xevent): Don't handle characters that are part
4181 of an old style (XLookupString) compose sequence.
4182
80460525
KH
41832004-01-15 Kenichi Handa <handa@m17n.org>
4184
4185 * search.c (Freplace_match): Use make_multibyte_string or
4186 make_unibyte_string according to the buffer multibyteness.
4187
7fc34f85
SM
41882004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
4189
4190 * alloc.c (struct interval_block, struct string_block)
4191 (struct symbol_block, struct marker_block, live_string_p)
4192 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
4193 Better preserve alignment for objects in blocks.
4194 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
4195
4196 * lread.c (defvar_per_buffer): Remove dead declaration.
4197
4198 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
4199 space size.
4200
66070bd1
JD
42012004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4202
4203 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
4204 if a key press should pop down. Only pop down if a key is pressed
4205 outside the menu/dialog.
4206 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
4207 popup_get_selection.
4208 (create_and_show_dialog): Pass 1 for down_on_keypress to
4209 popup_get_selection.
4210
de7515d6
JD
42112004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4212
4213 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
4214 BLOCK/UNBLOCK_INPUT.
4215
160b1b50
JD
42162004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4217
4218 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
4219 specified.
4220
3a9f36e6
KH
42212004-01-08 Kenichi Handa <handa@m17n.org>
4222
4223 * editfns.c (Fformat): Fix '&' to '&&'.
4224
3803eb32
AS
42252004-01-08 Andreas Schwab <schwab@suse.de>
4226
4227 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
4228 size if PSEUDOVECTOR_FLAG is set.
4229
9da88f37
KH
42302004-01-07 Kenichi Handa <handa@m17n.org>
4231
74ac5074
KH
4232 * charset.c (Fdeclare_equiv_charset): Fix docstring.
4233
9da88f37
KH
4234 * fontset.c (fontset_ref_via_base): Fix previous change.
4235
05faee07
KS
42362004-01-07 Kim F. Storm <storm@cua.dk>
4237
4238 * process.c (read_process_output): Only activate adaptive
4239 buffering if we read less than 256 bytes at a time.
4240
634910c8
KS
42412004-01-06 Kim F. Storm <storm@cua.dk>
4242
4243 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
4244 object and image object. Return glyph width and height.
4245 (mode_line_string, marginal_area_string): Ditto.
4246
4247 * dispextern.h (buffer_posn_from_coords, mode_line_string)
4248 (marginal_area_string): Fix prototypes.
4249
4250 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
f63fd14e 4251 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
634910c8
KS
4252 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
4253
4254 * keyboard.c (make_lispy_position): Use modified mode_line_string,
4255 buffer_posn_from_coords, and marginal_area_string functions to
4256 include both string object and image object in the lispy position.
4257 Also add actual glyph width and height to position.
4258 (read_key_sequence): Use real buffer position from mouse
4259 event to find keymap property even when click is in marginal area.
4260
4261 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
4262 mode_line_string and marginal_area_string functions to handle
4263 both string object and image object properties.
d7107586 4264
57951c2e
AS
42652004-01-06 Andreas Schwab <schwab@suse.de>
4266
4267 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
4268 character.
4269
181e6a61
AS
42702004-01-02 Andreas Schwab <schwab@suse.de>
4271
d7107586
SM
4272 * macterm.c (emacs_options, x_initialized, same_x_server):
4273 Remove unused (and duplicated) definitions.
181e6a61 4274
31e0fbdd
KS
42752004-01-02 Kim F. Storm <storm@cua.dk>
4276
4277 * process.h (struct Lisp_Process): New members for adaptive read
4278 buffering: adaptive_read_buffering, read_output_delay, and
4279 read_output_skip.
4280
4281 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
4282 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
4283 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
4284 (process_output_delay_count, process_output_skip): New vars.
4285 (Vprocess_adaptive_read_buffering): New variable.
4286 (make_process): Initialize adaptive read buffering members.
4287 (Fstart_process): Set adaptive_read_buffering member.
4288 (deactivate_process): Cleanup adaptive read buffering.
4289 (wait_reading_process_input): Temporarily omit delayed
4290 subprocesses from the set of file descriptors to read from;
4291 adjust the select timeout if we skipped any subprocesses.
4292 (read_process_output): Increase adaptive read buffering delay if
4293 we read less than a full buffer; reduce delay when we read a
4294 full buffer.
4295 (send_process): Simplify using local Lisp_Process var.
4296 Reset adaptive read buffering delay after write.
4297 (init_process): Initialize process_output_delay_count and
4298 process_output_skip.
4299 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
4300
68c6a789
JR
43012004-01-01 Jason Rumney <jasonr@gnu.org>
4302
d7107586 4303 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
68c6a789 4304
3f70fe82
LT
43052003-12-30 Luc Teirlinck <teirllm@auburn.edu>
4306
4307 * print.c (Ferror_message_string): Add hyperlink in the docstring
4308 to the definition of `signal' in the Elisp manual.
4309 * eval.c (Fsignal): Ditto.
4310
b6189c3b 43112003-12-29 James Clark <jjc@jclark.com>
c2be49ed
EZ
4312
4313 * fns.c (internal_equal): Return t for two NaN arguments.
4314
7abd90ea
RS
43152003-12-29 Richard M. Stallman <rms@gnu.org>
4316
4317 * data.c (store_symval_forwarding): Handle setting
4318 default-fill-column, etc., by changing the value in
4319 buffers that use the default.
4320
4321 * minibuf.c (Fset_minibuffer_window): Doc fix.
4322
4323 * fileio.c (choose_write_coding_system): Ignore auto_saving
4324 if using the visited file for auto saves.
4325 (Fwrite_region): Don't update SAVE_MODIFF
4326 if auto-saving in visited file.
4327
3e7cfcdc
KH
43282003-12-29 Kenichi Handa <handa@m17n.org>
4329
4330 * dispextern.h (face_font_available_p): Extern it.
4331
4332 * fontset.c (Voverriding_fontspec_alist): New variable.
4333 (lookup_overriding_fontspec): New function.
d7107586 4334 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
3e7cfcdc
KH
4335 (fontset_font_pattern): Likewise.
4336 (regulalize_fontname): New function.
4337 (Fset_fontset_font): Call regulalize_fontname.
4338 (Fset_overriding_fontspec_internal): New function.
d7107586
SM
4339 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
4340 Defsubr Sset_overriding_fontspec_internal.
3e7cfcdc
KH
4341
4342 * xfaces.c (face_font_available_p): New function.
4343
7abd90ea
RS
43442003-12-28 Richard M. Stallman <rms@gnu.org>
4345
4346 * buffer.c (Fother_buffer): Don't crash if BUF is nil
4347 or if its name is nil.
4348
4349 * buffer.c (Fkill_buffer): Don't delete auto-save file
4350 if it's the same as the visited file.
4351
de1d1a40
LT
43522003-12-28 Luc Teirlinck <teirllm@auburn.edu>
4353
4354 * coding.c (Fcheck_coding_system): Doc fix.
4355
204fb75e
KS
43562003-12-28 Kim F. Storm <storm@cua.dk>
4357
4358 * Makefile.in (eval.o): Depend on dispextern.h.
4359
4360 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
4361 image glyph using image's ascent.
4362 (mode_line_string): Return image glyph as object clicked on.
4363 Adjust y0 for image glyph using image's ascent.
4364
4365 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
4366 (struct glyph): New members, ascent and descent. Used to save
4367 this glyph's ascent and descent, instead of having.
4368 (struct glyph): Declare member face_id using FACE_ID_BITS.
4369 (find_hot_spot): Add prototype.
4370
4371 * keyboard.c (Qimage): Remove extern (now in lisp.h).
4372 (QCmap): Declare extern.
4373 (make_lispy_position): When position is inside image hot-spot,
4374 use hot-spot element's id as posn element.
4375
4376 * lisp.h (IMAGEP): New macro to test for image object type.
4377 (Qimage): Declare extern.
4378
4379 * macfns.c (Qimage): Remove extern (now in lisp.h).
4380 (valid_image_p, parse_image_spec): Use IMAGEP macro.
4381
4382 * macterm.c (Qface, Qmouse_face): Remove unused externs.
4383
4384 * w32fns.c (Qimage): Remove extern (now in lisp.h).
4385 (valid_image_p, parse_image_spec): Use IMAGEP macro.
4386
4387 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
4388
4389 * w32term.c (Qface, Qmouse_face): Remove unused externs.
4390
4391 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
4392 pointer types.
4393 (Qrelative_width, Qalign_to): Remove unused variables.
4394 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
4395 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
4396 image maps.
d7107586 4397 (x_y_to_hpos_vpos): Return glyph relative coordinates through
204fb75e
KS
4398 new dx and dy args.
4399 Remove buffer_only_p arg (always 0). Simplify code accordingly.
4400 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
4401 than row's ascent and height, to get sensible height on tall rows.
4402 (build_desired_tool_bar_string): Remove Qimage extern.
4403 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
4404 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
4405 image glyph is alone on the last line.
4406 (append_glyph, append_composite_glyph, produce_image_glyph)
d7107586 4407 (append_stretch_glyph): Set glyph's ascent and descent.
204fb75e 4408 (on_hot_spot_p): New function to check if position is inside an
d7107586 4409 rectangular, circular, or polygon-shaped image hot-spot,
204fb75e
KS
4410 (find_hot_spot): New function to search for image hot-spot.
4411 (Flookup_image_map): New defun to search for image hot-spot.
4412 (define_frame_cursor1): New aux function to determine frame pointer.
4413 (note_mode_line_or_margin_highlight, note_mouse_highlight):
4414 Handle `pointer' text property and :pointer image property to
4415 control frame pointer shape. Detect image hot-spots for pointer
4416 and help_echo properties. Use define_frame_cursor1.
4417 (note_mouse_highlight): Use Vvoid_text_area_pointer.
f63fd14e 4418 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
204fb75e
KS
4419 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
4420
4421 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
4422
4423 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
4424 (Qimage): Remove extern (now in lisp.h).
4425 (valid_image_p, parse_image_spec): Use IMAGEP macro.
4426
4427 * xmenu.c (show_help_event): Remove unused code.
4428
4429 * xterm.c (Qface, Qmouse_face): Remove unused externs.
4430 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
4431 row's ascent and descent, to get a sensible height on tall rows.
4432
fc052137
LT
44332003-12-25 Luc Teirlinck <teirllm@auburn.edu>
4434
4435 * minibuf.c (Fcompleting_read): Undo previous change.
4436
a64387ee 44372003-12-25 Lars Hansen <larsh@math.ku.dk>
b9148500
LH
4438
4439 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
4440 Arguments GCPRO'ed in call to file name handler.
4441
56ffd194
TTN
44422003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
4443
4444 * termcap.c (tgetst1): Scan for "%pN"; if all
4445 N are continuous in [1,9], remove all "%pN".
4446
5202d23d
JD
44472003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4448
f26fab36
JD
4449 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
4450
5202d23d
JD
4451 * xfaces.c (lface_fully_specified_p): Take into account that
4452 MAC OS always have unspecified stipple.
4453
8babaa59
TTN
44542003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
4455
4456 * tparam.c (tparam1): Add handling for `%pN', which
4457 means use param N for the next substitution.
4458
2d176448
TTN
44592003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
4460
4461 * xfaces.c (Fcolor_gray_p): Fix omission bug:
4462 In case `frame' is nil, consult the selected frame.
4463 (Fcolor_supported_p): Likewise.
4464
adb0708c
LT
44652003-12-23 Luc Teirlinck <teirllm@auburn.edu>
4466
000eeb15
LT
4467 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
4468 Doc fixes.
0dc72b11
LT
4469
4470 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
4471 and an integer. Adapt the introductory comment accordingly.
adb0708c
LT
4472 (Fread_from_minibuffer): Delete code moved into read_minibuf.
4473 Doc fix.
4474 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
4475 read_minibuf.
4476 (Fcompleting_read): Delete code moved into read_minibuf.
d7107586 4477 (Ftest_completion): Make it handle obarrays and hash tables correctly.
adb0708c 4478
2e4d132b
KH
44792003-12-03 Kenichi Handa <handa@m17n.org>
4480
4481 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
4482 encoding sequence.
4483
3999c705
KH
44842003-12-01 Kenichi Handa <handa@m17n.org>
4485
4486 * composite.c (syms_of_composite): Don't make the compostion hash
4487 table week.
4488
d344ecbb
LT
44892003-11-30 Luc Teirlinck <teirllm@auburn.edu>
4490
4491 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
4492 * textprop.c (Fget_char_property_and_overlay): New function.
4493 (syms_of_textprop): Defsubr it.
4494
03d6484e
JD
44952003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4496
019b1f0e
JD
4497 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
4498 to compile on terminal configuration.
4499
03d6484e
JD
4500 * fileio.c (Fread_file_name): Check use_file_dialog also before
4501 calling Fx_file_dialog.
4502
4503 * fns.c: use_file_dialog: New variable.
4504 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
4505
442d3fd0
KS
45062003-11-29 Kim F. Storm <storm@cua.dk>
4507
4508 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
4509 (syms_of_msdos): Don't intern and staticpro them.
4510
0f6a07a8
KS
45112003-11-27 Kim F. Storm <storm@cua.dk>
4512
4513 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
4514 coordinates relative to glyph at posn. If glyph is an image,
4515 return that as object at posn. Callers changed.
4516 (mode_line_string, marginal_area_string): Calculate and return
4517 pixel coordinates relative to glyph. Callers changed.
4518
4519 * dispextern.h (buffer_posn_from_coords, mode_line_string)
4520 (marginal_area_string): Fix prototypes.
4521 (window_box_left_offset, window_box_right_offset): Add prototypes.
4522
4523 * frame.h (get_specified_cursor_type, get_window_cursor_type):
4524 Remove prototypes.
4525
4526 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
4527
4528 * keyboard.c (make_lispy_position): Add x and y coordinates
4529 relative to the current glyph as 7th element of position.
4530 If glyph is an image, return it in the object element.
4531 (read_key_sequence): Skip checks for keymap property in cases
4532 where POSN_STRING is not a string (e.g. an image).
4533
4534 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
4535 (Vshow_text_cursor_in_void): New variable.
4536 (glyph_to_pixel_coords): Don't use negative hpos.
4537 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
4538 (append_stretch_glyph): Change ascent arg to be actual value
f63fd14e 4539 in pixels rather than ratio to height. Callers changed.
0f6a07a8
KS
4540 (calc_pixel_width_or_height): New aux function, implementing
4541 pixel based artihmetic for glyph widths and heights.
4542 (produce_stretch_glyph): Use calc_pixel_width_or_height for
4543 :width, :height, :align-to, and :ascent, thus allowing these to
4544 be specified in pixels as well as multiples of characters.
4545 Don't produce stretch glyphs with zero width or height.
4546 (get_specified_cursor_type): Declare static.
4547 (get_window_cursor_type): Declare static. Add glyph arg to be
4548 able to know when cursor is on an image; always substitute
4549 hollow-box cursor for filled-box cursor on images, to avoid
4550 negative images and flicker when blinking the cursor.
4551 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
4552 (note_mode_line_or_margin_highlight): Use non-text cursor rather
4553 than vertical scroll-bar cursor in display margins.
4554 (note_mouse_highlight): Use non-text cursor rather than text
4555 cursor in fringes and over images in the text area.
4556 Use non-text cursor when mouse pointer is outside editable text,
4557 i.e. in the void after end-of-line or end-of-buffer; this was
4558 already done for W32, but is now standard for all systems --
4559 user can toggle show-text-cursor-in-void to get old behaviour.
4560 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
4561 Vdisplay_pixels_per_inch.
4562
00498bfc
AS
45632003-11-25 Andreas Schwab <schwab@suse.de>
4564
4565 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
4566 EMACS_INT to not lose bits.
4567 (Ffillarray): Don't set bits beyond the size of a bool vector.
4568
edaa824d
KS
45692003-11-25 Kim F. Storm <storm@cua.dk>
4570
4571 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
4572 define this defun on systems that cannot use stderr as lvalue.
4573
74d6f539
GM
45742003-11-24 Gerd Moellmann <gerd@gnu.org>
4575
4576 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
4577 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
4578 ld's default is incompatible with unexec.
4579
6a1ff3ba
KS
45802003-11-23 Kim F. Storm <storm@cua.dk>
4581
63dc7c6b
KS
4582 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
4583 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
4584 (Fforce_window_update): New defun.
4585 (syms_of_window): Defsubr it.
4586 (Fset_window_margins, Fset_window_fringes): Doc fix.
4587
6a1ff3ba
KS
4588 * print.c (Fredirect_debugging_output): New defun.
4589 (syms_of_print): Defsubr it.
4590
aef109b7
LT
45912003-11-22 Luc Teirlinck <teirllm@auburn.edu>
4592
4593 * fns.c (Fset_char_table_parent): Doc fix.
4594
6a1ff3ba 45952003-11-22 Kim F. Storm <storm@cua.dk>
63ccbe21
KS
4596
4597 * dispnew.c (buffer_posn_from_coords): Return actual row/column
4598 for glyph clicked on, rather than (unused) pixel positions.
4599 (mode_line_string, marginal_area_string): Change X and Y args to
4600 pointers for returning actual row/column for glyph clicked on.
4601 Simplify and optimize loops.
4602
aef109b7
LT
4603 * dispextern.h (mode_line_string, marginal_area_string):
4604 Update prototypes.
63ccbe21
KS
4605
4606 * keyboard.c (make_lispy_position): New function for generating
4607 mouse click positions from frame and pixel coordinates.
4608 Enhanced to return buffer position and actual row/column for
4609 events outside the text area using updated mode_line_string and
4610 marginal_area_string functions.
4611 Return left-fringe and right-fringe clicks as such, rather than
4612 clicks in text area.
4613 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
4614 pixel_to_glyph_coords, as we never use the results.
4615 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
4616 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
4617 Eliminate unused code in WHEEL_EVENT handling.
4618 (make_lispy_movement): Use make_lispy_position.
4619
4620 * window.c (coordinates_in_window): Remove redundant tests.
4621 Fix returned X pixel value for left-margin.
4622
4623 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
4624 mode_line_string and marginal_area_string parameters.
4625
a64387ee 46262003-11-22 Lars Hansen <larsh@math.ku.dk>
930a9995 4627
d7107586
SM
4628 * w32.c (struct the_group, getgrgid): Add.
4629 * mac.c (struct my_group, getgrgid): Add.
aef109b7 4630
3dbf3426
LT
46312003-11-21 Luc Teirlinck <teirllm@auburn.edu>
4632
4633 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
4634
cae8ddbb 46352003-11-21 Lars Hansen <larsh@math.ku.dk>
ded4064f 4636
d7107586
SM
4637 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
4638 include in call to file name handler. Optionally translate numeric
4639 UID and GID to strings. Update docstring.
4640 (directory_files_internal): Add parameter ID-FORMAT.
4641 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
4642 include in call to file name handler and call to
4643 directory_files_internal. Update Docstring.
4644 (Fdirectory_files): Add dummy parameter in call to
4645 directory_files_internal.
4646 * lisp.h (Qinteger): Add.
4647 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
4648 (Ffile_attributes): Add parameter.
4649 * data.c (Qinteger): Export.
cae8ddbb 4650
2550b848
LT
46512003-11-21 Luc Teirlinck <teirllm@auburn.edu>
4652
3dbf3426 4653 * fns.c (Freverse, Fnreverse): Doc fixes.
2550b848 4654
88380018
KS
46552003-11-19 Kim F. Storm <storm@cua.dk>
4656
4657 * xdisp.c (init_iterator): Initialize it->start to position
4658 before reseating (in case start position is invisible).
4659 (init_to_row_start): Set it->start to row-start.
4660 (redisplay_window): Accept optional_new_start if start position
4661 is invisible (in which case IT_CHARPOS overshoots PT).
4662 (display_line): Setup row->start from it->start (rather than
4663 it->current which is wrong if first char on line is invisible).
4664 When done, reseat it->start to it->current (= start of next row).
4665 (expose_area): Fix exposure of text area when first char (e.g. TAB)
4666 is only partially visible.
4667
4668 * dispextern.h (struct it): New member start.
4669
854c1a59
SM
46702003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
4671
455316e2
SM
4672 * alloc.c (make_float, Fcons): Clear the markbit at init time.
4673 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
4674 of block_index outside of the macro call.
4675 (Fgarbage_collect): Remove null code.
4676
4677 * m/amdx86-64.h: Don't redefine XPNTR.
4678
854c1a59
SM
4679 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
4680 of VALMASK.
4681
4682 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
4683 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
4684 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
4685
4686 * lisp.h (VALMASK): Only define for non-union type.
4687 (MARKBIT): Remove.
4688 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
4689 (XTYPE): Define unconditionally.
4690 (XSETTYPE): Remove one more remnant.
4691 (EQ): Define differently for the union and non-union cases.
4692 (INTMASK): New bit mask.
4693 (struct Lisp_Marker): Move down to prepare for upcoming patch.
4694 (GC_EQ): Delegate to EQ.
4695
4696 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
4697
a0c6ef2d
JD
46982003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4699
4700 * xterm.c (x_window_to_scroll_bar): Move check of display to
4701 where window_id is compared.
4702
859492c4
KS
47032003-11-17 Kim F. Storm <storm@cua.dk>
4704
4705 * dispextern.h (struct it): New member first_vpos.
4706
4707 * xdisp.c (start_display): Set it->first_vpos.
4708 (try_window_id): Use first_vpos to start display in first _text_
4709 line if no reusable lines at start of window with header line.
4710
810f2256
JD
47112003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4712
7c402969 4713 * w32fns.c (XPutPixel):
854c1a59
SM
4714 * w32bdf.c (w32_init_bdf_font):
4715 * sunfns.c (sel_read):
4716 * process.c (Fmake_network_process):
4717 * frame.c (store_frame_param):
4718 * fontset.c (Fset_fontset_font):
4719 * emacs.c (shut_down_emacs):
a64387ee 4720 * ccl.c (ccl_driver): Remove period at end of error message.
7c402969 4721
a32e9bfd
JD
4722 * config.in: Regenerate.
4723
810f2256
JD
4724 * xfns.c (x_window_to_frame, x_any_window_to_frame)
4725 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
4726 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
4727 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
4728 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
4729
4730 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
4731
4732 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
4733 (XTmouse_position, handle_one_xevent): Pass Display* to
4734 x_window_to_scroll_bar.
4735 (x_window_to_scroll_bar): Take a Display* argument.
4736 Check that display for frame is equal to Display* argument.
854c1a59 4737 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
810f2256
JD
4738 x_display_info_for_display instead. Use Display in xev instead
4739 of GDK_DISPLAY.
4740 (x_dispatch_event): Call x_display_info_for_display.
f63fd14e 4741 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
810f2256
JD
4742 (x_connection_closed): Call xg_display_close for GTK.
4743 (x_term_init): Call xg_display_open for additional displays.
4744 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
4745 for GTK.
4746
4747 * xmenu.c (single_menu_item, mouse_position_for_popup)
4748 (x_activate_menubar): Formatting adjustments.
4749
4750 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
4751 adjustments.
4752
4753 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
4754 (xg_display_close, xg_create_default_cursor)
4755 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
4756 handling.
854c1a59
SM
4757 (xg_left_ptr_cursor): Remove.
4758 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
810f2256
JD
4759 cursor here.
4760 (xg_win_to_widget): Take Display* argument, call
4761 gdk_xid_table_lookup_for_display.
4762 (xg_create_frame_widgets, xg_get_file_name, create_menus)
4763 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
4764 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
4765 in FRAME_X_DISPLAY_INFO.
4766 (xg_get_scroll_id_for_window): Take Display* argument.
4767 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
854c1a59 4768 (xg_initialize): Remove xg_left_ptr_cursor.
810f2256
JD
4769
4770 * gtkutil.h: xg_get_scroll_id_for_window, xg_win_to_widget takes
4771 Display* argument also. Declare xg_display_open,
4772 xg_display_close, xg_create_default_cursor.
4773
0b03cc78
JD
47742003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4775
4776 * xterm.c (x_detect_focus_change): Do not change focus frame for
4777 Enter/LeaveNotify if the current focus frame has explicit focus.
4778
77e688fa
KS
47792003-11-14 Kim F. Storm <storm@cua.dk>
4780
4781 * dispnew.c (update_text_area): Fix redisplay error when hscroll
4782 is active and first glyph is only partially visible.
854c1a59 4783
dd429b03
KH
47842003-11-13 Kenichi Handa <handa@m17n.org>
4785
4786 * xdisp.c (select_frame_for_redisplay): New function.
4787 (redisplay_internal): Record also selected_frame for
4788 unwind_redisplay. Call select_frame_for_redisplay before
4789 redrawing each frame.
4790 (unwind_redisplay): Argument changed to a cons.
4791
6d9266f4
LT
47922003-11-12 Luc Teirlinck <teirllm@auburn.edu>
4793
4794 * fns.c (Fstring_to_multibyte): Doc fix.
4795
80060eb3
KH
47962003-11-11 Kenichi Handa <handa@m17n.org>
4797
4798 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
4799
74305183
JD
48002003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4801
4802 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
4803 program specified positions.
4804
cfda993e
JD
48052003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4806
4807 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
4808
df211069
KH
48092003-11-08 Kenichi Handa <handa@m17n.org>
4810
4811 * Makefile.in (lisp): Add kannada.el.
4812 (shortlisp): Likewise.
4813
4307d534
KH
48142003-11-07 Kenichi Handa <handa@m17n.org>
4815
854c1a59
SM
4816 * coding.c (coding_allocate_composition_data):
4817 Reset coding->composing to COMPOSITION_NO.
4307d534
KH
4818 (coding_restore_composition): Detect invalid composition data.
4819 Give Fstring and Fvector a Lispy integer, not C int.
4820
854c1a59
SM
48212003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
4822
4823 * floatfns.c (Flogb): Don't use VALMASK.
4824
4825 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
4826 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
4827
4828 * lisp.h (XINT): Move the cast to clarify what is going on.
4829 (GCTYPEMASK, XSETTYPE): Remove.
4830 (XGCTYPE): Make it an alias of XTYPE.
4831
d04103a1
JD
48322003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4833
4834 * xterm.c (x_term_init): Fix formatting.
4835
da18b5ac
JD
48362003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4837
4838 * gtkutil.h: Declare xg_have_tear_offs, remove xg_keep_popup
4839 and xg_did_tearoff.
4840
4841 * gtkutil.c: Remove variable xg_did_tearoff.
4842 (xg_have_tear_offs): New function.
4843 (tearoff_remove): Just decrease xg_detached_menus.
4844 (tearoff_activate): Increase xg_detached_menus and call
4845 tearoff_remove when tearoff is removed.
854c1a59 4846 (xg_keep_popup): Remove function.
da18b5ac
JD
4847 (create_menus): Give add_tearoff_p as argument to recursive
4848 call to create_menus.
4849 (xg_create_widget): Use variables instead of multiple
4850 strcmp. Tell create_menus to create tear off only for
4851 menu bar menus.
4852 (xg_update_menubar): Change title for a detached menu also.
4853 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
4854 of deep_p.
4855 (xg_initialize): Initialize xg_detached_menus, remove
4856 initialization of xg_did_tearoff.
4857
4858 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
4859 xg_have_tear_offs returns non-zero.
4860 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
4861 call to xg_keep_popup.
4862
64d4923e
AC
48632003-11-01 Andrew Choi <akochoi@shaw.ca>
4864
4865 * macterm.c (XTread_socket): Handle menubar selection and grow
4866 window only for mouseDown events.
854c1a59 4867
6cc8bc07
JD
48682003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4869
4870 * xterm.c (x_term_init): For GTK part, increase x_initialized
4871 to check for more than one display. Use error instead of return 0.
4872
043131c4
AC
48732003-10-31 Andrew Choi <akochoi@shaw.ca>
4874
854c1a59 4875 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
043131c4
AC
4876 (copy_dysymtab): Call it.
4877
bdda99a1
LT
48782003-10-31 Luc Teirlinck <teirllm@auburn.edu>
4879
4880 * eval.c (Fdefvaralias): Doc fix.
4881
800f42ff 48822003-10-26 Luc Teirlinck <teirllm@auburn.edu>
0d11571e
LT
4883
4884 * data.c (Fsetplist): Doc fix.
4885
ef35b389
LK
48862003-10-14 Lute Kamstra <lute@gnu.org>
4887
4888 * window.c (Fset_window_fringes): Clarify docstring.
07107abc 4889
ef35b389 48902003-10-14 Kim F. Storm <storm@cua.dk>
854c1a59 4891
07107abc
KS
4892 * window.c (Fset_window_margins): Simplify arg checking.
4893
f7005886
RS
48942003-10-13 Richard M. Stallman <rms@gnu.org>
4895
4896 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
4897 (print_partial_compiled_pattern): Replace assert with a printout.
4898 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
4899
4900 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
4901
4902 * window.c (Fset_window_margins): Allow only integers as args.
4903 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
4904 Doc fixes.
4905
9c0c2af5
LK
49062003-10-13 Lute Kamstra <lute@gnu.org>
4907
4908 * window.c (Fset_window_fringes): Elaborate docstring.
4909
3f080e4e
AC
49102003-10-12 Andrew Choi <akochoi@shaw.ca>
4911
854c1a59 4912 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
a4887377 4913
3f080e4e
AC
4914 * s/darwin.h (GC_MARK_STACK): Define.
4915
0aa513ed
JD
49162003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4917
4918 * window.c (shrink_windows): New function.
4919 (size_window): Call shrink_windows to calculate window sizes when
4920 shrinking frame with more than one window.
4921
6aa8858a
KS
49222003-10-12 Kim F. Storm <storm@cua.dk>
4923
4924 * xdisp.c (compute_fringe_widths): Doc fix.
4925
c2164d91
KH
49262003-10-08 Kenichi Handa <handa@m17n.org>
4927
854c1a59 4928 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
c2164d91 4929
f82ac129
KH
49302003-10-07 Kenichi Handa <handa@m17n.org>
4931
4932 * coding.c (Qcoding_system_define_form): New variable.
4933 (syms_of_coding): Intern and staticpro it.
4934 (Fcheck_coding_system): Try to autoload the definition of
4935 CODING-SYSTEM.
4936
9296c947
LT
49372003-10-05 Luc Teirlinck <teirllm@auburn.edu>
4938
4939 * fns.c (Frequire): Doc fix.
4940
c1f0671a
JD
49412003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4942
3d8c3826
JD
4943 * xfns.c (Fx_send_client_event): New function as a base for
4944 manipulating extended window manager hints.
6dc15d98 4945 (Fx_send_client_event): Remove unused variable s.
3d8c3826 4946
068ae0fd
JD
4947 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
4948 that function is removed.
4949
4950 * xterm.c (x_set_offset): Use move_offset_left/top instead of
4951 x/y_pixels_outer_diff.
4952 (x_check_expected_move): Calculate move_offset_left/top.
4953
4954 * xterm.h (struct x_output): New members: move_offset_top/left.
4955
854c1a59 4956 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
068ae0fd
JD
4957 call x_set_offset directly.
4958
4959 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
4960
96f09305
JD
4961 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
4962
4963 * xterm.c (x_delete_display): Free font names and font_encoder
4964 in dpyinfo->font_table.
4965
854c1a59
SM
4966 * xfns.c (Fx_close_connection): Only call XFreeFont here.
4967 Move xfree of font names to x_delete_display.
96f09305 4968
c1f0671a
JD
4969 * xterm.h (struct x_display_info): New member, wm_type.
4970 (struct x_output): New members, expected_top/left and
4971 check_expected_move.
4972
4973 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
4974 is received.
854c1a59
SM
4975 (handle_one_xevent): Rename x_check_expected_move from
4976 x_check_fullscreen_move.
c1f0671a
JD
4977 (x_set_offset): Only add WM decoration sizes to modified_top/left
4978 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
854c1a59 4979 (x_check_expected_move): Rename from x_check_fullscreen_move.
c1f0671a
JD
4980 Removed fullscreen specific code. Use check_expected_move,
4981 expected_left/top instead. Also, set wm_type.
4982 (x_term_init): Initialize wm_type to unknown.
4983
4984 * frame.c (x_fullscreen_move): Remove addition of WM decoration
4985 sizes to move_x/y.
4986
be2fdba9
KH
49872003-10-03 Kenichi Handa <handa@m17n.org>
4988
4989 * macterm.c (x_load_font): Clear all members of FONTP before start
4990 filling them.
4991
49922003-10-02 Kenichi Handa <handa@m17n.org>
4993
4994 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
4995 before calling find_ccl_program_func. Call find_ccl_program_func
4996 only when fontp->font_encoder is not NULL.
4997
4998 * xterm.c (x_load_font): Clear all members of FONTP before start
4999 filling them.
5000
26a6e439
JPW
50012003-10-03 John Paul Wallington <jpw@gnu.org>
5002
5003 * keymap.c (map_keymap): Don't abort when binding is a vector.
5004
0d4c2dc2
JR
50052003-10-02 Jason Rumney <jasonr@gnu.org>
5006
854c1a59
SM
5007 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
5008 Sync dependencies with Makefile.in.
a63cf46f
JR
5009 (alloca.o): Remove.
5010
0d4c2dc2
JR
5011 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
5012 filling them.
5013
5014 * w32bdf.c (w32_load_bdf_font): Likewise.
5015
ab8f7d5c
RS
50162003-09-30 Richard M. Stallman <rms@gnu.org>
5017
5018 * term.c (set_tty_color_mode): Calculate current_mode_spec
5019 regardless of value of VAL.
5020
854c1a59 5021 * intervals.c (graft_intervals_into_buffer):
ab8f7d5c
RS
5022 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
5023 Handle over_used when splitting UNDER.
5024
a64387ee 50252003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
ab8f7d5c
RS
5026
5027 * regex.c (regex_compile): Free the stack when returning from function.
5028
3413f972
KH
50292003-09-28 Kenichi Handa <handa@m17n.org>
5030
5031 * fontset.c (Finternal_char_font): Change return value to
5032 cons (FONT-NAME . GLYPH-CODE).
5033
a6eeaa81 50342003-09-28 Eli Zaretskii <eliz@gnu.org>
40409f05
EZ
5035
5036 * term.c (tty_setup_colors): Treat any negative argument as -1.
5037
f98ddc99
KH
50382003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
5039
5040 * process.c (send_process): Delete unused temp_buf.
5041
66c8f1a8
DL
50422003-09-26 Dave Love <fx@gnu.org>
5043
5044 * xterm.c (x_bitmap_mask): Declare.
5045
ca716c26
DL
50462003-09-25 Dave Love <fx@gnu.org>
5047
5048 * Makefile.in (fns.o): Depend on md5.h.
5049
fbe57420
KS
50502003-09-25 Kim F. Storm <storm@cua.dk>
5051
5052 * window.c (set_window_buffer): Fix redisplay problems when
5053 switching between buffers with different display margin widths.
5054
ef6ae4ff
KS
50552003-09-23 Kim F. Storm <storm@cua.dk>
5056
5057 * process.c (set_socket_option): Fix :bindtodevice option.
5058 (Fset_network_process_option): Update process contact list when
5059 setting option succeeds.
5060 (Fmake_network_process): Doc fix.
5061
68e03c1c
DL
50622003-09-23 Dave Love <fx@gnu.org>
5063
7146d1c1 5064 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
68e03c1c 5065
a6eeaa81 50662003-09-22 Eli Zaretskii <eliz@gnu.org>
2f809aae
EZ
5067
5068 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
5069 color mode is an integer number (it could be -1).
5070
8fe7d8c8
RS
50712003-09-22 Richard M. Stallman <rms@gnu.org>
5072
5073 * intervals.c (graft_intervals_into_buffer): Correct the main loop
5074 in the case where OVER is longer than UNDER.
5075
2f71b5ea
MY
50762003-09-22 Masatake YAMATO <jet@gyve.org>
5077
7146d1c1 5078 * window.c (Fset_window_scroll_bars): Validate the value of
2f71b5ea 5079 `vertical_type'.
7146d1c1 5080
0c4da023
KS
50812003-09-21 Kim F. Storm <storm@cua.dk>
5082
5083 * frame.c (Vdefault_frame_scroll_bars): New variable.
5084 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
5085 (syms_of_frame): DEFVAR_LISP it, and initialize according to
5086 window-system default scroll bar position.
5087
b648413b
KS
5088 * window.c (Fwindow_scroll_bars): Doc fix.
5089
8f5b9e34
JD
50902003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5091
854c1a59 5092 * xterm.c (x_set_offset): Take window manager decorations into account.
8f5b9e34 5093
b0f23edf
RS
50942003-09-19 Richard M. Stallman <rms@gnu.org>
5095
5096 * atimer.h: Don't include lisp.h.
5097 (P_): Define it here (as well as elsewhere).
5098
5099 * print.c (Fprin1_to_string): Move the PRINTPREPARE
5100 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
5101
5102 * data.c (Fvariable_binding_locus): New function.
5103 (syms_of_data): defsubr it.
5104 (Flocal_variable_p): Delete duplicate call to indirect_variable.
5105
e1283999
DL
51062003-09-18 Dave Love <fx@gnu.org>
5107
ad5f3636
DL
5108 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
5109
e1283999
DL
5110 * process.c (Fnetwork_interface_info): Fix type error.
5111 (Fnetwork_interface_list): Doc fix.
5112 (read_process_output, read_process_output): Delete unused var.
5113
b8c7fd71
KS
51142003-09-17 Kim F. Storm <storm@cua.dk>
5115
5116 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
5117 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
5118 (Fnetwork_interface_info): Check that ifreq struct has required
5119 fields before accessing them; this requires that those fields are
5120 defined as macros, which may be too restrictive on some platforms,
5121 but it is better than failing on other platforms.
5122 (syms_of_process): Only defsubr above fns when included.
5123
11e0a411
DL
51242003-09-17 Dave Love <fx@gnu.org>
5125
5126 * unexalpha.c: Don't include varargs.h.
5127
e9c50801
KS
51282003-09-17 Kim F. Storm <storm@cua.dk>
5129
5130 * process.c (Fset_process_sentinel): Add sentinel to childp plist
5131 for network process.
5132 (socket_options): Add `:' prefix to option names. Add optbit field.
5133 (set_socket_option): Remove no_error arg and special handling of s < 0.
5134 Return 1<<optbit for known option, 0 for unknown.
5135 Do not interpret 0 as false for boolean option (only nil).
5136 Pass failed option and value to report_file_error.
7146d1c1 5137 (Fset_network_process_options): Replace by Fset_network_process_option.
e9c50801
KS
5138 (Fset_network_process_option): New function to set just one option.
5139 (Fmake_network_process): Allow :coding arg to be a cons.
5140 Allow :server arg to be an integer specifying backlog size.
5141 Remove :options arg, and allow options to be specified directly
5142 as :KEY, VALUE pairs. Parse these options before binding socket.
5143 As before, :reuseaddr t is default for a server process, but this
5144 can now be disabled by specifying :reuseaddr nil.
5145 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
5146 (init_process): Availability of network options is now checked with
5147 simpler syntax (featurep 'make-network-process :OPTION); use loop to
5148 setup features.
5149 (syms_of_process): Fix defsubr's for the replaced functions.
5150
a0fc3644
DL
51512003-09-16 Dave Love <fx@gnu.org>
5152
5153 * Makefile.in: Depend on coding.h.
5154
6df2a645
KS
51552003-09-14 Kim F. Storm <storm@cua.dk>
5156
5157 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
5158 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
5159 (syms_of_process): Defsubr them.
5160
5161 * config.in: Regenerate.
7146d1c1
SM
5162
51632003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
5164
5165 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
5166 * m/news-r6.h (XUNMARK): Remove.
5167 * m/mips.h (XUNMARK): Remove.
5168 * m/mips-siemens.h (XUNMARK): Remove.
5169 * m/iris4d.h (XUNMARK): Remove.
5170 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
5171
0930c1a1
SM
51722003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
5173
31003b9e
SM
5174 * lisp.h (VALBITS): Don't remove 1 for the markbit.
5175 (union Lisp_Object): Use unsigned int for types. Remove markbit.
5176 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
5177 (XTYPE): Use unsigned right-shift.
5178 (XMARKBIT, XMARK, XUNMARK): Remove.
5179
0930c1a1
SM
5180 * alloc.c (init_intervals, init_symbol, init_marker):
5181 Don't preallocate anything.
5182 (Fgarbage_collect, mark_object): Ignore the markbit.
5183
5184 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
5185
19bb0fcd 51862003-09-08 Lute Kamstra <lute@gnu.org>
5df034de
LK
5187
5188 * xdisp.c (pint2hrstr): New function.
5189 (decode_mode_spec): Add `%i' and `%I' specs.
5190 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
5191 for `mode-line-format'.
5192
03bb6a06
AS
51932003-09-07 Andreas Schwab <schwab@suse.de>
5194
5195 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
5196 avoid warning.
5197
a6eeaa81 51982003-09-07 Eli Zaretskii <eliz@gnu.org>
2063d89c 5199
0930c1a1 5200 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
2063d89c 5201
ed159bbf
KS
52022003-09-03 Kim F. Storm <storm@cua.dk>
5203
5204 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
5205 change (superseded by 2002-08-30 change); the default blink-off
5206 cursor is now again "no cursor".
5207
fe64a394
JR
52082003-09-01 Jason Rumney <jasonr@gnu.org>
5209
5210 * makefile.w32-in (alloca.o): Remove.
5211 (coding.o): Depend on intervals.h
5212 (emacs.o, bytecode.o): Depend on window.h
5213
c0175e24
DL
52142003-09-01 Dave Love <fx@gnu.org>
5215
5216 * Makefile.in (alloca.o): Remove commands.
5217 (coding.o): Depend on intervals.h composite.h window.h.
5218 (emacs.o): Depend on window.h keyboard.h keymap.h.
5219 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
5220 (bytecode.o): Depend on window.h.
5221
a24d4cb2
JR
52222003-08-31 Jason Rumney <jasonr@gnu.org>
5223
4bc2315e
JR
5224 * w32term.c (w32_per_char_metric): Allow cached metrics to be
5225 returned even when font_type is unknown.
5226
a24d4cb2
JR
5227 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
5228
9d35adc7
JD
52292003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5230
5231 * xterm.c (x_term_init): Initialize new fields in x_display_info.
5232
5233 * xterm.h (struct x_display_info): Add red/green/blue_bits and
5234 *_offset.
5235
5236 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
5237 calculate pixel value.
5238
6f68b035
GM
52392003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
5240
0930c1a1
SM
5241 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
5242 Don't tell redisplay display is accurate when it's actually been
5243 paused for pending input.
6f68b035 5244
4828b4d7
RS
52452003-08-29 Richard M. Stallman <rms@gnu.org>
5246
5247 * dispnew.c (adjust_glyph_matrix): Call window_box
5248 whenever W is nonzero.
5249
5250 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
5251 (Fkill_local_variable, Fmake_variable_frame_local)
0930c1a1 5252 (Flocal_variable_p, Flocal_variable_if_set_p):
4828b4d7
RS
5253 Use indirect_variable to trace thru variable aliases.
5254
5255 * config.in: Updated.
5256
5257 * callint.c (Fcall_interactively): Save and restore
5258 Vthis_command, Vthis_original_command, real_this_command,
5259 and current_kboard->Vlast_command.
5260
5261 * abbrev.c (Fexpand_abbrev): Insert before deleting.
5262
e019878d
GM
52632003-08-29 Gerd Moellmann <gerd@gnu.org>
5264
5265 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
5266
85478bc6
KH
52672003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
5268
0930c1a1 5269 * coding.c (decode_coding_iso2022): Initialize local variable c2.
85478bc6
KH
5270 (decode_coding_sjis_big5): Likewise.
5271
07ce82d3
JR
52722003-08-27 Jason Rumney <jasonr@gnu.org>
5273
d3703de3
JR
5274 * w32.c (sys_pipe): Protect against file descriptor overflow.
5275
ee4a01d1
JR
5276 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
5277
07ce82d3
JR
5278 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
5279
a64387ee 52802003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
72d19c66
LK
5281
5282 * xfns.c (Vgtk_version_string): New variable.
5283 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
5284
a6eeaa81 52852003-08-24 Eli Zaretskii <eliz@gnu.org>
5459e42a 5286
0930c1a1 5287 * term.c (term_init): Remove `const' from buffer_size's declaration.
3d8714e7 5288
5459e42a
EZ
5289 * Makefile.in (msdos.o): Depend on intervals.h.
5290
0930c1a1 5291 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
5459e42a 5292
231d6cfb
JD
52932003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5294
5295 * xterm.h (struct x_display_info): New fields: client_leader_window
5296 and Xatom_wm_client_leader.
5297
5298 * xterm.c (x_initialize): Move call to x_session_initialize to ...
5299 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
5300
5301 * xsmfns.c (create_client_leader_window): New function.
5302 (x_session_initialize): Call create_client_leader_window, take
5303 dpyinfo as argument.
5304
5305 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
5306
5307 * Makefile.in (xsmfns.o): Add more depenedencies.
5308
afa88464
DL
53092003-08-21 Dave Love <fx@gnu.org>
5310
5311 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
5312
f730033e
KH
53132003-08-21 Kenichi Handa <handa@m17n.org>
5314
5315 * term.c (term_init): Fix previous change; don't rely on the
5316 length of `buffer' if TERMINFO is defined.
5317
6dca786c
DL
53182003-08-20 Dave Love <fx@gnu.org>
5319
5320 * atimer.h: Include lisp.h.
5321
5322 * lisp.h (EMACS_LISP_H): New.
5323 (popup_activated_flag): Don't declare.
5324
5325 * alloca.c: Some merging with gnulib. Change logic and doc
5326 concerning (x)malloc/(x)free -- no longer Emacs-specific.
5327 [DO_BLOCK_INPUT]: Don't include lisp.h.
5328 (xmalloc, xfree): Declare.
5329 (malloc): Don't declare.
5330
0930c1a1 5331 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
6dca786c
DL
5332 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
5333 atimer.h, blockinput.h.
5334
5335 * alloc.c (lisp_align_malloc): Change type of `aligned'.
5336
5337 * alloca.s: Removed.
5338
3a06a6d9
RS
53392003-08-19 Gerd Moellmann <gerd@gnu.org>
5340
5341 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
5342 use -lncurses.
5343
5344 * term.c (term_init): Use a buffer of size 4096 for tgetent since
5345 FreeBSD returns something longer than 2044. Abort if the end of
5346 the buffer is overwritten.
5347
27eeee55
MB
53482003-08-19 Miles Bader <miles@gnu.org>
5349
5350 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
5351
2f297815
GM
53522003-08-19 Gerd Moellmann <gerd@gnu.org>
5353
f4446bbf
GM
5354 * alloc.c (lisp_align_malloc): Check for memory full when
5355 allocating ablocks, which also avoids freeing a pointer into an
5356 ablocks structure.
5357
5358 * puresize.h (BASE_PURESIZE): Increase to 1100000.
5359
0930c1a1 5360 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
2f297815 5361
0e7d7aae
RS
53622003-08-16 Richard M. Stallman <rms@gnu.org>
5363
5364 * editfns.c (Fencode_time): Doc fix.
5365
53662003-08-16 David Ponce <david@dponce.com>
5367
5368 * fileio.c (Fwrite_region): Fix conditional expression to issue
5369 the right message.
5370
b6189c3b 53712003-08-16 Juri Linkov <juri@jurta.org>
0e7d7aae
RS
5372
5373 * syntax.c (Fforward_word): Argument changed to optional.
0930c1a1 5374 Set default value to 1.
0e7d7aae 5375
5d551295
KH
53762003-08-15 Kenichi Handa <handa@m17n.org>
5377
5378 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
5379 what autoscaled.
5380 (best_matching_font): Once we find a better scalable font, set
5381 non_scalable_has_exact_height_p to 1.
5382 (try_font_list): Call try_alternative_families to try any family
5383 with the given registry.
5384
1661e56b
AS
53852003-08-09 Andreas Schwab <schwab@suse.de>
5386
f29181dc
AS
5387 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
5388
1661e56b
AS
5389 * print.c (print_string): Fix printing of multibyte string with
5390 nontrivial printcharfun.
5391
465aa50a
JD
53922003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5393
5394 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
5395
5396 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
5397
e430e5ba
KH
53982003-07-31 Kenichi Handa <handa@m17n.org>
5399
5400 * process.c (read_process_output): Return the actually read bytes
5401 instead of the result of decoding.
5402
97e7188e
KH
54032003-07-31 Kenichi Handa <handa@m17n.org>
5404
5405 * xterm.h (struct x_bitmap_record): New member have_mask.
5406
5407 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
5408 to 0.
5409 (x_create_bitmap_from_file): Likewise.
5410 (x_destroy_bitmap): Check have_mask member before freeing a mask.
5411 (x_destroy_all_bitmaps): Likewise.
5412 (x_create_bitmap_mask): Set have_mask member to 1.
5413
b53094d6
RS
54142003-07-30 Richard M. Stallman <rms@gnu.org>
5415
5416 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
5417
631f2082
JD
54182003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5419
5420 * gtkutil.c (xg_mark_data): Update calls to mark_object.
5421
c855f2ca
RS
54222003-07-29 Richard M. Stallman <rms@gnu.org>
5423
5424 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
5425 Conditionalize XIM code on HAVE_XIM.
5426
5427 * fns.c (Fclear_string): New function.
5428 (syms_of_fns): defsubr it.
5429
b6189c3b 54302003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
17e6d491 5431
0930c1a1 5432 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
17e6d491 5433
29ea8ae9
SM
54342003-07-22 Stefan Monnier <monnier@cs.yale.edu>
5435
5436 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
5437
5438 * buffer.c (delete_all_overlays): New function.
5439 * buffer.h (delete_all_overlays): Declare.
5440 * coding.c (run_pre_post_conversion_on_str):
5441 * print.c (temp_output_buffer_setup):
5442 * fileio.c (Finsert_file_contents):
5443 * minibuf.c (get_minibuffer): Use it.
5444
1dd7ccf2
AC
54452003-07-22 Andrew Choi <akochoi@shaw.ca>
5446
5447 * unexmacosx.c (unexec_regions_sort_compare):
5448 (unexec_regions_merge): New functions. Sort and merge unexec
5449 regions before dumping them.
5450
f57bd967
DL
54512003-07-22 Dave Love <fx@gnu.org>
5452
5453 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
5454
7cdee936
SM
54552003-07-21 Stefan Monnier <monnier@cs.yale.edu>
5456
5457 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
5458 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
5459 MARKBIT as the gcmarkbit for strings.
5460
e50886d3
RS
54612003-07-21 Richard M. Stallman <rms@gnu.org>
5462
5463 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
5464
29ea8ae9 5465 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
e50886d3
RS
5466 (syms_of_fns): Corresponding change.
5467
5468 * alloc.c (syms_of_alloc): Doc fixes.
5469
54702003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
5471
5472 * s/netbsd.h: Use -Wl syntax.
5473
fdc39b59
RS
54742003-07-17 Richard M. Stallman <rms@gnu.org>
5475
5476 * xterm.c (xim_initialize): Redo 6/24 change.
5477
9c53385f
SM
54782003-07-15 Stefan Monnier <monnier@cs.yale.edu>
5479
5480 * buffer.c (copy_overlays): Use EMACS_INT for positions.
5481 (Fswitch_to_buffer): Don't signal an error when switching to the same
5482 buffer in a dedicated window.
5483
5484 * alloc.c: Use bitmaps for cons, as was done for floats.
5485 (init_float, init_cons): Let the normal code allocate the first block.
5486 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
5487 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
5488 New macros.
5489 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
5490 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
5491 (live_cons_p): Check the pointer is not past the `conses' array.
5492 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
5493 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
5494 (survives_gc_p): Use CONS_MARKED_P and simplify.
5495 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
5496
dde13196
PE
54972003-07-13 Paul Eggert <eggert@twinsun.com>
5498
5499 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
5500 puts it into BSS instead, at least on Solaris 8 and 9.
5501 This is a valid optimization, and it may occur on other platforms,
5502 so Emacs should not assume that initializing a static variable to
5503 zero puts it into data.
5504 * alloc.c (pure, staticvec):
5505 Initialize these arrays to nonzero, so that they're not
5506 put into BSS by that optimization.
5507
a801bc34
SM
55082003-07-13 Stefan Monnier <monnier@cs.yale.edu>
5509
5510 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
5511 (lisp_align_malloc): Use posix_memalign is available.
5512 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
5513 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
5514 for consistency. Update users.
5515
0c8b2afa
RS
55162003-07-13 Richard M. Stallman <rms@gnu.org>
5517
5518 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
5519
668c2ab0
JB
55202003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
5521
5522 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
5523 and use the Gtk+ function gtk_window_icon_from_file if available.
5524
5525 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
5526 handle mask of bitmaps.
5527 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
5528 mask property.
5529 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
5530
5531 * xterm.h (xg_set_icon): New function.
5532
800bebe3
RS
55332003-07-12 Paul Eggert <eggert@twinsun.com>
5534
5535 * unexelf.c (unexec): Consider a section to precede the .bss
5536 section if its addresses overlap that of .bss.
5537
69e38995
RS
55382003-07-12 Richard M. Stallman <rms@gnu.org>
5539
5540 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
5541
5542 * config.in (HAVE_CRTIN): Add #undef.
5543 (INLINE): Really inline only if OPTIMIZE is defined.
5544
5545 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
5546 END_FILES_1.
5547 (START_FILES_1, END_FILES_1): New macros (conditional).
a801bc34 5548 (LD_SWITCH_SYSTEM_TEMACS): Define.
69e38995
RS
5549
5550 * s/openbsd.h: Don't include bsd4-3.h.
a801bc34
SM
5551 (TERMINFO): Define.
5552 (LIBS_TERMCAP): Define.
5553 (LD_SWITCH_SYSTEM): Define (two definitions).
69e38995
RS
5554
5555 * xfns.c: Include libpng/png.h instead of png.h.
5556
f1d0c238
AS
55572003-07-11 Andreas Schwab <schwab@suse.de>
5558
5559 * buffer.c (modify_overlay): Update prototype.
5560 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
5561 Likewise.
5562
5f6bf5fe
SM
55632003-07-09 Stefan Monnier <monnier@cs.yale.edu>
5564
5565 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
5566 (struct interval): Move to intervals.h.
5567 (struct Lisp_Marker): Use EMACS_INT for position info.
5568 (forward_point): Remove prototype of defunct function.
5569 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
5570 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
5571 (syms_of_textprop, set_text_properties): Remove prototypes that are
5572 already in intervals.h.
5573
5574 * intervals.h (struct interval): Move from lisp.h.
5575 Use EMACS_INT for position and size info.
5576
5577 * coding.c: Include intervals.h for Fset_text_properties.
5578
5579 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
5580 position and length information.
5581
2765b457
SM
55822003-07-09 Stefan Monnier <monnier@cs.yale.edu>
5583
5584 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
5585 position and length information.
5586
2410d73a
SM
55872003-07-09 Stefan Monnier <monnier@cs.yale.edu>
5588
5589 Change overlays_after and overlays_before so the overlays themselves
5590 are linked into lists, rather than using cons cells. After all each
5591 Lisp_Misc already occupies 5 words, so we can add a `next' field to
5592 Lisp_Overlay for free and save up one cons cell per overlay (not
5593 to mention one indirection when traversing the list of overlay).
5594
5595 * lisp.h (struct Lisp_Overlay): New field `next'.
5596
5597 * buffer.h (struct buffer): Change overlays_before and overlays_after
5598 from Lisp lists of overlays to pointers to overlays.
5599
5600 * buffer.c (overlay_strings, recenter_overlay_lists):
5601 Fix typo in eassert in last commit.
5602 (unchain_overlay): New function.
5603 (add_overlay_mod_hooklist): Use AREF.
5604 (copy_overlays, reset_buffer, overlays_at, overlays_in)
5605 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
5606 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
5607 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
5608 (report_overlay_modification, evaporate_overlays, init_buffer_once):
5609 Adjust to new type of overlays_(before|after).
5610
5611 * alloc.c (mark_object): Mark the new `next' field of overlays.
5612 (mark_buffer): Manually mark the overlays_(after|before) fields.
5613
5614 * coding.c (run_pre_post_conversion_on_str):
5615 * editfns.c (overlays_around):
5616 * xdisp.c (load_overlay_strings):
5617 * fileio.c (Finsert_file_contents):
5618 * indent.c (current_column):
5619 * insdel.c (signal_before_change, signal_after_change):
5620 * intervals.c (set_point_both):
5621 * print.c (temp_output_buffer_setup): Use new type for
5622 overlays_(before|after).
5623
04812929
SM
56242003-07-08 Stefan Monnier <monnier@cs.yale.edu>
5625
5626 * buffer.c (report_overlay_modification): Don't run hooks while
5627 traversing the list of overlays.
5628
5629 * buffer.h (struct buffer): Use an int for overlay_center.
5630 (overlays_at, evaporate_overlays, recenter_overlay_lists)
5631 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
5632
5633 * buffer.c (reset_buffer, recenter_overlay_lists)
5634 (adjust_overlays_for_insert, adjust_overlays_for_delete)
5635 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
5636 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
5637 (overlays_at, evaporate_overlays, recenter_overlay_lists)
5638 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
5639
5640 * xdisp.c (fast_find_position): Remove unused var.
5641
5642 * cmds.c (Qexpand_abbrev): New sym.
5643 (syms_of_cmds): Initialize it.
5644 (internal_self_insert): Use it to call expand-abbrev.
5645
2e7ecf15
KS
56462003-07-09 Kim F. Storm <storm@cua.dk>
5647
f9711de4 5648 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if Emacs
2e7ecf15 5649 was configured with --without-xim.
42f81f64 5650 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
2e7ecf15 5651
c6de56a0
RS
56522003-07-07 Richard M. Stallman <rms@gnu.org>
5653
5654 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
5655
5656 * alloc.c (Fgarbage_collect): Doc fix.
5657
b6189c3b 56582003-07-07 Nozomu Ando <nand@mac.com>
b93fb365
KH
5659
5660 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
5661
bfe1a3f7
SM
56622003-07-06 Stefan Monnier <monnier@cs.yale.edu>
5663
04812929
SM
5664 * minibuf.c (read_minibuf): UNGCPRO before returning.
5665 (Ftry_completion, Fall_completions): Doc fix.
5666
bfe1a3f7
SM
5667 * alloc.c (live_float_p): Check that p is not past the `floats' array,
5668 now that `floats' is not the last element of the struct any more.
5669
ee79d1aa
JR
56702003-07-06 Jason Rumney <jasonr@gnu.org>
5671
5672 * w32term.h (ClipboardSequence_Proc): New type.
5673
5674 * w32fns.c (clipboard_sequence_fn): New variable.
5675 (globals_of_w32fns): Initialize it.
5676
5677 * w32select.c (last_clipboard_sequence_number): New variable.
5678 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
5679 number if possible.
5680
49723c04
SM
56812003-07-06 Stefan Monnier <monnier@cs.yale.edu>
5682
4698665f
SM
5683 * m/amdx86-64.h (MARKBIT):
5684 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
5685 MARKBIT and ARRAY_MARK_FLAG any more.
5686
5687 * m/hp800.h (XSETMARKBIT):
5688 * m/sr2k.h (XSETMARKBIT):
5689 * lisp.h (XSETMARKBIT): Remove unused macro.
5690
49723c04
SM
5691 * lisp.h (mark_object): Change prototype.
5692
5693 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
5694 (last_marked): Change accordingly.
5695 (mark_interval, mark_maybe_object, mark_maybe_pointer)
5696 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
5697 (mark_buffer): Update calls to mark_object.
5698
5699 * bytecode.c (mark_byte_stack):
5700 * fns.c (sweep_weak_table):
5701 * keyboard.c (mark_kboards): Update calls to mark_object.
5702
1d660eca
JR
57032003-07-06 Jason Rumney <jasonr@gnu.org>
5704
5705 * alloc.c (struct ablock): Only include padding when there is some.
5706
618b5ae4
SM
57072003-07-04 Stefan Monnier <monnier@cs.yale.edu>
5708
5709 * alloc.c (ALIGN): Add casts to simplify usage.
5710 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
5711 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
5712 (struct ablock, struct ablocks): New types.
5713 (free_ablock): New global var.
5714 (lisp_align_malloc, lisp_align_free): New functions.
5715 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
5716 (struct float_block): Reorder and add gcmarkbits.
5717 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
5718 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
5719 (init_float, make_float): Use lisp_align_malloc.
5720 (free_float, live_float_p): Don't use `type' any more.
5721 (make_float): Use FLOAT_UNMARK to access to mark bit.
5722 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
5723 Use FLOAT_MARKED_P to access the mark bit.
5724 (pure_alloc): Simplify use of ALIGN.
5725 (mark_object): Use FLOAT_MARK to access the mark bit.
5726 (gc_sweep): Use new macros to access the float's mark bit.
5727 (init_alloc_once): Init free_ablock.
5728
5729 * lisp.h (struct Lisp_Float): Remove unused field `type'.
5730
3ef06d12
SM
57312003-06-27 Stefan Monnier <monnier@cs.yale.edu>
5732
5733 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
5734 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
5735 (allocate_buffer): Move.
5736 (string_bytes): Don't mask markbit of `size_byte'.
5737 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
5738 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
5739 Use the `size' field of buffers (rather than the `name' field) for
5740 the mark bit, as is done for all other vectorlike objects.
5741 Use the new macros to access the mark bit of vectorlike objects.
5742
e81043aa
RS
57432003-06-26 Richard M. Stallman <rms@gnu.org>
5744
5745 * puresize.h (BASE_PURESIZE): Increment base size.
5746
5747 * xdisp.c (fast_find_position): Enable Gerd's new definition.
5748
5749 * xterm.c (xim_initialize): Undo previous change.
5750
2d0834cc
SM
57512003-06-26 Stefan Monnier <monnier@cs.yale.edu>
5752
5753 * alloc.c (survives_gc_p): Simplify.
5754
5755 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
5756
5757 * window.c (Fset_window_dedicated_p): Simplify.
5758 (display_buffer_1): Don't raise the win from which minibuf was entered.
5759 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
5760 (Fminibuffer_selected_window): Simplify.
5761
5762 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
5763
5764 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
5765 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
5766
5767 * insdel.c (check_markers, adjust_markers_for_delete)
5768 (adjust_markers_for_insert, adjust_markers_for_replace)
5769 (prepare_to_modify_buffer, RESTORE_VALUE):
5770 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
5771 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
5772 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
5773 * alloc.c (Fmake_marker, free_marker, gc_sweep):
5774 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
5775 * editfns.c (save_excursion_restore, transpose_markers):
5776 * window.c (delete_window):
5777 * xdisp.c (message_dolog): Update for new types.
5778
d54ae3d8
JD
57792003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5780
a5f696ac
JD
5781 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
5782 (realize_default_face): Use default_face_done_p for the force_p
2d0834cc 5783 argument to set_lface_from_font_name. Set default_face_done_p to one.
a5f696ac
JD
5784
5785 * frame.c (make_frame): Initialize default_face_done_p.
5786
5787 * frame.h (struct frame): Add default_face_done_p.
5788
d54ae3d8
JD
5789 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
5790 will be defined.
5791
2336fe58
SM
57922003-06-25 Stefan Monnier <monnier@cs.yale.edu>
5793
5794 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
5795 Initialize the new field `gcmarkbit'.
5796 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
5797 (mark_interval_tree): Don't mark the tree separately from the nodes.
5798 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
5799 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
5800 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
5801
5802 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
5803 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
5804 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
5805 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
5806 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
5807
bcea31c2
DL
58082003-06-24 Dave Love <fx@gnu.org>
5809
5810 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
5811
5812 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
5813 from gnulib.
5814
2601f59e
RS
58152003-06-21 Richard M. Stallman <rms@gnu.org>
5816
5817 * fileio.c (Fwrite_region): Alternate messages
5818 for append and partial write.
5819
5820 * keyboard.c (read_key_sequence): When converting upcase fn key to
5821 downcase, update fkey and keytran so `backspace' gets translated.
5822
5823 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
5824
5825 * process.c (wait_reading_process_input): Don't signal SIGIO
5826 in batch mode.
5827
b5d2c621
KH
58282003-06-17 Kenichi Handa <handa@m17n.org>
5829
5830 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
5831 composite.h.
5832
5833 * xselect.c: Don't include charset.h, coding.h, composite.h.
5834 (Qforeign_selection): New variable.
5835 (syms_of_xselect): Intern and static it.
5836 (selection_data_to_lisp_data): Return a unibyte string made from
5837 data with `foreign-selection' text property.
5838
6793bc63
SM
58392003-06-15 Stefan Monnier <monnier@cs.yale.edu>
5840
5841 * termhooks.h (EVENT_INIT): New macro.
5842
5843 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
5844
5845 * alloc.c (mark_kboards): Move to keyboard.c.
5846
5847 * keyboard.c (record_asynch_buffer_change, read_avail_input):
5848 * xterm.c (x_dispatch_event):
5849 * xmenu.c (find_and_call_menu_selection):
5850 * xdisp.c (handle_tool_bar_click):
5851 * w32menu.c (menubar_selection_callback):
5852 * sysdep.c (kbd_input_ast, read_input_waiting):
5853 * msdos.c (dos_rawgetc):
5854 * macterm.c (mac_check_for_quit_char):
5855 * macmenu.c (menubar_selection_callback):
5856 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
5857 data to kbd_buffer_store_event.
5858
b3ea810c
KS
58592003-06-15 Kim F. Storm <storm@cua.dk>
5860
5861 * xdisp.c (x_fix_overlapping_area): Always use area relative X
6793bc63 5862 to fix redisplay problem with tall characters (such as \e,AC\e(B).
b3ea810c 5863
b8f75eda
KG
58642003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
5865
5866 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
5867
ba92ce48
KH
58682003-06-12 Kenichi Handa <handa@m17n.org>
5869
5870 * fileio.c (Fwrite_region): Save and restore restriction.
5871
b80263be
DL
58722003-06-12 Dave Love <fx@gnu.org>
5873
5874 * alloca.c (alloca): Declare arg as size_t.
5875
6793bc63
SM
5876 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
5877 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
b80263be 5878
b23c0a83
DL
58792003-06-11 Dave Love <fx@gnu.org>
5880
5881 * search.c (shrink_regexp_cache): Use xrealloc.
5882 (syms_of_search): Use xmalloc.
5883
700e47c2
KS
58842003-06-10 Kim F. Storm <storm@cua.dk>
5885
5886 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
5887 Adjust phys_cursor.x to be relative to window box, rather than
5888 text area before checking -- to ensure cursor is redrawn when
5889 exposing window.
5890 Note: This also fixes a similar (older) bug if display margins
5891 are present.
5892
f11aa0b2
KH
58932003-06-06 Kenichi Handa <handa@m17n.org>
5894
5895 * coding.c (encoding_buffer_size): If coding->type is
5896 coding_type_ccl, double magnification on CRLF encoding.
5897
3d143690
JR
58982003-06-06 Jason Rumney <jasonr@gnu.org>
5899
5900 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
5901 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
5902
5903 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
5904 Mac too.
5905
f16205ca
DL
59062003-06-05 Dave Love <fx@gnu.org>
5907
b23c0a83
DL
5908 * strftime.c: Merge changes from gnulib.
5909
f16205ca
DL
5910 * mktime.c (__mktime_internal): Merge changes from gnulib
5911 involving year 69 and dst2.
5912
5913 Changes to merge with gnulib version and be consistent with the
5914 autoconf test:
5915
6793bc63
SM
5916 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
5917 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
f16205ca
DL
5918 [HAVE_LOCALE_H]: Include locale.h.
5919 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
5920
9b87a0bc
KS
59212003-06-05 Kim F. Storm <storm@cua.dk>
5922
5923 * window.c (coordinates_in_window): Convert X and Y to window
5924 relative coordinates inside mode-line and header-line parts.
5925 Convert X and Y to margin area relative coordinates inside left
5926 and right display margin parts.
5927
5a8a15ec
JR
59282003-06-05 Jason Rumney <jasonr@gnu.org>
5929
5930 * w32fns.c (add_system_logical_colors_to_map): New function.
5931 (Fx_open_connection): Use it.
5932
01ed8ff1
SM
59332003-06-04 Stefan Monnier <monnier@cs.yale.edu>
5934
5935 * process.c (allocate_pty): Revert part of the previous patch.
5936 (Faccept_process_output): Simplify.
5937
b427b65d
JR
59382003-06-04 Jason Rumney <jasonr@gnu.org>
5939
5940 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
5941
5942 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
5943 (lispy_mouse_wheel_names): Remove.
5944 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
5945 Always define drag_and_drop_syms.
5946
5947 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
5948 WHEEL_EVENT events.
5949
914a8c47
SM
59502003-06-03 Stefan Monnier <monnier@cs.yale.edu>
5951
01ed8ff1
SM
5952 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
5953
914a8c47
SM
5954 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
5955
adcb132c
JD
59562003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5957
5958 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
5959 menu item label.
5960
be781fa7
RS
59612003-06-03 Richard M. Stallman <rms@gnu.org>
5962
5963 * window.c (Fwindow_edges): Doc fix.
5964 (Fwindow_pixel_edges, Fwindow_inside_edges)
5965 (Fwindow_inside_pixel_edges): New functions.
5966 (syms_of_window): defsubr them.
5967
5968 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
5969 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
5970
914a8c47
SM
59712003-06-02 Stefan Monnier <monnier@cs.yale.edu>
5972
5973 * dispnew.c (Fsit_for): Don't lie about the number of args.
5974
5b07197a
DL
59752003-06-02 Dave Love <fx@gnu.org>
5976
5977 * callproc.c: Use HAVE_FCNTL_H, not USG5.
5978 (syms_of_callproc) <process-environment>: Doc fix.
5979
5980 * doc.c: Use HAVE_FCNTL_H, not USG5.
5981
5982 * xfaces.c (font_rescale_ratio): Fix for K&R.
5983
5984 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
5985
5986 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
5987
5988 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
5989
5990 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
5991 (xg_create_frame_widgets): Use ENCODE_UTF_8.
5992
d7107586 5993 * xterm.c (Qutf_8): Move to coding.c
5b07197a
DL
5994
5995 * xmenu.c (ENCODE_MENU_STRING): New.
5996 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
5997 Use it.
5998
5999 * coding.h (ENCODE_UTF_8): New.
6000 (Qutf_8): Declare.
6001
6002 * coding.c (Qutf_8): New.
6003 (syms_of_coding): Intern it.
6004
6005 * fns.c: Doc fixes.
6006
7335b336
KH
60072003-06-02 Kenichi Handa <handa@m17n.org>
6008
6009 * buffer.c (Fset_buffer_multibyte): Fix previous change.
6010
914a8c47
SM
60112003-06-01 Stefan Monnier <monnier@cs.yale.edu>
6012
6013 * lread.c (openp): Make sure STR is a string.
6014
9862c135
JR
60152003-06-01 David Ponce <david@dponce.com>
6016
6017 * termhooks.h (enum event_kind): Added new WHEEL_EVENT event.
6018 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
6019
6020 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
6021 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
6022 (discard_mouse_events): Discard WHEEL_EVENT events too.
6023 (lispy_wheel_names, wheel_syms): New.
6024 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
6025 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX
6026 defined.
914a8c47 6027 (make_lispy_event): Add WHEEL_EVENT handler.
9862c135
JR
6028
6029 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
6030 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
6031 WHEEL_EVENT events.
6032
f984e73e
JPW
60332003-05-31 John Paul Wallington <jpw@gnu.org>
6034
6035 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
6036 timer are in lisp/emacs-lisp.
6037
1efcd78f
KH
60382003-05-31 Kenichi Handa <handa@m17n.org>
6039
458c8af4
KH
6040 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
6041 region when a buffer is changed to unibyte.
6042
1efcd78f
KH
6043 * charset.h (VALID_LEADING_CODE_P): New macro.
6044 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
6045
778e2804
KH
6046 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
6047 is nonzero, accept multibyte form of eight-bit-control chars.
6048 (decode_composition_emacs_mule): Likewise.
6049 (decode_coding_emacs_mule): Likewise.
6050 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
6051 multibyte form of eight-bit-control chars.
6052
6053 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
6054 (Finsert_file_contents): If coding-system-for-read is bound to
6055 Qauto_save_coding, use the coding system emacs-mule with special
6056 setting for recovering a file.
6057 (choose_write_coding_system): On auto saving, use the coding
6058 system emacs-mule with special setting for auto saving.
6059 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
6060
034060e4
KH
60612003-05-30 Kenichi Handa <handa@m17n.org>
6062
6063 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
6064 properly before calling ccl_driver.
6065
778e2804 6066 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
034060e4
KH
6067
6068 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is
6069 nonzero.
6070 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
6071 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
6072
595f5aa5
GM
60732003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
6074
6075 * xfaces.c (realize_default_face): Do not abort if lface is
6076 non-existent - reverts change from 2003-05-19.
6077
103e0180
KH
60782003-05-29 Kenichi Handa <handa@m17n.org>
6079
6080 * coding.c (decode_coding_iso2022): Pay attention to the byte
6081 sequence of CTEXT extended segment, and retain those bytes as is.
6082
60832003-05-28 Kenichi Handa <handa@m17n.org>
6084
6085 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjusted for the name change
6086 of CODING_REPLACEMENT_CHARACTER.
6087 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
6088 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
6089 check this flag on encoding.
6090 (encode_coding_sjis_big5): Check
6091 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
6092 (Fset_terminal_coding_system_internal): Set
6093 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
6094 instead of setting CODING_FLAG_ISO_SAFE flag in
6095 terminal_coding.flags.
6096
6097 * coding.h (CODING_REPLACEMENT_CHARACTER): Renamed from
6098 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
6099 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
6100
ff6a3bfb 61012003-05-28 Richard M. Stallman <rms@gnu.org>
45f266dc 6102
ff6a3bfb
RS
6103 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
6104
6105 * eval.c (unbind_to): Move init of this_binding to separate statement.
45f266dc 6106
1963c428
KS
61072003-05-28 Kim F. Storm <storm@cua.dk>
6108
6109 * xdisp.c (expose_window): Fix error in calculation of
6110 window relative coordinates of area to redisplay.
6111
2b5d4601
JR
61122003-05-27 Jason Rumney <jasonr@gnu.org>
6113
6114 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
6115
1c64a4a2
JB
61162003-05-27 David Ponce <david@dponce.com>
6117
6118 Handle W32 mouse wheel events as mouse click events, like in X.
6119
6120 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
6121 MOUSE_WHEEL_EVENT anymore.
6122
6123 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
6124 Scrolling down/up the mouse wheel is respectively mapped to mouse
6125 button 4 and 5.
6126 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
6127 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
6128 WM_MOUSEWHEEL events.
6129
2d031b89
AS
61302003-05-27 Andreas Schwab <schwab@suse.de>
6131
20464fdf
AS
6132 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
6133
2d031b89
AS
6134 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
6135 partially visible line.
6136
6137 * alloc.c (Fgarbage_collect): Fix last change.
6138
97bc76d4
JPW
61392003-05-26 John Paul Wallington <jpw@gnu.org>
6140
6141 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
6142
56613f06
SM
61432003-05-25 Stefan Monnier <monnier@cs.yale.edu>
6144
6145 * window.c (Fset_window_buffer): Add type of `keep_margins'.
6146 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
6147
6148 * window.h (window_box_text_cols): Declare.
6149
6150 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
6151 (x_draw_vertical_border): Remove unused var `f'.
6152
6153 * xfaces.c (build_scalable_font_name): Remove `unused var
6154 pixel_size' warning.
6155
6156 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
6157
6158 * unexelf.c (unexec): Remove `unused var n' warning.
6159
6160 * strftime.c (my_strftime_localtime_r): Remove `defined but
6161 unused' warning.
6162
6163 * process.c (allocate_pty): Remove `unused var stb' and
6164 `cp might be used uninitialized' warnings.
6165
6166 * dispnew.c (mode_line_string): Remove unused var `f'.
6167
6168 * coding.c (find_safe_codings): Remove unused var `i'.
6169
6170 * bytecode.c (Fbyte_code): Remove `unused val' warning.
6171
6172 * buffer.c (Fkill_buffer): Remove unused var `list'.
6173
6174 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
6175
93421a1f
JD
61762003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6177
6178 * frame.c (make_frame): Condition want_fullscreen with
6179 HAVE_WINDOW_SYSTEM.
6180
c4b8aebc
JB
61812003-05-25 Juanma Barranquero <lektu@terra.es>
6182
6183 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
6184 (Fwindow_scroll_bars): Fix typo in docstring.
6185
0416870b
KS
61862003-05-24 Kim F. Storm <storm@cua.dk>
6187
6188 The following changes serve several purposes:
6189
6190 1) Swap the position of fringes and display margins in windows, i.e.
6191 the fringes are now displayed between the margins and the text area
6192 (by default).
6193
6194 2) Allow fringe and scroll bar parameters to be set per-buffer and
6195 per-window (like display margins). Such settings are now stored
6196 in window configurations, preserved when frames are resized, and
9018a88e 6197 copied when windows are split vertically or horizontally.
0416870b
KS
6198 Several bugs related to display margins have been fixed.
6199
6200 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
9018a88e 6201
0416870b
KS
6202 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
6203 rather than FRAME_WIDTH (FRAME_FONT (f)).
6204
6205 5) Introduce a consistent naming of variables, members and macros
6206 depending on whether their value is measured in pixels or in
6207 canonical columns/lines. Pixel dimensions are named *_width and
6208 *_height, while canonical columns/lines are named *_cols and
6209 *_lines. Pixel positions are named *_x and *_y, while column/line
6210 positions are named *_col and *_line.
6211
6212 6) Consolidate more of the X, W32, and MAC gui code by moving
6213 common data into struct frame, and generalize it for the non-gui
6214 case by using suitable defaults.
6215
6216 7) Cleanup and consolidate the macros controlling frame and window
6217 layout into frame.h and window.h, and generalize the use of the
6218 various window_box_* functions (enhanced to handle the new fringe
6219 position and the per-window fringe and scroll bar settings).
6220
6221 * frame.h (struct frame): Rename members height to text_lines,
6222 width to text_cols, window_height to total_lines, window_width to
6223 total_cols, new_height to new_text_lines, new_width to
6224 new_text_cols. All uses changed.
6225 (struct frame): New members which consolidate common members of
6226 x_output, w32_output, and mac_output structures: left_pos,
6227 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
6228 win_gravity, size_hint_flags, border_width, internal_border_width,
6229 line_height, fringe_cols, left_fringe_width, right_fringe_width,
6230 want_fullscreen. All uses changed.
6231 (struct frame): New member column_width contaning the canonical
6232 column width, analogue to line_height. All uses changed.
6233 (struct frame): Rename members scroll_bar_pixel_width to
6234 config_scroll_bar_width, and scroll_bar_cols to
6235 config_scroll_bar_cols. All uses changed.
6236 (struct frame): New member scroll_bar_actual_width which
6237 consolidates and renames the vertical_scroll_bar_extra member of
6238 x_output, w32_output, and mac_output structures. All uses changed.
6239 (FRAME_PIXEL_HEIGHT): Renamed from PIXEL_HEIGHT and moved
6240 from x/w32/macterm.h files. All uses changed. Also change code
6241 which referred to f->output_data...->pixel_height.
6242 (FRAME_PIXEL_WIDTH): Renamed from PIXEL_WIDTH and moved
f63fd14e 6243 from x/w32/macterm.h files. All uses changed. Also change code
0416870b
KS
6244 which referred to f->output_data...->pixel_width.
6245 (FRAME_LINES): Renamed from FRAME_HEIGHT. All uses changed.
6246 Also change code which referred to f->height.
6247 (FRAME_COLS): Renamed from FRAME_WIDTH. All uses changed.
6248 Also change code which referred to f->width.
6249 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
6250 to update new_text_lines and new_text_cols members directly.
6251 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Renamed from
6252 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
6253 (FRAME_CONFIG_SCROLL_BAR_COLS): Renamed from
6254 FRAME_SCROLL_BAR_COLS. All uses changed.
6255 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
6256 Renamed from FRAME_LEFT_SCROLL_BAR_WIDTH and
6257 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
6258 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
6259 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
6260 (FRAME_TOTAL_COLS): Renamed from FRAME_WINDOW_WIDTH.
6261 (SET_FRAME_COLS): Renamed from SET_FRAME_WIDTH.
6262 (FRAME_TOTAL_COLS_ARG): Renamed from FRAME_WINDOW_WIDTH_ARG.
6263 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
6264 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
6265 (FRAME_LINE_HEIGHT): Renamed from CANON_Y_UNIT. Unconditionally
6266 return line_height member (it now has proper value also for
6267 non-window frames).
6268 (FRAME_COLUMN_WIDTH): Renamed from CANON_X_UNIT. Unconditionally
6269 return new column_width member (rather than the default font width).
6270 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
6271 (FRAME_RIGHT_FRINGE_WIDTH): Renamed from FRAME_X_... and moved
6272 from x/w32/macterm.h files. Unconditionally return corresponding
6273 member of frame structure (they now have proper values also for
6274 non-window frames).
6275 (FRAME_TOTAL_FRINGE_WIDTH): Renamed from FRAME_FRINGE_WIDTH.
6276 Calculate return value from left and right widths.
6277 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
6278 internal_border_width member (has proper value for non-window frame).
6279 (FRAME_PIXEL_X_FROM_CANON_X): Renamed from PIXEL_X_FROM_CANON_X.
6280 (FRAME_PIXEL_Y_FROM_CANON_Y): Renamed from PIXEL_Y_FROM_CANON_Y.
6281 (FRAME_CANON_X_FROM_PIXEL_X): Renamed from CANON_X_FROM_PIXEL_X.
6282 (FRAME_CANON_Y_FROM_PIXEL_Y): Renamed from CANON_Y_FROM_PIXEL_Y.
6283 (FRAME_LINE_TO_PIXEL_Y): Renamed from CHAR_TO_PIXEL_ROW,
6284 consolidated from xterm.h, macterm.h, and w32term.h.
6285 (FRAME_COL_TO_PIXEL_X): Renamed from CHAR_TO_PIXEL_COL,
6286 consolidated from xterm.h, macterm.h, and w32term.h.
6287 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Renamed from
6288 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
6289 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Renamed from
6290 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
6291 (FRAME_PIXEL_Y_TO_LINE): Renamed from PIXEL_TO_CHAR_ROW
6292 consolidated from x/mac/w32term.h.
6293 (FRAME_PIXEL_X_TO_COL): Renamed from PIXEL_TO_CHAR_COL
6294 consolidated from x/mac/w32term.h.
6295 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Renamed from
6296 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
6297 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Renamed from
6298 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
6299
6300 * window.h (struct window): Rename members left to left_col,
6301 top to top_line, height to total_lines, width to total_cols,
6302 left_margin_width to left_margin_cols, right_margin_width to
6303 right_margin_cols, orig_height to orig_total_lines, orig_top to
6304 orig_top_line. All uses changed.
6305 (struct window): New members left_fringe_width, right_fringe_width,
6306 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
6307 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
6308 New macros primarily used to simplify other macros.
6309 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
6310 referred to XINT (w->width).
6311 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
6312 referred to XINT (w->height).
6313 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
6314 referred to XINT (w->width) * canon_x_unit.
6315 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
6316 referred to XINT (w->height) * canon_y_unit.
6317 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
6318 referred to XINT (w->left).
6319 (WINDOW_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_EDGE. Change
6320 all uses and code that referred to XINT (w->left) + XINT (w->width).
6321 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
6322 referred to XINT (w->top).
6323 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
6324 referred to XINT (w->top) + XINT (w->height).
6325 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
6326 referred to XINT (w->left) * canon_x_unit.
6327 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
6328 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
6329 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
6330 referred to XINT (w->top) * canon_y_unit.
6331 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
6332 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
6333 (WINDOW_LEFTMOST_P): New macro.
6334 (WINDOW_BOX_LEFT_EDGE_COL): Renamed from WINDOW_LEFT_MARGIN.
6335 All uses changed.
6336 (WINDOW_BOX_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_MARGIN.
6337 All uses changed.
6338 (WINDOW_BOX_LEFT_EDGE_X): Renamed from
6339 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
6340 Do not exclude left fringe width.
6341 (WINDOW_BOX_RIGHT_EDGE_X): Renamed from
6342 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
6343 Do not exclude fringe widths.
6344 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
6345 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
6346 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
6347 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
6348 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
6349 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
6350 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
6351 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
6352 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
6353 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
6354 New macros. Change code which referenced corresponding
6355 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
6356 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
6357 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
6358 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
6359 allow per-window scroll-bar settings.
6360 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
6361 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
6362 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
6363 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
6364 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
6365 FRAME_SCROLL_BAR_WIDTH.
6366 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
9018a88e 6367 (WINDOW_SCROLL_BAR_AREA_X): New macros.
0416870b
KS
6368 (WINDOW_HEADER_LINE_HEIGHT): Renamed from
6369 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
6370 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Renamed from
6371 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
6372 (WINDOW_BOX_TEXT_HEIGHT): Renamed from
6373 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
6374 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
6375 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
6376 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Moved here from dispextern.h.
6377 (WINDOW_LEFT_MARGIN_WIDTH): Renamed from
6378 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
6379 (WINDOW_RIGHT_MARGIN_WIDTH): Renamed from
6380 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
6381 (window_from_coordinates): Update prototype.
6382 (Fset_window_buffer): Update EXFUN.
6383 (set_window_buffer): Update prototype.
9018a88e 6384
0416870b 6385 * dispextern.h (struct glyph_matrix): Rename members window_left_x
9018a88e 6386 to window_left_col, window_top_y to window_top_line. All uses
0416870b
KS
6387 changed.
6388 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
6389 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
6390 internal_border_width is now set to 0 for non-window frames.
6391 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
6392 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
6393 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
6394 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
6395 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
6396 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
6397 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
6398 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
6399 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
9018a88e 6400 Move to window.h and renamed [see window.h changes].
0416870b
KS
6401 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
6402 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
9018a88e
SM
6403 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
6404 Use WINDOW_TOTAL_LINES.
0416870b
KS
6405 (frame_update_line_height): Remove prototype.
6406
6407 * buffer.h (struct buffer): Rename members measured in columns:
6408 left_margin_width to left_margin_cols, right_margin_width to
6409 right_margin_cols. All uses changed.
6410 New members left_fringe_width, right_fringe_width,
6411 fringes_outside_margins for per-buffer fringe settings.
6412 New members scroll_bar_width and vertical_scroll_bar_type for
6413 per-buffer scroll bar settings.
6414
6415 * buffer.c (init_buffer_once): Set buffer_defaults and
6416 buffer_local_flags for new buffer-local variables
6417 left_fringe_width, right_fringe_width, fringes_outside_margins,
6418 scroll_bar_width, and vertical_scroll_bar_type.
6419 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
6420 default-* variables for them.
6421
6422 * dispnew.c: Make (many) trivial substitutions for renamed and
6423 new macros in dispextern.h, frame.h and window.h.
6424 (mode_line_string): No need to adjust width for mode lines, as it
6425 is already adjusted by the caller.
6426 (marginal_area_string): Handle fringes inside/outside margins.
9018a88e 6427
0416870b
KS
6428 * frame.c: Make (many) trivial substitutions for renamed and
6429 new macros in dispextern.h, frame.h and window.h.
6430 (make_frame): Initialize left_fringe_width, right_fringe_width,
6431 fringe_cols, scroll_bar_actual_width, border_width,
6432 internal_border_width, column_width, line_height, x_pixels_diff,
6433 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
6434 members with values suitable for a non-window frames.
6435
6436 * gtkutil.c: Make (many) trivial substitutions for renamed and
6437 new macros in dispextern.h, frame.h and window.h.
9018a88e 6438
0416870b
KS
6439 * indent.c: Make (few) trivial substitutions for renamed and
6440 new macros in dispextern.h, frame.h and window.h.
6441
6442 * keyboard.c: Make (many) trivial substitutions for renamed and
6443 new macros in dispextern.h, frame.h and window.h.
6444 (make_lispy_event): Use window positions returned from
6445 window_from_coordinates when constructing the lisp event for
6446 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
6447 (incorrect) values locally.
6448 (make_lispy_movement): Use window positions returned from
6449 window_from_coordinates when constructing the lisp event, rather
6450 than calculating (incorrect) values locally.
6451
6452 * scroll.c: Make (some) trivial substitutions for renamed and
6453 new macros in dispextern.h, frame.h and window.h.
6454
6455 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
6456 scroll-bars.
6457
6458 * sysdep.c: Make (few) trivial substitutions for renamed and
6459 new macros in dispextern.h, frame.h and window.h.
6460
6461 * term.c: Make (some) trivial substitutions for renamed and
6462 new macros in dispextern.h, frame.h and window.h.
6463
6464 * widget.c: Make (few) trivial substitutions for renamed and
6465 new macros in dispextern.h, frame.h and window.h.
6466
6467 * window.c: Make (many) trivial substitutions for renamed and
6468 new macros in dispextern.h, frame.h and window.h.
6469 (make_window): Initialize new members
6470 left_margin_cols, right_margin_cols, left_fringe_width,
6471 right_fringe_width, fringes_outside_margins, scroll_bar_width,
6472 and vertical_scroll_bar_type.
6473 (coordinates_in_window): Adapted to new fringe/margin positions
9018a88e 6474 and per-window fringes and scroll-bars.
0416870b 6475 Fix bug related to incorrectly adjusting coordinates by
9018a88e 6476 frame's internal_border_width (the effect normally negible since
0416870b
KS
6477 the internal_border_width is typically 0 or 1 pixel, but very
6478 noticeable for an internal_border_width of e.g. 25 pixels).
6479 Upon successful return (other than ON_NOTHING), the coordinates
6480 are now always properly converted to window relative for the
6481 given display element.
6482 (window_from_coordinates): Add new parameters wx and wy to
6483 return the window relative x and y position in the returned
6484 window and part. A null arg means, don't return the position.
6485 All callers changed.
6486 (adjust_window_margins): New function which may reduce the width
6487 of the display margins if a window's text area is too small after
6488 resizing or splitting windows.
6489 (size_window): Fix bug that did not account for display margin
6490 widths when checking the minimum width of a window; use
6491 adjust_window_margins.
6492 (set_window_buffer): Call Fset_window_fringes and
6493 Fset_window_scroll_bars to setup per-window elements.
6494 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
6495 existing display margin, fringe widths, and scroll bar settings
9018a88e
SM
6496 (e.g. after splitting a window or resizing the frame).
6497 All callers changed.
0416870b
KS
6498 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
6499 (Fsplit_window): Duplicate original window's display margin,
6500 fringe, and scroll-bar settings; then call Fset_window_buffer with
6501 KEEP_MARGINS non-nil. This fixes a bug which caused a split
6502 window to only preserve the display margins in one of the windows.
c4b8aebc 6503 When splitting horizontally, call adjust_window_margins on both
0416870b 6504 windows to ensure that the text area of the new windows is non too
f9711de4 6505 narrow. This fixes a bug which could cause Emacs to trap if the
0416870b
KS
6506 width of the split window was less than the width of the display
6507 margins.
9018a88e
SM
6508 (window_box_text_cols): Renamed from window_internal_width.
6509 All uses changed. Adapt to per-window fringes and scroll bars.
0416870b
KS
6510 Fix bug that caused vertical separator to be subtracted also on
6511 window frames. Fix another bug that did not reduce the returned
6512 value by the columns used for display margins.
6513 (window_scroll_line_based): Fix bug related to scrolling too much
6514 when display margins are present (implicitly fixed by the fix to
6515 window_box_text_cols).
6516 (scroll_left, scroll_right): Fix bug related to scrolling too far
6517 by default when display margins are present (implicitly fixed by
6518 the fix to window_box_text_cols).
6519 (struct saved_window): Rename members left to left_col, top to
6520 top_line, width to total_cols, height to total_lines, orig_top to
6521 orig_top_line, orig_height to orig_total_lines. All uses changed.
6522 New members left_margin_cols, right_margin_cols,
6523 left_fringe_width, right_fringe_width, fringes_outside_margins,
6524 scroll_bar_width, and vertical_scroll_bar_type for saving
6525 per-window display elements.
6526 (Fset_window_configuration): Restore display margins, fringes,
6527 and scroll bar settings. This fixes a bug which caused display
6528 margins to be discarded when saving and restoring a window
6529 configuration.
6530 (save_window_save): Save display margins, fringes, and scroll bar
6531 settings. This fixes a bug which caused display margins to be
6532 discarded when saving and restoring a window configuration.
6533 (Fset_window_margins): Do nothing if display margins are not
6534 really changed. Otherwise, call adjust_window_margins to ensure
6535 the text area doesn't get too narrow. This fixes a bug which
f9711de4 6536 could cause Emacs to trap if setting display margins wider than
0416870b
KS
6537 the width of the window.
6538 (Fset_window_fringes): New defun to allow user to specifically set
6539 this window's fringe widths and position vs. display margins.
6540 (Fwindow_fringes): New defun to return window's actual fringe
6541 settings.
6542 (Fset_window_scroll_bars): New defun to allow user to specifically
6543 set this window's scroll bar width and position.
6544 (Fwindow_scroll_bars): New defun to return window's actual scroll
6545 bar settings.
6546 (compare_window_configurations): Also compare display margins,
6547 fringes, and scroll bar settings.
6548 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
6549
6550 * xdisp.c: Make (many) trivial substitutions for renamed and
6551 new macros in dispextern.h, frame.h and window.h.
6552 (window_box_width): Adapt to per-window fringes and scroll bars,
f63fd14e 6553 and new fringe vs. display margin position. Note that returned
0416870b
KS
6554 value is no longer guaranteed to be a whole multiple of the frame
6555 column width, since per-window fringes may now be any width.
6556 (window_box_left_offset): New function like window_box_left, but
6557 value is relative to left border of window (rather than frame).
6558 (window_box_right_offset): New function like window_box_right,
6559 but value is relative to left border of window.
6560 (window_box_left): Adapt to per-window fringes and scroll bars,
6561 and new fringe vs. display margin position. Simplify by using
6562 WINDOW_LEFT_EDGE_X and window_box_left_offset.
6563 (window_box): Allow null args for unnecessary return values;
6564 change/simplify relevant callers.
6565 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
9018a88e
SM
6566 and new fringe vs. display margin position.
6567 Use window_box_left_offset and window_box_right_offset
0416870b 6568 (get_glyph_string_clip_rect): Adapt to per-window fringes and
9018a88e
SM
6569 scroll bars, and new fringe vs. display margin position.
6570 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
0416870b
KS
6571 (draw_fringe_bitmap): Rework to handle per-window fringes and new
6572 fringe vs. display margin position.
6573 (hscroll_window_tree): Use window_box_width instead of window_box.
a64387ee
JB
6574 (redisplay_window): Adapt to per-window scroll bars.
6575 (draw_glyphs): Rework to handle per-window fringes and scroll
9018a88e
SM
6576 bars, and new fringe vs. display margin position.
6577 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
a64387ee 6578 (x_clear_end_of_line): Adapt to per-window fringes and scroll
0416870b
KS
6579 bars, and new fringe vs. display margin position. Fix bug which
6580 increased total width of full_width rows by width of scroll bars
6581 although window's total width already includes that.
6582 (x_fix_overlapping_area): Simplify using window_box_left_offset.
6583 (expose_area): Simplify using window_box_left_offset.
6584 (x_draw_vertical_border): Handle per-window scroll bar settings,
6585 mixing windows with left, right and no scroll bars.
6586
6587 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
6588 where it's used in x_list_fonts (for clarity).
6589 (frame_update_line_height): Remove unused function; functionality
6590 is now done directly when setting the default font in x_set_font.
6591
6592 * xfns.c: Make (many) trivial substitutions for renamed and
6593 new macros in dispextern.h, frame.h and window.h.
6594
6595 * xmenu.c: Make (some) trivial substitutions for renamed and
6596 new macros in dispextern.h, frame.h and window.h.
6597
6598 * xterm.h (struct x_output): Move members left_pos, top_pos,
6599 border_width, pixel_height, pixel_width, line_height,
6600 internal_border_width, vertical_scroll_bar_extra,
6601 left_fringe_width, right_fringe_width, fringe_cols,
6602 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
6603 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
6604 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
6605 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
6606 (PIXEL_WIDTH, PIXEL_HEIGHT)
6607 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
6608 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
6609 frame.h and renamed [see frame.h changes].
6610 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
6611 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
6612 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
6613 and renamed [see frame.h changes].
9018a88e 6614
0416870b
KS
6615 * xterm.c: Make (several) trivial substitutions for renamed and
6616 new macros in dispextern.h, frame.h and window.h.
6617 (x_draw_glyph_string_box): Adapt to per-window fringes and
6618 scroll-bars.
6619 (scroll_run): Adapt to new fringe position.
6620 (glyph_rect): Use window coordinates returned from
6621 window_from_coordinates rather than frame_to_window_pixel_xy.
6622 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
6623 scroll-bars.
6624 (handle_one_xevent): Simplify a USE_GTK conditional.
6625 (x_clip_to_row): Remove superfluous whole_line_p arg and code
6626 (fringes are now inside margins, i.e. always in the clipping area).
6627 All callers changed.
6628 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
6629 directly, then call compute_fringe_widths. Don't call
6630 frame_update_line_height.
6631
6632 * w32term.h (struct w32_output): Move members left_pos, top_pos,
6633 border_width, pixel_height, pixel_width, line_height,
6634 internal_border_width, vertical_scroll_bar_extra,
6635 left_fringe_width, right_fringe_width, fringe_cols,
6636 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
6637 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
6638 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
6639 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
6640 (PIXEL_WIDTH, PIXEL_HEIGHT)
6641 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
6642 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
6643 frame.h and renamed [see frame.h changes].
6644 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
6645 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
6646 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
6647 and renamed [see frame.h changes].
9018a88e 6648
0416870b
KS
6649 * w32term.c: Make (several) trivial substitutions for renamed and
6650 new macros in dispextern.h, frame.h and window.h.
6651 (x_draw_glyph_string_box): Adapt to per-window fringes and
6652 scroll-bars.
6653 (glyph_rect): Use window coordinates returned from
6654 window_from_coordinates rather than frame_to_window_pixel_xy.
6655 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
6656 scroll-bars.
6657 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
6658 (fringes are now inside margins, i.e. always in the clipping area).
6659 All callers changed.
6660 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
6661 directly, then call compute_fringe_widths. Don't call
6662 frame_update_line_height.
6663
6664 * w32console.c: Make (few) trivial substitutions for renamed and
6665 new macros in dispextern.h, frame.h and window.h.
6666
6667 * w32fns.c: Make (many) trivial substitutions for renamed and
6668 new macros in dispextern.h, frame.h and window.h.
6669
6670 * w32menu.c: Make (few) trivial substitutions for renamed and
6671 new macros in dispextern.h, frame.h and window.h.
6672
6673 * macterm.h (struct mac_output): Move members left_pos, top_pos,
6674 border_width, pixel_height, pixel_width, line_height,
6675 internal_border_width, vertical_scroll_bar_extra,
6676 left_fringe_width, right_fringe_width, fringe_cols,
6677 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
6678 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
6679 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
6680 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
6681 (PIXEL_WIDTH, PIXEL_HEIGHT)
6682 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
6683 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
6684 frame.h and renamed [see frame.h changes].
6685 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
6686 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
6687 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
6688 and renamed [see frame.h changes].
9018a88e 6689
0416870b
KS
6690 * macterm.c: Make (several) trivial substitutions for renamed and
6691 new macros in dispextern.h, frame.h and window.h.
6692 (x_draw_glyph_string_box): Adapt to per-window fringes and
6693 scroll-bars.
6694 (glyph_rect): Use window coordinates returned from
6695 window_from_coordinates rather than frame_to_window_pixel_xy.
6696 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
6697 scroll-bars.
6698 (x_clip_to_row): Remove superfluous whole_line_p arg and code
6699 (fringes are now inside margins, i.e. always in the clipping area).
6700 All callers changed.
6701 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
6702 directly, then call compute_fringe_widths. Don't call
6703 frame_update_line_height.
6704
6705 * macfns.c: Make (several) trivial substitutions for renamed and
6706 new macros in dispextern.h, frame.h and window.h.
9018a88e 6707 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
0416870b
KS
6708
6709 * macmenu.c: Make (few) trivial substitutions for renamed and
6710 new macros in dispextern.h, frame.h and window.h.
6711
6712 * msdos.h (struct x_output): Remove members left_pos, top_pos,
6713 and line_height, and use corresponding new members in struct
6714 frame. All uses changed.
6715 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
6716 superseeded by corresponding macros in frame.h.
6717
6718 * msdos.c: Make (several) trivial substitutions for renamed and
6719 new macros in dispextern.h, frame.h and window.h.
6720 (IT_note_mouse_highlight): Use updated window coordinates returned
9018a88e 6721 by window_from_coordinates, rather than adjusting them locally.
0416870b
KS
6722 (internal_terminal_init): No need to initialize line_height here;
6723 it now defaults to 1.
6724
9018a88e
SM
67252003-05-24 Stefan Monnier <monnier@cs.yale.edu>
6726
6727 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
6728 dropping `down' events.
6729
016bd3c0
AS
67302003-05-24 Andreas Schwab <schwab@suse.de>
6731
6732 * coding.c (find_safe_codings): Fix last change.
6733
4dacadcc
TTN
67342003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
6735
6736 * xfns.c (x_window): Fix typo from 2003-05-21 change.
6737
319830ce
SM
67382003-05-23 Stefan Monnier <monnier@cs.yale.edu>
6739
9018a88e
SM
6740 * xdisp.c (display_mode_element): Increase max depth.
6741 Simplify the error handling code. Use a different error string
6742 for the case where we hit the depth limit.
6743
319830ce
SM
6744 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
6745
6746 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
6747
67482003-05-21 Stefan Monnier <monnier@cs.yale.edu>
6749
6750 * intervals.c (get_local_map): Don't get char-property of previous
6751 point any more: get_pos_property already does it and better.
6752
c67de8ba
DL
67532003-05-21 Dave Love <fx@gnu.org>
6754
6755 [Merged from unicode branch.]
6756
6757 * xfns.c (x_window, x_window): Use use_xim.
6758
6759 * xterm.c (use_xim): Initialize.
6760 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
6761 (x_term_init): Maybe set use_xim.
6762
6763 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
6764
edd3ff1d
JR
67652003-05-21 Jason Rumney <jasonr@gnu.org>
6766
6767 * unexw32.c (_start): Remove _fmode initialization.
6768
6769 * emacs.c (main) [WINDOWSNT]: Move it here.
6770
463f55ee
DL
67712003-05-20 Dave Love <fx@gnu.org>
6772
6773 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
6774
af253914
RS
67752003-05-19 Richard M. Stallman <rms@gnu.org>
6776
6777 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
6778 as value for QCfont attribute.
6779 (realize_default_face): lface should already exist; crash if not.
6780 Specify 0 for FORCE_P when calling set_lface_from_font_name.
6781
6782 * frame.c (Fignore_event): Doc fix.
6783
1d211019
KH
67842003-05-19 Kenichi Handa <handa@m17n.org>
6785
6786 * coding.c (decode_coding_string): Handle post-read-conversion
6787 even if the coding doesn't require decoding.
6788
4dd68254
RS
67892003-05-18 Richard M. Stallman <rms@gnu.org>
6790
6791 * callproc.c (Fcall_process_region): Doc fix.
6792
14d87dc9
SM
67932003-05-17 Stefan Monnier <monnier@cs.yale.edu>
6794
deca5d96
SM
6795 * lread.c (Fload): Print a message if package is obsolete.
6796
14d87dc9
SM
6797 * window.c (Fselect_window): Add optional `norecord' arg.
6798 (select_window_1): Fold into Fselect_window.
6799 (select_window_norecord): New function.
6800 (temp_output_buffer_show): Use it. Preserve current buffer.
6801
6802 * window.h (Fselect_window): Update declaration.
6803
6804 * window.c (delete_window, Fother_window, Fset_window_configuration):
6805 * minibuf.c (read_minibuf):
6806 * macterm.c (x_new_focus_frame):
6807 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
6808 * callint.c (Fcall_interactively):
6809 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
6810
6811 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
6812
78f52183
DK
68132003-05-17 David Kastrup <dak@gnu.org>
6814
6815 * process.c (read_process_output): Back out change from 2003-03-09.
6816
14d87dc9
SM
68172003-05-17 Stefan Monnier <monnier@cs.yale.edu>
6818
6819 * editfns.c (get_pos_property): Don't assume that `object' = nil.
6820
6821 * textprop.c (text_property_stickiness): New arg `buffer'.
6822
6823 * intervals.h (text_property_stickiness): New arg `buffer'.
6824 (get_pos_property): Declare.
6825
6826 * intervals.c (get_local_map): Use get_pos_property, to obey
6827 stickiness and empty overlays.
6828 (create_root_interval, graft_intervals_into_buffer): Use BEG.
6829 (merge_properties, intervals_equal, merge_properties_sticky):
6830 Use XCAR, XCDR.
6831 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
6832
1fd1cc2f
RS
68332003-05-17 Richard M. Stallman <rms@gnu.org>
6834
4f9f637a
RS
6835 * minibuf.c (read_minibuf): If buffer is empty, record the default
6836 in the history.
6837 (Fminibuffer_complete_word): When deleting the overlap, take account
6838 of its real position.
6839
6840 * fns.c (map_char_table): Fix previous change.
6841
1fd1cc2f
RS
6842 * syntax.c (find_defun_start):
6843 When open_paren_in_column_0_is_defun_start,
6844 return beginning of buffer.
6845
6846 * lisp.h (map_char_table): Declare added arg.
6847
6848 * fns.c (map_char_table): New arg TABLE gets the master table.
6849 All calls changed.
6850 Process default and inheritance, resorting to Faref if necessary.
6851
6852 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
6853 (Faccessible_keymaps): Pass new arg to map_char_table.
6854
6855 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
6856
6857 * casetab.c (set_case_table): Pass new arg to map_char_table.
6858
6859 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
6860
6861 * lisp.h (specbinding_func): New typedef.
6862 (struct specbinding): Use specbinding_func, to put the `volatile'
6863 in the right place.
6864
6865 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
6866 to avoid GCC warning.
14d87dc9 6867
b6189c3b 68682003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org>
b4bd27c5 6869
14d87dc9 6870 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
b4bd27c5 6871
35fb885d
SM
68722003-05-15 Stefan Monnier <monnier@cs.yale.edu>
6873
6874 * keyboard.c (apply_modifiers): Don't fill the other cache.
6875
9a274fbd
SM
68762003-05-14 Stefan Monnier <monnier@cs.yale.edu>
6877
c55b5fad
SM
6878 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
6879
9a274fbd
SM
6880 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
6881 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
6882 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
6883 (Fset_window_configuration, Fcurrent_window_configuration)
6884 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
6885 (Fpos_visible_in_window_p, mark_window_cursors_off)
6886 (window_internal_height, window_internal_width, Frecenter)
6887 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
6888 (replace_buffer_in_all_windows, init_window_once, init_window)
6889 (syms_of_window, keys_of_window): Move from lisp.h.
6890 * lisp.h: Move window.c declarations to window.h.
6891
6892 * bytecode.c: Include window.h.
6893 * emacs.c: Include window.h.
6894
14d87dc9 6895 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
9a274fbd
SM
6896 (keyremap): Add `parent' field.
6897 (keyremap_step): Use it. Remove `parent' argument.
6898 (read_key_sequence): Setup and use the new `parent' field.
6899
fd93e331
SM
69002003-05-11 Stefan Monnier <monnier@cs.yale.edu>
6901
6902 * keyboard.c (adjust_point_for_property): Ensure termination.
6903
1c4001a1
SM
69042003-05-10 Stefan Monnier <monnier@cs.yale.edu>
6905
6906 * keyboard.c (follow_key): Remove dead variable `did_meta'.
6907 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
6908 duplicated handling of function-key-map and key-translation-map
6909 in read_key_sequence.
6910 (read_key_sequence): Use them.
6911
6912 * keyboard.c (adjust_point_for_property): Try harder to move point
6913 to the non-sticky end of an invisible property.
6914
6915 * xdisp.c (single_display_prop_intangible_p): Make `space' display
6916 property intangible as well.
6917
780379b1
AS
69182003-05-10 Andreas Schwab <schwab@suse.de>
6919
6920 * xmenu.c (single_menu_item): Change last parameter to void* to
6921 avoid warning.
6922
ca2de342
RS
69232003-05-09 Richard M. Stallman <rms@gnu.org>
6924
6925 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
6926 Bind Qinhibit_modification_hooks to t so there will be no GC.
6927 Rename local `tem' to `save_deactivate_mark'.
6928
6929 * eval.c (specpdl_ptr): Declare volatile.
6930 (unbind_to): Copy the whole binding and decrement specpdl_ptr
6931 before doing the work of unbinding it.
6932
6933 * lisp.h (struct specbinding): Declare elements volatile.
6934 (specpdl_ptr): Declare volatile.
6935
6936 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
6937
6938 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
6939 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
6940
347003be
DL
69412003-05-08 Dave Love <fx@gnu.org>
6942
6943 * coding.c (Vlast_coding_system_used): Doc fix.
6944
5adcec23
JR
69452003-05-07 Jason Rumney <jasonr@gnu.org>
6946
6947 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
6948 when system does not support them.
6949
5fe3b8a4
SM
69502003-05-05 Stefan Monnier <monnier@cs.yale.edu>
6951
6952 * fileio.c (Qwrite_region_annotate_functions): New var.
6953 (build_annotations): Use it to process the global part of the hook.
6954 (syms_of_fileio): Init and staticpro it.
6955
6956 * keyboard.c (safe_run_hooks_error): Display a message instead of
6957 silently ignoring the error.
6958
69592003-05-03 Stefan Monnier <monnier@cs.yale.edu>
6960
6961 * keyboard.c (input_available_signal): Mark static.
6962 (menu_bar_items): Use map_keymap.
6963 (menu_bar_one_keymap): Remove.
6964 (menu_bar_item): Adjust arglist (for use in map_keymap).
6965 Properly hide a second binding when not both are keymaps.
6966
6967 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
6968 (single_keymap_panes): Use it and map_keymap.
6969 (single_menu_item): Use skp as well.
6970
6971 * keymap.h (map_keymap_function_t): New type.
6972 (map_keymap): Declare.
6973
6974 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
6975 (map_keymap_call, Fmap_keymap): New functions.
6976 (syms_of_keymap): Defsubr map-keymap.
6977
4b1b4443
JD
69782003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6979
6980 * gtkutil.c (create_dialog, make_widget_for_menu_item)
6981 (make_menu_item, create_menus, xg_update_menu_item): Don't call
6982 ..._with_mnemonic functions for menu items.
6983
1f816871
KH
69842003-05-01 Kenichi Handa <handa@m17n.org>
6985
6986 * coding.c (coding_system_accept_latin_extra_p): Delete this
6987 function.
6988 (find_safe_codings): Pay attention to
6989 the property tranlsation-table-for-encode of each codings.
6990 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
6991
5ed6ba5b
SM
69922003-05-01 Stefan Monnier <monnier@cs.yale.edu>
6993
6994 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
6995
32c06229
SM
69962003-04-30 Stefan Monnier <monnier@cs.yale.edu>
6997
6998 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
6999
7000 * lisp.h (CHECK): Wrap args in parenthesis.
7001 (specbind): Fix doc: symbol = Qnil is not supported any more.
7002
7003 * bytecode.c (Fbyte_code) <unwind-protect>:
7004 Use Fprogn rather than 0 and Qnil.
7005
7006 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
7007 `double', and `triple' modifiers as well.
7008
ed3c3314
RS
70092003-04-30 Richard M. Stallman <rms@gnu.org>
7010
7011 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
7012
7013 * alloc.c (abort_on_gc): New variable.
7014 (Fgarbage_collect): Abort if abort_on_gc is set.
7015
7016 * lisp.h (abort_on_gc): Add decl.
7017
7018 * eval.c (Fsignal): Clear abort_on_gc.
7019
7020 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
32c06229 7021 Reinit FORMAT_START and END before second scan.
ed3c3314
RS
7022
7023 * xdisp.c (move_it_vertically_backward): Do the final big else
7024 even if nlines is 0.
7025
7026 * xdisp.c (redisplay_internal): Finish the per-frame loop
7027 even if redisplay is suspended by input.
7028
0b325c12
AC
70292003-04-24 Andrew Choi <akochoi@shaw.ca>
7030
7031 * macterm.c (x_list_fonts): Return all fonts that match if
7032 maxnames = -1.
7033
4e837cd0
KH
70342003-04-25 Kenichi Handa <handa@m17n.org>
7035
7036 * syntax.c (skip_chars): Fix previous change.
7037
9af7511a
KH
70382003-04-24 Kenichi Handa <handa@m17n.org>
7039
7040 * syntax.c (skip_chars): Make the code faster by using the common
7041 technique of *p, *stop, and *endp.
7042
e3b2c21f
JD
70432003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7044
7045 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
32c06229 7046 tool_bar_items so GTK tool bar expose callback does not access items
e3b2c21f
JD
7047 being updated.
7048
32c06229
SM
70492003-04-19 Stefan Monnier <monnier@cs.yale.edu>
7050
7051 * eval.c (Fapply): Undo last change and add a comment about why.
7052
c6464167
MB
70532003-04-18 Miles Bader <miles@gnu.org>
7054
7055 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
7056 pickier PARSE_MULTIBYTE_SEQ.
7057
e509f168
SM
70582003-04-17 Stefan Monnier <monnier@cs.yale.edu>
7059
7060 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
7061 Use XCDR, XCAR, CONSP.
7062 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
7063 (Fapply): Remove unnecessary GCPRO.
7064
7065 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
7066
7067 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
7068
7069 * buffer.h: Don't hardcode BEG==1.
7070
7071 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
7072
5ceea398
RS
70732003-04-16 Richard M. Stallman <rms@gnu.org>
7074
7075 * xdisp.c (try_window, try_window_reusing_current_matrix):
7076 When at end of window, set window_end_pos to Z-ZV.
7077
7078 * buffer.c (Foverlay_recenter): Doc fix.
7079
e509f168
SM
70802003-04-14 Stefan Monnier <monnier@cs.yale.edu>
7081
7082 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
7083
d243e605
AC
70842003-04-14 Andrew Choi <akochoi@shaw.ca>
7085
7086 * macterm.c (mac_check_for_quit_char): Don't check more often than
7087 once a second.
7088
6901b111
SM
70892003-04-11 Stefan Monnier <monnier@cs.yale.edu>
7090
7091 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
7092 specially, so that they can't hide an implicit switch-frame event.
7093 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
7094 (head_table): Use switch-frame as event_kind for select-window.
7095 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
7096
7097 * editfns.c (Fformat): Lisp_Object/int mixup.
7098 (format2): Remove unused var numargs.
7099
e301806f 71002003-04-11 Kenichi Handa <handa@m17n.org>
aa95b710 7101
6901b111 7102 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
aa95b710
KH
7103 (Qafter_insert_file_set_coding): New variable.
7104 (syms_of_fileio): Initialize and staticpro it. Delete declaration
7105 for after-insert-file-adjust-coding-function.
7106 (Finsert_file_contents): Call Qafter_insert_file_set_coding
7107 instead of Vafter_insert_file_adjust_coding_function.
7108
38914424
KH
71092003-04-11 Kenichi Handa <handa@m17n.org>
7110
7111 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
7112
7113 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
7114 string. Callers changed.
7115
71162003-04-10 Kenichi Handa <handa@m17n.org>
a288d979 7117
6901b111 7118 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
a288d979 7119 (syms_of_fileio): Declare it as a lisp variable.
6901b111
SM
7120 (Finsert_file_contents):
7121 Call Vafter_insert_file_adjust_coding_function before calling
a288d979
KH
7122 decode-format.
7123
f979dc05
JD
71242003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7125
7126 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
7127 get GtkAdjustment as widget now is a GtkRange.
7128
7129 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
7130 GtkRange to avoid memory leak.
7131
f8c6b4c2 71322003-04-09 Kenichi Handa <handa@m17n.org>
cb98871c 7133
50ebc53d
KH
7134 * xfaces.c (Vface_font_rescale_alist): New variable.
7135 (struct font_name): New member rescale_ratio.
7136 (font_rescale_ratio): New function.
6901b111 7137 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
50ebc53d
KH
7138 (better_font_p): On comparing point sized, pay attention to
7139 recale_ratio member of fonts.
7140 (build_scalable_font_name): Reflect font->rescale_ratio in the
7141 font name.
6901b111 7142 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
50ebc53d 7143
cb98871c
KH
7144 * lread.c (read1): Before calling index, check if the 2nd
7145 arguemnt is in ASCII range.
7146
4773b8ca
RS
71472003-04-08 Richard M. Stallman <rms@gnu.org>
7148
b0ada147
RS
7149 * fileio.c (Ffile_symlink_p): Doc fix.
7150
7151 * editfns.c (Fformat): Translate positions of text properties
7152 in the format string to apply them to the result.
7153
4773b8ca
RS
7154 * fileio.c (Finsert_file_contents): Doc fix.
7155 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
7156
71572003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
6901b111 7158
4773b8ca
RS
7159 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
7160
e8f25745 71612003-04-08 Steven Tamm <steventamm@mac.com>
b0ada147 7162
e8f25745
ST
7163 * mac.c (init_mac_osx_environment): Switch libexec and bin so
7164 that self-contained application finds libexec files.
7165
f8c6b4c2 71662003-04-08 Kenichi Handa <handa@m17n.org>
2310d84c 7167
6901b111
SM
7168 * coding.c (code_convert_region_unwind):
7169 Set Vlast_coding_system_used to the argument.
2310d84c
KH
7170 (code_convert_region): If post-read-conversion function changed
7171 the value of last-coding-sytem, keep the new value in
7172 coding->symbol so that it won't be overridden.
7173 (run_pre_post_conversion_on_str): Likewise.
7c086845
KH
7174 (coding_system_accept_latin_extra_p): New function.
7175 (find_safe_codings): Pay attention to characters registered in
7176 latin-extra-code-table.
2310d84c 7177
39c9a034
TTN
71782003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
7179
7180 * Makefile.in (md5.o): Add missing dependency info.
7181
eb67c5d6
RS
71822003-04-06 Richard M. Stallman <rms@gnu.org>
7183
7184 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
7185
7186 * marker.c (verify_bytepos): New function.
7187
7188 * intervals.c (set_intervals_multibyte_1): When becoming
7189 multibyte, adjust right and left child sizes to a whole set of
7190 characters. If an interval gets zero total-length, delete it.
7191 If an interval consists of just its children, delete one of them.
7192
7193 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
7194 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
39c9a034 7195
eb67c5d6
RS
7196 * alloc.c: (VALIDATE_LISP_STORAGE): Macro deleted.
7197 All calls deleted.
7198 (lisp_malloc): Do the work here directly.
7199
b1f81fc5
JB
72002003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
7201
7202 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
7203 char tables.
7204
72052003-04-04 Kenichi Handa <handa@m17n.org>
aa8b70ae
KH
7206
7207 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
7208 destructively change "%S" to "%s".
7209
774666fb
MB
72102003-04-03 Miles Bader <miles@gnu.org>
7211
7212 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
7213 always set.
7214
19c37f01
DL
72152003-04-01 Dave Love <fx@gnu.org>
7216
7217 * xfns.c (xpm_lookup_color): Grok "opaque".
7218
2f4b24c3
AC
72192003-03-31 Andrew Choi <akochoi@shaw.ca>
7220
7221 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
7222 parent window ID.
7223
7224 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
7225
7226 * macterm.h (struct mac_output): Define x_pixels_diff and
7227 y_pixels_diff.
b1f81fc5 7228
9443fcf6
JB
72292003-03-31 Juanma Barranquero <lektu@terra.es>
7230
7231 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
7232 blockinput.h and files included from it.
7233
e072891b
KS
72342003-03-31 Kim F. Storm <storm@cua.dk>
7235
7236 The following changes consolidates the common code related to
7237 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
7238 files into frame.c.
9443fcf6 7239
e072891b
KS
7240 * frame.c: Include blockinput.h.
7241 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
7242 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
7243 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
7244 related vars here.
7245 (struct frame_parm_table, frame_parms): New table for describing
7246 frame parameters and their associated Q-variable.
7247 The order of the parameters corresponds to the sequence of the
7248 frame_parm_handlers table in redisplay_interface.
7249 (x_fullscreen_move, x_set_frame_parameters)
7250 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
7251 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
7252 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
7253 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
7254 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
7255 Generic functions for processing of frame parameters.
7256 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
7257 (display_x_get_resource, x_get_resource_string): Functions for
7258 generic access to X resources.
7259 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
7260 (x_default_parameter, Fx_parse_geometry): Functions for generic
7261 access to frame parameters.
6901b111
SM
7262 (x_figure_window_size): Generic calculation of frame size.
7263 Fixed to add space needed for tool bar. Also setup size_hint_flags.
e072891b
KS
7264 (syms_of_frame): Intern and staticpro frame parameter variables.
7265 Defvar_lisp Vx_resource_class and Vx_resource_name here.
7266 Defsubr Sx_get_resource and Sx_parse_geometry.
9443fcf6 7267
e072891b
KS
7268 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
7269 parameter related vars defined in frame.c.
7270 (EMACS_CLASS): Define here.
7271 (enum FULLSCREEN_*): Define here.
7272 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
7273 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
7274 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
7275 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
7276 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
7277 (x_set_visibility, x_set_autoraise, x_set_autolower)
7278 (x_set_unsplittable, x_set_vertical_scroll_bars)
7279 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
7280 (x_figure_window_size): Add prototypes.
7281
7282 * dispextern.h (frame_parm_handler): New typedef.
7283 (struct redisplay_interface): New member frame_parm_handlers.
7284 (enum resource_types): Move declaration here.
7285 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
7286 (x_default_parameter): Add prototypes.
7287
7288 * window.c: Remove extern decl for frame parameter vars.
7289 (change_window_heights): New generic function;
7290 replaces x_change_window_heights. All users changed.
7291
7292 * window.h (change_window_heights): Add prototype.
7293
7294 * xfaces.c: Remove extern decl for frame parameter vars.
7295
7296 * xterm.h (EMACS_CLASS): Remove. Use generic define.
7297 (struct w32_display_info): Fix type of xrdb member.
7298 (enum FULLSCREEN_*): Remove.
7299 Remove prototypes for generic functions (in frame.h).
7300
7301 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
7302 parameters now defined in frame.h and frame.c.
f63fd14e 7303 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
7304 (enum x_frame_parms): Remove (bogus, unused enum).
7305 (check_x_display_info): Make non-static (for frame.c).
7306 (struct x_frame_parm_table, x_frame_parms): Remove.
7307 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
7308 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
7309 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
7310 (x_change_window_heights, x_set_autoraise, x_set_autolower)
7311 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
7312 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
7313 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
7314 Remove. Use generic functions instead.
7315 (enum resource_types): Remove.
7316 (x_set_scroll_bar_default_width): New global function (for frame.c).
7317 (Fx_create_frame): Depend on x_figure_window_size to add space for
7318 toolbar and setup size_hint_flags.
7319 (x_frame_parm_handlers): New table for redisplay_interface.
7320 (syms_of_xfns): Don't intern/staticpro removed vars.
9443fcf6 7321
e072891b 7322 * xterm.c: Remove unnecessary extern declarations.
f63fd14e 7323 (x_fullscreen_adjust): Remove. Use generic instead.
e072891b
KS
7324 (x_redisplay_interface): Add x_frame_parm_handlers member.
7325
7326 * w32gui.h (XrmDatabase): New (dummy) typedef.
7327
7328 * w32term.h (EMACS_CLASS): Remove. Use generic define.
7329 (struct w32_display_info): Fix type of xrdb member.
7330 (enum FULLSCREEN_*): Remove.
7331 (x_fullscreen_adjust): Remove prototype.
7332
7333 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
7334 parameters now defined in frame.h and frame.c.
f63fd14e 7335 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
7336 (enum x_frame_parms): Remove (bogus, unused enum).
7337 (check_x_display_info): Make non-static (for frame.c).
7338 (struct x_frame_parm_table, x_frame_parms): Remove.
7339 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
7340 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
7341 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
7342 (x_change_window_heights, x_set_autoraise, x_set_autolower)
7343 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
7344 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
7345 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
7346 Remove. Use generic functions instead.
7347 (enum resource_types): Remove.
7348 (x_set_scroll_bar_default_width): New global function (for frame.c).
7349 (Fx_create_frame): Depend on x_figure_window_size to add space for
7350 toolbar and setup size_hint_flags.
7351 (w32_frame_parm_handlers): New table for redisplay_interface.
7352 (syms_of_w32fns): Don't intern/staticpro removed vars.
9443fcf6 7353
e072891b
KS
7354 * w32term.c: Remove unnecessary extern declarations.
7355 (x_fullscreen_adjust): Remove. Use generic instead.
7356 (x_redisplay_interface): Add w32_frame_parm_handlers member.
7357
7358 * w32reg.c (x_get_string_resource): Use XrmDatabase.
7359
7360 * macgui.h (XrmDatabase): New (dummy) typedef.
7361
7362 * macterm.h (EMACS_CLASS): Remove.
7363 (struct mac_display_info): Add xrdb member.
7364 (struct mac_output): Add want_fullscreen member.
7365
7366 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
7367 parameters now defined in frame.h and frame.c.
f63fd14e 7368 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
7369 (check_x_display_info): Make non-static (for frame.c).
7370 (struct x_frame_parm_table, x_frame_parms): Remove.
7371 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
7372 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
7373 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
7374 (x_change_window_heights, x_set_autoraise, x_set_autolower)
7375 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
7376 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
7377 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
7378 Remove. Use generic functions instead.
7379 (enum resource_types): Remove.
7380 (x_set_scroll_bar_default_width): New global function (for frame.c).
7381 (mac_frame_parm_handlers): New table for redisplay_interface.
7382 (syms_of_macfns): Don't intern/staticpro removed vars.
9443fcf6 7383
e072891b
KS
7384 * macterm.c: Remove unnecessary extern declarations.
7385 (x_redisplay_interface): Add mac_frame_parm_handlers member.
7386
3e6a560b
KS
7387 * Makefile.in (frame.o): Add dependency on blockinput.h and files
7388 included from it (atimer.h and systime.h).
7389
7b7b454e
AS
73902003-03-30 Andreas Schwab <schwab@suse.de>
7391
7392 * xdisp.c (x_insert_glyphs): Fix swapped width and height
7393 parameters for shift_glyphs_for_insert.
7394
7395 * macterm.c (x_redisplay_interface): Add missing entry for
7396 draw_vertical_window_border.
7397
beb402de
KG
73982003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
7399
7400 * fileio.c (Fexpand_file_name): In the no-handler case, after
7401 expanding, look again for a handler and invoke it. This is needed
7402 for filenames like "/foo/../user@host:/bar/../baz" -- the first
7403 expansion produces "/user@host:/bar/../baz" which needs to be
7404 expanded again for the finame result "/user@host:/baz".
7405
b676f356
JD
74062003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7407
7408 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
7409 of area to be redrawn for better performance.
7410
3c671a56
SM
74112003-03-28 Stefan Monnier <monnier@cs.yale.edu>
7412
7413 * xterm.c (take_vertical_position_into_account): Remove.
7414 (xt_action_hook): Call set_vertical_scroll_bar if needed.
7415 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
7416 (xm_scroll_callback, x_create_toolkit_scroll_bar)
7417 (x_set_toolkit_scroll_bar_thumb): Simplify.
7418 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
7419 (XTread_socket): Remove unused var.
7420 (x_make_frame_invisible): Replace goto with else.
7421
7422 * xdisp.c (set_vertical_scroll_bar): New fun.
7423 (redisplay_window): Use it.
7424
84f2e615
RS
74252003-03-26 Richard M. Stallman <rms@gnu.org>
7426
7427 * xdisp.c (update_tool_bar): Recompute tool bar if
7428 update_mode_lines is set. Set w->update_mode_line
7429 only if the tool bar contents actually change.
7430 (update_menu_bar): Undo previous change.
7431
70b6104c
JD
74322003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7433
5fd6f727
JD
7434 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
7435 (xg_frame_set_char_size): Calculate scroll bar width before frame
7436 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
7437 (xg_separator_p): Check for all documented separator types.
7438 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
7439 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
7440
70b6104c
JD
7441 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
7442 so tool bar gets updated.
7443
d9b36d19
SM
74442003-03-26 Stefan Monnier <monnier@cs.yale.edu>
7445
7446 * data.c (store_symval_forwarding): Re-instate part of the code
7447 that was deleted with too much enthusiasm.
7448
74492003-03-25 Stefan Monnier <monnier@cs.yale.edu>
7450
7451 * data.c (store_symval_forwarding): Delete special read-only
7452 hack for type == -1, since we now use ->constant instead.
7453 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
7454
7455 * buffer.c (overlays_in): Declare static.
7456 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
7457 `constant' field rather than the variable's `type' field.
7458
365fa1b3
AC
74592003-03-24 Andrew Choi <akochoi@shaw.ca>
7460
7461 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
7462
7463 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
7464
7465 * fns.c [MAC_OSX]: Do not redefine vector.
7466
7467 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
7468
7469 * macgui.h: Remove definition of No_Cursor.
7470
d9b36d19 7471 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
365fa1b3
AC
7472
7473 * xdisp.c: Define No_Cursor.
7474 (x_write_glyphs, notice_overwritten_cursor)
7475 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
7476 (note_mouse_highlight): Remove Mac-specific code.
7477 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
d9b36d19 7478
c0bcce6f
JPW
74792003-03-24 John Paul Wallington <jpw@gnu.org>
7480
7481 * xdisp.c (redisplay_window): If mini window's buffer is not
7482 empty, then redisplay it like other windows.
7483
a526b96c
KS
74842003-03-23 Kim F. Storm <storm@cua.dk>
7485
7486 * w32term.c (w32_draw_window_cursor): Fix last change.
7487
37ab321e
KH
74882003-03-23 Kenichi Handa <handa@m17n.org>
7489
a526b96c
KS
7490 * alloc.c (make_string_from_bytes, make_specified_string):
7491 Add `const' for the arg CONTENTS.
37ab321e
KH
7492
7493 * lisp.h (make_string_from_bytes, make_specified_string):
7494 Prototypes adjusted.
7495
7863d625
JD
74962003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7497
a526b96c 7498 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
fd4c9408 7499
7863d625
JD
7500 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
7501 (XG_SB_RANGE): New define.
7502
7503 * gtkutil.c (xg_fixed_handle_expose): New function.
7504 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
7505 expose events.
7506 (xg_update_scrollbar_pos): Take two more arguments, left and width
7507 of scroll bar including borders.
7508 Clear left and right part outside scroll bar separately as some
7509 themes have bars that are not an even number of pixels.
d9b36d19 7510 Don't set reallocate_redraws, don't call
7863d625
JD
7511 gdk_window_process_all_updates.
7512 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
7513 so no need to change it. Calculate size and value with XG_SB_RANGE.
7514
d9b36d19
SM
7515 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
7516 Pass left and width of scroll bar including borders to
7863d625
JD
7517 xg_update_scrollbar_pos.
7518
af0ad939
TTN
75192003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
7520
7521 * Makefile.in: Make sure space precedes end-of-line backslashes.
7522
b22139fd
KS
75232003-03-22 Kim F. Storm <storm@cua.dk>
7524
7525 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
7526 Add generic versions here. Remove system specific versions
7527 defined elsewhere.
7528
7529 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
7530 Add prototypes.
7531
6e6410cf
KS
7532 * xterm.h (STORE_NATIVE_RECT): New macro.
7533
5c9cc435
KS
75342003-03-21 Kim F. Storm <storm@cua.dk>
7535
00c64fab
SM
7536 * xdisp.c (get_glyph_string_clip_rect):
7537 Use FRAME_INTERNAL_BORDER_WIDTH.
5c9cc435
KS
7538
7539 * dispextern.h (struct redisplay_interface): Add active_p
7540 argument to draw_window_cursor member. All uses changed.
7541
acd37560
KS
75422003-03-21 Kim F. Storm <storm@cua.dk>
7543
7544 The following changes consolidate code related to writing and
7545 inserting glyphs, exposing frame, the tool bar, the mouse face,
7546 the output cursor, and help echo from xterm.c, w32term.c and
7547 macterm.c into xdisp.c. It also generalizes the use of the
7548 window_part enum instead of using numeric values throughout.
af0ad939 7549
acd37560
KS
7550 * xdisp.c: Consolidate gui-independent code here.
7551 Include keymap.h.
7552 (Qhelp_echo): Import.
7553 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
7554 (help_echo_string, help_echo_window, help_echo_object)
7555 (previous_help_echo_string, help_echo_pos): Declare here.
7556 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
7557 (estimate_mode_line_height): Define here. Handle windowing
7558 systems directly (without using estimate_mode_line_height_hook).
7559 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
7560 (update_window_cursor, update_cursor_in_window_tree)
7561 (fast_find_position, fast_find_string_pos)
7562 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
7563 (expose_area, expose_line, expose_overlaps, expose_window)
7564 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
7565 declared static as they are only used locally in xdisp.c.
7566 (draw_glyphs): Rename from x_draw_glyphs and make static.
7567 (tool_bar_item_info, notice_overwritten_cursor): Make static.
7568 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
7569 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
af0ad939 7570 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
acd37560
KS
7571 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
7572 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
7573 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
7574 (note_mouse_highlight, x_clear_window_mouse_face)
7575 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
7576 (x_intersect_rectangles): New generic functions for use by xdisp.c
7577 and GUI front-ends.
7578 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
7579 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
7580
7581 * dispextern.h (Display_Info): Generic typedef for *_display_info.
7582 (NativeRectangle): Generic typedef for rectangle type.
7583 (enum window_part): Move here from window.c.
7584 (struct redisplay_interface): New members flush_display_optional,
7585 define_frame_cursor, clear_frame_area, draw_window_cursor,
7586 draw_vertical_window_border, shift_glyphs_for_insert.
7587 Rename member clear_mouse_face to clear_window_mouse_face.
7588 (estimate_mode_line_height_hook): Remove hook.
7589 (auto_raise_tool_bar_buttons_p): Don't declare extern.
7590 (tool_bar_item_info): Remove prototype.
7591 (help_echo_string, help_echo_window, help_echo_object)
7592 (previous_help_echo_string, help_echo_pos)
7593 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
7594 (x_stretch_cursor_p, output_cursor): Declare extern.
7595 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
7596 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
7597 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
7598 (display_and_set_cursor, set_output_cursor, x_cursor_to)
7599 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
7600 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
7601 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
7602 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
7603 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
7604 Add prototypes.
7605 (mode_line_string, marginal_area_string): Fix prototypes.
7606
7607 * window.c (enum window_part): Move to dispextern.h.
7608 (coordinates_in_window): Use enum window_part member names
7609 instead of numbers to describe return value.
7610 (struct check_window_data): Change part member to window_part.
7611 (check_window_containing): Return window_part unaltered.
7612 (window_from_coordinates): Change part arg from int to enum
7613 window_part. Allow part arg to be null. All users changed.
7614
7615 * window.h (window_from_coordinates): Fix prototype.
7616
7617 * term.c (estimate_mode_line_height): Move to xdisp.c.
7618
7619 * keyboard.c (make_lispy_event): Use enum window_part.
7620
7621 * dispnew.c (mode_line_string, marginal_area_string): Use enum
7622 window_part instead of int in arg list. Users changed.
7623
7624 * xterm.h (No_Cursor): Declare as None for X.
7625 (struct mac_output): Replace member cross_cursor by hand_cursor.
af0ad939 7626
acd37560
KS
7627 * xterm.c: Remove consolidated defines and code.
7628 (BETWEEN): Remove unused macro.
7629 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
7630 (x_define_frame_cursor, x_clear_frame_area)
7631 (x_draw_window_cursor): New X-specific functions for RIF.
7632 (x_redisplay_interface): Add new members.
7633
7634 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
7635
7636 * w32term.h (struct w32_output): Remove cross_cursor member.
7637
7638 * w32term.c: Remove consolidated defines and code.
7639 (BETWEEN): Remove unused macro.
7640 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
7641 (w32_define_frame_cursor, w32_clear_frame_area)
7642 (w32_draw_window_cursor): New W32-specific functions for RIF.
7643 (w32_redisplay_interface): Add new members.
7644
a64387ee 7645 * w32gui.h (No_Cursor): Define as 0 for W32.
acd37560
KS
7646 (XRectangle): Add X compatible rectangle type.
7647 (NativeRectangle): Declare as RECT for W32.
7648 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
7649
7650 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
7651
7652 * w32console.c: Remove consolidated defines and code.
af0ad939 7653
acd37560
KS
7654 * msdos.h (Display_Info): Add generic typedef.
7655
7656 * msdos.c: Remove consolidated defines and code.
7657 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
7658
7659 * macterm.h (struct mac_output): Replace member cross_cursor by
7660 hand_cursor.
7661 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
7662
7663 * macterm.c: Remove consolidated defines and code.
7664 (BETWEEN): Remove unused macro.
7665 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
7666 (mac_define_frame_cursor, mac_clear_frame_area)
7667 (mac_draw_window_cursor): New Mac-specific functions for RIF.
7668 (x_redisplay_interface): Add new members.
7669
7670 * macgui.h (No_Cursor): Define as 0 for Mac.
7671 (XRectangle): Add X compatible rectangle type.
7672 (NativeRectangle): Declare as Rect for Mac.
7673 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
7674
204ccab1
KS
7675 * macfns.c (x_set_mouse_color): Setup hand_cursor.
7676 (x_set_cursor_color): Use x_display_and_set_cursor.
acd37560 7677
9443fcf6 7678 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
acd37560
KS
7679 included from it. Add dependency on keymap.h.
7680
7681 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
7682
8ba01a70 76832003-03-21 Kenichi Handa <handa@m17n.org>
3f817c73
KH
7684
7685 * fileio.c (Fexpand_file_name): Fix previous change.
7686
8ba01a70 76872003-03-19 Kenichi Handa <handa@m17n.org>
4f497b0a
KH
7688
7689 * fileio.c (Ffile_name_directory): Reconstruct file name by
7690 make_specified_string.
7691 (Ffile_name_nondirectory, Ffile_name_as_directory)
7692 (Fdirectory_file_name, Fexpand_file_name)
7693 (Fsubstitute_in_file_name): Likewise.
7694 (Fread_file_name): Compare decoded homedir with DIR and
7695 DEFAULT_FILENAME.
7696
7697 * alloc.c (make_specified_string): If NCHARS is negative, count
7698 the number of characters.
7699
19536747
JD
77002003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7701
de38ae5a
JD
7702 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
7703 all widgets.
7704
19536747
JD
7705 * gtkutil.h: Removed xg_ignore_next_thumb.
7706
37ab321e 77072003-03-18 Kenichi Handa <handa@m17n.org>
cb0d4562
KH
7708
7709 * coding.c (Vchar_coding_system_table): Remove this variable.
7710 (Vcoding_system_safe_chars): New variable.
7711 (intersection): Remove this function.
7712 (find_safe_codings): Don't use Vchar_coding_system_table, but try
7713 all codings in SAFE_CODINGS.
00c64fab 7714 (Ffind_coding_systems_region_internal): Adjust for the change of
cb0d4562
KH
7715 find_safe_codings. Get generic coding systems from
7716 Vcoding_system_safe_chars.
7717 (Fdefine_coding_system_internal): New function.
7718 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
7719 Initialize and staticpro Vcoding_system_safe_chars.
7720
17097258
JD
77212003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7722
2a2071c3
JD
7723 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
7724 equal old values before updating.
7725
17097258
JD
7726 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
7727
7728 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
7729
77302003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7731
7732 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
7733 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
7734 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
7735 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
7736 (xg_create_scroll_bar): Pass bar to button event callback.
7737 (xg_find_top_left_in_fixed): New function.
7738 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
7739 whole scroll bar area. Get old position with
7740 xg_find_top_left_in_fixed, calculate and only clear needed areas.
7741 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
7742 dragging is in progress. Calculate whole as for Motif.
7743 Remove code that saved last values. Call gtk_range functions to
7744 set scroll bar sizes.
7745
7746 * gtkutil.h: Removed xg_ignore_next_thumb.
7747
8cb9dfbf
JB
77482003-03-17 Juanma Barranquero <lektu@terra.es>
7749
7750 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
7751 and files included from it.
7752
00c64fab
SM
77532003-03-18 Stefan Monnier <monnier@cs.yale.edu>
7754
7755 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
7756 multiple occurrences of the same keymap under different prefixes.
7757 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
7758
c45bb3b2
JR
77592003-03-16 Jason Rumney <jasonr@gnu.org>
7760
7761 * w32gui.h: Use HDC for Display.
7762
7763 * w32term.c (w32_encode_char): Prevent double-byte chars from
7764 crashing Emacs.
7765
7766 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
7767 as binary.
7768
2a6d0874
JB
77692003-03-16 Juanma Barranquero <lektu@terra.es>
7770
7771 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
7772
03eb5fab
KS
77732003-03-16 Kim F. Storm <storm@cua.dk>
7774
7775 The following changes consolidate some of the gui-independent
7776 parts of the processing and drawing of "glyph strings" from
7777 xterm.c, w32term.c, and macterm.c into xdisp.c.
2a6d0874 7778
03eb5fab
KS
7779 * dispextern.h (struct glyph): Reduce face_id member from 22 to
7780 21 bits (this reduces number of faces from 4M to 2M).
7781 Replace W32 specific w32_font_type member (2 bits) by generic
7782 font_type member (3 bits) for portability.
7783 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
7784 (enum draw_glyphs_face): Define here.
7785 (struct glyph_string): Define here. Merge W32 and X versions.
7786 (struct redisplay_interface): New members per_char_metric,
7787 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
7788 (VCENTER_BASELINE_OFFSET): Define here.
7789 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
7790 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
7791
7792 * xdisp.c: Consolidate gui-independent "glyph string" code here.
7793 (dump_glyph_string): Moved here.
7794 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
7795 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
7796 (fill_composite_glyph_string, fill_glyph_string)
7797 (fill_image_glyph_string, fill_stretch_glyph_string)
7798 (left_overwritten, left_overwriting, right_overwritten)
7799 (right_overwriting, get_char_face_and_encoding)
7800 (set_glyph_string_background_width, compute_overhangs_and_x)
7801 (append_glyph, append_composite_glyph, produce_image_glyph)
7802 (take_vertical_position_into_account, append_stretch_glyph)
7803 (produce_stretch_glyph): New generic functions (based on X version).
7804 Call platform specific functions through rif.
7805 (INIT_GLYPH_STRING): New macro, hides W32 details.
7806 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
7807 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
7808 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
7809 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
7810 (notice_overwritten_cursor):
7811 Generic functions exported to platform modules. Users changed.
7812
7813 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
7814 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
7815 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
fad49844 7816 New macros for consolidated code.
2a6d0874 7817
03eb5fab
KS
7818 * xterm.c: Remove consolidated defines and code.
7819 (x_per_char_metric, x_encode_char)
7820 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
7821 (x_redisplay_interface): Add new members.
7822
7823 * w32gui.h (Display): Add dummy typedef for consolidation.
7824 (XChar2b): Define alias for wchar_t for consolidation.
7825 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
7826
7827 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
2a6d0874 7828 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
03eb5fab
KS
7829 New macros for consolidation.
7830
fad49844 7831 * w32term.c: Remove consolidated defines and code.
03eb5fab
KS
7832 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
7833 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
7834 (w32_per_char_metric): Change font_type arg to int for RIF.
7835 (w32_encode_char): Return int according to RIF requirements.
7836 (w32_compute_glyph_string_overhangs): Adapt to RIF.
7837 (w32_get_glyph_overhangs): New function for RIF. Uses generic
7838 x_get_glyph_overhangs.
7839 (w32_redisplay_interface): Add new members.
7840
7841 * macgui.h (XChar2b): Move typedef here for consolidation.
7842 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
7843
7844 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
7845 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
7846 consolidation.
7847
7848 * macterm.c: Remove consolidated defines and code.
7849 (mac_per_char_metric): New function for RIF.
00c64fab 7850 (mac_encode_char): Adapt to new RIF requirements.
03eb5fab
KS
7851 (mac_compute_glyph_string_overhangs): Adapt for RIF.
7852 (x_redisplay_interface): Add new members.
7853
00c64fab
SM
78542003-03-15 Stefan Monnier <monnier@cs.yale.edu>
7855
7856 * keymap.c (Vmenu_events): New var.
7857 (syms_of_keymap): Initialize it.
7858 (where_is_internal): Check more carefully what is a menu event.
7859
225c7a07
RS
78602003-03-14 Richard M. Stallman <rms@gnu.org>
7861
7862 * lread.c (read1): After #!, exit loop on eof.
7863
cea9be54
JD
78642003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7865
9ea0e54d
JD
7866 * gtkutil.h: Add declaration for xg_frame_cleared.
7867
0cb35f4e
JD
7868 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
7869
cea9be54
JD
7870 * gtkutil.c (struct xg_last_sb_pos): New structure.
7871 (handle_fixed_child): New function.
7872 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
7873 and force a redraw on them.
7874 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
7875 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
7876 so we can avoid unneeded redraws.
7877 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
7878 and force a redraw on the scroll bar.
7879 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
7880 if xg_last_sb_pos shows the positions are up to date.
0cb35f4e 7881 (xg_frame_cleared): New function.
cea9be54 7882
20b853f3
KH
78832003-03-13 Kenichi Handa <handa@m17n.org>
7884
7885 * coding.c (Fdetect_coding_region): Fix docstring.
7886 (Fdetect_coding_string): Fix docstring.
7887
7a555aff
AS
78882003-03-13 Andreas Schwab <schwab@suse.de>
7889
25cc0080
AS
7890 * gtkutil.c: Add prototype for create_menus.
7891
30225431
AS
7892 * data.c (long_to_cons): Fix type of top.
7893
7894 * xselect.c (selection_data_to_lisp_data): Use int instead of
7895 long for an integer of size 4.
7896
7a555aff 7897 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
30225431 7898 (xg_tool_bar_help_callback): Likewise.
7a555aff 7899
a3e4741f
AS
79002003-03-12 Andreas Schwab <schwab@suse.de>
7901
7902 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
7903
9668be7c
KS
79042003-03-12 Kim F. Storm <storm@cua.dk>
7905
03eb5fab 7906 The following changes consolidate the fringe handling from
9668be7c 7907 xterm.c, w32term.c, and macterm.c into xdisp.c.
00a88f32 7908
9668be7c
KS
7909 * xdisp.c: Consolidate fringe handling code here.
7910 (left_bits, right_bits, continued_bits, continuation_bits)
7911 (ov_bits, zv_bits): Define fringe bitmaps.
7912 (fringe_bitmaps): New array holding fringe bitmaps.
7913 (draw_fringe_bitmap): Draw a specific bitmap; call display
7914 specific drawing routine via rif->draw_fringe_bitmap.
7915 (draw_row_fringe_bitmaps): Generic replacement for
7916 x_draw_row_fringe_bitmaps; all callers changed.
7917 (compute_fringe_widths): Generic replacement for
7918 x_compute_fringe_widths; all callers changed.
7919
7920 * dispextern.h (enum fringe_bitmap_type): Define here.
7921 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
7922 (fringe_bitmaps): Declare extern.
7923 (struct redisplay_interface): New member draw_fringe_bitmap.
7924 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
7925
7926 * xterm.c: Remove generic fringe code.
7927 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
7928 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
7929
7930 * w32term.c: Remove generic fringe code.
7931 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
7932 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
00a88f32 7933
9668be7c
KS
7934 * macterm.c: Remove generic fringe code.
7935 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
7936 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
7937
00a88f32
SM
79382003-03-11 Stefan Monnier <monnier@cs.yale.edu>
7939
7940 * print.c (Fprin1_to_string): Return unibyte string if possible.
7941
1d1de695
DK
79422003-03-09 David Kastrup <dak@gnu.org>
7943
7944 * process.c (read_process_output): We have allocated enough space
7945 for readmax and carryover, so actually use the alloted space.
7946
257f40f2
JD
79472003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7948
7949 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
7950 toolkit scrollbar click.
7951
7952 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
7953 for USE_GTK.
7954 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
7955 also.
7956 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
7957 scrollbar and control is pressed, call x_scroll_bar_handle_click.
00a88f32 7958
257f40f2
JD
7959 * gtkutil.h: Declare xg_get_scroll_id_for_window.
7960
7961 * gtkutil.c (xg_get_scroll_id_for_window): New function.
7962 (xg_tool_bar_item_expose_callback): New function.
7963 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
7964 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
7965 on the tool bar widget.
7966 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
7967 to expose on the tool bar item widgets.
7968
15213141
JD
79692003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7970
26b74a0b 7971 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
00a88f32 7972 struct image* when deciding to update (struct image* may have been
26b74a0b
JD
7973 deleted from the image cache).
7974
15213141
JD
7975 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
7976 the event isn't for a frame (i.e. for dialogs).
7977
20b853f3 79782003-03-07 Kenichi Handa <handa@m17n.org>
cb681b34
KH
7979
7980 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
7981 composition components reaches the limit, terminate composing.
7982 (COMPOSITION_OK): New macro.
00a88f32 7983 (detect_coding_iso2022): Use it if an escape sequence for
cb681b34
KH
7984 composition is found.
7985 (coding_restore_composition): Adjust the number of composition
7986 components if it is not sane.
7987
c9029fe5
JB
79882003-03-06 Juanma Barranquero <lektu@terra.es>
7989
7990 * w32term.h (struct w32_display_info): Add xrdb member to support
7991 passing resources via -xrm on Windows.
7992
7993 * w32term.c (w32_make_rdb): New function.
7994 (w32_term_init): Use it to initialize xrdb member of w32_display_info
7995 struct. Delete leftover code.
7996
7997 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
7998 for resources passed on the command line.
7999
8000 * w32reg.c (w32_get_rdb_resource): New function.
8001 (x_get_string_resource): Use it, so resources passed with -xrm
8002 supercede the ones in the registry.
8003
9d00001f
JD
80042003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8005
8006 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
8007 instead of x_top_window_to_frame.
8008
ca2417b9
JD
80092003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8010
8011 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
8012 when restarting Emacs.
8013
5b20caf0
RS
80142003-03-03 Richard M. Stallman <rms@gnu.org>
8015
8016 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
8017 to run kill-buffer-query-functions.
8018 (Qkill_buffer_query_functions): New var.
8019 (syms_of_buffer): Init and staticpro it.
8020
58e91b77
JD
80212003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8022
8023 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
8024
932357b4
KS
80252003-02-25 Kim F. Storm <storm@cua.dk>
8026
8027 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
8028 If centering point failed to make whole line visible and vscroll
8029 is non-zero, disable vscroll and try centering point again.
8030
8031 * lread.c (read1): Accept `single space' syntax like (? x).
8032
bb8db7e1
JD
80332003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8034
8035 * keyboard.c (cancel_hourglass_unwind): Surround with
8036 #ifdef HAVE_X_WINDOWS
8037
47d77aab
KH
80382003-02-25 Kenichi Handa <handa@m17n.org>
8039
8040 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
8041 process only when "subprocesses" is defined.
8042
6a097c0c
SM
80432003-02-24 Stefan Monnier <monnier@cs.yale.edu>
8044
8045 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
8046
0b063c27
JB
80472003-02-24 Juanma Barranquero <lektu@terra.es>
8048
d1135afc
JB
8049 * callint.c (fix_command): Declare as static void and move before
8050 Fcall_interactively.
8051
0b063c27
JB
8052 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
8053 (syms_of_xdisp): Don't initialize Qwhen.
8054
0af912f0
JD
80552003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8056
8057 * keyboard.c (cancel_hourglass_unwind): New function.
8058 (command_loop_1): Cancel hourglass with unwind-protect.
8059
120d0a23
RS
80602003-02-23 Richard M. Stallman <rms@gnu.org>
8061
8062 * callint.c (fix_command): New subroutine, from Fcall_interactively.
8063 Detect (when ... (region-beginning)) etc.
8064 (Fcall_interactively): Call fix_command.
8065 (Qif, Qwhen): New variables.
8066 (syms_of_callint): Init and staticpro them.
0b063c27 8067
120d0a23
RS
8068 * regex.c (print_partial_compiled_pattern): Output to stderr.
8069
4ece81a6
KG
80702003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
8071
8072 * dired.c (directory_files_internal): Don't expand directory.
8073 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
8074 instead. From Lars Hansen <larsh@math.ku.dk>.
8075
e52bd6b7
SM
80762003-02-22 Stefan Monnier <monnier@cs.yale.edu>
8077
8078 * fns.c (string_to_multibyte): Remove unused var i.
8079 (Flanginfo): Fix int/Lisp_Object mixup.
8080 (void_call2): New fun.
8081 (Fmap_char_table): Use it in place of call2.
8082
8083 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
8084
8085 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
8086
8087 * keymap.c (copy_keymap_1): Make it static.
8088
8089 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
8090
c33ef7c4
JB
80912003-02-22 David Ponce <david@dponce.com>
8092
8093 * lread.c (Fload): Don't check STRING_MULTIBYTE.
8094
16782258
JD
80952003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8096
8097 * process.h: Removed subtty field from struct Lisp_Process.
8098
8099 * process.c (create_process): Remove setting of subtty.
8100 (emacs_get_tty_pgrp): New function.
e52bd6b7
SM
8101 (Fprocess_running_child_p, process_send_signal):
8102 Call emacs_get_tty_pgrp instead of ioctl.
16782258
JD
8103 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
8104
3abeca61
KG
81052003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
8106
8107 * keymap.c (Fdefine_key): Doc fix.
8108
92a8ce63
JB
81092003-02-21 Juanma Barranquero <lektu@terra.es>
8110
8111 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
8112
8113 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
8114 POLLING_PROBLEM_IN_SELECT.
8115
8116 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
8117 Delete #undef of POLLING_PROBLEM_IN_SELECT.
8118
8119 * s/hpux10-20.h: New file.
8120
e52bd6b7
SM
8121 * process.c (wait_reading_process_input):
8122 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
92a8ce63 8123
20f1ef2e
KH
81242003-02-20 Kenichi Handa <handa@m17n.org>
8125
32d0a9dc
KH
8126 * fontset.c (check_fontset_name): If NAME is nil, return the
8127 default fontset.
8128 (override_font_info): New function.
e52bd6b7 8129 (Fset_fontset_font): Document that NAME nil means the default fontset.
32d0a9dc
KH
8130 (Ffontset_info): If FONTSET is not the default fontset, merge
8131 FONTSET onto the copy of the default fontset, and work on that
8132 copy. Document that NAME nil means the default fontset.
8133 (Ffontset_font): Document that NAME nil means the default fontset.
8134
20f1ef2e
KH
8135 * process.c (setup_process_coding_systems): If the process's
8136 in/out descriptor is -1, do nothing.
8137
77d1daf2
AS
81382003-02-19 Andreas Schwab <schwab@suse.de>
8139
e52bd6b7
SM
8140 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
8141 Add prototypes.
77d1daf2 8142
f9a45bb3
KH
81432003-02-19 Kenichi Handa <handa@m17n.org>
8144
8145 * xfaces.c (try_alternative_families): Try all scalable fonts if
8146 Vscalable_fonts_allowed is not Qt.
8147
72ecb43c
JD
81482003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8149
8150 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
8151
ee5be7c3
JD
81522003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8153
8154 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
8155 names.
8156
8157 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
e52bd6b7 8158 (sorted_font_list): Move allocation of struct font_name to
ee5be7c3
JD
8159 x_face_list_fonts.
8160 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
8161 (Fx_list_fonts): Set maxnames to -1 to get all font names.
8162
4cd519a7
KS
81632003-02-18 Kim F. Storm <storm@cua.dk>
8164
068f9882
KS
8165 * lread.c (read1): Fix last change.
8166 "`" is not always special. Allow "?" after a character constant.
4cd519a7 8167
7290a344
AC
81682003-02-18 Andrew Choi <akochoi@shaw.ca>
8169
8170 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
8171
1f7fa69b
AS
81722003-02-18 Andreas Schwab <schwab@suse.de>
8173
8174 * window.c (window_scroll_pixel_based): Move outside a
8175 multi-glyph character before setting new window start.
8176
8177 * xdisp.c (in_display_vector_p): New function.
8178 * dispextern.h (in_display_vector_p): Declare.
8179
23e21195
KS
81802003-02-18 Kim F. Storm <storm@cua.dk>
8181
8182 * lread.c (read1): Fix and relax read syntax.
8183 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
8184 Only recognize "," after dotted-pair dot if inside backquote.
8185 Never include "`" or "," (inside backquote) in a symbol.
8186 Allow dotted-pair dot after a character constant.
8187 Allow "`" and "," (inside backquote) after a character constant.
92a8ce63 8188
f098b121
JD
81892003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8190
8191 * gtkutil.c (xg_tool_bar_expose_callback): New function.
8192 (xg_create_tool_bar): Force style of tool bar to be horizontal with
8193 icons. Set name of tool bar to emacs-toolbar.
8194 (update_frame_tool_bar): Connect expose event to
8195 xg_tool_bar_expose_callback.
8196
63020c46
RS
81972003-02-17 Richard M. Stallman <rms@gnu.org>
8198
8199 * keyboard.c (this_command_key_count_reset): New variable.
8200 Initiatize to 0 where this_command_key_count is set.
8201 (read_char): Save and restore this_command_key_count_reset
8202 around input method code.
8203 (read_char): If this_command_key_count_reset, echo reread commands.
8204 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
8205
fb4452cc
KH
82062003-02-17 Kenichi Handa <handa@m17n.org>
8207
8208 * fns.c (string_to_multibyte): Always return a multibyte string.
8209
bd11cc09
JR
82102003-02-16 Jason Rumney <jasonr@gnu.org>
8211
e52bd6b7
SM
8212 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
8213 Negative max_fonts parameter means list all.
bd11cc09 8214
4cdf4bde
DL
82152003-02-14 Dave Love <fx@gnu.org>
8216
8217 * fns.c (Flanginfo): Doc fix.
8218
023b93f6
KS
82192003-02-13 Kim F. Storm <storm@cua.dk>
8220
37cd4238
KS
8221 * lread.c (read_escape): Interpret \s as a SPACE character, except
8222 for \s-X in a character constant which still is the super modifier.
8223 (read1): Signal an `invalid read syntax' error if a character
8224 constant is immediately followed by a digit or symbol character.
8225
140a6b7e
KS
8226 * search.c (Fmatch_data): Doc fix. Explicitly state that
8227 match-data is undefined if last search failed.
8228
023b93f6
KS
8229 * keymap.c (Fcommand_remapping): Renamed from Fremap_command.
8230 All uses changed.
8231
7d5c86e5
JB
82322003-02-12 Juanma Barranquero <lektu@terra.es>
8233
8234 * eval.c (Fdefmacro): Fix typo.
8235
295fff2c
KS
82362003-02-12 Kim F. Storm <storm@cua.dk>
8237
8238 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
8239 macro is a string, convert meta modifiers in string when copying
8240 the string into a vector.
8241
60f3202d
KS
82422003-02-11 Kim F. Storm <storm@cua.dk>
8243
8244 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
8245
61cb0b53
KH
82462003-02-11 Kenichi Handa <handa@m17n.org>
8247
8248 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
8249
7392e23c
KS
82502003-02-10 Kim F. Storm <storm@cua.dk>
8251
8252 * process.c: Doc fixes.
8253 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
8254
ce4254bd
KH
82552003-02-10 Kenichi Handa <handa@m17n.org>
8256
9c7a329a
KH
8257 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
8258
ce4254bd
KH
8259 * process.c (QCfilter_multibyte): New variable.
8260 (setup_process_coding_systems): New function.
e52bd6b7
SM
8261 (Fset_process_buffer, Fset_process_filter):
8262 Call setup_process_coding_systems.
ce4254bd
KH
8263 (Fstart_process): Initialize the member `filter_multibyte' of
8264 struct Lisp_Process.
8265 (create_process): Call setup_process_coding_systems.
8266 (Fmake_network_process): New keyward `:filter-multibyte'.
8267 Initialize the member `filter_multibyte' of struct Lisp_Process.
8268 Call setup_process_coding_systems.
8269 (server_accept_connection): Call setup_process_coding_systems.
8270 (read_process_output): If the process has a filter, decide the
8271 multibyteness of a string to given to the filter by
8272 `filter_multibyte' member of the process. If the process doesn't
8273 have a filter and the result of conversion is unibyte, use
8274 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
8275 multibyte form.
8276 (Fset_process_coding_system): Call setup_process_coding_systems.
8277 (Fset_process_filter_multibyte): New function.
8278 (Fprocess_filter_multibyte_p): New function.
8279 (syms_of_process): Intern and staticpro QCfilter_multibyte.
8280 Defsubr Sset_process_filter_multibyte and
8281 Sprocess_filter_multibyte_p.
8282
8283 * process.h (struct Lisp_Process): New member filter_multibyte.
8284
8285 * lisp.h (setup_process_coding_systems): Add prototype.
8286
8287 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
8288 process, update coding systems for the process.
8289
b08d5f59
KH
82902003-02-09 Kenichi Handa <handa@m17n.org>
8291
8292 * fns.c (string_to_multibyte): New function.
8293 (Fstring_to_multibyte): New function.
8294 (syms_of_fns): Defsubr it.
8295
0dfd93c0
AS
82962003-02-08 Andreas Schwab <schwab@suse.de>
8297
8298 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
8299 instead of the substitution.
8300
7b76ca1c
JD
83012003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8302
8303 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
8304
8305 * xmenu.c (menu_position_func): Adjust menu popup position so that
8306 the menu is fully visible.
7b76ca1c 8307
2436a4e4
JD
83082003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8309
8310 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
e52bd6b7
SM
8311 (x_make_frame_invisible, x_wm_set_icon_position):
8312 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
2436a4e4
JD
8313
8314 * xfns.c (x_set_name, x_set_title): Ditto.
8315
37d1e680
RS
83162003-02-04 Richard M. Stallman <rms@gnu.org>
8317
8318 * keyboard.c (echo_now): Update before_command_echo_length.
8319 (Freset_this_command_lengths): Reset this_command_key_count etc.
8320 immediately rather than arranging to do it later.
8321 (before_command_key_count_1, before_command_echo_length_1)
8322 (before_command_restore_flag): Vars deleted.
8323 (add_command_key): Don't handle before_command_restore_flag.
8324 (read_char, record_menu_key): Don't update before_command_key_count or
8325 before_command_echo_length.
8326 (read_char): Don't handle before_command_restore_flag.
8327
8328 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
8329 in direct-output clauses if it wouldn't be called in the ordinary case.
8330
578846a3
KS
83312003-02-04 Kim F. Storm <storm@cua.dk>
8332
8333 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
8334
49853a4d
JD
83352003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8336
8337 * gtkutil.c (remove_from_container): Copying list is not needed.
8338 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
8339 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
8340 on list returned from gtk_container_get_children to avoid memory leak.
8341
8b53dc06
JR
83422003-02-01 Jason Rumney <jasonr@gnu.org>
8343
5d54d177
JR
8344 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
8345 local malloc.
8346 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
8347 definitions in xpm.h.
8348 (init_xpm_functions): New function.
f63fd14e 8349 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
5d54d177
JR
8350 (init_external_image_libraries): Try to load libXpm.dll.
8351
8b53dc06
JR
8352 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
8353 timestamp.
8354
b222e415
DL
83552003-01-31 Dave Love <fx@gnu.org>
8356
8357 * syntax.c (Fskip_chars_forward)
8358 (open-paren-in-column-0-is-defun-start): Doc fix.
8359
c60ee5e7
JB
83602003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
8361
8362 * fileio.c: Support // at start of name for Cygwin (just added proper
8363 preprocessor tests).
8364
8365 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
8366
8367 * Makefile.in: Use @EXEEXT@ for Cygwin.
8368
8369 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
8370
8371 * s/cygwin.h: Added for Cygwin port.
8372
53b37591
JB
83732003-01-31 Juanma Barranquero <lektu@terra.es>
8374
8375 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
8376 when including gif_lib.h.
fe929957 8377 (init_gif_functions, init_tiff_functions): New functions.
f63fd14e
JB
8378 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
8379 Windows. Disable color table lookups. Call library functions
53b37591 8380 through pointers determined at runtime.
fe929957
JB
8381 (init_external_image_libraries): Try to load libungif.dll and
8382 libtiff.dll.
53b37591 8383
45415a8f
KH
83842003-01-31 Kenichi Handa <handa@m17n.org>
8385
8386 * xdisp.c (SKIP_GLYPHS): New macro.
e52bd6b7 8387 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
45415a8f 8388
a97e4138
JD
83892003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8390
e52bd6b7 8391 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
a97e4138 8392
6eed9bed
DL
83932003-01-30 Dave Love <fx@gnu.org>
8394
8395 * alloc.c (Vgc_elapsed, gcs_done): New variables.
8396 (Fgarbage_collect): Use them.
8397 (init_alloc, syms_of_alloc): Set them up.
8398
100dcd40
JB
83992003-01-30 Juanma Barranquero <lektu@terra.es>
8400
8401 * w32fns.c (init_external_image_libraries): Add missing operator.
8402
fbd852af
JR
84032003-01-29 Jason Rumney <jasonr@gnu.org>
8404
8405 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
8406 an alternative name for jpeg.dll.
8407
8a2d8020
KH
84082003-01-29 Kenichi Handa <handa@m17n.org>
8409
8410 * xdisp.c (set_cursor_from_row): Pay attention to string display
8411 properties.
8412
058c18c7
AC
84132003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
8414
8415 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
8416 <escape>.
8417 (keycode_to_xkeysym_table): Reformat and add more comments.
8418 (XTread_socket): Drop special case for backspace.
8419
385f11cf
AC
84202003-01-28 Andrew Choi <akochoi@shaw.ca>
8421
8422 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
8423 values in old-style RGB specs.
8424
c922a224
JB
84252003-01-27 Juanma Barranquero <lektu@terra.es>
8426
8427 * w32fns.c (init_external_image_libraries): Try alternate names for the
8428 jpeg dll.
8429
0a1d6de0
JD
84302003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8431
8432 * gtkutil.c (create_dialog, xg_separator_p)
8433 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
8434 before calling strcmp or strlen.
8435
a97e4138 84362003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1d1885fc
JD
8437
8438 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
8439 and handle image load failure.
8440
28908312
JR
84412003-01-26 Jason Rumney <jasonr@gnu.org>
8442
8443 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
8444 New functions.
f63fd14e
JB
8445 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
8446 Disable color table lookups. Call jpeg library functions
28908312
JR
8447 through pointers determined at runtime.
8448 (init_external_image_libraries): Try to load jpeg.dll.
8449
84e47416
RS
84502003-01-25 Richard M. Stallman <rms@gnu.org>
8451
8452 * lisp.h: Declare format2 instead of format1.
8453
8454 * fileio.c (barf_or_query_if_file_exists):
8455 Call format2 instead of format1.
8456
8457 * editfns.c (format2): New function, replaces format1
8458 but takes exactly two Lisp Objects as format args.
8459
8460 * buffer.c (Fkill_buffer): Call format2 instead of format1.
8461
a97e4138 84622003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1fcfb866
JD
8463
8464 * xterm.h: Change to return value of x_dispatch_event to int.
8465
8466 * xterm.c (x_filter_event): New function.
8467 (event_handler_gdk, XTread_socket): Call x_filter_event.
8468 (x_dispatch_event): Change to return value of finish.
8469 (event_handler_gdk): Use return value from x_dispatch_event.
8470
8471 * xfns.c (x_window): Call create_frame_xic for GTK version to
8472 initialize input methods.
8473
8474 * gtkutil.h: Add (void) prototypes.
8475
8476 * gtkutil.c (create_menus): Remove code that puts the help menu to
8477 the right.
8478
54eefef1
JR
84792003-01-25 Jason Rumney <jasonr@gnu.org>
8480
8481 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
8482 [HAVE_PNG]: Sync with xfns.c version.
f63fd14e
JB
8483 (png_load): Adjust colors for Windows. Use Windows
8484 bitmaps. Disable color table lookups.
c262430d
JR
8485 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
8486 (init_png_functions): New function.
8487 (png_read_from_memory, png_load): Call png library functions
8488 through pointers determined at runtime.
8489 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
8490 (init_external_image_libraries): New function.
8491 (init_xfns): Call it.
54eefef1 8492
1a9e275b
AS
84932003-01-24 Andreas Schwab <schwab@suse.de>
8494
8495 * minibuf.c (Fminibuffer_message): Verify type of parameter.
8496
a97e4138 84972003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
81e302ef
JD
8498
8499 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
8500 of static initializer.
8501
422eec7e
DL
85022003-01-24 Dave Love <fx@gnu.org>
8503
8504 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
8505 architectures.
8506
8507 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
8508 Use __alignof__.
8509
2a026b04
KH
85102003-01-24 Kenichi Handa <handa@m17n.org>
8511
8512 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
e52bd6b7 8513 It it is nonzero, don't pretend that an invisible area doesn't exist.
2a026b04
KH
8514 (command_loop_1): Call adjust_point_for_property with proper
8515 second arg.
8516
a18bb28d
JR
85172003-01-22 Jason Rumney <jasonr@gnu.org>
8518
8519 Sync changes with xterm.c and xfns.c.
8520
8521 * w32term.c (x_draw_glyph_string_foreground)
8522 (x_draw_composite_glyph_string_foreground): Implement overstriking.
8523
8524 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
8525 phys_cursor's hpos is overwritten. This is still not completely
8526 correct, as it doesn't really make sense to use hpos at all to
8527 get the cursor glyph (as that is relative to the width of the
8528 characters on the line, which may have changed during the update).
8529
8530 * w32term.c (notice_overwritten_cursor): Handle the special case
8531 of the cursor being in the first blank non-text line at the
8532 end of a window.
8533
8534 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
8535 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
8536 Compute from the x position returned by x_draw_glyphs.
8537
8538 (x_display_and_set_cursor): Don't set phys_cursor_width here,
8539 except for NO_CURSOR and system caret, to make phys_cursor_width
8540 contain what its name suggests.
8541 (notice_overwritten_cursor): Consider the cursor image erased if
8542 the output area intersects the cursor image in y-direction.
8543
6a097c0c
SM
8544 * w32term.c (note_mode_line_or_margin_highlight): Rename from
8545 note_mode_line_highlight and extend.
a18bb28d
JR
8546
8547 * w32term.c (last_window): New variable.
8548 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
8549 (note_mouse_movement): Remove reimplemented code in #if 0.
8550
8551 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
8552 not update_mode_lines, and always set it to 1.
8553
ac6e47ef
JR
85542003-01-21 Jason Rumney <jasonr@gnu.org>
8555
8556 * w32fns.c (IDC_HAND): Define it if system headers don't.
8557
85582003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
8559
8560 * w32term.h (struct w32_output): New member hand_cursor.
8561 (WM_EMACS_SETCURSOR): New message definition.
8562
8563 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
8564 function w32_define_cursor.
8565 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
8566 position, change member name output_data.x to output_data.w32 and
8567 add function w32_define_cursor.
8568 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
8569 and change member name output_data.x to output_data.w32.
e52bd6b7
SM
8570 (w32_initialize_display_info):
8571 Setup dpyinfo->vertical_scroll_bar_cursor.
ac6e47ef
JR
8572
8573 * w32fns.c (Vx_hand_shape): New variable.
8574 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
8575 WM_EMACS_SETCURSOR.
8576 (x-create-frame): Setup Cursor types.
8577
ceb39a17
JB
85782003-01-21 David Ponce <david@dponce.com>
8579
ac6e47ef 8580 * w32term.c (w32_encode_char): For DIM=1 charset, set
f63fd14e 8581 ccl->reg[2] to -1 before calling ccl_driver. (Sync. with xterm.c
ac6e47ef 8582 x_encode_char change by Kenichi Handa <handa@m17n.org> on
ceb39a17 8583 2002-09-30.)
ac6e47ef
JR
8584 (w32_draw_relief_rect): Declare all args.
8585 (w32_define_cursor): New.
8586
8587 * w32fns.c (w32_load_cursor): New function.
8588 (w32_init_class): Use it.
8589 (x_put_x_image): Declare all args.
8590
b6189c3b 85912003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk>
46cf0bed
JB
8592
8593 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
8594
a97e4138 85952003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e8794476
JD
8596
8597 * gtkutil.c: Must include stdio.h before termhooks.h
8598
83fc9c63
DL
85992003-01-21 Dave Love <fx@gnu.org>
8600
8601 * alloc.c (Fgc_status): Print zombie list.
8602 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
8603 Fix assignment of zombies.
8604 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
8605 Don't take car of non-cons.
8606
8607 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
8608
8609 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
8610
fe04b8c8
JR
86112003-01-20 David Ponce <david@dponce.com>
8612
8613 * w32menu.c (digest_single_submenu): Declare all args.
8614
8615 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
8616 changes in xmenu.c:
8617
8618 (parse_single_submenu): Use individual keymap's prompt
8619 string as pane name, if there is one.
8620 (set_frame_menubar): Save menu_items_n_panes from each call to
8621 parse_single_submenu and use it when calling digest_single_submenu.
8622
539e69a9
ST
86232003-01-20 Steven Tamm <steventamm@mac.com>
8624
8625 * macterm.c (XTread_socket): Checks for valid, visible window
8626 before sending a scroll-wheel event.
8627
675d000f
RS
86282003-01-20 Richard M. Stallman <rms@gnu.org>
8629
8630 * xdisp.c (redisplay_window): If mini window's buffer is not
8631 a minibuffer, then redisplay it like other windows.
8632
a97e4138 86332003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
22174d10
JD
8634
8635 * gtkutil.c (xg_create_frame_widgets): Check if there is an
8636 external tool bar before setting tool bar height.
8637
048addec
JD
86382003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8639
8640 * xterm.c (handle_one_xevent): Surround popup_activated
8641 with #ifdef:s for non-toolkit version.
8642
8643 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
8644 (gtkutil.o): New file.
8645 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
8646 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
8647
8648 * gtkutil.c: New file for GTK version.
8649
8650 * gtkutil.h: New file for GTK version.
8651
8652 * xterm.h: Add xt_or_gtk_widget.
8653 Include gtk files for USE_GTK.
8654 (struct x_output): Add toolbar_height.
8655 (struct x_output): Add GTK widgets and Gdk size_hints.
8656 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
8657 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
8658 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
8659
8660 * xterm.c: Include gtkutil.h for USE_GTK.
8661 Declare extern void free_frame_menubar for USE_GTK.
8662 (note_mouse_highlight): Check popup_activated for USE_GTK.
8663 (xt_action_hook): Don't compile if USE_GTK.
8664 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
8665 (xg_scroll_callback): New function.
8666 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
8667 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
8668 for USE_GTK.
8669 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
8670 xg_show_scroll_bar for USE_GTK.
8671 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
8672 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
8673 (event_handler_gdk): New function for USE_GTK.
8674 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
8675 (handle_one_xevent): Make sure widget is mapped before
8676 calling x_real_positions for USE_GTK.
8677 (XTread_socket): Add GTK event loop for USE_GTK.
8678 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
8679 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
8680 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
8681 (x_iconify_frame): Add code for USE_GTK.
8682 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
8683 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
8684 is in gtkutil.c.
8685 (x_term_init): Add initialization for GTK.
8686 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
8687
8688 * xmenu.c: Include gtkutil.h for USE_GTK.
8689 (Fx_popup_menu): Use current position if x and y is NIL.
6bdb309a
SM
8690 (single_menu_item, single_menu_item, Fx_popup_dialog):
8691 Check for USE_GTK.
048addec
JD
8692 (popup_widget_loop): New function for USE_GTK.
8693 (x_activate_menubar): Add code for USE_GTK.
8694 (popup_activate_callback, popup_deactivate_callback)
6bdb309a
SM
8695 (menu_highlight_callback, menubar_selection_callback):
8696 Add USE_GTK versions.
048addec
JD
8697 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
8698 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
8699 (free_frame_menubar): Only compile if not USE_GTK. GTK version
8700 is in gtkutil.c.
8701 (popup_selection_callback): New version for USE_GTK.
8702 (create_and_show_popup_menu): New fuction, one USE_GTK version and
6bdb309a 8703 one USE_X_TOOLKIT version.
048addec
JD
8704 (xmenu_show): Call create_and_show_popup_menu.
8705 (dialog_selection_callback): New version for USE_GTK.
8706 (create_and_show_dialog): New fuction, one USE_GTK version and
6bdb309a 8707 one USE_X_TOOLKIT version.
048addec
JD
8708 (xdialog_show): Call create_and_show_dialog.
8709
8710 * xfns.c: Include gtkutil for USE_GTK.
8711 (x_window_to_frame, x_any_window_to_frame)
8712 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
8713 (x_top_window_to_frame): Add code for USE_GTK.
8714 (x_set_background_color): Call xg_set_background_color for GTK.
8715 (x_set_menu_bar_lines): Check for USE_GTK.
8716 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
8717 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
8718 (x_window): Call xg_create_frame_widgets for USE_GTK.
8719 (Fx_create_frame): Check for USE_GTK
8720 (Fx_file_dialog): New implementation for USE_GTK.
8721
8722 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
8723 (update_menu_bar): Add check for USE_GTK.
8724 (update_tool_bar): Add check for USE_GTK and external tool bar.
8725 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
8726 (redisplay_internal): Add check for USE_GTK and popup_activated.
8727 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
8728 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
8729 (display_menu_bar): Add check for USE_GTK
8730
8731 * lisp.h: Declare Vx_resource_name extern.
8732
a64387ee 8733 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
048addec
JD
8734 for USE_GTK.
8735 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
8736
8737 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
8738 (FRAME_EXTERNAL_TOOL_BAR): New macro.
8739 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
8740
8741 * fileio.c (Fread_file_name): Add check for USE_GTK.
8742
6bdb309a
SM
8743 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
8744 Add check for USE_GTK.
048addec
JD
8745
8746 * config.in: Added HAVE_GTK
8747
8748 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
8749
87502003-01-18 Stefan Monnier <monnier@cs.yale.edu>
8751
8752 * charset.h (Funibyte_char_to_multibyte): Export.
8753
87542003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8755
8756 * xmenu.c (mouse_position_for_popup): New function.
8757 (Fx_popup_menu): Call mouse_position_for_popup for X and
8758 mouse_position_hook for others.
8759
87602003-01-17 Kim F. Storm <storm@cua.dk>
8761
8762 * editfns.c (Finsert): Mention `string-make-multibyte' and
8763 `string-as-multibyte' in doc string.
8764
87652003-01-17 Kenichi Handa <handa@m17n.org>
8766
8767 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
3c02a6f5 8768
048addec
JD
8769 * editfns.c (Fformat): Convert an unibyte char argument that is
8770 formatted by "%c" to multibyte if the total result must be a
8771 multibyte string.
cd7df9c0 8772
048addec 87732003-01-16 Kim F. Storm <storm@cua.dk>
cd7df9c0 8774
048addec
JD
8775 * process.c (set-process-filter): Document unibyte/multibyte-ness
8776 of string argument.
56210ecd 8777
048addec 87782003-01-16 Kenichi Handa <handa@m17n.org>
56210ecd 8779
048addec 8780 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
56210ecd 8781
048addec
JD
8782 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
8783 (re_search_2): Likewise.
6df8b9fe 8784
048addec 87852003-01-15 Kenichi Handa <handa@m17n.org>
6df8b9fe 8786
048addec
JD
8787 * xdisp.c (message_dolog): Fix bug of the case that *Message*
8788 buffer is unibyte.
292ddc31 8789
048addec 87902003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
292ddc31 8791
048addec 8792 * fns.c (Fsubstring): Clarify doc string.
292ddc31 8793
048addec
JD
8794 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
8795 (Fprevious_char_property_change)
8796 (Fnext_single_char_property_change)
8797 (Fprevious_single_char_property_change, Fnext_property_change)
8798 (Fnext_single_property_change, Fprevious_property_change)
8799 (Fprevious_single_property_change, Fadd_text_properties)
8800 (Fput_text_property, Fset_text_properties)
8801 (Fremove_text_properties, Fremove_list_of_text_properties)
8802 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
63e4e4c6 8803
048addec 88042003-01-14 Kim F. Storm <storm@cua.dk>
63e4e4c6 8805
048addec
JD
8806 * process.h (struct Lisp_Process): New member plist replaces old
8807 member private_vars. All uses changed.
63e4e4c6 8808
048addec 8809 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
6bdb309a 8810 (QCplist): Rename from QCvars. Change all uses.
048addec 8811 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
6bdb309a 8812 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
048addec 8813 (syms_of_process): Intern, staticpro, defsubr these.
6bdb309a 8814 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
7ed16567 8815
048addec 88162003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
7ed16567 8817
6bdb309a 8818 * m/delta.h: Remove (obsolete).
e833850f 8819
048addec 88202003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
e833850f 8821
048addec
JD
8822 * fileio.c (Fdelete_directory, Fdelete_file): Document the
8823 behaviour in front of symlinks.
8824 (Fdelete_file): Raise an error on directories.
817cb127 8825
048addec 88262003-01-13 Dave Love <fx@gnu.org>
817cb127 8827
048addec 8828 * fns.c (Freverse): Use QUIT.
3e8cf2ea 8829
048addec 88302003-01-13 Richard M. Stallman <rms@gnu.org>
3e8cf2ea 8831
048addec
JD
8832 * minibuf.c (minibuffer_completion_contents):
8833 Error if point is inside prompt.
3e8cf2ea 8834
048addec
JD
8835 * keyboard.c (command_loop_1): Don't redisplay directly
8836 if there's a post-command-hook.
3e8cf2ea 8837
048addec
JD
8838 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
8839 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
2c10f029 8840
048addec 88412003-01-12 Kim F. Storm <storm@cua.dk>
94e8ffca 8842
048addec 8843 * process.h (struct Lisp_Process): New member private_vars.
94e8ffca 8844
048addec
JD
8845 * process.c (QCvars): New variable.
8846 (syms_of_process): Intern and staticpro it.
8847 (Fset_process_contact): Removed function.
8848 (Fprocess_variable, Fset_process_variable): New functions.
8849 (syms_of_process): Defsubr them.
8850 (Fstart_process): Initialize private_vars plist to nil.
8851 (Fmake_network_process): New arg :vars to setup the private
8852 variables for new network process.
8853 (server_accept_connection): Copy server's private variables to
8854 client process.
2c10f029 8855
048addec
JD
8856 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
8857 crashes). Code rewritten and simplified. Now directly aligns the
8858 pointer and recalculates pure_bytes_used, rather than aligning the
8859 size and adjusting the pointer.
b8a76c6c 8860
048addec 88612003-01-11 Kim F. Storm <storm@cua.dk>
b8a76c6c 8862
048addec
JD
8863 * process.c (Fset_process_contact): New function.
8864 (syms_of_process): defsubr it.
8865 (make-network-process): Update doc.
3a8d0899 8866
048addec 88672003-01-10 Andreas Schwab <schwab@suse.de>
3a8d0899 8868
048addec
JD
8869 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
8870 Reported by Berthold Gunreben <b.gunreben@web.de>.
4abc7470 8871
048addec 88722003-01-10 Dave Love <fx@gnu.org>
4abc7470 8873
048addec 8874 * composite.c (syms_of_composite): Make composition_hash_table weak.
b809d662 8875
048addec 88762003-01-09 Kim F. Storm <storm@cua.dk>
b809d662 8877
048addec
JD
8878 * process.c (Fmake_network_process): Convert new port number
8879 to host byte order for `:service t' case. From Mario Lang.
bf338245 8880
048addec 88812003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
bf338245 8882
048addec
JD
8883 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
8884 instead of XtAppProcessEvent.
bf338245 8885
048addec
JD
8886 * xterm.c (handle_one_xevent): New function.
8887 (x_dispatch_event): New function.
8888 (XTread_socket): Call handle_one_xevent.
bf338245 8889
048addec 8890 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
e833850f 8891
048addec
JD
8892 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
8893 call XQueryPointer to get coordinates.
8894 (popup_get_selection): Do not set popup_activated_flag to zero,
8895 let popup_deactivate_callback do that. Needed for Motif.
8896 Call x_dispatch_event instead of XtDispatchEvent.
8897 (xmenu_show): Calculate root coordinate from frame top/left position.
c4af2bce 8898
048addec 88992003-01-08 Kim F. Storm <storm@cua.dk>
c4af2bce 8900
6bdb309a 8901 * process.c (server_accept_connection): Fix recording of new
048addec
JD
8902 connection's local address in :local property of contact info.
8903 (Fmake_network_process): Record local network address for new
8904 client processes in :local property of contact info.
6bdb309a 8905 (format-network-address): Add arg OMIT-PORT. Change callers.
00e3ab56 8906
048addec 89072003-01-07 Dave Love <fx@gnu.org>
00e3ab56 8908
048addec 8909 * Makefile.in (fns.o): Depend on coding.h.
f387e1fd 8910
048addec 89112003-01-07 Markus Rost <rost@math.ohio-state.edu>
f387e1fd 8912
048addec 8913 * minibuf.c (Fread_variable): Doc fix.
f387e1fd 8914
048addec
JD
8915 * eval.c (Fuser_variable_p): Doc change. For custom variables,
8916 use the same test as for custom-variable-p.
8c6d74c6 8917
048addec 89182003-01-05 Richard M. Stallman <rms@gnu.org>
e833850f 8919
048addec
JD
8920 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
8921 Count LAST_LINE_MISFIT in scroll margin for end of window.
8922 Move label too_near_end before setting SCROLL_MARGIN_POS.
8923 Set LAST_LINE_MISFIT before jumping there.
8c6d74c6 8924
048addec
JD
8925 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
8926 scroll_conservatively case. If scrolling that much doesn't change
8927 STARTP, move it down one line.
e833850f 8928
048addec
JD
8929 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
8930 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
8c6d74c6 8931
048addec
JD
8932 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
8933 selected frame.
8c6d74c6 8934
048addec
JD
8935 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
8936 (syms_of_keymap): staticpro them.
8937 (Fapropos_internal): Initialize them and clear them out.
8938 Don't GCPRO them.
8c6d74c6 8939
048addec
JD
8940 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
8941 Doc fixes.
8c6d74c6 8942
048addec
JD
8943 * lisp.h: New misc type Lisp_Save_Value.
8944 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
8945 (XSAVE_VALUE): New macro.
8946 (struct Lisp_Save_Value): New data type.
8947 (union Lisp_Misc): Add u_save_value alternative.
8948 (make_save_value): Declared.
8c6d74c6 8949
048addec 8950 * alloc.c (make_save_value): New function.
8c6d74c6 8951
048addec
JD
8952 * xterm.c (x_catch_errors): Save dpy using make_save_value.
8953 (x_catch_errors_unwind): Call XSync.
8c6d74c6 8954
048addec 89552003-01-01 Richard M. Stallman <rms@gnu.org>
8c6d74c6 8956
048addec 8957 * window.c (window_scroll_pixel_based): Partially undo last change.
8c6d74c6 8958
048addec
JD
8959 * keyboard.c (command_loop_1): Call adjust_point_for_property
8960 in direct action cases for Qforward_char and Qbackward_char.
8961 Set already_adjusted so it won't be done twice.
8c6d74c6 8962
b6189c3b 89632002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk>
8c6d74c6 8964
048addec
JD
8965 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
8966 type definition of size_t.
8c609cff 8967
048addec 89682003-01-02 Steven Tamm <steventamm@mac.com>
8c609cff 8969
048addec
JD
8970 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
8971 distinguish Carbon GUI builds from X11 builds on darwin.
b37113a1 8972
048addec 89732002-12-30 Steven Tamm <steventamm@mac.com>
b37113a1 8974
048addec
JD
8975 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
8976 to default to t.
fa634a5e 8977
048addec 89782002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
fa634a5e 8979
048addec 8980 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
ce0669d4 8981
048addec 89822002-12-28 Steven Tamm <steventamm@mac.com>
ce0669d4 8983
048addec
JD
8984 * Makefile.in (macosx-bundle): Fixes to Mac OS X/Carbon port to
8985 allow building in a different directory than source. Uses some
8986 GNU Make extensions, but there is no other make on Mac OS X.
2308af15 8987
048addec 89882002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
2308af15 8989
048addec
JD
8990 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
8991 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
8992 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
8993 (Fstring_to_number): Mention the returned value in the doc strings.
2155ecf3 8994
048addec 89952002-12-23 Richard M. Stallman <rms@gnu.org>
2155ecf3 8996
048addec
JD
8997 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
8998 <scroll-down-aggressively>: Doc fix.
2155ecf3 8999
048addec
JD
9000 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
9001 string as pane name, if there is one.
9002 (set_frame_menubar): Save menu_items_n_panes from each call to
9003 parse_single_submenu and use it when calling digest_single_submenu.
2155ecf3 9004
048addec
JD
9005 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
9006 Don't try to make last line fully visible if it is past end of window.
61f1d295 9007
048addec 90082002-12-22 Steven Tamm <steventamm@mac.com>
61f1d295 9009
048addec
JD
9010 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
9011 (mac_menu_show): Add support for hierarchical popup menus.
9012 (add_menu_item): Remove indentation support.
9013 (fill_submenu, fill_menu): Create hierarchical menus
9014 instead of using indentation.
0b17a217 9015
048addec 90162002-12-22 Richard M. Stallman <rms@gnu.org>
0b17a217 9017
048addec
JD
9018 * xdisp.c (try_cursor_movement): Don't call try_window here.
9019 (redisplay_window): Never redisplay minibuffer when inactive.
0b17a217 9020
048addec 9021 * window.c (select_window_1): Undo 9/21 change.
402e4f8b 9022
048addec 90232002-12-22 Steven Tamm <steventamm@mac.com>
402e4f8b 9024
048addec
JD
9025 * macterm.c (XTread_socket): Call KeyTranslate for control and
9026 meta to deal correctly shifted non-alpha characters, like C-S-5
9027 being treated like C-%. Does not look for shift key to deal
9028 with masking off control-key with mac-reverse-ctrl-meta.
f02cac82 9029
048addec 90302002-12-21 Richard M. Stallman <rms@gnu.org>
f02cac82 9031
048addec
JD
9032 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
9033 If it is non-nil, run timers. Use an unwind-protect to requeue
9034 the events that were read ahead.
9035 (popup_get_selection_unwind): New subroutine.
9036 (popup_get_selection_queue): File-scope variable now holds that queue.
9037 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
9038 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
9039 Use an unwind-protect to pop down the dialog box.
9040 (xdialog_show_unwind): New subroutine implements that.
f02cac82 9041
048addec
JD
9042 * xdisp.c (row_containing_pos): Change exit test using last_y.
9043 (try_window_id): Abort if row_containing_pos returns null.
f02cac82 9044
048addec
JD
9045 * lread.c (load_error_handler): New function.
9046 (Fload): Handle errors in Fsubstitute_in_file_name.
9047 Don't expect Fsignal to return.
f02cac82 9048
048addec
JD
9049 * eval.c: Errors and throws work right with interrupt blocking.
9050 (struct catchtag): New elt interrupt_input_blocked.
9051 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
9052 (internal_catch, Fcondition_case, internal_condition_case)
9053 (internal_condition_case_1, internal_condition_case_2): Save it.
9054 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
f02cac82 9055
048addec 9056 * editfns.c (Fformat): Add parens.
f02cac82 9057
048addec
JD
9058 * dired.c (file_name_completion): Fix that change.
9059 Delete special quit-handling code; just use QUIT.
f02cac82 9060
b6189c3b 90612002-12-21 Tak Ota <Takaaki.Ota@am.sony.com>
f02cac82 9062
048addec
JD
9063 * dired.c (file_name_completion): Close directory on error
9064 just as in directory_files_internal.
1a590729 9065
048addec 90662002-12-19 David Kastrup <David.Kastrup@t-online.de>
1a590729 9067
048addec
JD
9068 * window.c (Fset_window_configuration): Set old_point to correct
9069 value when new_current_buffer == current_buffer.
f02cac82 9070
048addec 90712002-12-17 Ben Key <bkey1@tampabay.rr.com>
2308af15 9072
048addec
JD
9073 Revisited my earlier fix for the following entry in etc/PROBLEMS:
9074 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
9075 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
9785d95b 9076
048addec
JD
9077 These changes were in part based upon suggestions made by Peter
9078 'Luna' Runestig [peter@runestig.com].
9785d95b 9079
048addec
JD
9080 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token,
9081 g_b_init_get_token_information, g_b_init_lookup_account_sid,
6bdb309a 9082 g_b_init_get_sid_identifier_authority ): Add several static
048addec 9083 global variables.
9785d95b 9084
048addec
JD
9085 * w32.c (globals_of_w32): New function. Used to initialize those
9086 global variables that must always be initialized on startup even
9087 when the global variable initialized is non zero. Its primary
9088 purpose at this time is to set the global variables
9089 g_b_init_is_windows_9x, g_b_init_open_process_token,
9090 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
9091 g_b_init_get_sid_identifier_authority to 0 on startup.
9092 Called from main.
9785d95b 9093
048addec
JD
9094 * w32.c (is_windows_9x): Perform initialization only if
9095 g_b_init_is_windows_9x is equal to 0. On initialization set
9096 g_b_init_is_windows_9x equal to 1.
2308af15 9097
048addec
JD
9098 * w32.c (open_process_token): Perform initialization only if
9099 g_b_init_open_process_token is equal to 0. On initialization set
9100 g_b_init_open_process_token equal to 1.
2308af15 9101
048addec
JD
9102 * w32.c (get_token_information): Perform initialization only if
9103 g_b_init_get_token_information is equal to 0. On initialization
9104 set g_b_init_get_token_information equal to 1.
9785d95b 9105
048addec
JD
9106 * w32.c (lookup_account_sid): Perform initialization only if
9107 g_b_init_lookup_account_sid is equal to 0. On initialization
9108 set g_b_init_lookup_account_sid equal to 1.
9785d95b 9109
048addec
JD
9110 * w32.c (get_sid_identifier_authority): Perform initialization
9111 only if g_b_init_get_sid_identifier_authority is equal to 0.
9112 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
9785d95b 9113
f63fd14e 9114 * w32fns.c (globals_of_w32fns): New function. Used to initialize
048addec
JD
9115 those global variables that must always be initialized on startup
9116 even when the global variable initialized is non zero.
9117 Its primary purpose at this time is to initialize the global variable
9118 track_mouse_event_fn.
9785d95b 9119
a64387ee 9120 * w32fns.c (w32_wnd_proc): Remove initialization of
048addec 9121 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
9785d95b 9122
048addec 9123 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
9785d95b 9124
f63fd14e 9125 * w32menu.c (globals_of_w32menu): New function. Used to
048addec
JD
9126 initialize those global variables that must always be initialized
9127 on startup even when the global variable initialized is non zero.
9128 Its primary purpose at this time is to initialize the global
9129 variables get_menu_item_info and set_menu_item_info.
9785d95b 9130
048addec
JD
9131 * w32menu.c (initialize_frame_menubar): Remove initialization of
9132 get_menu_item_info and set_menu_item_info.
9785d95b 9133
048addec 9134 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
9785d95b 9135
048addec
JD
9136 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
9137 Declare them.
9785d95b 9138
048addec
JD
9139 * emacs.c (main): Call globals_of_w32 prior to calling
9140 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
9141 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
9142 is defined.
9785d95b 9143
048addec
JD
9144 * w32term.c (x_update_window_begin): Fix Windows API error
9145 detected by BoundsChecker. Test to determine if
9146 w32_system_caret_hwnd is NULL prior to attempting to use
9147 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
2308af15 9148
048addec
JD
9149 * w32term.c (x_update_window_end): Fix Windows API error
9150 detected by BoundsChecker. Test to determine if
9151 w32_system_caret_hwnd is NULL prior to attempting to use
9152 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
b6da19ef 9153
048addec 91542002-12-17 Kenichi Handa <handa@m17n.org>
b6da19ef 9155
048addec
JD
9156 * coding.c (coding_system_require_warning): New variable.
9157 (syms_of_coding): DEFVAR it.
b6da19ef 9158
048addec 9159 * coding.h (coding_system_require_warning): Extern it.
b6da19ef 9160
048addec
JD
9161 * fileio.c (choose_write_coding_system): Even if
9162 Vcoding_system_for_write is non-nil, if
9163 coding_system_require_warning is nonzero, call
9164 Vselect_safe_coding_system_function.
bfcf6dbe 9165
048addec 91662002-12-17 Markus Rost <rost@math.ohio-state.edu>
bfcf6dbe 9167
048addec
JD
9168 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
9169 (lisp): Add font-core.
2c568af5 9170
048addec 91712002-12-13 Stefan Monnier <monnier@cs.yale.edu>
2c568af5 9172
048addec
JD
9173 * textprop.c (text_read_only): New arg `propval'.
9174 (get_char_property_and_overlay): Remove unused var `next_overlay'.
9175 (verify_interval_modification): Use text_read_only's new arg.
b8c6225c 9176
048addec 91772002-12-13 Kenichi Handa <handa@m17n.org>
b8c6225c 9178
048addec 9179 * coding.c (Funencodable_char_position): Set pend correctly.
706ddb8f 9180
048addec 91812002-12-12 Jason Rumney <jasonr@gnu.org>
706ddb8f 9182
048addec
JD
9183 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
9184 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
9185 Be more careful about when help_events are generated.
96720f09 9186
048addec 91872002-12-12 Steven Tamm <steventamm@mac.com>
96720f09 9188
048addec
JD
9189 * macterm.c (mac_check_for_quit_char): Correctly set the
9190 modifiers of the event to 0.
9191 * mac.c (sys_select): Duplicate rfds before calling select to
9192 ensure that rfds survive the while loop.
e5ae1c49 9193
048addec 91942002-12-11 Kim F. Storm <storm@cua.dk>
e5ae1c49 9195
048addec
JD
9196 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
9197 row_containing_pos returned NULL.
2eb46b2d 9198
048addec 91992002-12-10 Steven Tamm <steventamm@mac.com>
2eb46b2d 9200
6bdb309a 9201 * mac.c (sys_read): Fix sys_read to not call select if IO is
048addec 9202 non-blocking.
6bdb309a 9203 (sys_select): Fix sys_select to not use a timeout larger than
048addec 9204 the one given.
b11f1d8a 9205
048addec 92062002-12-10 Juanma Barranquero <lektu@terra.es>
b11f1d8a 9207
048addec 9208 * editfns.c (Fformat): Use alloca, not _alloca.
d8528226 9209
048addec 92102002-12-09 Richard M. Stallman <rms@gnu.org>
d8528226 9211
048addec
JD
9212 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
9213 as the last thing.
a4ac5b17 9214
048addec 92152002-12-09 Dave Love <fx@gnu.org>
a4ac5b17 9216
048addec 9217 * s/sol2-8.h: Removed. (Not necessary.)
ac42d7b9 9218
048addec 92192002-12-09 Matthew Swift <swift@alum.mit.edu>
ac42d7b9 9220
048addec
JD
9221 * editfns.c (Fformat): Handle precision in string conversion
9222 specifiers like libc functions do (ie, print at most that many
9223 characters).
85cce843 9224
048addec 92252002-12-08 Richard M. Stallman <rms@gnu.org>
85cce843 9226
048addec
JD
9227 * xdisp.c (row_containing_pos): Check more carefully
9228 whether charpos is really in the row before returning it.
0d4d26a7 9229
048addec 92302002-12-07 Steven Tamm <steventamm@mac.com>
0d4d26a7 9231
048addec 9232 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
b11f1d8a 9233
048addec
JD
9234 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
9235 each stack frame. This may change as it could be time consuming.
0d4d26a7 9236
048addec
JD
9237 * macterm.c (mac_check_for_quit_char, quit_char_comp)
9238 (init_quit_char_handler, mac_determine_quit_char_modifiers)
6bdb309a 9239 (mac_initialize): Add code to check for pressing of quit_char
048addec 9240 in the OS event queue.
b11f1d8a 9241
048addec
JD
9242 * mac.c (sys_select): Call mac_check_for_quit_char every second
9243 while blocking on select.
0d4d26a7 9244
048addec
JD
9245 * mac.c (sys_read): Use sys_select to test for input first
9246 before calling read, to allow C-g to break.
9252f7bc 9247
048addec 92482002-12-07 Richard M. Stallman <rms@gnu.org>
9252f7bc 9249
048addec 9250 * minibuf.c (Fcompleting_read): Doc fix.
9252f7bc 9251
048addec 9252 * lread.c (syms_of_lread) <load-history>: Doc fix.
9252f7bc 9253
048addec 9254 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
9252f7bc 9255
048addec
JD
9256 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
9257 autoload.
9252f7bc 9258
048addec 9259 * data.c (Fdefalias): Record in load-history redefining an autoload.
9252f7bc 9260
048addec 9261 * alloca.c: Undo ifdef change accidentally made on 12-04.
bfa261c0 9262
048addec 92632002-12-06 Francesco Potorti` <pot@gnu.org>
bfa261c0 9264
048addec 9265 * xfns.c (png_load): Avoid double gamma correction for PNG images.
c5992177 9266
048addec 92672002-12-04 Richard M. Stallman <rms@gnu.org>
c5992177 9268
048addec 9269 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 9270
048addec 9271 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 9272
048addec 9273 * alloca.c: Don't use #error.
02d588e2 9274
048addec 92752002-12-03 Dave Love <fx@gnu.org>
02d588e2 9276
048addec
JD
9277 * buffer.c (Qucs_set_table_for_input): New.
9278 (Fget_buffer_create): Use it.
9279 (Qset_buffer_major_mode_hook): Deleted.
9280 (Fset_buffer_major_mode): Revert previous change.
9281 (init_buffer_once): Intern ucs-set-table-for-input.
9282 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
9283 Add &Qucs_set_table_for_input.
451e2697 9284
048addec 92852002-12-03 Andreas Schwab <schwab@suse.de>
451e2697 9286
048addec
JD
9287 * callint.c (Fcall_interactively): Use next_event only if less
9288 than key_count.
72742a99 9289
048addec 92902002-12-02 Andrew Choi <akochoi@shaw.ca>
72742a99 9291
048addec
JD
9292 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
9293 names to 255 characters.
72742a99 9294
048addec
JD
9295 * macterm.c (XTread_socket): If all frames have been collapsed,
9296 expand the first one before handling drag-and-drop events.
72742a99 9297
048addec
JD
9298 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
9299 which is detected by autoconf.
40e6ff95 9300
048addec 93012002-12-01 Steven Tamm <steventamm@mac.com>
40e6ff95 9302
048addec
JD
9303 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
9304 offset in two hints table to allow prebinding to be redone and
9305 allow the executable to be stripped.
c02138c6 9306
048addec 93072002-11-29 Dave Love <fx@gnu.org>
c02138c6 9308
048addec
JD
9309 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
9310 already provided.
0e47bbf7 9311
048addec 93122002-11-29 Richard M. Stallman <rms@gnu.org>
0e47bbf7 9313
048addec
JD
9314 * xdisp.c (start_display): Check more intelligently for
9315 whether the line is continued.
9316 (move_it_vertically_backward): Clear it->continuation_lines_width.
44129dcb 9317
048addec 93182002-11-28 Dave Love <fx@gnu.org>
44129dcb 9319
048addec
JD
9320 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
9321 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
f707342d 9322
048addec 93232002-11-27 Steven Tamm <steventamm@mac.com>
f707342d 9324
048addec
JD
9325 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
9326 more descriptive error output from lread.c:Fload upon most require
9327 cycles during boostrapping.
1637fd2c 9328
048addec 93292002-11-27 Jason Rumney <jasonr@gnu.org>
1637fd2c 9330
048addec
JD
9331 * fileio.c (Finsert_file_contents): Give a more appropriate error
9332 for files bigger than 2Gb when off_t is 32 bit.
1637fd2c 9333
048addec
JD
9334 * dired.c (Ffile_attributes): Don't return negative file sizes for
9335 files bigger than 2Gb when off_t is 32 bit.
540c2788 9336
048addec 93372002-11-27 Dave Love <fx@gnu.org>
6b2fd6ea 9338
048addec 9339 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
6b2fd6ea 9340
048addec
JD
9341 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
9342 Test GETPGRP_VOID instead.
9343 [BSD_TERMIOS]: Remove definitions (never used).
6b2fd6ea 9344
048addec
JD
9345 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
9346 Don't define.
9347 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
540c2788 9348
048addec 9349 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
8cc03716 9350
048addec 93512002-11-25 Jason Rumney <jasonr@gnu.org>
8cc03716 9352
048addec
JD
9353 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
9354 supported.
4042a81a 9355
048addec 93562002-11-25 Dave Love <fx@gnu.org>
4042a81a 9357
048addec 9358 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
4042a81a 9359
048addec 9360 * Makefile.in (TEMACS_LDFLAGS): Update last change.
be4ee72f 9361
048addec 93622002-11-25 Andreas Schwab <schwab@suse.de>
be4ee72f 9363
048addec 9364 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
82122254 9365
048addec 93662002-11-24 Steven Tamm <steventamm@mac.com>
82122254 9367
048addec
JD
9368 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
9369 determine the size of pointers alloced in unexed space instead
9370 of using possibly invalid emacs_zone pointers. This fixes the
9371 binary incompatibility problems caused by updates to libSystem.B.
c1ee53bc 9372
048addec 93732002-11-24 Richard M. Stallman <rms@gnu.org>
c1ee53bc 9374
048addec 9375 * search.c (Fstring_match): Doc fix.
c1ee53bc 9376
048addec
JD
9377 * callint.c (Fcall_interactively): If a command fails because
9378 `*' detects a read-only buffer, but RECORD_FLAG is set,
9379 record it anyway if the args don't actually do tty input.
5598c32e 9380
048addec 93812002-11-22 Dave Love <fx@gnu.org>
5598c32e 9382
048addec 9383 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
5598c32e 9384
048addec
JD
9385 * keyboard.c (interrupt_signal): Provide forward declaration.
9386 (kbd_buffer_store_event): Don't declare interrupt_signal.
5598c32e 9387
048addec 9388 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
97b14e22 9389
048addec 93902002-11-21 Richard M. Stallman <rms@gnu.org>
97b14e22 9391
048addec
JD
9392 * eval.c (interactive_p): Skip any number of bytecode
9393 and special form frames, in any order.
516eea8e 9394
048addec 93952002-11-20 Jason Rumney <jasonr@gnu.org>
516eea8e 9396
048addec
JD
9397 * w32fns.c (convert_mono_to_color_image): New function.
9398 (xbm_load, xbm_load_image): Use it when foreground or background
9399 is explicitly set.
04dbfa08 9400
048addec 94012002-11-19 Dave Love <fx@gnu.org>
04dbfa08 9402
048addec 9403 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
b4aebae3 9404
048addec 94052002-11-18 Jason Rumney <jasonr@gnu.org>
b4aebae3 9406
048addec
JD
9407 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
9408 (XPutPixel): Swap blue and red.
9409 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
9410 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
9411 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
9412 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
1998560a 9413
048addec 94142002-11-18 Dave Love <fx@gnu.org>
d824beee 9415
048addec 9416 * m/orion105.h (HAVE_ALLOCA): Don't define.
d824beee 9417
048addec 9418 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
d824beee 9419
048addec 9420 * m/intel386.h: Don't include alloca.h or define alloca.
d824beee 9421
048addec
JD
9422 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
9423 malloc, realloc, calloc.
d824beee 9424
048addec
JD
9425 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
9426 (bcmp): Don't define.
d824beee 9427
048addec 9428 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
d824beee 9429
048addec 9430 * m/amdahl.h: Don't define LIB_STANDARD.
d824beee 9431
048addec 9432 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
d824beee 9433
048addec 9434 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
d824beee 9435
048addec
JD
9436 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
9437 Don't include alloca.h.
d824beee 9438
048addec 9439 * s/aix3-2.h (HAVE_FSYNC): Don't define.
1998560a 9440
048addec 9441 * regex.c (_GNU_SOURCE): Don't define.
1998560a 9442
048addec 9443 * process.c (_GNU_SOURCE): Don't define.
1998560a 9444
048addec 9445 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
8704a6ab 9446
048addec 94472002-11-18 Markus Rost <rost@math.ohio-state.edu>
8704a6ab 9448
048addec 9449 * s/sol2-8.h: Include sol2-6.h.
6ae2cd57 9450
048addec 94512002-11-18 Miles Bader <miles@gnu.org>
6ae2cd57 9452
048addec
JD
9453 * dispextern.h (struct face): Add `overstrike' field.
9454 * xterm.c (x_draw_glyph_string_foreground)
9455 (x_draw_composite_glyph_string_foreground): Implement overstriking.
9456 * xfaces.c (load_face_font): Set `face->overstrike' based on
9457 result from choose_face_font.
9458 (best_matching_font, choose_face_font): Add `needs_overstrike'
9459 argument, and use it to return whether overstriking is desirable
9460 for this face/font combo.
9461 (set_font_frame_param: Pass new argument to choose_face_font.
6ae2cd57 9462
048addec 94632002-11-17 Ben Key <BKey1@tampabay.rr.com>
3582b6a3 9464
048addec
JD
9465 This change is my fix for the following entry in etc/PROBLEMS:
9466 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
9467 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
f60ae425 9468
048addec
JD
9469 * w32.c: Added wrapper functions around the win32 API functions
9470 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
9471 GetSidIdentifierAuthority. These wrapper functions serve two
9472 purposes:
9473 1. They ensure that the wrapped function can never be called
9474 when Emacs is running on an operating system on which they are
9475 not supported (Microsoft Windows 95 / 98 / ME).
9476 2. They call the wrapped functions via function pointers rather
9477 than calling them directly. This avoids taking advantage of the
9478 undocumented fact that although these functions are not supported
9479 in the 9x branch of Microsoft Windows, the functions do exist in
9480 the version of advapi32.dll that is found in the 9x branch of
9481 Microsoft Windows.
f60ae425 9482
6bdb309a 9483 * w32.c (init_user_info): Replace the calls to the win32 API
048addec
JD
9484 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
9485 and GetSidIdentifierAuthority with calls to the newly added
9486 wrapper functions.
f60ae425 9487
048addec
JD
9488 * w32.h: Added extern declarations for the following functions:
9489 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
9490 syms_of_w32menu, and void syms_of_fontset.
f60ae425 9491
6bdb309a 9492 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
048addec
JD
9493 function pointer track_mouse_event_fn in the handler for the
9494 WM_SETFOCUS message.
3582b6a3 9495
6bdb309a 9496 * w32menu.c (initialize_frame_menubar): Add code to
048addec
JD
9497 reinitialize the function pointers set_menu_item_info and
9498 get_menu_item_info.
f60ae425 9499
048addec 95002002-11-17 Ben Key <BKey1@tampabay.rr.com>
f60ae425 9501
048addec
JD
9502 * sound.c: Added a partial implementation of play-sound-internal
9503 for Microsoft Windows. Added various #ifdef / #else / #endif
9504 code blocks to separate the code that will compile under
9505 Microsoft Windows from the code that is specific to Gnu/Linux.
9506 Moved several blocks of code around to make this separation of code
9507 into Windows compatible and Gnu/Linux compatible code blocks easier.
f60ae425 9508
048addec 9509 * makefile.w32-in: Include sound.c and link with WinMM.lib.
a0f0878d 9510
048addec
JD
9511 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
9512 added support for play-sound-internal under Windows would be
9513 included in the build of Emacs.
517f42a0 9514
048addec 95152002-11-16 Jason Rumney <jasonr@gnu.org>
517f42a0 9516
048addec 9517 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
517f42a0 9518
048addec 9519 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
a0f0878d 9520
048addec 95212002-11-15 Stefan Monnier <monnier@cs.yale.edu>
a0f0878d 9522
048addec
JD
9523 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
9524 (adjust_point_for_property): Move out of display and invisible even if
9525 we were already inside before (in case a property was added while
9526 we weren't looking). Be more careful when handling invisible props.
9527 Skip invisible text as if it really wasn't there at all.
aab83f91 9528
048addec 95292002-11-15 Jason Rumney <jasonr@gnu.org>
aab83f91 9530
048addec
JD
9531 * w32term.c (x_draw_image_foreground)
9532 (w32_draw_image_foreground_1): Use standard copy and invert
9533 operations to draw images.
aab83f91 9534
048addec
JD
9535 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
9536 depth of 1.
9537 (xbm_read_bitmap_data): Invert bits as xbm is read in.
9538 (XPutPixel): Don't invert bits here.
a4478a76 9539
048addec 95402002-11-15 Jason Rumney <jasonr@gnu.org>
a4478a76 9541
048addec
JD
9542 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
9543 (w32_draw_image_foreground_1): Handle image masks.
9544 (x_draw_image_glyph_string): Don't BitBlt transparently.
a4478a76 9545
048addec
JD
9546 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
9547 (x_from_xcolors): Adjust RGB values for W32.
9548 (image_background, image_background_transparent)
9549 (postprocess_image, x_to_xcolors, x_disable_image)
9550 (x_build_heuristic_mask): Adapt for W32 and enable.
9551 (x_create_x_image_and_pixmap): Mark images with palettes as such.
9552 (xbm_load): Remove unused variable.
03670a65 9553
048addec 95542002-11-14 Richard M. Stallman <rms@gnu.org>
03670a65 9555
048addec 9556 * buffer.c (syms_of_buffer): Doc fix.
59daa29a 9557
048addec 95582002-11-14 Dave Love <fx@gnu.org>
59daa29a 9559
048addec 9560 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
59daa29a 9561
048addec
JD
9562 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
9563 * xmenu.c (unuse_menu_items, digest_single_submenu):
9564 * xfns.c (x_put_x_image):
9565 * xdisp.c (message2_nolog, set_message):
9566 * undo.c (record_point):
9567 * terminfo.c (tparam):
9568 * syntax.c (scan_sexps_forward):
9569 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
9570 * composite.c (update_compositions):
9571 * cm.c (calccost, cmgoto):
9572 * charset.c (c_string_width): Declare all args (per C99).
59daa29a 9573
048addec 9574 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
59daa29a 9575
048addec
JD
9576 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
9577 Don't declare.
59daa29a 9578
048addec 9579 * emacs.c (main) [!VMS]: Avoid third arg.
59daa29a 9580
048addec
JD
9581 * fns.c (Fcopy_sequence): Doc fix.
9582 (Fmap_char_table): Cast `call2'.
3947677c 9583
048addec
JD
95842002-11-14 Francesco Potorti` <pot@gnu.org>
9585
9586 * s/sol2-8.h: New file.
9587
95882002-11-14 Kim F. Storm <storm@cua.dk>
9589
9590 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
9591 dependency on `risky-local-variable' and the :propertize form.
9592
95932002-11-12 Stefan Monnier <monnier@cs.yale.edu>
9594
9595 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
9596
9597 * syntax.c (scan_sexps_forward): Undo last patch.
9598 Use a more obvious fix: check eob before updating the syntax table.
9599
96002002-11-09 Stefan Monnier <monnier@cs.yale.edu>
9601
9602 * syntax.c (scan_sexps_forward): Update syntax table before reading
9603 a char rather than after so we don't update the table past eob.
9604
96052002-11-09 Dave Love <fx@gnu.org>
9606
9607 * buffer.c (Fset_buffer_major_mode): Fix last change.
9608
9609 * regex.c (regexec): Fix pmatch declaration.
9610
9611 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
9612
9613 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
9614 to self-inserting characters.
9615 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
9616
9617 * coding.c (Vtranslation_table_for_input): New.
9618 (syms_of_coding): DEFVAR it.
9619
96202002-11-08 Juanma Barranquero <lektu@terra.es>
9621
9622 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
9623 window.
9624
96252002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9626
6bdb309a 9627 * process.c (Fformat_network_address): Remove unused locals p,
048addec
JD
9628 cp, and i.
9629
96302002-11-06 Dave Love <fx@gnu.org>
9631
9632 * buffer.c (Qset_buffer_major_mode_hook): New.
9633 (Fset_buffer_major_mode): Use it.
9634
96352002-11-06 Richard M. Stallman <rms@gnu.org>
9636
9637 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
9638 and stop_polling.
9639
9640 * process.c (wait_reading_process_input):
9641 Test POLLING_PROBLEM_IN_SELECT, not hpux.
9642 Avoid initialization for auto Lisp_Object var.
9643
9644 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
9645
9646 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
9647
96482002-11-05 Richard M. Stallman <rms@gnu.org>
9649
9650 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
9651
9652 * callint.c (Fcall_interactively): New local filter_specs.
9653 (Fcall_interactively): Check for progn as well as let.
9654 Add a gcpro.
9655 (Qprogn): New variable.
9656 (syms_of_callint): Staticpro and init Qprogn.
9657
96582002-11-04 John Paul Wallington <jpw@shootybangbang.com>
9659
9660 * lread.c (Feval_buffer): Doc fix.
9661
96622002-11-04 Dave Love <fx@gnu.org>
9663
9664 * keyboard.c (read_char): Always translate iff
9665 Vkeyboard_translate_table is a char table and c is valid.
9666
9667 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
9668 and fix C types.
9669
96702002-11-03 Stefan Monnier <monnier@cs.yale.edu>
9671
9672 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
9673
9674 * editfns.c (get_pos_property): Don't hardcode Qfield.
9675
9676 * keyboard.c (adjust_point_for_property): Handle `display' prop on
9677 overlays. Also handle `invisible' prop.
9678
96792002-11-02 Stefan Monnier <monnier@cs.yale.edu>
9680
9681 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
9682 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
9683
96842002-11-01 Andreas Schwab <schwab@suse.de>
9685
9686 * editfns.c (Fmessage): Revert last change to properly handle %%.
9687
96882002-11-01 Stefan Monnier <monnier@cs.yale.edu>
9689
9690 * xmenu.c (unuse_menu_items): New fun.
9691 (menu_items_inuse): New var.
9692 (syms_of_xmenu): Initialize it.
9693 (init_menu_items): Use it to detect re-entrance.
9694 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
9695 (Fx_popup_menu): Remove spurious XSETFRAME.
9696
9697 * editfns.c (find_field): Make an exception for nil fields.
9698
96992002-11-01 Dave Love <fx@gnu.org>
9700
9701 * m/gec63.h: Deleted.
9702
97032002-10-31 Dave Love <fx@gnu.org>
9704
9705 * xterm.c (XTread_socket): Fix last change.
9706 (xaw_scroll_callback): Cast call_data to long to avoid warning.
9707
97082002-10-31 Stefan Monnier <monnier@cs.yale.edu>
9709
9710 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
9711
97122002-10-30 Stefan Monnier <monnier@cs.yale.edu>
9713
9714 * editfns.c (overlays_around, get_pos_property): New funs.
9715 (find_field): Use them.
9716 Also be careful not to modify POS before its last use.
9717 (Fmessage): Don't Fformat if there's nothing to format.
9718
97192002-10-30 Dave Love <fx@gnu.org>
9720
9721 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
9722 [HAVE_PTY_H]; Include pty.h.
9723
9724 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
9725
9726 * xterm.c (Qeql): Declare.
9727 (Vx_keysym_table): New.
9728 (syms_of_xterm): Initialize it.
9729 (XTread_socket): Use it. Deal with ASCII keysyms.
9730 (XSetIMValues) [HAVE_X11R6]: Prototype.
9731
9732 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
9733 (lispy_kana_keys): Comment out.
9734 (make_lispy_event) [XK_kana_A]: Comment out.
9735 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
9736 Fix sprintf call.
9737
9738 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
9739 regexp.h change).
9740 (TERMINFO, LIBS_TERMCAP): Define.
9741
9742 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
9743 (bcmp): Define conditional on HAVE_BCMP.
9744 (NO_SIOCTL_H): Don't define.
9745 (TIOCSIGSEND): Don't make conditional on IRIX6.
9746
9747 * s/sol2-5.h: Don't include strings.h.
9748 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
9749
9750 * s/irix6-0.h (IRIX6): Don't define.
9751 (bcopy, bcmp, bzero): Don't undef.
9752
9753 * s/irix6-5.h: Don't include strings.h.
9754 (IRIX6): Don't define.
9755 (bcopy, bcmp, bzero): Don't undef.
9756
9757 * syntax.c (Fforward_comment): Doc fix.
9758
97592002-10-29 Kim F. Storm <storm@cua.dk>
9760
9761 * process.c (Fsignal_process): Allow PROCESS to be specified by
9762 name in addition to pid (as integer or string).
9763
97642002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
9765
9766 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
9767 environments.
9768
97692002-10-27 Kim F. Storm <storm@cua.dk>
9770
9771 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
9772
9773 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
9774
9775 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
9776
9777 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
9778
97792002-10-26 Richard M. Stallman <rms@gnu.org>
9780
9781 * editfns.c (Fformat): Detect invalid format letters for floats.
9782
97832002-10-25 Kenichi Handa <handa@m17n.org>
9784
9785 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
9786 (x_set_title): Likewise.
9787
97882002-10-25 Juanma Barranquero <lektu@terra.es>
9789
9790 * macgui.h:
9791 * w32gui.h: Remove definition of XColor.
9792
9793 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
9794
97952002-10-24 Kim F. Storm <storm@cua.dk>
9796
9797 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
9798 Callers changed (supply dummy arg).
9799
9800 * lisp.h (get_window_cursor_type): Update prototype.
9801
9802 * w32term.c (x_display_and_set_cursor): Get active_cursor from
9803 get_window_cursor_type to track system caret.
9804
98052002-10-24 Kim F. Storm <storm@cua.dk>
9806
9807 * process.c (Fformat_network_address): New function.
9808 (syms_of_process): Defsubr it.
9809 (list_processes_1): Use it to format :local/:remote address if
f9711de4 9810 service/host is not set; before Emacs would crash in that case.
048addec
JD
9811 (Fmake_network_process): Don't use Ffind_operation_coding_system
9812 to setup coding system if host or service is not set.
9813
98142002-10-23 Juanma Barranquero <lektu@terra.es>
9815
9816 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
9817
9818 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
9819 COLORREF.
9820
9821 * macgui.h:
9822 * w32gui.h: Add definition of XColor.
9823
9824 * macfns.c:
9825 * w32fns.c:
9826 * xfaces.c: Remove definition of XColor.
9827
98282002-10-22 Stefan Monnier <monnier@cs.yale.edu>
9829
9830 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
9831
9832 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
9833 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
9834 window if it is dedicated.
9835 (Fshrink_window): Add preserve_before as was done for enlarge_window.
9836 (Vspecial_display_function): Update docstring.
9837
9838 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
9839 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
9840 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
9841
98422002-10-21 Stefan Monnier <monnier@cs.yale.edu>
9843
9844 * casefiddle.c (casify_region): Don't treat a prefix char as part
9845 of a word when at the beginning.
9846
98472002-10-17 Juanma Barranquero <lektu@terra.es>
9848
9849 * lread.c (syms_of_lread): Fix typos.
9850
98512002-10-17 Dave Love <fx@gnu.org>
9852
9853 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
9854
98552002-10-16 Richard M. Stallman <rms@gnu.org>
9856
9857 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
9858
98592002-10-14 Juanma Barranquero <lektu@terra.es>
9860
9861 * w16select.c (syms_of_win16select): Fix docstring for
9862 `selection-coding-system'.
9863
9864 * w32select.c (syms_of_w32select): Likewise.
9865
98662002-10-14 Stefan Monnier <monnier@cs.yale.edu>
9867
9868 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
9869 a backslash-quoted char.
9870 (scan_lists, scan_sexps_forward): Pacify the compiler.
9871
98722002-10-13 Richard M. Stallman <rms@gnu.org>
9873
9874 * window.c (window_scroll): Set immediate_quit.
9875
9876 * print.c (print): When backquote form is the car of a list,
9877 output in old style. Use old_backquote_output to output all
9878 comma forms inside it in old style too.
9879
9880 * buffer.h (struct buffer): Move `undo_list' down below `name'.
9881
98822002-10-11 Markus Rost <rost@math.ohio-state.edu>
9883
9884 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
9885 batch mode).
9886
9887 * lread.c (Fload): Doc fix (load-suffixes).
9888
98892002-10-10 Steven Tamm <steventamm@mac.com>
9890
9891 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
9892 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
9893 Also switch the default to Qnil from Qt.
9894
98952002-10-08 Kenichi Handa <handa@m17n.org>
9896
9897 * coding.c (code_convert_region): When we need more GAP for
9898 conversion, pay attention to the case that coding->produced is not
9899 greater than coding->consumed.
9900
99012002-10-07 Richard M. Stallman <rms@gnu.org>
9902
9903 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
9904
99052002-10-06 Andrew Choi <akochoi@shaw.ca>
9906
9907 * macmenu.c (mac_menu_show): Add j to count menu items; match
9908 menu_item_selection to it to find selected item.
9909
99102002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9911
9912 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
9913 cases. The correct fix is to pass ReparentNotify to Xt.
9914 The shell widget interprets ConfigureNotify differently depending
9915 on if it has been reparented or not.
9916
99172002-10-05 Markus Rost <rost@math.ohio-state.edu>
9918
9919 * editfns.c (Fformat_time_string): Doc fix.
9920
99212002-10-05 John Paul Wallington <jpw@shootybangbang.com>
9922
9923 * fns.c (Flength): Doc fix.
9924
99252002-10-04 Stefan Monnier <monnier@cs.yale.edu>
9926
9927 * keyboard.c (keyremap): New struct.
9928 (read_key_sequence): Use it: globally replace keytran_foo with
9929 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
9930 keytran_next and fkey_next to just `next'.
9931
99322002-10-04 Steven Tamm <steventamm@mac.com>
9933
9934 * macterm.c (keycode_to_xkeysym_table): Change return to be
9935 treated like an X keysym.
9936
99372002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9938
9939 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
9940 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
9941 This is to also handle x/y changes that occur because of a resize.
9942
99432002-10-02 John Paul Wallington <jpw@shootybangbang.com>
9944
9945 * frame.c (Vdelete_frame_functions): New variable.
9946 (syms_of_frame): Initialize and defvar it.
9947 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
9948 it when frame's `tooltip' parameter is non-nil.
9949
9950 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
9951
9952 * w32fns.c (x_create_tip_frame): Likewise.
9953
9954 * macfns.c (x_create_tip_frame): Likewise.
9955
99562002-09-30 Kenichi Handa <handa@m17n.org>
9957
9958 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
9959 -1 before calling ccl_driver.
9960
9961 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
9962 Only when it is non-nil, handle composition sequence.
9963 (setup_coding_system) <0>: Don't force composition handling.
9964
9965 * Makefile.in (lisp, shortlisp): Add utf-16.elc
9966
99672002-09-29 Richard M. Stallman <rms@gnu.org>
9968
9969 * search.c (Freplace_match): Adjust match data for the substitution
9970 just made in the buffer.
9971
9972 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
9973 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
9974
99752002-09-27 Richard M. Stallman <rms@gnu.org>
9976
9977 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
9978 (read_char): Use them. Do all exits thru the end of the function.
9979
99802002-09-27 Kenichi Handa <handa@etl.go.jp>
9981
9982 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
9983 is nil.
9984
99852002-09-26 Richard M. Stallman <rms@gnu.org>
9986
9987 * regex.h (__restrict_arr): Don't define if already defined.
9988
9989 * coding.c (run_pre_post_conversion_on_str):
9990 Save and restore Vdeactivate_mark.
9991
99922002-09-26 John Paul Wallington <jpw@shootybangbang.com>
9993
9994 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
9995
99962002-09-26 Kenichi Handa <handa@etl.go.jp>
9997
9998 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
9999 nonzero, try face's family at first. Otherwise try FAMILY at first.
10000 (choose_face_font): If C is a single byte char or latin-1, call
10001 try_font_list with PREFER_FACE_FAMILY 1.
10002
100032002-09-21 Richard M. Stallman <rms@gnu.org>
10004
10005 * window.c (select_window_1): Don't select frame.
10006 Set frame's selected window only when frame itself is selected.
10007 (Fselect_window): Doc fix.
10008
100092002-09-18 Kim F. Storm <storm@cua.dk>
10010
10011 * process.c (make-network-process): Doc fix (there is no
10012 network-server-log-function hook).
10013
100142002-09-18 Richard M. Stallman <rms@gnu.org>
10015
10016 * print.c (print): Clear out the unused parts of Vprint_number_table.
10017 (syms_of_print): Doc fix for `print-number-table'.
10018
10019 * unexelf.c (unexec): Undo previous change.
10020
100212002-09-17 Andreas Schwab <schwab@suse.de>
10022
10023 * m/alpha.h [LINUX]: Don't define DATA_START.
10024
100252002-09-16 Dave Love <fx@gnu.org>
10026
10027 * unexelf.c (unexec): Deal with .got, reinstating change from
10028 25-08-1999.
10029
100302002-09-13 Richard M. Stallman <rms@gnu.org>
10031
10032 * s/sol2-6.h (UNEXEC): Comment out definition.
10033
10034 * unexsol.c (unexec): Don't downcase first letter of error msg.
10035
10036 * xfaces.c (Fcolor_supported_p): Just one arg is required.
10037
100382002-09-12 Markus Rost <rost@math.ohio-state.edu>
10039
10040 * unexsol.c: Include buffer.h, charset.h, coding.h.
10041
100422002-09-11 Richard M. Stallman <rms@gnu.org>
10043
10044 * unexsol.c: Don't use report_file_error; do it by hand
10045 using dlerror.
10046
10047 * process.c (wait_reading_process_input, both versions):
10048 Before calling turn_on_atimers, call stop_polling.
10049
10050 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
10051
10052 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
10053 we go to too_near_end, call clear_glyph_matrix.
10054 (redisplay_window): After make_cursor_line_fully_visible,
10055 call clear_glyph_matrix and bypass `goto done'.
10056
10057 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
10058 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
10059
100602002-09-10 Richard M. Stallman <rms@gnu.org>
10061
10062 * fileio.c (Fdo_auto_save): Catch error making directory.
10063 Only call push_message if we need to.
10064 At the same time, make an unwind-protect to pop it.
10065 Rename local message_p to old_message_p.
10066 (do_auto_save_make_dir, do_auto_save_eh): New functions.
10067 (do_auto_save_unwind): Don't call pop_message.
10068
10069 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
10070
10071 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
10072
10073 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
10074
10075 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
10076
100772002-09-10 Stefan Monnier <monnier@cs.yale.edu>
10078
10079 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
10080 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
10081 (re_match_2_internal): Be more careful with infinite loops.
10082
100832002-09-10 Kim F. Storm <storm@cua.dk>
10084
10085 * macros.c (end_kbd_macro): New function.
10086 (Fend_kbd_macro): Use it.
10087
10088 * macros.h (end_kbd_macro): Declare extern.
10089
10090 * keyboard.c (Fdiscard_input): If defining keyboard macro,
10091 end and save it instead of discarding it.
10092
100932002-09-09 Markus Rost <rost@math.ohio-state.edu>
10094
10095 * s/sol2-6.h: Fix typo. Add comment.
10096
100972002-09-09 Richard M. Stallman <rms@gnu.org>
10098
10099 * regex.c (regnum_t): Use signed int, not unsigned int.
10100
10101 * s/sol2-6.h: New file.
10102
10103 * s/sol2-5.h (UNEXEC): Definition deleted.
10104
101052002-09-08 Kim F. Storm <storm@cua.dk>
10106
10107 * macros.c (executing_macro_index): Change type to EMACS_INT.
10108 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
10109
10110 * macros.h (executing_macro_index): Change type to EMACS_INT.
10111
101122002-09-06 Richard M. Stallman <rms@gnu.org>
10113
10114 * casetab.c (set_case_table): Make canon table point to eqv table.
10115
101162002-09-06 Juanma Barranquero <lektu@terra.es>
10117
10118 * coding.c (syms_of_coding): Fix spacing.
10119
10120 * composite.c (Fcompose_region_internal)
10121 (Fcompose_string_internal): Likewise.
10122
10123 * data.c (Flsh): Likewise.
10124
10125 * fontset.c (Fset_fontset_font): Likewise.
10126
10127 * macfns.c (Fx_server_max_request_size): Likewise.
10128
10129 * w16select.c (syms_of_win16select): Likewise.
10130
10131 * w32select.c (syms_of_w32select): Likewise.
10132
10133 * xselect.c (syms_of_xselect): Likewise.
10134
101352002-09-05 Richard M. Stallman <rms@gnu.org>
10136
10137 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
10138 call EXTEND_RANGE_TABLE and return a proper value.
10139 (set_image_of_range): Don't call set_image_of_range_1
10140 if no TRANSLATE or if range includes all of Latin-1.
10141 Only call it for the Latin-1 part of the range.
10142 For other cases, make two separate ranges,
10143 one for the original specified characters and one for
10144 their case-conversions.
10145
101462002-09-04 Richard M. Stallman <rms@gnu.org>
10147
10148 * s/sol2-5.h (UNEXEC): Use unexsol.o.
10149
10150 * window.c (displayed_window_lines): Correct for one-off bug
10151 in HEIGHT on non-window displays.
10152
10153 * regex.c (set_image_of_range_1): New function.
10154 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
10155 Return a value to indicate running out of memory.
10156 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
10157 (extend_range_table_work_area): New subroutine.
10158 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
10159 Different calling conventions, and used from set_image_of_range{,_1}.
10160 (IMMEDIATE_QUIT_CHECK): Definitions moved.
10161
101622002-09-04 Juanma Barranquero <lektu@terra.es>
10163
10164 * makefile.w32-in: All dependencies updated.
10165
101662002-09-01 Richard M. Stallman <rms@gnu.org>
10167
10168 * unexsol.c: New file.
10169
10170 * xfns.c (Qbox): Declare external, don't define.
10171
10172 * xdisp.c (redisplay_window) <force-start case>:
10173 If point is on semi-visible last line, reposition
10174 it at previous line.
10175
10176 * alloc.c (display_malloc_warning): Use display-warning.
10177 (malloc_warning_1): Function deleted.
10178
10179 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
10180
10181 * lread.c (read1): Handle #! by skipping the line.
10182
101832002-08-31 Richard M. Stallman <rms@gnu.org>
10184
10185 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
10186 Don't include LDFLAGS.
10187 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
10188
101892002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
10190
10191 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
10192 member of x_display_info unless we compile for some window system.
10193
101942002-08-31 Kim F. Storm <storm@cua.dk>
10195
10196 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
10197 (get_window_cursor_type): Don't use them.
10198 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
10199
102002002-08-30 Kenichi Handa <handa@etl.go.jp>
10201
10202 * xdisp.c (get_next_display_element): Fix previous change.
10203
102042002-08-30 Andrew Choi <akochoi@shaw.ca>
10205
10206 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
10207 (expose_window): Use it to fix the display of overlapping
10208 rows (merge code from xterm.c).
10209
10210 * macfns.c (Qbox): Add extern declaration.
10211
102122002-08-30 Juanma Barranquero <lektu@terra.es>
10213
10214 * w32fns.c (Qbox): Make extern.
10215 (syms_of_w32fns): Remove initialization of Qbox.
10216
102172002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
10218
10219 * xfns.c (Fx_open_connection): Fix error message.
10220
102212002-08-30 Kim F. Storm <storm@cua.dk>
10222
10223 The following changes consolidates the handling of the cursor
10224 type in xdisp.c, moving duplicate code and functionality from
10225 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
10226
10227 * frame.h (enum text_cursor_kinds): Consolidated here.
10228 Added DEFAULT_CURSOR value.
10229 (struct frame) <desired_cursor, cursor_width>
10230 <blink_off_cursor, blink_off_cursor_width>: New fields.
10231 Consolidated from output_x, output_w32 and output_mac structs.
10232 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
10233 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
10234
10235 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
10236 Variables consolidated here.
10237 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
10238 (Vcursor_in_non_selected_windows): Renamed from
10239 cursor_in_non_selected_windows and changed to Lisp_Object.
10240 (syms_of_xdisp): Define and staticpro new and moved variables.
10241 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
10242 consolidated here. Recognize Qhollow setting.
10243 (set_frame_cursor_types): New function to set frame cursor types
10244 based on the frame parameters.
10245 (get_window_cursor_type): New function to calculate new cursor
10246 type and width for the specified window. Based on duplicated
10247 code consolidated here.
10248 Enhancements: cursor-in-non-selected-windows may be a cursor type,
10249 check buffer-local alternate-cursor-type and blink-cursor-alist
10250 before using built-in blink off methods.
10251
10252 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
10253
10254 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
10255 (get_specified_cursor_type, get_window_cursor_type)
10256 (set_frame_cursor_types): Added prototypes.
10257
10258 * macfns.c (x_specified_cursor_type): Removed.
10259 (x_set_cursor_type): Use set_frame_cursor_types.
10260 (Qbar, Qbox): Removed.
10261 (syms_of_macfns): Don't intern or staticpro them.
10262
10263 * macterm.c (x_specified_cursor_type): Remove prototype.
10264 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
10265 (x_display_and_set_cursor): Use get_window_cursor_type.
10266 Remove unused local variables cursor_non_selected, active_cursor.
10267 Redraw cursor if hbar cursor width changes.
10268 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
10269
10270 * macterm.h (enum text_cursor_kinds): Removed.
10271 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
10272 <blink_off_cursor, blink_off_cursor_width>: Members removed.
10273 (FRAME_DESIRED_CURSOR): Macro removed.
10274
10275 * w32fns.c (Vblink_cursor_alist): Removed.
10276 (Qbar, Qhbar, Qbox, Qhollow): Removed.
10277 (syms_of_w32fns): Don't intern, staticpro, or define them.
10278 (x_specified_cursor_type): Removed.
10279 (x_set_cursor_type): Use set_frame_cursor_types.
10280
10281 * w32term.c (x_specified_cursor_type): Remove prototype.
10282 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
10283 (x_display_and_set_cursor): Use get_window_cursor_type.
10284 Remove unused local variables cursor_off_state.
10285 Redraw cursor if hbar cursor width changes.
10286 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
10287
10288 * w32term.h (enum text_cursor_kinds): Removed.
10289 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
10290 <blink_off_cursor, blink_off_cursor_width>: Members removed.
10291 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
10292 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
10293 (struct w32_display_info) <x_highlight_frame>: Renamed member from
10294 w32_highlight_frame.
10295
10296 * xfns.c (Vblink_cursor_alist): Removed.
10297 (Qbar, Qhbar, Qbox, Qhollow): Removed.
10298 (syms_of_xfns): Don't intern, staticpro, or define them.
10299 (x_specified_cursor_type): Removed.
10300 (x_set_cursor_type): Use set_frame_cursor_types.
10301
10302 * xterm.c (x_specified_cursor_type): Remove prototype.
10303 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
10304 (x_display_and_set_cursor): Use get_window_cursor_type.
10305 Remove unused local variables cursor_off_state.
10306 Redraw cursor if hbar cursor width changes.
10307
10308 * xterm.h (enum text_cursor_kinds): Removed.
10309 (struct output_x) <current_cursor, desired_cursor, cursor_width>
10310 <blink_off_cursor, blink_off_cursor_width>: Members removed.
10311 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
10312 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
10313 (x_specified_cursor_type): Remove prototype.
10314
103152002-08-28 Richard M. Stallman <rms@gnu.org>
10316
10317 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
10318 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
10319 (Vblink_cursor_alist): New variable.
10320 (syms_of_w32fns): Initialize and defvar it.
10321 (x_specified_cursor_type): Recognize Qbox for filled box.
10322 Exceptions are hollow boxes.
10323 (Qbox, Qhollow): New variables.
10324 (syms_of_w32fns): Initialize and staticpro them.
10325
10326 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
10327 New macros.
10328 (struct w32_output): New fields blink_off_cursor,
10329 blink_off_cursor_width.
10330 (FRAME_CURSOR_WIDTH): New macro.
10331
10332 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
10333 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
10334
10335 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
10336 for bar cursor.
10337
10338 * w32term.c (expose_overlaps): New function.
10339 (expose_window): Use it to fix the display of overlapping rows.
10340
103412002-08-28 Simon Josefsson <jas@extundo.com>
10342
10343 * xfns.c (Fx_open_connection): Improve help when X connection
10344 fails, xhost is insecure and xauth is better.
10345
103462002-08-28 Juanma Barranquero <lektu@terra.es>
10347
10348 * makefile.w32-in: Add missing dependencies on w32term.h and
10349 composite.h.
10350
10351 * emacs.c (USAGE1): Add missing newline.
10352
103532002-08-27 Andrew Choi <akochoi@shaw.ca>
10354
10355 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
10356
103572002-08-27 Richard M. Stallman <rms@gnu.org>
10358
10359 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
10360 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
10361 (Vblink_cursor_alist): New variable.
10362 (syms_of_xfns): Initialize and defvar it.
10363 (x_specified_cursor_type): Recognize Qbox for filled box.
10364 Exceptions are hollow boxes.
10365 (Qbox, Qhollow): New variables.
10366 (syms_of_xfns): Initialize and staticpro them.
10367
10368 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
10369 New macros.
10370 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
10371
10372 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
10373 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
10374
10375 * emacs.c (main): Handle --script.
10376 (USAGE1): Mention --script.
10377 (standard_args): Define sort order for --script.
10378
103792002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
10380
10381 * xdisp.c (redisplay_updating_p): Variable removed.
10382 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
10383 New variables.
10384 (init_iterator): Don't free realized faces if
10385 inhibit_free_realized_faces is set.
10386 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
10387 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
10388 initialize Qinhibit_free_realized_faces.
10389
10390 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
10391 when iterator is adding glyphs to a glyph matrix.
10392
103932002-08-27 Kenichi Handa <handa@etl.go.jp>
10394
10395 * xdisp.c (get_next_display_element): In unibyte case, don't use
10396 octal form for such eight-bit characters that can be converted to
10397 multibyte char.
10398
103992002-08-26 Kim F. Storm <storm@cua.dk>
10400
b6189c3b
KS
10401 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize
10402 foreground and background colors. From Joe Buehler.
048addec
JD
10403
104042002-08-26 Miles Bader <miles@gnu.org>
10405
10406 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
10407
104082002-08-25 Andrew Choi <akochoi@shaw.ca>
10409
10410 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
10411 defined instead of MAC_OSX.
10412
10413 * s/darwin.h (select): Define select to sys_select only if
10414 HAVE_CARBON is defined.
10415 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
10416 (DONT_REOPEN_PTY): #def it.
10417
10418 * macterm.c (XTread_socket): Remove code to call
10419 SendEventToEventTarget for keys with command modifiers when
10420 mac_command_key_is_meta is nil.
10421
104222002-08-24 Andreas Schwab <schwab@suse.de>
10423
10424 * eval.c (Fdefvar): Fix last change.
10425
104262002-08-23 Richard M. Stallman <rms@gnu.org>
10427
10428 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
10429 Record variables in load history as (defvar . VAR).
10430 (Fdefvar): Don't record in load history if no initial value.
10431 (Qdefvar): New variable.
10432 (syms_of_eval): Init and staticpro it.
10433
10434 * lread.c (syms_of_lread): Doc fix.
10435 (build_load_history): Use Fmember to see if a definition
10436 is already in the Vload_history element.
10437
10438 * process.c (Fstart_process): Remove /: from program name.
10439
10440 * emacs.c (decode_env_path): Don't add /: if file name handler
10441 has a `safe-magic' property.
10442
10443 * callproc.c (Fcall_process): Remove /: from program name.
10444
104452002-08-23 Stefan Monnier <monnier@cs.yale.edu>
10446
10447 * regex.c (PATFETCH): Remove the translating fetch.
10448 (PATFETCH_RAW): Rename to PATFETCH.
10449 (set_image_of_range): New fun.
10450 (SET_RANGE_TABLE_WORK_AREA): Use it.
10451 (regex_compile): Don't translate the pattern chars so eagerly.
10452 Only do it when inserting an `exactn' bytecode or when handling
10453 a char-range.
10454 (mutually_exclusive_p): Avoid empty statement.
10455
104562002-08-22 Kim F. Storm <storm@cua.dk>
10457
10458 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
10459 end up on a partially visible line; this reverts a specific part
10460 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
10461 display error which has been reported several times now.
10462 However it introduces the problem that changes was supposed to fix.
10463 See my comments in the source if you want to debug this further.
10464
104652002-08-20 Kenichi Handa <handa@etl.go.jp>
10466
10467 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
10468
104692002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
10470
10471 * msdos.c (croak): Add `void' to definition.
10472
c1380aa6 10473 * sysdep.c (request_sigio, unrequest_sigio) [MSDOS]:
048addec
JD
10474 Don't define them, they are defined in msdos.c.
10475
10476 * mem-limits.h [MSDOS]: Declare etext.
10477
10478 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
10479 `const' since CORRECT_DIR_SEPS modifies its target.
10480
104812002-08-19 Kim F. Storm <storm@cua.dk>
10482
2fb0ce67 10483 * keyboard.c (Fclear_this_command_keys): Add optional arg
048addec
JD
10484 KEEP-RECORD to avoid clearing lossage when we just want to clear
10485 the current key sequence (kmacro needs this).
10486
104872002-08-19 Kenichi Handa <handa@localhost>
10488
10489 * composite.c (run_composition_function): Call FUNC if it is fboundp.
10490
10491 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
10492 cons, return Qnil.
10493
104942002-08-17 Richard M. Stallman <rms@gnu.org>
10495
10496 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
10497
10498 * sysdep.c [!VMS]: Include sys/files.h.
10499
10500 * editfns.c (save_restriction_restore): Defend from unchained marker.
10501
10502 * buffer.c (overlays_at): Handle extending vec uniformly.
10503 (overlays_in): Handle extending vec from length 0 as in overlays_at.
10504
105052002-08-15 Andrew Choi <akochoi@shaw.ca>
10506
10507 * mac.c (init_mac_osx_environment): New function.
10508
10509 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
10510
105112002-08-14 Kim F. Storm <storm@cua.dk>
10512
10513 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
10514 executing macro before appending to it (when used from Lisp).
10515 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
10516 which is called prior to each iteration of macro (for kmacro.el).
10517 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
10518
10519 * lisp.h (Fexecute_kbd_macro): Update prototype.
10520
10521 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
10522
105232002-08-14 Kenichi Handa <handa@etl.go.jp>
10524
10525 * xselect.c (QUTF8_STRING): New variable.
10526 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
10527 (x_atom_to_symbol): Likewise.
10528 (x_get_local_selection): New argument local_request. If it is
10529 nonzero, call handler_fn with the second arg nil.
10530 (x_handle_selection_request): Call x_get_local_selection with
10531 local_request 0.
10532 (lisp_data_to_selection_data): Don't encode the string here.
10533 (Fx_get_selection_internal): Call x_get_local_selection with
10534 local_request 1.
10535 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
10536
10537 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
10538
10539 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
10540
105412002-08-13 Richard M. Stallman <rms@gnu.org>
10542
10543 * minibuf.c (Fminibufferp): New function.
10544 (syms_of_minibuf): Defsubr it.
10545 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
10546
105472002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
10548
10549 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
10550
105512002-08-12 Richard M. Stallman <rms@gnu.org>
10552
10553 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
10554 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
10555 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
10556 already.
10557
10558 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
10559
105602002-08-11 Andrew Choi <akochoi@shaw.ca>
10561
10562 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
10563 (Vmac_pass_command_to_system): New variable.
10564 (Vmac_pass_control_to_system): New variable.
10565 (do_mouse_moved): Check wp with is_emacs_window.
10566 (XTread_socket): Check window_ptr with is_emacs_window.
10567 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
10568 events back to Mac Toolbox for processing, depending on values of
10569 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
10570 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
10571 Vmac_pass_control_to_system.
10572
105732002-08-10 Kenichi Handa <handa@etl.go.jp>
10574
10575 * coding.c (unencodable_char_position): New function.
10576 (Funencodable_char_position): New function.
10577 (syms_of_coding): Defsubr Funencodable_char_position.
10578
105792002-08-10 Andrew Choi <akochoi@shaw.ca>
10580
10581 * mac.c (sys_select) [MAC_OSX]: New function.
10582
10583 * macterm.c (MakeMeTheFrontProcess): New function.
10584 (mac_initialize): Call MakeMeTheFrontProcess.
10585
10586 * s/darwin.h: Define select to sys_select.
10587
105882002-08-09 Richard M. Stallman <rms@gnu.org>
10589
10590 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
10591
105922002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
10593
10594 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
10595 end of the buffer.
10596
105972002-08-08 Ken Raeburn <raeburn@mit.edu>
10598
10599 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
10600
10601 * puresize.h (BASE_PURESIZE): Increase to 910000.
10602
106032002-08-08 Kenichi Handa <handa@etl.go.jp>
10604
10605 * coding.c (Ffind_operation_coding_system): For write-region, if
10606 VISIT is a filename, make it the target.
10607
106082002-08-07 Richard M. Stallman <rms@gnu.org>
10609
10610 * alloc.c (mark_object): Detect long lists for debugging.
10611 (mark_object_loop_halt): New variable.
10612
10613 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
10614
10615 * data.c (Fmake_variable_frame_local): Doc fix.
10616
106172002-08-01 David Ponce <david@dponce.com>
10618
10619 * w32menu.c (local_heap, local_alloc, local_free): New macros.
10620 (malloc_widget_value, free_widget_value)
10621 (w32_free_submenu_strings): Use them.
10622
10623 (push_submenu_start, push_submenu_end, push_left_right_boundary)
10624 (push_menu_pane, push_menu_item, single_keymap_panes)
10625 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
10626 (single_submenu, set_frame_menubar)
10627 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
10628
10629 (Fx_popup_menu): Don't show pop up menu until preceding one is
10630 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
10631
10632 * w32menu.c: Changes adapted from xmenu.c
10633 (set_frame_menubar): First parse all submenus,
10634 then make widget_value trees from them.
10635 Don't allocate any widget_value objects
10636 until we are done with the parsing.
10637 (parse_single_submenu): New function.
10638 (digest_single_submenu): New function.
10639 (single_submenu): Function deleted, replaced by those two.
10640
106412002-08-04 Andrew Choi <akochoi@shaw.ca>
10642
10643 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
10644 returns a valid window pointer before proceeding for keyDown and
10645 autoKey events.
10646
106472002-08-03 Andrew Choi <akochoi@shaw.ca>
10648
10649 * macterm.c (USE_CARBON_EVENTS): New macro.
10650 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
10651 (x_iconify_frame): Call CollapseWindow.
10652 (Vmac_reverse_ctrl_meta): New variable.
10653 (Vmac_wheel_button_is_mouse_2): New variable.
10654 (init_mac_drag_n_drop): New function.
10655 (mac_do_receive_drag): New function.
10656 (mac_handle_service_event): New function.
10657 (init_service_handler): New function.
10658 (mac_to_emacs_modifiers): New function.
10659 (mac_event_to_emacs_modifiers): New function.
10660 (mac_get_mouse_btn): New function.
10661 (mac_convert_event_ref): New function.
10662 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
10663 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
10664 mac_get_mouse_btn.
10665 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
10666
10667 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
10668 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
10669 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
10670 TOOL_BAR_EVENT for MAC_OS as well.
10671 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
10672 as for WINDOWS_NT.
10673 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
10674
10675 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
10676
106772002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
10678
10679 * xdisp.c (forward_to_next_line_start): Fix a condition that
10680 lead to a newline being skipped.
10681
106822002-08-02 Andrew Choi <akochoi@shaw.ca>
10683
10684 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
10685
106862002-08-01 Richard M. Stallman <rms@gnu.org>
10687
10688 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
10689
106902002-07-31 Andrew Choi <akochoi@shaw.ca>
10691
10692 * macfns.c: #undef init_process before #define-ing it.
10693
10694 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
10695 HAVE_CARBON is defined.
10696
106972002-07-31 Richard M. Stallman <rms@gnu.org>
10698
10699 * xmenu.c (set_frame_menubar): First parse all submenus,
10700 then make widget_value trees from them.
10701 Don't allocate any widget_value objects
10702 until we are done with the parsing.
10703 (parse_single_submenu): New function.
10704 (digest_single_submenu): New function.
10705 (single_submenu): Function deleted, replaced by those two.
10706
107072002-07-30 Juanma Barranquero <lektu@terra.es>
10708
10709 * w32proc.c (syms_of_ntproc): Fix docstring of
10710 `w32-get-true-file-attributes'.
10711
107122002-07-28 Richard M. Stallman <rms@gnu.org>
10713
10714 * s/hpux8.h (HPUX8): Define this before including hpux.h.
10715 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
10716
10717 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
10718
10719 * keyboard.c (make_lispy_event):
10720 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
10721 Explicitly clear up_modifier in event->modifiers.
10722
107232002-07-27 Richard M. Stallman <rms@gnu.org>
10724
10725 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
10726
10727 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
10728 for bar cursor.
10729
107302002-07-26 Kenichi Handa <handa@etl.go.jp>
10731
10732 * coding.c (detect_coding_iso2022): While checking a byte sequence
10733 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
10734 it in the normal loop.
10735
107362002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
10737
10738 * xterm.c (expose_overlaps): New function.
10739 (expose_window): Use it to fix the display of overlapping rows.
10740
10741 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
10742
107432002-07-23 Ken Raeburn <raeburn@gnu.org>
10744
10745 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
10746 since it only depends on XUINT.
10747
10748 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
10749 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
10750 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
10751 Macros deleted.
3947677c 10752
77d1daf2
AS
10753 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
10754 its value over other approaches.
10755 * sysdep.c (start_of_data): Don't define the function if a macro
10756 form has been defined.
8a8e19a3 10757
048addec
JD
107582002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
10759
10760 * xdisp.c (redisplay_updating_p): New variable.
10761 (init_iterator): Don't free realized faces when
10762 redisplay_updating_p is set.
10763 (redisplay_internal): Set redisplay_updating_p while updating
10764 the display.
10765
107662002-07-23 Richard M. Stallman <rms@gnu.org>
10767
10768 * editfns.c (Fmessage): Treat "" like nil.
10769
107702002-07-23 Kenichi Handa <handa@etl.go.jp>
10771
10772 * xdisp.c (face_before_or_after_it_pos):
10773 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
10774
107752002-07-22 Juanma Barranquero <lektu@terra.es>
10776
10777 * callproc.c (init_callproc) [DOS_NT]:
10778 Initialize Vshared_game_score_directory to nil.
10779 (syms_of_callproc) [DOS_NT]: Likewise.
10780
107812002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
10782
10783 * xdisp.c (display_line): Replace an abort with xassert.
10784
107852002-07-21 Richard M. Stallman <rms@gnu.org>
10786
10787 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
10788 and END_UNCHANGED when setting buffer_unchanged_p.
10789 Use current_matrix_up_to_date_p to decide whether to use
10790 try_cursor_movement.
10791
10792 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
10793
10794 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
10795
10796 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
10797 Set to nil if dir does not exist.
10798 (syms_of_callproc): Init unconditionally and simply.
10799
10800 * buffer.c (Fbuffer_list): Doc fix.
10801
108022002-07-21 Ken Raeburn <raeburn@gnu.org>
10803
10804 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
10805
10806 * buffer.c (mmap_realloc): When shrinking, make sure number of
10807 pages to unmap is rounded towards zero.
10808
10809 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
10810 (XSETINT): Deleted.
10811
10812 * m/att3b.h (XINT): Don't define.
10813 (VALBITS, VALMASK, XTYPE): Deleted.
10814 (DATA_SEG_BITS): Define.
10815 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
10816 ARRAY_MARK_FLAG): Deleted.
10817 (DATA_SEG_BITS): Define.
10818 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
10819 (DATA_SEG_BITS): Define.
10820
108212002-07-20 Richard M. Stallman <rms@gnu.org>
10822
10823 * print.c (print_error_message): New args CONTEXT and CALLER.
10824 Calls changed.
10825
10826 * lisp.h (print_error_message): Declare new args.
10827
10828 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
10829 and CONTEXT to print_error_message, don't print them here.
10830 For a Quit, don't use Vsignaling_function.
10831 Call message_log_maybe_newline.
10832
10833 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
10834
108352002-07-20 Kim F. Storm <storm@cua.dk>
10836
10837 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
10838
108392002-07-19 Ken Raeburn <raeburn@gnu.org>
10840
10841 * bytecode.c (struct byte_stack): Pointers into byte string now
10842 point to const.
10843 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
10844 const.
10845 * charset.h (BCOPY_SHORT): Source pointer now points to const.
10846 * coding.c (encode_eol, detect_coding, detect_eol):
10847 (decode_coding, encode_coding, detect_coding_system):
10848 Source strings now treated as const.
10849 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
10850 modify Lisp string contents.
10851 * coding.h (decode_coding, encode_coding, detect_coding,
10852 detect_eol): Declarations updated.
10853 * composite.c (compose_chars_in_text): Treat Lisp string contents
10854 as const.
10855 * dispnew.c (safe_bcopy): Source pointer now points to const.
10856 * lisp.h (STRING_COPYIN): New macro.
10857 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
10858 (internal_with_output_to_temp_buffer): Declarations updated.
10859 * print.c (temp_output_buffer_setup):
10860 (internal_with_output_to_temp_buffer): Buffer name argument is now
10861 pointer to const.
10862 * sound.c (struct sound_device): Function pointer field "write"
10863 buffer argument now points to const.
10864 (vox_write): Buffer argument points to const.
10865 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
10866 contents as const.
10867 * sysdep.c (emacs_write): Buffer pointer now const.
10868 * term.c (encode_terminal_code): Buffer pointer now const.
10869 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
10870 (x_face_list_fonts, x_update_menu_appearance):
10871 (hash_string_case_insensitive): Treat Lisp string contents as const.
10872
108732002-07-19 Juanma Barranquero <lektu@terra.es>
10874
048addec
JD
10875 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
10876
10877 * fileio.c (syms_of_fileio): Likewise.
c62aec78
JB
10878 (Ffile_name_as_directory): Fix argument name in docstring.
10879 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
048addec
JD
10880
108812002-07-18 Richard M. Stallman <rms@gnu.org>
10882
10883 * data.c (Fdefalias): Doc fix.
10884
108852002-07-17 Dave Love <fx@gnu.org>
10886
10887 * intervals.h (text_property_stickiness): Use P_.
10888
10889 * ccl.c: Remove `emacs' conditionals.
10890 (ccl_backtrace_table): Fix size spec.
10891 (ccl_driver): Fix type errors.
10892
108932002-07-16 Ken Raeburn <raeburn@gnu.org>
10894
10895 * alloc.c (xstrdup, make_string, make_unibyte_string)
10896 (make_multibyte_string, build_string): String pointer args now
10897 point to const.
10898 * charset.c (find_charset_in_text, c_string_width):
10899 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
10900 * fileio.c (report_file_error):
10901 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
10902 (count_combining_before, count_combining_after, insert_1_both):
10903 (insert, insert_and_inherit, insert_string):
10904 (insert_before_markers, insert_before_markers_and_inherit):
10905 * lread.c (intern, oblookup, hash_string):
10906 * minibuf.c (temp_echo_area_glyphs):
10907 * search.c (fast_c_string_match_ignore_case):
10908 * sysdep.c (emacs_open, set_file_times):
10909 * xfaces.c (xstricmp):
10910 * xdisp.c (store_frame_title, string_char_and_length):
10911 (message_dolog, message2, message2_nolog, set_message): Likewise.
10912 (set_message_1): Cast message string argument to const pointer.
10913 * editfns.c (general_insert_function): Insertion function now
10914 takes pointer to const for input data.
10915 * charset.h (find_charset_in_text, c_string_width):
10916 (parse_str_as_multibyte): Declarations updated.
10917 * dispextern.h (xstricmp): Declaration updated.
10918 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
10919 (count_size_as_multibyte, count_combining_before):
10920 (count_combining_after, insert_1, insert_1_both, message_dolog):
10921 (insert, insert_and_inherit, insert_before_markers)
10922 (insert_before_markers_and_inherit, set_message, message2):
10923 (message2_dolog, build_string, make_string, make_unibyte_string):
10924 (make_multibyte_string, intern, oblookup, report_file_error):
10925 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
10926 (emacs_open, xstrdup): Declarations updated.
10927 * systime.h (set_file_times): Declaration updated.
10928
10929 * charset.c (find_charset_in_text, lisp_string_width): Use const
10930 for pointer to lisp string data.
10931 * charset.h (FETCH_STRING_CHAR_ADVANCE):
10932 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
10933 * coding.c (Ffind_coding_systems_region_interval):
10934 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
10935 (Fmake_directory_internal, Fdelete_directory):
10936 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
10937 * fontset.c (font_family_registry, fs_query_fontset):
10938 (list_fontsets):
10939 * frame.c (Fframe_parameter):
10940 * keyboard.c (cmd_error_internal):
10941 * keymap.c (Fdescribe_buffer_bindings):
10942 * lread.c (complete_filename_p, openp):
10943 * minibuf.c (Fminibuffer_complete_word):
10944 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
10945 (face_before_or_after_it_pos, next_element_from_string):
10946 (get_overlay_arrow_glyph_row, display_mode_element):
10947 (decode_mode_spec_coding):
10948 * xterm.c (same_x_server): Likewise.
10949
10950 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
10951 settings of non-existent fields.
10952
10953 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
10954 copy a lisp value.
10955
10956 * lread.c (Fintern_soft): Use string macros instead of
10957 Lisp_String fields.
10958 * keyboard.c (echo_char, parse_modifiers_uncached):
10959 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
10960 * textprop.c (validate_interval_range, interval_of): Likewise.
10961
10962 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
10963
10964 * charset.h (FETCH_STRING_CHAR_ADVANCE)
10965 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
10966 XSTRING()->size_byte.
10967
10968 * lisp.h (SDATA, SREF): Produce rvalue.
10969 (SSET): New macro.
10970 * alloc.c (make_event_array): Use SSET for storing into a string.
10971 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
10972 a string.
10973 * casefiddle.c (casify_object): Use SSET.
10974 * charset.h (FETCH_STRING_CHAR_ADVANCE)
10975 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
10976 address of string contents.
10977 * data.c (Faref): Use SDATA.
10978 (Faset): Use SDATA, SSET.
10979 * dired.c (directory_files_internal): Use SSET.
10980 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
10981 (Fread_file_name): Use SREF, SSET.
10982 * fns.c (concat): Use SSET.
10983 (concat, Fdelete): Use SDATA.
10984 * insdel.c (insert_from_string_1): Use SDATA.
10985 * keyboard.c (Fevent_convert_list): Use SREF.
10986 * lread.c (Fload): Use SDATA, SSET.
10987 * macfns.c (validate_x_resource_name): Use SSET.
10988 * process.c (status_message): Use SSET.
10989 * search.c (wordify): Use SDATA.
10990 (Freplace_match): Use SREF.
10991 * w32fns.c (validate_x_resource_name): Use SSET.
10992 * xfns.c (validate_x_resource_name): Use SSET.
10993 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
10994
109952002-07-16 Richard M. Stallman <rms@gnu.org>
10996
10997 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
10998
10999 * xdisp.c (reconsider_clip_changes):
11000 Don't test prevent_redisplay_optimizations_p.
11001 (redisplay_internal): Test prevent_redisplay_optimizations_p
11002 along with clip_changed in some cases.
11003 (try_window_id): Likewise.
11004 (redisplay_window): New local var buffer_unchanged_p.
11005
11006 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
11007
11008 * process.c (create_process): Test USG_SUBTTY_WORKS.
11009 (process_send_signal): Clean up handling of GID.
11010 Detect errors in ioctls meant to set GID.
11011
11012 * window.c (temp_output_buffer_show):
11013 Don't set prevent_redisplay_optimizations_p.
11014
110152002-07-15 Juanma Barranquero <lektu@terra.es>
11016
11017 * eval.c (Fdefvaralias): Add docstring argument.
11018
110192002-07-15 Ken Raeburn <raeburn@gnu.org>
11020
11021 * lisp.h (STRING_INTERVALS): Produce rvalue.
11022 (STRING_SET_INTERVALS): New macro.
11023 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
11024 * fns.c (Fstring_as_multibyte): Likewise.
11025 * intervals.c (balance_possible_root_interval, delete_interval)
11026 (create_root_interval, copy_intervals_to_string): Likewise.
11027 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
11028 instead of 0.
11029
110302002-07-14 Ken Raeburn <raeburn@gnu.org>
11031
11032 * lisp.h (STRING_SET_CHARS): New macro.
11033 (SCHARS, SBYTES): Produce rvalues.
11034 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
11035 * fns.c (concat): Likewise.
11036 * lread.c (read_vector): Likewise.
11037
11038 * lisp.h (SMBP): Deleted. All uses changed to STRING_MULTIBYTE.
11039 (STRING_SET_UNIBYTE): New macro.
11040 (SET_STRING_BYTES): Deleted. Callers (all of which supplied a
11041 length of -1) changed to use STRING_SET_UNIBYTE.
11042 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
11043 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
11044 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
11045 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
11046 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
11047 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
11048 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
11049 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
11050 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
11051 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
11052 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
11053 STRING_BYTES or indirection changed to SCHARS, SBYTES,
11054 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
11055 unchanged for now.
11056
110572002-07-13 Kim F. Storm <storm@cua.dk>
11058
11059 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
11060
110612002-07-12 Richard M. Stallman <rms@gnu.org>
11062
11063 * fileio.c (Fwrite_region): Doc fix.
11064
11065 * print.c (print_error_message): Don't handle Vsignaling_function here.
11066
11067 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
11068 (command_loop_1): Avoid certain actions after memory-full error.
11069
11070 * eval.c (Fsignal): Don't call cancel_hourglass.
11071 For a memory-full error, don't call Vsignal_hook_function
11072 and don't set Vsignaling_function.
11073
11074 * process.c (process_send_signal): Add abort call.
11075
110762002-07-11 Markus Rost <rost@math.ohio-state.edu>
11077
11078 * keymap.c (Fkey_binding): Fix typo.
11079
110802002-07-11 Richard M. Stallman <rms@gnu.org>
11081
11082 * alloc.c (Vmemory_full): New variable.
11083 (Vmemory_signal_data): Renamed from memory_signal_data.
11084 Uses changed.
11085 (syms_of_alloc): Defvar them.
11086 (memory_full, buffer_memory_full): Set Vmemory_full.
11087
11088 * lisp.h (Vmemory_full): Add declaration.
11089 (current_column, indented_beyond_p): Change declaration.
11090
11091 * indent.c (last_known_column): Declare as double, not float.
11092 (current_column, current_column_1, string_display_width)
11093 (position_indentation): Return `double'.
11094 (indented_beyond_p): Arg `column' is `double'. Callers changed.
11095
11096 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
11097 (back_to_previous_visible_line_start)
11098 (reseat_at_next_visible_line_start, next_element_from_buffer):
11099 Use `double', not `float', when calling indented_beyond_p.
11100
11101 * s/hpux11.h (BROKEN_SA_RESTART): Defined.
11102
11103 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
11104
111052002-07-11 Juanma Barranquero <lektu@terra.es>
11106
11107 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
f9711de4
JB
11108 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
11109 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
11110 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
11111 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
11112 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
048addec
JD
11113
111142002-07-10 Juanma Barranquero <lektu@terra.es>
11115
d814862a
JB
11116 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE.
11117 All callers changed.
048addec
JD
11118
111192002-07-09 Stefan Monnier <monnier@cs.yale.edu>
11120
11121 * data.c (Fdefalias): Add an optional `docstring' argument.
11122 (set_internal, Fsetq_default): Use XCAR/XCDR.
11123
11124 * composite.c (HASH_VALUE, HASH_KEY):
11125 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
11126
111272002-07-09 Kenichi Handa <handa@etl.go.jp>
11128
11129 * callproc.c (Fcall_process): Fix previous change.
11130
111312002-07-07 Stefan Monnier <monnier@cs.yale.edu>
11132
11133 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
11134 Add support for hash-tables.
11135 (Ftry_completion): Return t even if the string appears multiple times.
11136
11137 * fns.c (Fnconc): Use XCDR.
11138 (Fprovide): Use CONSP and XCDR.
11139 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
11140 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
11141 (Fmake_hash_table): Accept `:size nil'.
11142 (Fmakehash): Delete: moved to subr.el.
11143 (syms_of_fns): Don't defsubr makehash.
11144
11145 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
11146 (HASH_TABLE_SIZE): Move from fns.c.
11147
111482002-07-07 Richard M. Stallman <rms@gnu.org>
11149
11150 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
11151 Instead just return 0 when there is something to be done.
11152 (try_scrolling): If make_cursor_line_fully_visible returns 0,
11153 retry scrolling as if cursor were off the bottom.
11154 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
11155 return CURSOR_MOVEMENT_MUST_SCROLL.
11156 (redisplay_window): If make_cursor_line_fully_visible returns 0,
11157 go to try_to_scroll.
11158
11159 * buffer.c (Fbuffer_local_value): Store current value into its binding
11160 so we get the up-to-date value for the binding that is loaded.
11161
11162 * eval.c (Fdefmacro): Doc fix.
11163
111642002-07-05 Dave Love <fx@gnu.org>
11165
11166 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
11167 correctly.
11168
11169 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
11170 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
11171 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
11172 CCL_LookupCharConstTbl.
11173 (syms_of_ccl): Defvar translation-hash-table-vector.
11174
111752002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11176
11177 * xdisp.c: Remove unused variable `face'.
11178
111792002-07-04 Juanma Barranquero <lektu@terra.es>
11180
11181 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
11182 obsolescence information.
11183
111842002-07-03 Andrew Choi <akochoi@shaw.ca>
11185
11186 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
11187 pattern. Search cache first.
11188 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
11189 for Japanese font.
11190 (XLoadQueryFont): Use it.
11191
111922002-07-02 Richard M. Stallman <rms@gnu.org>
11193
11194 * keymap.c (Fdefine_key): Doc fix.
11195
11196 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
11197
111982002-07-02 Juanma Barranquero <lektu@terra.es>
11199
11200 * keymap.c (syms_of_keymap): Fix typo.
11201
112022002-07-01 Andrew Choi <akochoi@shaw.ca>
11203
11204 * s/darwin.h: Define POSIX_SIGNALS.
11205
11206 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
11207 and FSRefMakePath to convert FSSpec returned with Apple Event to
11208 Posix pathname.
11209 (mac_initialize) [TARGET_API_MAC_CARBON]:
11210 Call init_required_apple_events and disable the `Quit' menu item
11211 provided automatically by the Carbon Toolbox.
11212
112132002-07-01 Dave Love <fx@gnu.org>
11214
11215 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
11216 for K&R.
11217
11218 * xterm.c: Fix prototype for K&R.
11219
11220 * term.c (costs_set): Declare static, non-initialized for pcc.
11221
112222002-07-01 Richard M. Stallman <rms@gnu.org>
11223
11224 * keyboard.c (timer_last_idleness_start_time): New variable.
11225 (timer_start_idle): Set that.
11226 (read_key_sequence): Use that to reset timer_idleness_start_time
11227 to previous value.
11228
11229 * window.c (Frecenter): With arg, set optional_new_start.
11230
11231 * xdisp.c (redisplay_internal): Make optional_new_start really work.
11232
11233 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
11234 buffer for completion.
11235
112362002-06-29 Ken Raeburn <raeburn@gnu.org>
11237
11238 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
11239
112402002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11241
11242 * keyboard.c (readable_filtered_events): New function that filters
11243 FOCUS_IN_EVENT depending on parameter.
11244 (readable_events): Calls readable_filtered_events, not filtering
11245 FOCUS_IN_EVENT.
11246 (get_filtered_input_pending): New function, filtering parameter passed
11247 to readable_filtered_events.
11248 (get_input_pending): Calls get_filtered_input_pending, not filtering
11249 FOCUS_IN_EVENT.
11250 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
11251 FOCUS_IN_EVENT.
11252
11253 * xterm.h (struct x_output): Add focus_state.
11254
11255 * xterm.c (x_focus_changed): New function.
11256 (x_detect_focus_change): New function.
11257 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
11258 EnterNotify and LeaveNotify to track X focus changes.
11259
112602002-06-28 Andreas Schwab <schwab@suse.de>
11261
11262 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
11263
112642002-06-27 Kim F. Storm <storm@cua.dk>
11265
11266 * xdisp.c: (mode_line_string_list, mode_line_string_face)
11267 (mode_line_string_face_prop): New variables.
11268 (store_mode_line_string): New function.
11269 (display_mode_element): Use store_mode_line_string to
11270 add mode-line string elements to mode_line_string_list
11271 when mode_line_string_list is non-nil.
11272 (Fformat_mode_line): Now returns propertized string by
11273 default. New arg NO-PROPS to ignore properties.
11274 (decode_mode_spec): Only add two dashes for %- in propertized
11275 mode-line string.
11276 (syms_of_xdisp): Init and staticpro mode_line_string_list.
11277
112782002-06-27 Stefan Monnier <monnier@cs.yale.edu>
11279
11280 * minibuf.c (minibuffer_completion_contents): Add return type.
11281
112822002-06-27 Juanma Barranquero <lektu@terra.es>
11283
11284 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
11285
112862002-06-26 Juanma Barranquero <lektu@terra.es>
11287
11288 * fileio.c (read_file_name_cleanup): Add missing return.
11289
112902002-06-26 Richard M. Stallman <rms@gnu.org>
11291
11292 * window.c (Frecenter): Don't set force_start flag.
11293
11294 * minibuf.c (do_completion, Fminibuffer_complete_word)
11295 (Fminibuffer_completion_help): Complete just the text before point.
11296 (minibuffer_completion_contents): New function.
11297
11298 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
11299
11300 * frame.c (frames_bury_buffer): Function deleted.
11301
113022002-06-25 Miles Bader <miles@gnu.org>
11303
11304 * callint.c (Fcall_interactively): When checking to see if doprnt hit
11305 the end of callint_message, allow for a terminating '\0'.
11306
113072002-06-24 Juanma Barranquero <lektu@terra.es>
11308
11309 * w32select.c: Include composite.h
11310
11311 * w16select.c: Likewise.
11312
113132002-06-24 Kenichi Handa <handa@etl.go.jp>
11314
11315 * callproc.c (Fcall_process): If code detection is necessary,
11316 call detect_coding directly here.
11317
11318 * coding.c (detect_eol): Preserve coding->cmp_data.
11319
11320 * w16select.c (Fw16_get_clipboard_data):
11321 * w32fns.c (w32_to_x_font):
11322 * w32select.c (Fw32_get_clipboard_data):
11323 * xselect.c (selection_data_to_lisp_data):
11324 * xterm.c (XTread_socket): Disable composition handling.
11325
113262002-06-24 Stefan Monnier <monnier@cs.yale.edu>
11327
11328 * print.c (temp_output_buffer_setup): Kill all local variables.
11329
113302002-06-22 Stefan Monnier <monnier@cs.yale.edu>
11331
11332 * lread.c (Fread): Remove redundant and imprecise declaration.
11333
11334 * xfns.c (check_x_display_info): Use check_x_frame.
11335
11336 * .gdbinit (xprintsym): Use the new `xname' field.
11337 (xsymbol): Use it.
11338
113392002-06-22 Jason Rumney <jasonr@gnu.org>
11340
11341 * w32fns.c (file_dialog_callback): New function.
11342 (Fx_file_dialog): Allow selecting directories as well as files.
11343
113442002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11345
11346 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
f63fd14e 11347 OpenBSD. Add support for mipseb-*-netbsd* machines.
048addec
JD
11348
113492002-06-17 Andrew Choi <akochoi@shaw.ca>
11350
11351 * macterm.c (mac_scroll_area): Set foreground and backcolor to
11352 black and white before scrolling. Restore frame background and
11353 foreground color after scrolling.
11354 (do_window_update): Call XClearWindow before calling expose_frame.
11355 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
11356 FRAME_FOREGROUND_PIXEL of frame.
11357
11358 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
11359 test Mac command key as <ALT> key.
11360
113612002-06-17 Stefan Monnier <monnier@cs.yale.edu>
11362
11363 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
11364
11365 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
11366 Lookup keys in function-key-map immediately so that key-translation-map
11367 can be applied earlier.
11368 Remove function_key_possible and key_translation_possible, replaced
11369 by checking `keytran_start < t'.
11370
11371 * .gdbinit (xsymbol): Use the new `xname' field.
11372
113732002-06-17 Andrew Choi <akochoi@shaw.ca>
11374
11375 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
11376 test Mac command key as <ALT> key.
11377
11378 * mac.c (do_applescript): Call initialize_applescript if necessary
11379 when first called. Dispose of result_desc only when there is no error.
11380 (Fdo_applescript): Use %d format specifier instead of %ld.
11381
113822002-06-16 Andrew Choi <akochoi@shaw.ca>
11383
11384 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
11385 of FrontWindow for cases keyDown and autoKey.
11386
11387 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
11388 Vdefault_fontset to Monaco with mac-roman coding.
11389
11390 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
11391 init_process before and after inclusion of Carbon/Carbon.h, resp.
11392
11393 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
11394 cursor_gc.
11395 (add_font_name_table_entry): New function.
11396 (init_font_name_table): Use add_font_name_table_entry; add italic,
11397 bold, and bold-italic entries for truetype fonts.
11398
11399 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
11400 for Mac too.
11401 (try_font_list) [MAC_OS]: If no font matches given registry, try
11402 fonts with any registry matching face_family.
11403 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
11404
11405 * s/darwin.h: If autoconf detects the Ncurses library, define
11406 LIBS_TERMCAP to -lncurses to use it.
11407
114082002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
11409
11410 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
11411
114122002-06-15 Richard M. Stallman <rms@gnu.org>
11413
11414 * window.c (Fset_window_configuration): Explicitly preserve
11415 the point value that new_current_buffer had at the start.
11416
114172002-06-14 Juanma Barranquero <lektu@terra.es>
11418
11419 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
11420 Fix typos.
11421
114222002-06-14 Kim F. Storm <storm@cua.dk>
11423
11424 * insdel.c (insert_1_both, insert_from_string_1)
11425 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
11426 insert happened in the end_unchanged region. Otherwise, the
11427 redisplay may be confused and duplicate the last line in the
11428 buffer [seen after save-buffer when require-final-newline==t].
11429
114302002-06-13 Jason Rumney <jasonr@gnu.org>
11431
11432 * w32.c (init_environment): Remove EMACSLOCKDIR.
11433 (stat): Swap _S_IFDIR and _S_IFREG.
11434
114352002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11436
11437 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
11438 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
11439 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
11440 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
11441 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
11442 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
11443 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
11444 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
11445 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
11446 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
11447 SELECTION_REQUEST_EVENT, selection_clear_event to
11448 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
11449 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
11450 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
11451 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
11452 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
11453 no_event to NO_EVENT.
11454
114552002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11456
11457 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
11458
114592002-06-12 Stefan Monnier <monnier@cs.yale.edu>
11460
11461 * intervals.c (textget): Don't forget to `return'.
11462 (lookup_char_property): Use XCAR/XCDR.
11463
114642002-06-12 Juanma Barranquero <lektu@terra.es>
11465
11466 * xdisp.c (Fformat_mode_line): Fix typo.
11467
114682002-06-12 Kim F. Storm <storm@cua.dk>
11469
11470 * xdisp.c (Fformat_mode_line): New function.
11471 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
11472 (store_frame_title_char, store_frame_title): Use unconditionally.
11473 (init_xdisp): Defsubr Fformat_mode_line.
11474 Initialize frame_title_buf etc. unconditionally.
11475
114762002-06-11 Stefan Monnier <monnier@cs.yale.edu>
11477
11478 * keyboard.c (read_key_sequence):
11479 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
11480 things through those maps after downcasing events.
11481 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
11482 applies after function-key-map.
11483 Make sure that keytran can be done in the middle in the sequence.
11484 Be careful not to throw away events past the one we downcase.
11485
11486 * lread.c (read_integer): Remove unused var `tem'.
11487 (read1): Fix int/Lisp_Object mixup.
11488
11489 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
11490
114912002-06-11 Richard M. Stallman <rms@gnu.org>
11492
11493 * keyboard.c (readable_events): Ignore any number of
11494 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
11495
114962002-06-09 Miles Bader <miles@gnu.org>
11497
11498 * xfaces.c (Ftty_supports_face_attributes_p): New function.
11499 (parse_rgb_list, tty_lookup_color): New functions.
11500 (tty_defined_color): Use `tty_lookup_color' to do all the work.
11501 (color_distance, Fcolor_distance): New functions.
11502 (TTY_SAME_COLOR_THRESHOLD): New macro.
11503 (Qtty_color_standard_values): New variable.
11504 (syms_of_xfaces): Initialize new vars & functions.
11505
115062002-06-08 Colin Walters <walters@verbum.org>
11507
11508 * textprop.c (Vchar_property_alias_alist): New variable.
11509 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
11510
11511 * intervals.c (lookup_char_property): New function for looking up
11512 overlay and text properties, created from textget.
11513 (textget): Use it.
11514
11515 * intervals.h (lookup_char_property): Declare.
11516 (Vchar_property_alias_alist): Declare.
11517
11518 * buffer.c (Foverlay_get): Use lookup_char_property.
11519
115202002-06-07 Sam Steingold <sds@gnu.org>
11521
11522 * xselect.c (lisp_data_to_selection_data): Fix last change:
11523 *data_ret is not a Lisp string, while unibyte_string is.
11524
115252002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
11526
11527 * xselect.c (lisp_data_to_selection_data): Fix last change:
11528 set size_ret.
11529
115302002-06-07 Andreas Schwab <schwab@suse.de>
11531
11532 * m/amdx86-64.h: New file.
11533
115342002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
11535
11536 * fns.c (Fstring_make_unibyte): Doc fix.
11537
11538 * xselect.c (lisp_data_to_selection_data): If the requested type
11539 is STRING, call string_make_unibyte to encode the selected text
11540 as a string.
11541
11542 * window.c (Fset_window_hscroll): Doc fix.
11543
115442002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11545
11546 * fileio.c (choose_write_coding_system):
11547 Call select-safe-coding-system properly.
11548
115492002-06-03 Richard M. Stallman <rms@gnu.org>
11550
11551 * xdisp.c (message_with_string): Error if STRING is not a string.
11552
11553 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
11554
11555 * fileio.c (choose_write_coding_system): Pass FILE arg to
11556 Vselect_safe_coding_system_function.
11557
115582002-06-03 Ken Raeburn <raeburn@gnu.org>
11559
11560 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
11561
115622002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
11563
11564 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
11565 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
11566 * keymap.c (describe_command): Likewise.
11567 * minibuf.c (read_minibuf): Likewise.
11568
11569 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
11570 Cast `current_column' return value to int.
11571 (back_to_previous_visible_line_start)
11572 (reseat_at_next_visible_line_start, next_element_from_buffer):
11573 Cast `indented_beyond_p' 3rd arg to float.
11574
11575 * indent.c (last_known_column): Now a float.
11576 (current_column_1, position_indentation, current_column)
11577 (string_display_width): Return float.
11578 (Fcurrent_column): Cast `current_column' return value to int.
11579 (Fcurrent_indentation): Cast `position_indentation' retval to int.
11580 (indented_beyond_p): Third arg now a float.
11581 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
11582
11583 * lisp.h (current_column): Now returns float.
11584 (indented_beyond_p): 3rd arg now a float.
11585
115862002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
11587
11588 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
11589 is Qcompound_text_with_extensions.
11590
11591 * xselect.c (lisp_data_to_selection_data): Always set selection
11592 type as string if x_encode_text returns streingp non-NULL.
11593
11594 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
11595
115962002-05-30 Richard M. Stallman <rms@gnu.org>
11597
11598 * window.c (Fset_window_configuration): Correct the handling
11599 of point in current buffer, to work with multiple windows.
11600
116012002-05-29 Colin Walters <walters@verbum.org>
11602
11603 * lread.c (Fread_from_string): Don't depend on order of evaluation
11604 for C function parameters.
11605
116062002-05-28 Richard M. Stallman <rms@gnu.org>
11607
11608 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
11609 way for blinked-off state and for a nonselected window.
11610
11611 * window.c (window_scroll_pixel_based): Don't call Fbolp;
11612 instead, see if the new start pos is at beginning of line.
11613
11614 * fileio.c (Fwrite_region): If START is a string, don't
11615 make any annotations.
11616
11617 * eval.c (syms_of_eval): Doc fix.
11618
116192002-05-28 Colin Walters <walters@debian.org>
11620
11621 * emacs.c (USAGE1): Add --no-splash.
11622 (standard_args): Ditto.
11623
116242002-05-28 Colin Walters <walters@gnu.org>
11625
11626 * lread.c (readchar_count): New variable.
11627 (readchar): Increment it.
11628 (unreadchar): Decrement it.
11629 (read_multibyte): Decrement it.
11630 (Vread_with_symbol_positions): New variable.
11631 (Vread_symbol_positions_list): New variable.
11632 (read_internal_start): New function, created from Fread and
11633 Fread_from_string. Handle Vread_symbol_positions_list and
11634 Vread_with_symbol_positions.
11635 (readevalloop, Fread, Fread_from_string): Use it.
11636 (read1): Use readchar_count to add symbol positions to
11637 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
11638 (syms_of_lread): DEFVAR_LISP and initialize them.
11639
11640 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
11641 (substitute_object_recurse, substitute_object_in_subtree)
11642 (substitute_in_interval): Prototype.
11643 (read_multibyte): Return c if it's less than zero.
11644
116452002-05-28 Kim F. Storm <storm@cua.dk>
11646
11647 * fileio.c (Fread_file_name_internal): Added brute-force
11648 speed up for using predicate file-directory-p.
11649
116502002-05-28 Kim F. Storm <storm@cua.dk>
11651
11652 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
11653 New variables.
11654 (syms_of_fileio): DEFVAR_LISP them.
11655 (read_file_name_cleanup): New unwind function.
11656 (Fread_file_name_internal): Only return completions satifying
11657 Vread_file_name_predicate. Temporarily unwind protect and rebind
11658 default-directory while checking completions against the predicate.
11659 (Fread_file_name): Added PREDICATE argument. Specbind it to
11660 Vread_file_name_predicate during completion.
11661 Call Vread_file_name_function to read the file name if non-nil.
11662
11663 * lisp.h (Fread_file_name): Now has 6 args.
11664
11665 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
11666 predicate for Fread_file_name when reading directory name.
11667 Supply Qnil for predicate in other calls to Fread_file_name.
11668
116692002-05-26 Miles Bader <miles@gnu.org>
11670
11671 * term.c (tty_capable_p): New function.
11672 * dispextern.h (tty_capable_p): New function declaration.
11673 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
11674 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
11675
116762002-05-23 Stefan Monnier <monnier@cs.yale.edu>
11677
11678 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
11679 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
11680 (Vwrite_region_annotate_functions): Docstring fix.
11681
116822002-05-23 Kim F. Storm <storm@cua.dk>
11683
11684 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
11685 phys_cursor's hpos is overwritten. This is still not completely
11686 correct, as it doesn't really make sense to use hpos at all to
11687 get the cursor glyph (as that is relative to the width of the
11688 characters on the line, which may have changed during the update).
11689
116902002-05-22 Jason Rumney <jasonr@gnu.org>
11691
11692 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
11693 Lisp_Object.
11694 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
11695 Use modified enumfont_t struct.
11696
11697 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
11698
11699 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
11700 Handle the `hbar' cursor type.
11701 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
11702
11703 * w32fns.c (Qhbar): New variable.
11704 (x_specified_cursor_type): Use it.
11705
117062002-05-21 Ken Raeburn <raeburn@gnu.org>
11707
11708 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
11709 now, when the address is needed.
11710
117112002-05-21 Colin Walters <walters@gnu.org>
11712
11713 * Makefile.in (shortlisp): Add font-core.el.
11714
117152002-05-20 Richard M. Stallman <rms@gnu.org>
11716
11717 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
11718
11719 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
11720 equivalent key bindings here.
11721
117222002-05-20 Ken Raeburn <raeburn@gnu.org>
11723
11724 Change symbol structure to contain a lisp object for the symbol
11725 name:
11726 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
11727 object field named "xname".
11728 (SYMBOL_NAME): New macro.
11729 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
11730 name field.
11731 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
11732 (mark_object, gc_sweep): Use symbol xname field and XSTRING
11733 instead of name field.
11734 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
11735 SYMBOL_NAME instead of XSYMBOL and name field.
11736 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
11737 instead of XSYMBOL and name field.
11738 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
11739 and SYMBOL_NAME instead of XSYMBOL and name field.
11740 * coding.c (Fread_coding_system, code_convert_region1)
11741 (code_convert_string1, code_convert_string_norecord)
11742 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
11743 XSYMBOL and name field.
11744 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
11745 (Fmake_variable_buffer_local, Fmake_local_variable)
11746 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
11747 of XSYMBOL and name field.
11748 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
11749 XSYMBOL and name field.
11750 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
11751 instead of XSYMBOL and name field.
11752 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
11753 XSYMBOL and name field.
11754 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
11755 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
11756 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
11757 instead of XSYMBOL and name field.
11758 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
11759 (parse_modifiers, apply_modifiers, Fevent_convert_list)
11760 (parse_solitary_modifier, Fexecute_extended_command):
11761 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
11762 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
11763 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
11764 of XSYMBOL and name field.
11765 (describe_command, describe_translation): Use SYMBOL_NAME and
11766 assignment instead of XSYMBOL and name field and XSETSTRING.
11767 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
11768 instead of XSYMBOL and name field.
11769 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
11770 name field and XSETSTRING.
11771 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
11772 of XSYMBOL and name field.
11773 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
11774 assignment instead of XSYMBOL and name field and XSETSTRING.
11775 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
11776 XSTRING instead of XSYMBOL and name field.
11777 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
11778 and XSTRING instead of XSYMBOL and name field.
11779 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
11780 and XSTRING instead of XSYMBOL and name field.
11781 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
11782 XSTRING instead of XSYMBOL and name field.
11783 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
11784 of XSYMBOL and name field.
11785 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
11786 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
11787
117882002-05-19 Ken Raeburn <raeburn@gnu.org>
11789
11790 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
11791 and XCDR real rvalues in most configurations.
11792
11793 * buffer.c (fix_overlays_in_range, fix_overlays_before):
11794 Don't take the address of the cdr part of a cons cell; instead, track
11795 the parent cell and call XSETCDR, or set the variable for the head
11796 of the list if we haven't started down the list yet.
11797
117982002-05-19 Richard M. Stallman <rms@gnu.org>
11799
11800 * doc.c (reread_doc_file): Don't ask for confirmation.
11801
118022002-05-18 Jason Rumney <jasonr@gnu.org>
11803
11804 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
11805 (xbm_load_image): Use it.
11806 (xbm_load): Ditto.
11807 (xbm_read_bitmap_data): Reverted to xfns.c version.
11808 From David Ponce <david@dponce.com>.
11809
118102002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
11811
11812 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
11813 2.02 and later.
11814
118152002-05-16 Juanma Barranquero <lektu@terra.es>
11816
11817 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
11818
118192002-05-15 Stefan Monnier <monnier@cs.yale.edu>
11820
11821 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
11822 meaningful test.
11823 (read_char_minibuf_menu_prompt): Fix typo.
11824
118252002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
11826
11827 * eval.c (Fcommandp): Doc fix.
11828
118292002-05-13 Stefan Monnier <monnier@cs.yale.edu>
11830
11831 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
11832 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
11833 (Fset_keymap_parent): Gcpro a bit more.
11834 (access_keymap): Gcpro around meta_map call and around the main loop.
11835 (get_keyelt): Gcpro when following indirect references.
11836 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
11837 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
11838 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
11839 Remove useless ad-hoc remap code.
11840
118412002-05-13 Richard M. Stallman <rms@gnu.org>
11842
11843 * search.c (search_buffer): Give up boyer moore search if inverse
11844 translation change charset_base.
11845
118462002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
11847
11848 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
11849 characters is carried over from the previous block of text, adjust
11850 coding->produced to account for the extra character.
11851
118522002-05-11 Andreas Schwab <schwab@suse.de>
11853
11854 * coding.c (intersection): Keep the elements of the returned list
11855 in the same order as in the first list.
11856
118572002-05-11 Kim F. Storm <storm@cua.dk>
11858
11859 * keymap.c (current_minor_maps): Fixed resizing of cmm_maps;
11860 only update cmm_size if realloc actually succeeds.
11861 Testing with initial size of 2 elements revealed that using
11862 realloc on GNU/Linux would cause a random trap in xmalloc
11863 later on, so I rewrote the code to use malloc/bcopy/free instead
11864 of realloc.
11865
118662002-05-10 Jason Rumney <jasonr@gnu.org>
11867
11868 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
11869
118702002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
11871
11872 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
11873 parens, to ensure correct evaluation order.
11874
118752002-05-10 Kim F. Storm <storm@cua.dk>
11876
11877 * keymap.c (Vemulation_mode_map_alists): New variable.
11878 (syms_of_keymap): DEFVAR_LISP it.
11879 (current_minor_maps): Process keymap alists in that list before
11880 minor-mode-overriding-map-alist and minor-mode-map-alist.
11881
118822002-05-09 Richard M. Stallman <rms@gnu.org>
11883
11884 * search.c (Freplace_match): Doc fix.
11885
118862002-05-09 Kim F. Storm <storm@cua.dk>
11887
11888 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
11889 Enlarge cursor rectangle drawn around image with non-zero relief.
11890
11891 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
11892 Enlarge cursor rectangle drawn around image with non-zero relief.
11893
11894 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
11895 Enlarge cursor rectangle drawn around image with non-zero relief.
11896
118972002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
11898
11899 * xselect.c (lisp_data_to_selection_data): Don't set selection
11900 type if comes from the Lisp object's car. If the selection
11901 contains a pure ASCII text, always return QSTRING as its type.
11902
119032002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11904
11905 * mac.c (mac-cut-function): Doc fix.
11906
119072002-05-05 Richard M. Stallman <rms@gnu.org>
11908
11909 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
11910
119112002-05-04 Jason Rumney <jasonr@gnu.org>
11912
11913 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
11914 for event-click-count.
11915
11916 * process.c (init_process): Only add server subfeature if we can
11917 use non-blocking I/O.
11918
119192002-05-04 Andrew Choi <akochoi@shaw.ca>
11920
11921 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
11922 repeatedly.
11923
119242002-05-03 Jason Rumney <jasonr@gnu.org>
11925
11926 * process.c (Fmake_network_process): Only support server sockets
11927 when we can make them non-blocking.
11928
11929 * s/ms-w32.h (HAVE_SELECT): Define.
11930
11931 * w32.h (FILE_NDELAY): New flag.
11932
11933 * w32.c (sys_getpeername, fcntl): New functions.
11934 (_sys_read_ahead): Temporarily block on non-blocking sockets.
11935
11936 * w32proc.c: include sys/file.h.
11937
119382002-05-03 Colin Walters <walters@verbum.org>
11939
11940 * callproc.c (Vgame_score_directory): Renamed to
11941 Vshared_game_score_directory.
11942
119432002-04-30 Richard M. Stallman <rms@gnu.org>
11944
11945 * s/gnu.h [emacs]: Include stdio.h.
11946 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
11947
11948 * eval.c (do_autoload): Error if called while preparing to dump.
11949
11950 * fns.c (Frequire): Error if need to load while preparing to dump.
11951
119522002-04-28 Colin Walters <walters@verbum.org>
11953
11954 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
11955 Default to "~/.emacs.d/games".
11956
119572002-04-29 Stefan Monnier <monnier@cs.yale.edu>
11958
11959 * lread.c (openp): Change arg exec_only to predicate.
11960 (build_load_history): Use XCAR/XCDR.
11961 (Flocate_file_internal): New fun.
11962 (syms_of_lread): Defsubr it.
11963 (Fload): Update call to openp.
11964
11965 * lisp.h (openp): Update prototype.
11966
11967 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
11968 * w32proc.c (sys_spawnve):
11969 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
11970 * w32.c (check_windows_init_file):
11971 * sound.c (Fplay_sound_internal):
11972 * process.c (Fstart_process):
11973 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
11974 * mac.c (run_mac_command):
11975 * emacs.c (init_cmdargs):
11976 * callproc.c (Fcall_process): Update call to openp.
11977
11978 * textprop.c (remove_properties): Don't use XCAR without CONSP.
11979
11980 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
11981
119822002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11983
11984 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
11985 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
11986
119872002-04-28 Richard M. Stallman <rms@gnu.org>
11988
11989 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
11990
11991 * eval.c (Fcommandp): New arg for_call_interactively.
11992 * lisp.h (Fcommandp): Declare new arg.
11993
119942002-04-28 Jason Rumney <jasonr@gnu.org>
11995
11996 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
11997
11998 * w32.c (stat, fstat): Use file index information to generate
11999 inodes for directories where available.
12000
120012002-04-26 Andrew Choi <akochoi@shaw.ca>
12002
12003 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
12004 [HAVE_CARBON]: Include Mac object files.
12005
12006 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
12007 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
12008 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
12009 MAC_OSX, and MAC_OS instead of macintosh.
12010
12011 * editfns.c [MAC_OS8]: Include stdio.h.
12012
12013 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
12014
12015 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
12016 Apple Monaco.
12017
12018 * process.c: Declare QCfamily and QCfilter as extern.
12019 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
12020 calling select.
12021
12022 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
12023
12024 * tparam.c [MAC_OSX]: Don't define BC and UP.
12025
12026 * config.in [HAVE_CARBON]: Add.
12027
12028 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
12029 Move here from mac/src and mac/inc.
12030
12031 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
12032
120332002-04-26 Gerd Moellmann <gerd@gnu.org>
12034
12035 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
12036 Compute phys_cursor_width from the x position returned
12037 by x_draw_glyhs, which is cheaper.
12038 (x_display_and_set_cursor): Compute the buffer-local value
12039 of `cursor-in-non-selected-windows' only when needed.
12040
120412002-04-25 Gerd Moellmann <gerd@gnu.org>
12042
12043 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
12044 cursor on a stretch glyph has a width that depends on
12045 x_stretch_cursor_p.
12046
120472002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12048
12049 * abbrev.c (abbrev-start-location): Doc fix.
12050
12051 * indent.c (Fvertical_motion): Fix last change.
12052
120532002-04-25 Gerd Moellmann <gerd@gnu.org>
12054
12055 * indent.c (Fvertical_motion): Move to the start of the line
12056 containing PT before moving up or down.
12057
120582002-04-24 Gerd Moellmann <gerd@gnu.org>
12059
12060 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
12061 case of writing a whole row, more or less analogous to the case of
12062 writing only parts of a row.
12063
12064 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
12065 0 for NO_CURSOR.
12066
12067 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
12068
120692002-04-23 Colin Walters <walters@verbum.org>
12070
12071 * buffer.c (syms_of_buffer): Doc fix.
12072
120732002-04-23 Gerd Moellmann <gerd@gnu.org>
12074
12075 * xterm.c (notice_overwritten_cursor): Handle the special case
12076 of the cursor being in the first blank non-text line at the
12077 end of a window.
12078
12079 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
12080 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
12081 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
12082 bar cursors only, to make phys_cursor_width contain what its name
12083 suggests.
12084 (notice_overwritten_cursor): Consider the cursor image erased if
12085 the output area intersects the cursor image in y-direction.
12086
120872002-04-23 Simon Marshall <simon@gnu.org>
12088
12089 * xfns.c (x_set_mouse_color): Change default for cross_cursor
12090 to XC_hand2.
12091
120922002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12093
12094 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
12095
120962002-04-22 Kim F. Storm <storm@cua.dk>
12097
12098 * textprop.c (remove_properties): Fixed trap for malformed plist.
12099
121002002-04-22 Richard M. Stallman <rms@gnu.org>
12101
12102 * cmds.c (Fend_of_line): Handle intangible text in mid line.
12103
12104 * window.c (make_window): Initialize height_fixed_p,
12105 last_cursor_off_p, and p->cursor_off_p slots.
12106
121072002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12108
12109 * fns.c (use-dialog-box): Doc fix.
12110
121112002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12112
12113 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
12114 variables `row', `i' and `area'.
12115 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
12116 toolkit library.
12117
121182002-04-19 Stefan Monnier <monnier@cs.yale.edu>
12119
12120 * xfaces.c (clear_font_table): Don't free the default font of
12121 a frame even if it's on another display.
12122 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
12123 that could be Qt.
12124
121252002-04-19 Juanma Barranquero <lektu@terra.es>
12126
12127 * indent.c (Fmove_to_column): Remove unused local variable
12128 `next_boundary_byte'.
12129 (current_column_1): Likewise.
12130
121312002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
12132
12133 * msdos.c (Qhbar): New variable.
12134 (syms_of_msdos): Intern and staticpro it.
12135 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
12136 cursor type.
12137
121382002-04-19 Dave Lambert <dlambert@acm.org>
12139
12140 Theses change implement an underscore-like (`hbar') cursor.
12141
12142 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
12143
12144 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
12145 Handle the `hbar' cursor type.
12146 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
12147
12148 * xfns.c (Qhbar): New variable.
12149 (syms_of_xfns): Intern and staticpro it.
12150 (x_specified_cursor_type): Handle `hbar' cursor.
12151
12152 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
12153 not defined.
12154
121552002-04-18 Richard M. Stallman <rms@gnu.org>
12156
12157 * textprop.c (remove_properties): New arg LIST allows scanning
12158 either a list or a plist.
12159 (interval_has_some_properties_list): New function, like
12160 interval_has_some_properties using list instead of plist.
12161 All callers changed.
12162 (Fremove_list_of_text_properties): New function.
12163 (syms_of_textprop): Defsubr it.
12164
121652002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
12166
12167 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
12168
121692002-04-17 Juanma Barranquero <lektu@terra.es>
12170
12171 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
12172
121732002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
12174
12175 * window.c (coordinates_in_window): Don't report on margin area
12176 if its width is zero.
12177
121782002-04-16 Jason Rumney <jasonr@gnu.org>
12179
12180 * w32fns.c (Fx_file_dialog): Decode file name before using.
12181
12182 * w32term.c (construct_drag_n_drop): Likewise.
12183
121842002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
12185
12186 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
12187 store load-history in pure space.
12188
12189 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
12190
121912002-04-16 Stefan Monnier <monnier@cs.yale.edu>
12192
12193 * xterm.c (Qlatin_1, Qutf_8): New vars.
12194 (syms_of_xterm): Initialize them.
12195 (XTread_socket): Eliminate incorrect optimization that tried to avoid
12196 decoding the output of X*LookupString.
12197 Always use latin-1 to decode the output of XLookupString.
12198 Try Xutf8LookupString if XmbLookupString failed.
12199
12200 * region-cache.c (new_region_cache): Use BEG.
12201
122022002-04-16 Gerd Moellmann <gerd@gnu.org>
12203
12204 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
12205 configuration files.
12206 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
12207 returns 0.
12208
122092002-04-15 Andreas Schwab <schwab@suse.de>
12210
12211 * config.in: Regenerated using autoheader.
12212
12213 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
12214 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
12215 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
12216 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
12217 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
12218 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
12219 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
12220 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
12221 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
12222 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
12223 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
12224 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
12225 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
12226 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
12227 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
12228 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
12229 STACK_DIRECTION, now set by autoconf.
12230
122312002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12232
12233 * dispnew.c (marginal_area_string): Sort arguments.
12234
12235 * dispextern.h (marginal_area_string): Add prototype.
12236
122372002-04-13 Richard M. Stallman <rms@gnu.org>
12238
12239 * fileio.c (Finsert_file_contents):
12240 Don't call temp_output_buffer_setup--do just part, by hand.
12241
12242 * coding.c (run_pre_post_conversion_on_str):
12243 Don't call temp_output_buffer_setup--do just part, by hand.
12244
12245 * keyboard.c (command_loop_1): Don't call start_hourglass
12246 or cancel_hourglass when executing a macro.
12247
12248 * marker.c (count_markers): New function.
12249
12250 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
12251 grow without limit. Move recently used elements to the front.
12252
122532002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
12254
12255 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
12256
122572002-04-12 Gerd Moellmann <gerd@gnu.org>
12258
12259 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
12260 rows marginal areas.
12261 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
12262 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
12263
12264 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
12265
122662002-04-12 Dave Love <fx@gnu.org>
12267
12268 * dispnew.c (marginal_area_string): New.
12269
12270 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
12271 (Qleft_margin, Qright_margin): Declare.
12272 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
12273
12274 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
12275 note_mode_line_highlight and extended.
12276
12277 * keyboard.c (Qleft_margin, Qright_margin): Declare.
12278 (make_lispy_event): Deal with mouse events in margins.
12279
122802002-04-12 Stefan Monnier <monnier@cs.yale.edu>
12281
12282 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
12283
12284 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
12285 than deactivating the mark if tmm is set to `lambda'.
12286 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
12287 Use a single event for HELP_EVENT.
12288 (Fexecute_extended_command): Save last_point_position.
12289
122902002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12291
12292 * lisp.h (Fpropertize): Add prototype.
12293
12294 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
12295
122962002-04-10 Colin Walters <walters@verbum.org>
12297
12298 * config.in: Add HAVE_SHARED_GAME_DIR.
12299
12300 * callproc.c: (Vgame_score_directory): New variable.
12301 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
12302
123032002-04-10 Richard M. Stallman <rms@gnu.org>
12304
12305 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
12306
123072002-04-09 Stefan Monnier <monnier@cs.yale.edu>
12308
12309 * minibuf.c (read_minibuf): Use empty_string.
12310 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
12311 Short-circuit the search as soon as it "failed".
12312 (Fall_completions): Allow lambda forms and lists of strings for alist.
12313 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
12314 when require_match is nil.
12315 (Ftest_completion): Rename from `test_completion' and export to elisp.
12316 Call the predicate also when alist is a list.
12317 Obey Vcompletion_regexp_list.
12318 (do_completion, Fminibuffer_complete_and_exit): Use it.
12319 (Fassoc_string): Rename from `assoc_for_completion'.
12320 Allow list of strings as well and export to elisp.
12321
123222002-04-08 Stefan Monnier <monnier@cs.yale.edu>
12323
12324 * puresize.h (BASE_PURESIZE): Increase to 900KB.
12325
123262002-04-08 Juanma Barranquero <lektu@terra.es>
12327
12328 * w32.c (sys_accept): Don't hide variable `s'.
12329
123302002-04-05 Gerd Moellmann <gerd@gnu.org>
12331
12332 * callint.c (Fcall_interactively): Use INTEGERP instead of
12333 NUMBERP for checking Vhistory_length.
12334
123352002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12336
12337 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
12338 Doc fix to reflect it.
12339
123402002-04-04 Richard M. Stallman <rms@gnu.org>
12341
12342 * xdisp.c (display_mode_element): New arg RISKY.
12343 Disregard text props found or specified within a variable
12344 that isn't marked risky-local-variable.
12345 (Qrisky_local_variable): New variable.
12346 (syms_of_xdisp): Init and staticpro it.
12347
123482002-04-04 Stefan Monnier <monnier@cs.yale.edu>
12349
12350 * undo.c (record_point): New fun.
12351 (record_delete, record_insert): Use it.
12352
123532002-04-03 Juanma Barranquero <lektu@terra.es>
12354
12355 * doc.c (Fdocumentation): Add missing parentheses.
12356 (Fdocumentation_property): Likewise.
12357
123582002-04-03 Stefan Monnier <monnier@cs.yale.edu>
12359
12360 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
12361 data is 0, just return nil.
12362
123632002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
12364
12365 * msdos.c (syms_of_msdos): Fix last change with
12366 mouse_autoselect_window.
12367
123682002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12369
12370 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
12371 mouse_autoselect_window.
12372
123732002-04-02 Stefan Monnier <monnier@cs.yale.edu>
12374
12375 * keyboard.c (make_lispy_event): Handle unknown keysyms together
12376 with system-specific keysyms. Use it also for unknown function keys.
12377
12378 * doc.c (reread_doc_file): Return whether reload was attempted.
12379 (Fdocumentation, Fdocumentation_property): Don't try to reload
12380 if the doc is 0 and only ask once.
12381
12382 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
12383
123842002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
12385
12386 * keyboard.c (read_char): If the event was Qselect_window,
12387 restore timer_idleness_start_time to its previous value.
12388
12389 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
12390
123912002-04-01 Stefan Monnier <monnier@cs.yale.edu>
12392
12393 * region-cache.c (new_region_cache): Use BEG.
12394
12395 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
12396 Use BEG and BEG_BYTE.
12397
12398 * doc.c (get_doc_string): Return nil if the location is wrong.
12399 (reread_doc_file): New fun.
12400 (Fdocumentation, Fdocumentation_property):
12401 Call it if get_doc_string fails.
12402 (Fsnarf_documentation): Make it work for a dumped Emacs.
12403
12404 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
12405 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
12406
12407 * charset.c (Fstring): Allow 0 arguments.
12408
12409 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
12410
12411 * process.c (DATAGRAM_CONN_P, list_processes_1)
12412 (Fprocess_datagram_address, Fset_process_datagram_address)
12413 (Fset_network_process_options, server_accept_connection):
12414 Fix some int/Lisp_Object confusions (thank you union types).
12415
124162002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12417
12418 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
12419
12420 * w32term.c: Likewise.
12421 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
12422
12423 * keyboard.c (Qselect_window): New symbol.
12424 (head_table): Use it.
12425 (keys_of_keyboard): Bound select-window event to handle-select-window.
12426 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
12427
12428 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
12429 (last_window): New variable.
12430 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
12431 (note_mouse_movement): Remove reimplemented code in #if 0.
12432 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
12433 Emacs windows.
12434
12435 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
12436
124372002-03-31 Gerd Moellmann <gerd@gnu.org>
12438
12439 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
12440 Callers changed.
12441
124422002-03-30 Richard M. Stallman <rms@gnu.org>
12443
12444 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
12445 loop whenever it stops making progress.
12446
12447 * widget.c (set_frame_size): Don't call change_frame_size.
12448
124492002-03-30 Gerd Moellmann <gerd@gnu.org>
12450
12451 * dispnew.c (direct_output_for_insert):
12452 Call mark_window_display_accurate.
12453
124542002-03-29 Jason Rumney <jasonr@gnu.org>
12455
12456 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
12457
124582002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
12459
12460 * Makefile.in (lread.o): Depend on coding.h.
12461
12462 * lread.c (openp, Fload): Encode the file name before passing it
12463 to `stat', `access', and `emacs_open'.
12464 (openp): GCPRO the encoded file name. Don't recompute Lisp
12465 strings unnecessarily.
12466
124672002-03-29 Kim F. Storm <storm@cua.dk>
12468
12469 * fns.c (Flax_plist_put): Doc fix.
12470
124712002-03-28 Miles Bader <miles@gnu.org>
12472
12473 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
12474
124752002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12476
12477 * process.c (set-network-process-options): Add usage.
12478 (make-network-process): Doc fix.
12479
124802002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
12481
12482 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
12483
124842002-03-26 Richard M. Stallman <rms@gnu.org>
12485
12486 * fns.c (Fsubstring_no_properties): New function.
12487 (Flax_plist_get, Flax_plist_put): New functions.
12488 (syms_of_fns): defsubr them.
12489
12490 * xdisp.c (update_menu_bar): Test only update_mode_lines;
12491 don't test or alter w->update_mode_line.
12492
12493 * window.c (Fdisplay_buffer): Doc fix.
12494
124952002-03-24 Richard M. Stallman <rms@gnu.org>
12496
12497 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
12498
124992002-03-24 Gerd Moellmann <gerd@gnu.org>
12500
12501 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
12502 (Fdefmacro): Handle `(declare ...)'.
12503 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
12504 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
12505
125062002-03-24 Jason Rumney <jasonr@gnu.org>
12507
12508 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
12509 (xbm_file_p): Add prototypes.
12510 (xbm_format, xbm_image_p): Sync with xfns.c.
12511 (reflect_byte): New function.
12512 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
12513 (xbm_load_image): Create bitmaps with a depth of 1.
12514 (init_xfns): Enable XBM images.
12515
125162002-03-23 Jason Rumney <jasonr@gnu.org>
12517
12518 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
12519 correctly. Do not pass up_modifier to keyboard buffer.
12520
12521 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
12522
125232002-03-22 Stefan Monnier <monnier@cs.yale.edu>
12524
12525 * Makefile.in (bootstrapclean): New target.
12526 (bootstrap-temacs, bootstrap-doc): Remove.
12527 (bootstrap-emacs): Use a bog-standard `temacs'.
12528 Don't bother to build a DOC file.
12529
12530 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
12531
12532 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
12533 in temacs even if !CANNOT_DUMP.
12534 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
12535
12536 * alloc.c (check_pure_size): Only output a warning.
12537
125382002-03-22 Jason Rumney <jasonr@gnu.org>
12539
12540 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
12541 supported.
12542
12543 * w32term.c (zv_bits): Declare as short, for word alignment.
12544 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
12545 (syms_of_w32term): Define x-use-underline-position-properties.
12546
12547 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
12548 (clear_image_cache): Block input, fix logic, clear matrices in
12549 all frames that share this cache.
12550
125512002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
12552
12553 * emacs.c (main): Update the Copyright year in the blurb printed
12554 by "emacs --version".
12555
12556 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
12557
12558 * xterm.c (XTread_socket): If XK_ISO_Lock and
12559 XK_ISO_Last_Group_Lock are defined, handle keysyms between
12560 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
12561
125622002-03-21 Kim F. Storm <storm@cua.dk>
12563
12564 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
12565 menu-bar bindings in keymap and local-map properties _are_ used.
12566 But try keymap property first in accordance with 2002-01-03 patch.
12567 Added comment describing why this is not always reliable.
12568 (tool_bar_items): Ditto for tool-bar.
12569
125702002-03-21 Jason Rumney <jasonr@gnu.org>
12571
12572 * w32fns.c (x_clear_image_1): Disable color table code.
12573
125742002-03-21 Kim F. Storm <storm@cua.dk>
12575
12576 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
12577 removed the wrong version of the DEFUN macro; fixed it.
12578
12579 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
12580 Fmember rather than Fmemq).
12581 (Fprovide): Check that subfeatures is a list.
12582
12583 * process.c (QCfeature, QCdatagram): Removed variables.
12584 (QCtype, Qdatagram): New variables.
12585 (network_process_featurep): Removed function.
12586 (Fmake_network_process): Removed :feature check.
12587 Use :type 'datagram instead of :datagram t to create a datagram
12588 socket. This allows us to add other connection types (e.g. raw
12589 sockets) later in a consistent manner.
12590 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
12591 supported subfeatures for feature make-network-process.
12592 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
12593 Intern and staticpro QCtype and Qdatagram.
12594 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
12595
12596 * xfns.c: (QCtype): Remove duplicate declaration and
12597 initialization (is now declared in process.c).
12598
12599 * w32fns.c: (QCtype): Remove duplicate declaration and
12600 initialization (is now declared in process.c).
12601
126022002-03-21 Richard M. Stallman <rms@gnu.org>
12603
12604 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
12605 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
12606 when jumping to `fail' to avoid undoing reg changes in the
12607 last iteration of the loop.
12608 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
12609
12610 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
12611 Depend on process.h.
12612
126132002-03-20 Jason Rumney <jasonr@gnu.org>
12614
12615 Most of the following changes are still conditional on HAVE_IMAGES
12616 which is not set by default on Windows.
12617
12618 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
12619
12620 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
12621 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
12622 (four_corners_best, x_clear_image_1, x_clear_image)
12623 (x_alloc_image_color, postprocess_image)
12624 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
12625 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
12626 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
12627
12628 * w32gui.h (struct XImage): Define.
12629
12630 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
12631 extract mouse co-ordinates.
12632
126332002-03-20 Jason Rumney <jasonr@gnu.org>
12634
12635 * w32.c (init_winsock): Dynamically load new server and UDP
12636 socket functions.
12637 (socket_to_fd): New function.
12638 (sys_socket): Use it.
12639 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
12640 (sys_recvfrom, sys_sendto): New wrapper functions.
12641
12642 * process.c (QCfamily, QCfilter): Remove duplicate declaration
12643 and initialization.
12644
12645 * makefile.w32-in (LIBS): Remove $(WSOCK32).
12646
126472002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
12648
12649 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
12650 Don't use "sun" as a variable, it's a predefined constant on Sun
12651 machines.
12652
126532002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12654
12655 * bytecode.c (Fbyte_code): Revert last change.
12656
126572002-03-19 Kim F. Storm <storm@cua.dk>
12658
12659 * makefile.w32-in (LIBS): Add $(WSOCK32).
12660 From David Ponce <dponce@voila.fr>.
12661
126622002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12663
12664 * process.c (wait_reading_process_input): Move variables `pname'
12665 and `pnamelen' down where they are used.
12666
12667 * bytecode.c (Fbyte_code): Discard unused computed value to
12668 prevent gcc warning.
12669
12670 * lisp.h (Fplist_member): Add prototype.
12671
126722002-03-18 Kim F. Storm <storm@cua.dk>
12673
12674 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
12675 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
12676
12677 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
12678 Remove explicit GNU_LINUX settings for datagram support.
12679
126802002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12681
12682 * process.c (Fmake_network_process): Remove unused variable `sa'.
12683 Doc fix. Add usage:.
12684 (set_socket_options): Remove unused variables `optnum' and `opttype'.
12685
126862002-03-17 Richard M. Stallman <rms@gnu.org>
12687
12688 * xdisp.c (cursor_type_changed): New variable.
12689 (redisplay_internal): Redisplay all windows if cursor_type_changed.
12690 Clear it when clearing windows_or_buffers_changed.
12691 (try_cursor_movement, redisplay_window, try_window_id)
12692 (try_window_reusing_current_matrix): Test cursor_type_changed
12693 along with windows_or_buffers_changed.
12694
12695 * window.h (cursor_type_changed): New variable.
12696
12697 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
12698 not update_mode_lines, and always set it to 1.
12699
12700 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
12701 if no frames needed redrawing.
12702
127032002-03-17 Kim F. Storm <storm@cua.dk>
12704
12705 The following changes add support for network server processes,
12706 datagram connections, and local (unix) sockets.
12707
12708 * process.h (struct Lisp_Process): New member log.
12709 Doc fix: Member command used to indicate stopped network process.
12710 Doc fix: Member childp contains plist for network process.
12711 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
12712
12713 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
12714 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
12715 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
12716 New variables.
12717 (NETCONN1_P): New macro.
12718 (DATAGRAM_SOCKETS): New conditional symbol.
12719 (datagram_address): New array.
12720 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
12721 (status_message): Use concat3.
12722 (Fprocess_status): Add `listen' status to doc string. Return `stop'
12723 for a stopped network process.
12724 (Fset_process_buffer): Update contact plist for network process.
12725 (Fset_process_filter): Ditto. Don't enable input for stopped
12726 network processes. Server must listen, even if filter is t.
12727 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
12728 New functions.
12729 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
12730 (Fprocess_contact): Added KEY argument. Handle datagrams.
12731 (list_processes_1): Optionally show only processes with the query
12732 on exit flag set. Dynamically adjust column widths. Omit tty
12733 column if not needed. Report stopped network processes.
12734 Identify server and datagram network processes.
12735 (Flist_processes): New optional arg `query-only'.
12736 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
12737 (conv_lisp_to_sockaddr, set_socket_options)
12738 (network_process_featurep, unwind_request_sigio): New helper functions.
12739 (Fprocess_datagram_address, Fset_process_datagram_address):
12740 (Fset_network_process_options): New lisp functions.
12741 (Fopen_network_stream): Removed. Now defined in simple.el.
12742 (Fmake_network_process): New lisp function. Code is based on previous
12743 Fopen_network_stream, but heavily reworked with new property list based
12744 argument list, support for datagrams, server processes, and local
12745 sockets in addition to old client-only functionality.
12746 (server_accept_connection): New function.
12747 (wait_reading_process_input): Use it to handle incoming connects.
12748 Do not enable input on a new connection if process is stopped.
f63fd14e 12749 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
048addec
JD
12750 (send_process): Handle datagram sockets.
12751 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
12752 network process is indicated by setting command field to t .
12753 (Fprocess_send_eof): No-op if datagram connection.
12754 (Fstatus_notify): Don't read input for a stream server socket or a
12755 stopped network process.
12756 (init_process): Initialize datagram_address array.
12757 (syms_of_process): Intern and staticpro new variables, defsubr new
12758 functions.
12759
127602002-03-16 Jason Rumney <jasonr@gnu.org>
12761
12762 * w32fns.c (w32_to_all_x_charsets): Return correct type in
12763 startup case.
12764
127652002-03-16 Richard M. Stallman <rms@gnu.org>
12766
12767 * xdisp.c (redisplay_internal, redisplay_windows):
12768 Use list_of_error to call internal_condition_case_1.
12769 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
12770 so as to catch all errors with no possibility of debugger redisplay.
12771 (list_of_error): New variable.
12772 (syms_of_xdisp): Init and staticpro it.
12773
12774 * print.c (print_object): Delete `\ ' from printed rep of frame.
12775
127762002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
12777
12778 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
12779 until its implementation is fixed.
12780
127812002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12782
12783 * xfns.c (png_load): Remove unused variable `gamma_str'.
12784
127852002-03-14 Richard M. Stallman <rms@gnu.org>
12786
12787 * xfns.c (x_real_positions): Handle failure in XQueryTree.
12788
127892002-03-14 Miles Bader <miles@gnu.org>
12790
12791 * intervals.c (adjust_for_invis_intang): New function.
12792 (set_point_both): Use `adjust_for_invis_intang' to do most of the
12793 work for dealing with invisible+intangible regions. Do so before
12794 and after both forward and backward movements, to handle both
12795 front-sticky and rear-sticky cases.
12796 * textprop.c (text_property_stickiness): Function moved here from
12797 `editfns.c'.
12798 * intervals.h (text_property_stickiness): New declaration.
12799 * editfns.c (char_property_eq): Function removed.
12800 (text_property_stickiness): Function moved to `textprop.c'.
12801
128022002-03-13 Jason Rumney <jasonr@gnu.org>
12803
12804 * config.in: Add STRFTIME_NO_POSIX2.
12805
12806 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
12807 and %OX when underlying strftime does not.
12808
128092002-03-13 Stefan Monnier <monnier@cs.yale.edu>
12810
12811 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
12812 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
12813 line) to avoid annoying flicker.
12814 (xm_scroll_callback): Get rid of the now unnecessary kludge.
12815 (XTread_socket): Mark it static.
12816
12817 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
12818
128192002-03-13 Kim F. Storm <storm@cua.dk>
12820
12821 * puresize.h (BASE_PURESIZE): Increase to 775000.
12822
128232002-03-12 Juanma Barranquero <lektu@terra.es>
12824
12825 * editfns.c (syms_of_editfns): Fix typo.
12826
128272002-03-12 Gerd Moellmann <gerd@gnu.org>
12828
12829 * xsmfns.c: Include stdio.h because termhooks.h needs it.
12830 Include termopt.h for interrupt_input.
12831
128322002-03-11 Andreas Schwab <schwab@suse.de>
12833
12834 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
12835
128362002-03-11 Gerd Moellmann <gerd@gnu.org>
12837
12838 * xterm.c (note_mouse_movement): Put code for
12839 x_autoselect_window_p in #if 0.
12840
12841 * lread.c (Fload): Don't assume that message_with_string uses the
12842 string it is given like a C string.
12843
128442002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12845
12846 * xterm.h (x_session_check_input, x_session_initialize): Declared.
12847
12848 * xterm.c: (XTread_socket): Add call to x_session_check_input and
12849 x_session_have_connection.
12850 (x_initialize): Add call to x_session_initialize.
12851
12852 * termhooks.h (enum event_kind): Add save_session_event.
12853
12854 * keyboard.c: Add Emacs event save_session_event.
12855
12856 * emacs.c (main): Add call to syms_of_xsmfns.
12857
12858 * lisp.h: Declare syms_of_xsmfns as extern.
12859
12860 * config.in: Add HAVE_X_SM.
12861
12862 * Makefile.in (LIBXT): Add -lSM -lICE
12863 if HAVE_X_SM and not USE_X_TOOLKIT.
12864 (XOBJ): New file xsmfns.c added.
12865
12866 * xsmfns.c: New file for X session management.
12867
128682002-03-09 Jason Rumney <jasonr@gnu.org>
12869
12870 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
12871 read-only when setting modified time.
12872
128732002-03-08 Gerd Moellmann <gerd@gnu.org>
12874
12875 * xdisp.c (move_it_vertically_backward): At the end of the function,
12876 when moving forward by lines, treat terminal frames specially.
12877
12878 * keyboard.c (echo_char): Make sure to add a separator between
12879 keys even if echo_dash hasn't been called.
12880
12881 * xdisp.c: Use new string macros.
12882 (update_echo_area): Pass number of bytes to message3 instead of
12883 number of chars.
12884 (set_message_1): Don't access a string's size_byte directly.
12885 (decode_mode_spec_coding): Use number of bytes of eoltype string
12886 instead number of chars.
12887
12888 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
12889
128902002-03-08 Juanma Barranquero <lektu@terra.es>
12891
12892 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
12893 24-bit.
12894
128952002-03-06 Jason Rumney <jasonr@gnu.org>
12896
12897 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
12898
128992002-03-06 Gerd Moellmann <gerd@gnu.org>
12900
12901 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
12902 (cancel_echoing, echo_length, echo_truncate): Changed to
12903 work with new kboard definition.
12904 (echo_now): Use message3_nolog instead of message2_nolog.
12905
12906 * alloc.c (mark_kboards): Mark echo_string.
12907
12908 * keyboard.h (ECHOBUFSIZE): Removed.
12909 (struct kboard): Member echoptr removed, member echobuf renamed
12910 to echo_string.
12911
12912 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
12913 message3 instead of message2 to display the message using STRING's
12914 text properties.
12915
129162002-03-05 Andreas Schwab <schwab@suse.de>
12917
12918 * xdisp.c (hscroll_margin): Change to EMACS_INT.
12919
129202002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
12921
12922 * frame.c (default-frame-alist): Explain that setting it doesn't
12923 affect existing frames.
12924
129252002-03-05 Stefan Monnier <monnier@cs.yale.edu>
12926
12927 * indent.c (skip_invisible): Fix my brain fart.
12928
12929 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
12930
129312002-03-04 Stefan Monnier <monnier@cs.yale.edu>
12932
12933 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
12934 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
12935 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
12936 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
12937 and variables to use EMACS_INT instead of just int.
12938
12939 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
12940
129412002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
12942
12943 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
12944 environment, pass it down with corrected value.
12945
129462002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12947
12948 * lread.c (read_filtered_event): Do not call start_hourglass
12949 before returning.
12950
129512002-03-04 Juanma Barranquero <lektu@terra.es>
12952
12953 * w32term.c (x_display_and_set_cursor): Fix typo.
12954
129552002-03-03 Richard M. Stallman <rms@gnu.org>
12956
12957 * fileio.c (Fmake_temp_name): Doc fix.
12958
129592002-03-03 Gary Wong <gtw@gnu.org>
12960
12961 * termcap.c [!emacs]: Replace ospeed for building standalone
12962 libtermcap, for binary compatibility.
12963
12964 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
12965
129662002-03-03 Richard M. Stallman <rms@gnu.org>
12967
12968 * xrdb.c (file_p): Rename arg `path' to `filename'.
12969
12970 * abbrev.c (Fexpand_abbrev): Increment plist as use count
12971 only if it is an integer.
12972
12973 * xfns.c (png_load): Set screen_gamma based on f->gamma.
12974 If png_get_sRGB gives an answer, call png_set_gamma
12975 using the default image gamma value.
12976
12977 * lread.c (read1): When reading from a file, default string to
12978 multibyte only if it has some multibyte characters.
12979
12980 * print.c (print_object): Output multibyte chars 128...255
12981 using \x even if ! print_escape_multibyte.
12982
12983 * xdisp.c (display_mode_element): Move the places where
12984 bytepos, charpos, this, and lisp_string are set.
12985 Use lisp_string to set bytepos.
12986
12987 * xdisp.c (redisplay_internal):
12988 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
12989
12990 * xdisp.c (display_mode_element): Merge properties specified with
12991 :propertize onto those that come with the string.
12992
129932002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
12994
12995 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
12996 automatic-hscrolling. Users changed.
12997 <hscroll-margin>: Renamed from automatic-hscroll-margin.
12998 Users changed.
12999 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
13000
130012002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
13002
13003 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
13004
130052002-03-02 Kim F. Storm <storm@cua.dk>
13006
13007 * window.c (Fminibuffer_selected_window): New function.
13008 (syms_of_window): Defsubr it.
13009
130102002-03-01 Kim F. Storm <storm@cua.dk>
13011
13012 * window.h (struct window): New member phys_cursor_width.
13013
13014 * window.c (make_window, replace_window): Init phys_cursor_width.
13015
13016 * xterm.c (x_display_and_set_cursor): Blink box cursor using
13017 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
13018
13019 * w32term.c (x_display_and_set_cursor): Blink box cursor using
13020 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
13021
13022 * lisp.h (GCPRO6): New macro.
13023
13024 * process.c (Fopen_network_stream): Use GCPRO6.
13025
130262002-03-01 Kim F. Storm <storm@cua.dk>
13027
13028 * process.c (Qconnect, Qfailed): New variables.
13029 (syms_of_process): Intern and staticpro them.
13030 (Fprocess_status): Document connect and failed return values.
13031 [NON_BLOCKING_CONNECT]: New conditional.
13032 (connect_wait_mask, num_pending_connects): New variables.
13033 (status_message): Convert Qfailed status.
13034 (Fopen_network_stream): Added support for non-blocking connect.
13035 New optional args: filter, sentinel, non_blocking. Doc updated.
13036 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
13037 (deactivate_process): Handle pending non-blocking connect.
13038 (wait_reading_process_input): Poll for status of non-blocking
13039 connects. Exec sentinel directly when connect succeeds.
13040 (status_notify): Don't read process output if not yet connected.
13041
130422002-02-28 Kim F. Storm <storm@cua.dk>
13043
13044 * window.c: (minibuf_selected_window): Renamed from
13045 Vminibuf_selected_window. Users changed.
13046 (syms_of_window): Staticpro it.
13047
130482002-02-26 Kim F. Storm <storm@cua.dk>
13049
13050 The following changes add a new Vminibuf_selected_window variable
13051 which is similar to Vminibuf_scroll_window, but which is only set
13052 on entry to the minibuffer (from a non-minibuffer window):
13053
13054 * window.c: (Vminibuf_selected_window): New variable.
13055 (struct save_window_data): New member minibuf_selected_window.
13056 (Fset_window_configuration): Restore Vminibuf_selected_window.
13057 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
13058 Set minibuf_scroll_window member to nil if minibuf_level is 0.
13059 (compare_window_configurations): Compare minibuf_selected_window.
13060
13061 * window.h: (Vminibuf_selected_window): Declare extern.
13062
13063 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
13064 entry to minibuffer or on entry from a non-minibuffer window.
13065
13066 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
13067 Vminibuf_selected_window instead of Vminibuf_scroll_window.
13068
13069 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
13070 instead of Vminibuf_scroll_window when deciding in which window
13071 the region should be highlighted. Consequently, the region remains
13072 highlighteded even when a completion buffer is also displayed.
13073
130742002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
13075
13076 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
13077
13078 * xselect.c (Qcompound_text_with_extensions): Renamed from
13079 Qcompound_text_no_extensions.
13080 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
13081
130822002-02-26 Juanma Barranquero <lektu@terra.es>
13083
13084 * w32proc.c (syms_of_ntproc): Doc fix.
13085
130862002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13087
13088 * intervals.h: Include "dispextern.h" unconditionally.
13089
130902002-02-24 Jason Rumney <jasonr@gnu.org>
13091
13092 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
13093 and disp-table.elc.
13094 (lisp): Add emacs-lisp/backquote.elc.
13095
130962002-02-24 Kim F. Storm <storm@cua.dk>
13097
13098 * keymap.c (Flookup_key): Fixed problem in 2001-12-28 patch:
13099 The validation of the event type was too strict as it didn't
13100 allow string events; buffer names are used in bindings for
13101 menu-bar-select-buffer (see `menu-bar-update-buffers').
13102
131032002-02-23 Kim F. Storm <storm@cua.dk>
13104
13105 The following changes rework my patch of 2002-02-06 which
13106 added command remapping by entering the commands directly into
13107 the keymaps. Now, command remapping uses an explicit `remap'
13108 prefix in the keymaps, i.e. [remap COMMAND].
13109
13110 * keymap.c (Qremap, remap_command_vector): New variables.
13111 (is_command_symbol): Removed function.
13112 (Fdefine_key): No longer accept a symbol for KEY.
13113 Added validation of [remap COMMAND] argument for KEY.
13114 The DEF is no longer required to be a symbol when remapping a command.
13115 (Fremap_command): New function to remap command through keymaps.
13116 (Flookup_key): Perform command remapping initiated by
13117 Fremap_command directly for speed.
13118 (Fkey_binding): Use Fremap_command for command remapping.
13119 (where_is_internal): Handle new command remapping representation.
13120 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
13121 staticpro them. Defsubr Fremap_command.
13122
13123 * keymap.h (Fremap_command): Declare extern.
13124 (is_command_symbol): Remove extern.
13125
13126 * keyboard.c (command_loop_1): Use Fremap_command for command
13127 remapping; now try command remapping for all symbols.
13128
131292002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
13130
13131 * coding.h (run_pre_post_conversion_on_str): Add prototype.
13132
131332002-02-23 Jason Rumney <jasonr@gnu.org>
13134
13135 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
13136 on the string before encoding it.
13137 (Fw32_get_clipboard_data): Run post-read-conversion on the string
13138 after decoding it.
13139
13140 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
13141
131422002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13143
13144 * w32term.c (enter_timestamp): Remove unused static variable to
13145 prevent warning.
13146
13147 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
13148
131492002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
13150
13151 * w16select.c (Fw16_get_clipboard_data): Fix last change.
13152
13153 * xselect.c (selection_data_to_lisp_data): Fix last change.
13154
131552002-02-22 Jason Rumney <jasonr@gnu.org>
13156
13157 * w32term.h (struct w32_output): New member menu_command_in_progress.
13158
13159 * w32menu.c (menubar_selection_callback): Free the menu and
13160 clear the menu_command_in_progress flag.
13161
13162 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
13163 (menu_free_timer): New variable.
13164 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
13165 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
13166 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
13167 menu command is in progress.
13168 <WM_COMMAND>: Set the menu_command_in_progress flag.
13169 Kill any menu_free_timer that is running.
13170
13171 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
13172 Call ExtTextOutA rather than ExtTextOut.
13173
131742002-02-22 Eli Zaretskii <eliz@gnu.org>
13175
13176 * puresize.h (BASE_PURESIZE): Increase to 755000.
13177
131782002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
13179
13180 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
13181 on the string before encoding it.
13182 (Fw16_get_clipboard_data): Run post-read-conversion on the string
13183 after decoding it.
13184
131852002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
13186
13187 Support for ICCCM Extended Segments in X selections:
13188
13189 * xselect.c <Qcompound_text_no_extensions>: New variable.
13190 (syms_of_xselect): Intern and staticpro it.
13191 (selection_data_to_lisp_data): Run post-read-conversion on decoded
13192 selection text.
13193 (lisp_data_to_selection_data): If next-selection-coding-system is
13194 compound-text-no-extensions, set the type of selection to be
13195 compound-text.
13196
13197 * xterm.h (x_encode_text): Update prototype.
13198
13199 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
13200 callers changed. If SELECTIONP is non-zero, run the
13201 pre-write-conversion function before encoding the selection text.
13202
132032002-02-21 Kim F. Storm <storm@cua.dk>
13204
13205 * frame.c (syms_of_frame): Change mouse-highlight default to t.
13206
13207 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
13208 Correct composing of language-change event.
13209
132102002-02-20 Kim F. Storm <storm@cua.dk>
13211
13212 * keyboard.c (menu_bar_items): Don't include keymap or local-map
13213 bindings at PT when building menu (the menu is not updated often
13214 enough for this to work reliable).
13215 (tool_bar_items): Likewise.
13216 (current_active_maps): Removed unused (and buggy) function.
13217
132182002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13219
13220 * xfns.c (gif_load): Use correct width and height for GIF images.
13221
132222002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
13223
13224 * floatfns.c (Fatan): Accept an optional second arg and call
13225 atan2 if passed 2 args.
13226
132272002-02-18 Jason Rumney <jasonr@gnu.org>
13228
13229 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
13230
132312002-02-17 Jason Rumney <jasonr@gnu.org>
13232
13233 * w32term.c (x_autoselect_window_p): New variable.
13234 (syms_of_w32term): DEFVAR_BOOL and initialize it.
13235 (note_mouse_movement): Use it.
13236
13237 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
13238
13239 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
13240
13241 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
13242 New variables.
13243 (syms_of_w32fns): Intern and staticpro them.
13244 (x_frame_parms) <"fullscreen">: New parameter.
13245 (x_fullscreen_move, x_set_fullscreen): New functions.
13246 (x_set_frame_parameters): Support Qfullscreen.
13247 (x_real_positions): Save x/y_pixels_diff frame params.
13248 (x_figure_window_size): Support full-screen frames.
13249 (Fx_create_frame): Default the fullscreen parameter.
13250
13251 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
13252 (x_fullscreen_adjust): New functions.
13253 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
13254 fullscreen. Call x_check_fullscreen_move, and set the
13255 want_fullscreen member of output_data.w32
13256 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
13257
13258 * w32term.h: New enum for FULLSCREEN_* constants.
13259 (struct w32_output): New members want_fullscreen, x_pixels_diff,
13260 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
13261 (x-fullscreen-adjust): New prototype.
13262
132632002-02-17 Kim F. Storm <storm@cua.dk>
13264
13265 * frame.c: (Vmouse_highlight): New variable.
13266 (syms_of_frame): DEFVAR_LISP it.
13267
13268 * frame.h: (Vmouse_highlight): Declare extern.
8a8e19a3 13269
048addec 13270 * xterm.h (struct x_display_info): Add mouse_face_hidden.
8a8e19a3 13271
048addec
JD
13272 * xterm.c (disable_mouse_highlight): Removed variable.
13273 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
13274 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
13275 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
13276 and on after keyboard input.
13277 (x_term_init): Initialize mouse_face_hidden.
8a8e19a3 13278
048addec 13279 * msdos.h (struct display_info): Add mouse_face_hidden.
8a8e19a3 13280
048addec
JD
13281 * msdos.c (disable_mouse_highlight): Removed variable.
13282 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
13283 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
13284 (internal_terminal_init): Initialize mouse_face_hidden.
13285 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
13286 and on after keyboard input.
4f1b1854 13287
048addec 13288 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
4f1b1854 13289
048addec
JD
13290 * w32term.c (disable_mouse_highlight): Removed variable.
13291 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
13292 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
13293 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
13294 and on after keyboard input.
13295 (w32_initialize_display_info): Initialize mouse_face_hidden.
4f1b1854 13296
048addec 132972002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
4f1b1854 13298
048addec
JD
13299 * msdos.c (last_mouse_window): New variable.
13300 (dos_rawgetc): Fix last change--if the mouse is in the same window
13301 as recorded in last_mouse_window, don't select this window.
5cb6905d 13302
048addec 13303 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
5cb6905d 13304
048addec
JD
13305 * msdos.c (x_autoselect_window_p): New variable.
13306 (syms_of_msdos): Defvar it.
13307 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
13308 which the last mouse movement occured, unless it is already selected.
437dfb9f 13309
048addec
JD
13310 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
13311 New variables.
13312 (syms_of_xdisp): DEVFAR them.
13313 (hscroll_window_tree): Use automatic_hscroll_margin and
13314 Vautomatic_hscroll_step to compute the amount of window scrolling.
437dfb9f 13315
048addec 133162002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9f696a00 13317
048addec
JD
13318 * xterm.c (x-autoselect-window): New variable.
13319 (note_mouse_movement): Use it.
9f696a00 13320
048addec 13321 * keyboard.c: Do not include "systime.h" twice.
d57966d7 13322
048addec 133232002-02-15 Andreas Schwab <schwab@suse.de>
d57966d7 13324
bfa02563 13325 * puresize.h (PURESIZE_RATIO): Increase to 9/5.
d57966d7 13326
048addec 13327 * alloc.c (NSTATICS): Increase to 1280.
74779f52 13328
048addec 133292002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
74779f52 13330
048addec 13331 * alloc.c (NSTATICS): Bump to 1026.
a474d59c 13332
048addec
JD
13333 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
13334 (Vx_super_keysym): New variables.
13335 (syms_of_xterm): DEFVAR_LISP them.
13336 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
13337 variables to determine which keys to use for the various modifiers.
a474d59c 13338
048addec 133392002-02-13 Kim F. Storm <storm@cua.dk>
fbb70ad9 13340
048addec
JD
13341 * window.c: (Vmode_line_in_non_selected_windows): Removed.
13342 (mode_line_in_non_selected_windows): New variable.
13343 (syms_of_window): DEFVAR_BOOL it.
fbb70ad9 13344
048addec
JD
13345 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
13346 Use mode_line_in_non_selected_windows.
13347 (mode_line_in_non_selected_windows): Declare extern.
13348 (Vmode_line_in_non_selected_windows): Removed extern.
2d10309f 13349
048addec 133502002-02-13 Richard M. Stallman <rms@gnu.org>
2d10309f 13351
048addec
JD
13352 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
13353 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
13354 (Fclear_this_command_keys): Doc fixes.
2d10309f 13355
048addec
JD
13356 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
13357 (update_face_from_frame_parameter): Increment face_change_count
13358 and windows_or_buffers_changed to force redisplay using changed faces.
7f2cddf3 13359
048addec
JD
13360 * xdisp.c (QCpropertize): New variable.
13361 (mode_line_proptrans_alist): New variable.
13362 (display_mode_element): New arg PROPS; all calls changed.
13363 Implement this, for strings.
13364 Handle literal output of strings by sharing the
13365 main-line code for strings, using local var `literal'.
13366 Handle :propertize feature.
13367 (syms_of_xdisp): Initialze and staticpro QCpropertize and
13368 mode_line_proptrans_alist.
0b1e6b54 13369
048addec 133702002-02-11 Kim F. Storm <storm@cua.dk>
7f2cddf3 13371
048addec
JD
13372 * window.c: (Vmode_line_in_non_selected_windows): New variable.
13373 (syms_of_window): DEFVAR_LISP it.
7f2cddf3 13374
048addec
JD
13375 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
13376 (CURRENT_MODE_LINE_FACE_ID): Use it.
13377 (Vmode_line_in_non_selected_windows): Declare extern.
e17144de 13378
048addec
JD
13379 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
13380 to get mode line face.
e17144de 13381
048addec 133822002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 13383
048addec
JD
13384 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
13385 variables; cus-start.el doesn't need them anymore.
44368f8f 13386
048addec 133872002-02-09 Kim F. Storm <storm@cua.dk>
f884b6f4 13388
048addec
JD
13389 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
13390 reduction. This fixes a display problem where stray newlines were
13391 inserted in the window (corrected by C-l). Clarified code (IMHO).
6637c996 13392
048addec 133932002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 13394
048addec 13395 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
6637c996 13396
048addec 13397 * xdisp.c (display_mode_lines): Fix last change.
453c5510 13398
048addec 133992002-02-09 Jason Rumney <jasonr@gnu.org>
453c5510 13400
048addec
JD
13401 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
13402 match each other.
13403 (w32_load_system_font): Prevent Cleartype fonts from loading.
13404 (Fx_show_tip): Ensure tip frames are above other topmost windows.
d1d070e3 13405
048addec 134062002-02-09 Kim F. Storm <storm@cua.dk>
d1d070e3 13407
048addec
JD
13408 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
13409 (CURRENT_MODE_LINE_HEIGHT): Use it.
13410 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 13411
048addec
JD
13412 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
13413 (pos_visible_p, handle_face_prop): Likewise.
13414 (display_mode_lines): Likewise, but for the real selected window.
13415 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 13416
048addec
JD
13417 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
13418 in non-selected windows.
13419 (realize_basic_faces): Realize it.
13420 (syms_of_term): Intern and staticpro it.
308dd672 13421
048addec 134222002-02-08 Kim F. Storm <storm@cua.dk>
edde72f6 13423
048addec
JD
13424 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
13425 Changed mail addresses to emacs-devel@gnu.org.
308dd672 13426
048addec 134272002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
3c1e6b46 13428
048addec
JD
13429 * fileio.c (Fsubstitute_in_file_name): If the file name includes
13430 ~user, and there's no such user, don't discard everything before ~user.
03950b5b 13431
048addec 13432 * floatfns.c (Fround): Doc fix.
3c1e6b46 13433
048addec 134342002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c1e11810 13435
048addec 13436 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
c1e11810 13437
048addec 134382002-02-07 Stefan Monnier <monnier@cs.yale.edu>
1996baee 13439
048addec 13440 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
1996baee 13441
048addec 134422002-02-07 Kim F. Storm <storm@cua.dk>
0065bb74 13443
048addec
JD
13444 * keymap.c (where_is_internal): Only check whether definition is
13445 remapped if it fulfills is_command_symbol.
0065bb74 13446
048addec 134472002-02-07 Andreas Schwab <schwab@suse.de>
0065bb74 13448
048addec 13449 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
b5cb6072 13450
048addec 13451 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
b5cb6072 13452
048addec 134532002-02-06 Kim F. Storm <storm@cua.dk>
15fff01d 13454
048addec
JD
13455 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
13456 defining command remapping. Doc updated.
13457 (Flookup_key): Remap command through keymap if KEY is a symbol.
13458 (is_command_symbol): New function.
13459 (Fkey_binding): Use it. New optional argument NO-REMAP.
13460 Doc updated. Callers changed. Perform command remapping via
13461 recursive call unless that arg is non-nil.
13462 (where_is_internal): New argument no_remap. Callers changed.
13463 Call recursively to find original key bindings for a remapped
13464 comand unless that arg is non-nil.
13465 (Fwhere_is_internal): New optional argument NO-REMAP.
13466 Doc updated. Callers changed. Pass arg to where_is_internal.
0065bb74 13467
048addec
JD
13468 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
13469 (is_command_symbol): Added prototype.
0d8466cc 13470
048addec
JD
13471 * keyboard.c (Vthis_original_command): New variable.
13472 (syms_of_keyboard): DEFVAR_LISP it.
13473 (command_loop_1): Set it, and perform command remapping.
15fff01d 13474
048addec 134752002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2fae9111 13476
048addec 13477 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
2d6c1fc0 13478
048addec 134792002-02-06 Jason Rumney <jasonr@gnu.org>
07025a55 13480
048addec 13481 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
07025a55 13482
048addec 134832002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
07025a55 13484
048addec 13485 * charset.c (get_charset_id): Use if-else instead of ?:.
3a232704 13486
048addec 134872002-02-06 Richard M. Stallman <rms@gnu.org>
539e92ad 13488
048addec 13489 * filelock.c (S_ISLNK): Define if not defined.
3a232704 13490
048addec 134912002-02-03 Richard M. Stallman <rms@gnu.org>
0cb8bb48 13492
048addec 13493 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
539e92ad 13494
048addec
JD
13495 * lread.c (read1): Redesign strategy for force_multibyte and
13496 force_singlebyte. Now is_multibyte records whether read_buffer
13497 is multibyte. Encountering any multibyte character makes it so.
4e02881b 13498
048addec 134992002-02-02 Stefan Monnier <monnier@cs.yale.edu>
4e02881b 13500
048addec
JD
13501 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
13502 with the same sequence, map that sequence to f10 rather than f0.
1ab964d7 13503
048addec 135042002-02-03 Andreas Schwab <schwab@suse.de>
1ab964d7 13505
048addec
JD
13506 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
13507 latter never being defined on GNU/Linux.
749f499f 13508
048addec 135092002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
749f499f 13510
048addec
JD
13511 * xfaces.c (realize_default_face): Don't set the weight and slant of
13512 the default face to Qnormal, unless these attributes are unspecified.
b5d9aaba 13513
048addec 135142002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3a232704 13515
048addec
JD
13516 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
13517 Call cancel_hourglass unconditionally.
d0fd26dd 13518
048addec
JD
13519 * eval.c (Fsignal): Remove duplicated declaration of
13520 the variable `display_hourglass_p'.
b4c45162 13521
048addec 135222002-01-31 Richard M. Stallman <rms@gnu.org>
d0fd26dd 13523
048addec 13524 * editfns.c (region_limit): Nicer error message.
c95eaa61 13525
048addec
JD
13526 * coding.c (decode_composition_emacs_mule):
13527 Give up if NCOMPONENT gets too large to index `component'.
c95eaa61 13528
048addec
JD
13529 * callint.c (check_mark): New arg to specify clearer error message.
13530 Callers changed.
c95eaa61 13531
048addec 135322002-01-27 Richard M. Stallman <rms@gnu.org>
c95eaa61 13533
048addec 13534 * minibuf.c (Fcompleting_read): Doc fix.
c95eaa61 13535
048addec 135362002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c95eaa61 13537
048addec
JD
13538 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
13539 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
13540 Fix doc-strings.
c95eaa61 13541
048addec 135422002-01-26 Richard M. Stallman <rms@gnu.org>
c95eaa61 13543
048addec 13544 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
c95eaa61 13545
048addec
JD
13546 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
13547 and scroll_up_aggressively.
c95eaa61 13548
048addec 135492002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
31877e0a 13550
048addec 13551 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
31877e0a 13552
048addec 135532002-01-25 Stefan Monnier <monnier@cs.yale.edu>
e2c3786a 13554
048addec
JD
13555 * textprop.c (Fnext_property_change, Fnext_single_property_change)
13556 (Fprevious_property_change, Fprevious_single_property_change):
13557 Stay within the narrowed-buffer boundaries.
e2c3786a 13558
048addec 135592002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
c513fc03 13560
048addec
JD
13561 * term.c (Ftty_display_color_cells): New function.
13562 (syms_of_term): Defsubr it.
13563 (Ftty_display_color_cells, Ftty_display_color_p): Change the
13564 argument name to DISPLAY. Doc fix.
bf794306 13565
048addec
JD
13566 * dispextern.h: Add prototype for set_tty_color_mode and
13567 tty_setup_colors.
bf794306 13568
048addec 135692002-01-24 Jason Rumney <jasonr@gnu.org>
bf794306 13570
048addec
JD
13571 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
13572 If region left to draw is not what was expected, mark the frame as
13573 garbaged.
62582985 13574
048addec
JD
13575 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
13576 Combine the regions returned by BeginPaint and GetUpdateRect.
c513fc03 13577
048addec 135782002-01-23 Jason Rumney <jasonr@gnu.org>
3509a04c 13579
048addec
JD
13580 * w32term.c (x_update_window_begin): Only hide caret if
13581 w32_use_visible_system_caret is set.
13582 (x_update_window_end): Only show caret if
13583 w32_use_visible_system_caret is set.
13584 (syms_of_w32term): Handle SystemParametersInfo call failing.
3509a04c 13585
048addec 13586 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
3509a04c 13587
048addec 135882002-01-22 Richard M. Stallman <rms@gnu.org>
3509a04c 13589
048addec
JD
13590 * unexelf.c (unexec): Define n so as to cause compilation error
13591 for the code where people have often written n instead of nn.
1e9a6186 13592
048addec 13593 * .gdbinit (hookpost-run): Defined.
1e9a6186 13594
048addec 135952002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e4e34e31 13596
048addec 13597 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
e4e34e31 13598
048addec 135992002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4521d1fc 13600
048addec
JD
13601 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
13602 if fullscreen is being set.
7c75be36 13603
048addec 136042002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4521d1fc 13605
048addec
JD
13606 * minibuf.c (Fminibuffer_contents)
13607 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
13608 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
4521d1fc 13609
048addec 136102002-01-21 Richard M. Stallman <rms@gnu.org>
4521d1fc 13611
048addec 13612 * window.c (check_frame_size): Fix minimum height calculation.
93dec019 13613
048addec 136142002-01-20 Ken Raeburn <raeburn@gnu.org>
93dec019 13615
048addec
JD
13616 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
13617 height before comparison.
13618 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
905cc05a 13619
048addec 136202002-01-20 Jason Rumney <jasonr@gnu.org>
2ed06289 13621
048addec
JD
13622 * w32term.c (w32_system_caret_width): Remove.
13623 (w32_use_visible_system_caret): New user flag.
13624 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
13625 Windows reports a screen reader running.
13626 (x_update_window_begin): Hide the system caret.
13627 (x_update_window_end): Show the system caret.
13628 (x_display_and_set_cursor): Don't draw a cursor when
13629 w32_use_visible_system_caret is set. Do not adjust width.
0e79d667 13630
048addec
JD
13631 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
13632 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
13633 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
13634 the user requests it. Use system default width when creating.
13635 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
0e79d667 13636
048addec
JD
13637 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
13638 New window messages.
905cc05a 13639
048addec 136402002-01-20 Richard M. Stallman <rms@gnu.org>
82a7ab23 13641
048addec 13642 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
d75bec6a 13643
048addec 136442002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
52dcb476 13645
048addec 13646 * doprnt.c (doprnt1): Fix typos in error call.
82a7ab23 13647
048addec 136482002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
82a7ab23 13649
048addec 13650 * unexelf.c (unexec) [__sgi]: Support the .got sections.
82a7ab23 13651
048addec 136522002-01-20 Jason Rumney <jasonr@gnu.org>
4d0fa4f3 13653
048addec
JD
13654 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
13655 that Windows returns. If a double check fails, try to guess how
13656 ExtTextOut is going to act.
4d0fa4f3 13657
048addec
JD
13658 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
13659 in place of stricmp.
13660 (w32_list_synthesized_fonts): Removed.
13661 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
13662 (struct enumfont_t): New element; list.
13663 (enum_font_cb2): List all style and charset variations of a font.
13664 (Fw32_select_font): New optional argument; include_proportional.
13665 Exclude vertical fonts. Exclude proportional fonts unless
13666 include_proportional is non-nil.
13667 (w32_enable_synthesized_fonts): Change to a boolean.
13668 (Fw32_send_sys_command): Doc fix.
493faf20 13669
048addec 136702002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
493faf20 13671
048addec
JD
13672 * dispnew.c (update_frame): Move the variable `tem' to the block
13673 where it is used.
4971e491 13674
048addec 136752002-01-19 Jason Rumney <jasonr@gnu.org>
4971e491 13676
048addec
JD
13677 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
13678 call to face-set-after-frame-default.
4971e491 13679
048addec 136802002-01-18 Richard M. Stallman <rms@gnu.org>
d911a0fa 13681
048addec
JD
13682 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
13683 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
d911a0fa 13684
048addec 136852002-01-17 Richard M. Stallman <rms@gnu.org>
d911a0fa 13686
048addec
JD
13687 * window.c (enlarge_window): When exceeding size of parent,
13688 directly delete all the siblings instead of trying to resize it.
201c831a 13689
048addec 136902002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
201c831a 13691
048addec 13692 * term.c (set_tty_color_mode): Remove unused variable `tem'.
201c831a 13693
048addec 136942002-01-16 Henrik Enberg <henrik@enberg.org>
34e39c95 13695
048addec 13696 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
34e39c95 13697
048addec 136982002-01-16 Kim F. Storm <storm@cua.dk>
d77fbc16 13699
048addec
JD
13700 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
13701 is invisible. This can happen if cursor is on top line of a
13702 window, and we switch to a buffer with a header line.
d77fbc16 13703
048addec 13704 * w32term.c (x_erase_phys_cursor): Ditto.
61e3b944 13705
048addec 137062002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
61e3b944 13707
048addec
JD
13708 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
13709 `dont_resize' only when used.
61e3b944 13710
048addec 13711 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
70da46c3 13712
048addec 137132002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
70da46c3 13714
048addec
JD
13715 * xdisp.c (display_mode_element): When computing charpos, depend
13716 on multibyteness of elt, not the text in field.
8af01033 13717
048addec 137182002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8af01033 13719
048addec
JD
13720 * buffer.c (Fkill_all_local_variables):
13721 Increment `update_mode_lines' only once.
7363986a 13722
048addec 137232002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7363986a 13724
048addec
JD
13725 * lisp.h (adjust_after_replace_noundo)
13726 (Fupdate_coding_systems_internal): Add prototypes.
d9e6c4b1 13727
048addec 13728 * sound.c (Fplay_sound): Initialize header_size also for :data case.
d20fc48a 13729
048addec 137302002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
d9e6c4b1 13731
048addec
JD
13732 Support for the --color command-line argument and tty-color-mode
13733 frame parameter:
f1a85b89 13734
048addec
JD
13735 * term.c (tty_default_color_capabilities, tty_setup_colors)
13736 (set_tty_color_mode): New functions.
13737 (term_init): Call tty_default_color_capabilities.
13738 (Qtty_color_mode_alist): New variable.
13739 (syms_of_term): Intern and staticpro it.
f1a85b89 13740
048addec
JD
13741 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
13742 frames.
13743 (do_switch_frame): For termcap frames, switch the tty
13744 color mode as specified by the frame's parameters.
13745 (Qtty_color_mode): New variable.
13746 (syms_of_frame): Intern and staticpro it.
3a62677f 13747
048addec
JD
13748 * emacs.c (USAGE2): Add the --color option.
13749 (standard_args): Ditto.
72244db2 13750
048addec
JD
137512002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13752
13753 * xterm.h (struct x_output): New members want_fullscreen,
13754 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
13755 y_pixels_outer_diff.
13756 New enum for FULLSCREEN_* constants.
13757 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
13758 is NULL.
13759 (x_fullscreen_adjust): Add prototype.
3a62677f 13760
048addec
JD
13761 * emacs.c (USAGE2): Add the new full-screen arguments.
13762 (standard_args): Ditto.
3a62677f 13763
048addec
JD
13764 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
13765 New variables.
13766 (syms_of_xfns): Intern and staticpro them.
13767 (x_frame_parms) <"fullscreen">: New parameter.
13768 (x_fullscreen_move, x_set_fullscreen): New functions.
13769 (x_set_frame_parameters): Support for Qfullscreen.
13770 (x_real_positions): More accurate computation of the frame position.
13771 (x_figure_window_size): Support full-screen frames.
13772 (Fx_create_frame): Default the fullscreen parameter.
3a62677f 13773
048addec
JD
13774 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
13775 (XTread_socket) <Expose>: Call x_check_fullscreen.
13776 <ConfigureNotify>: Don't resize to fullscreen.
13777 Call x_check_fullscreen_move, and set the want_fullscreen member of
13778 output_data.x.
3a62677f 13779
048addec 137802002-01-13 Jason Rumney <jasonr@gnu.org>
9d113d9d 13781
048addec
JD
13782 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
13783 for mice with more than 3 buttons.
b8523839 13784
048addec
JD
13785 * w32term.c (parse_button): New parameter xbutton. Callers changed.
13786 (w32_read_socket): Handle new "XBUTTON" messages.
9464dea4 13787
048addec
JD
13788 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
13789 (syms_of_w32fns): DEFVAR_BOOL it.
13790 (w32_wnd_proc): Handle new "XBUTTON" messages.
9d113d9d 13791
048addec 137922002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
70ec1377 13793
048addec 13794 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
70ec1377 13795
048addec 137962002-01-13 Andreas Schwab <schwab@suse.de>
92f7dd37 13797
048addec 13798 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
92f7dd37 13799
048addec 138002002-01-12 Andreas Schwab <schwab@suse.de>
c93674bb 13801
048addec
JD
13802 * .gdbinit (xbuffer): Remove address operator since data is now a
13803 pointer.
c93674bb 13804
048addec 138052002-01-11 Richard M. Stallman <rms@gnu.org>
59b59892 13806
048addec 13807 * insdel.c (adjust_after_replace_noundo): New function.
59b59892 13808
048addec 13809 * coding.c (code_convert_region): Don't copy old text if undo disabled.
c6ea2775 13810
048addec 138112002-01-09 Jason Rumney <jasonr@gnu.org>
c6ea2775 13812
048addec
JD
13813 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
13814 when checking for multiple frames.
91175673 13815
048addec 138162002-01-08 Richard M. Stallman <rms@gnu.org>
91175673 13817
048addec
JD
13818 * window.c (delete_window): Rewrite the code for changing the
13819 selected window to handle the case where WINDOW is not a leaf.
91175673 13820
048addec 138212002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
e0fead5d 13822
048addec
JD
13823 * process.c (send_process): Set src_multibyte to 1 after the call
13824 top setup_coding_system, not before the call.
e0fead5d 13825
048addec 138262002-01-07 Jason Rumney <jasonr@gnu.org>
e0fead5d 13827
048addec
JD
13828 * xmenu.c (set_frame_menubar, xmenu_show):
13829 (xdialog_show): Initialize wv->help to Qnil.
c186cdb3 13830
048addec
JD
13831 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
13832 (w32_dialog_show): Initialize wv->help to Qnil.
c186cdb3 13833
048addec 138342002-01-06 Jason Rumney <jasonr@gnu.org>
c186cdb3 13835
048addec 13836 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
c186cdb3 13837
048addec 13838 * w32menu.c (w32_menu_display_help): Revert last change.
58cfce98 13839
048addec 13840 * xmenu.c (menu_highlight_callback): Revert last change.
58cfce98 13841
048addec 138422002-01-06 Andreas Schwab <schwab@suse.de>
62854fe2 13843
048addec
JD
13844 * insdel.c (make_gap_larger): Make sure buffer size does not
13845 overflow range of int.
62854fe2 13846
048addec 138472002-01-05 Jason Rumney <jasonr@gnu.org>
656f46bb 13848
048addec
JD
13849 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
13850 OVERLAPS_P.
656f46bb 13851
048addec 13852 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
656f46bb 13853
048addec
JD
13854 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
13855 to the left or to the right of the pointer, put it against
13856 the left screen edge.
13857 (x_frame_parms): Add missing braces around initializer.
036e218d 13858
048addec
JD
13859 * w32term.c (x_setup_relief_colors): Don't compute an image's
13860 background color if it doesn't have a Pixmap.
13861 (notice_overwritten_cursor): Don't depend on
13862 output_cursor and updated_area. Compare pixel coordinates with
13863 window's cursor pixel coordinates.
13864 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
13865 Call notice_overwritten_cursor with new arg list.
13866 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
13867 unconditionally.
13868 (x_draw_image_relief): Use predefined macro instead of
13869 constant when the value of `tool_bar_button_relief' is negative.
036e218d 13870
048addec 13871 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
7ddb2c16 13872
048addec 138732002-01-04 Richard M. Stallman <rms@gnu.org>
7ddb2c16 13874
048addec 13875 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
ace9b298 13876
048addec 138772002-01-03 Richard M. Stallman <rms@gnu.org>
90647b07 13878
048addec
JD
13879 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
13880 (Fkey_binding): Try the `keymap' property map first.
13881 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
13882 minor mode bindings.
90647b07 13883
048addec 138842002-01-03 Kim F. Storm <storm@cua.dk>
ace9b298 13885
048addec 13886 * keyboard.c (read_key_sequence): Fixed cast of submaps arg to bcopy.
ace9b298 13887
048addec 138882002-01-02 Richard M. Stallman <rms@gnu.org>
ace9b298 13889
048addec
JD
13890 * keyboard.c (read_key_sequence): Handle the keymap property
13891 before minor mode maps.
9fbc32aa 13892
048addec
JD
13893 * editfns.c (Fformat): Update thissize from field_width
13894 based on the actual width, in the string case.
036e218d 13895
048addec 138962002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fbc32aa 13897
048addec
JD
13898 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
13899 when used as truth value to prevent gcc warnings.
9fbc32aa 13900
048addec
JD
13901 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
13902 * w32proc.c: Include <config.h>.
9fbc32aa 13903
048addec 139042002-01-01 Andreas Schwab <schwab@suse.de>
9fbc32aa 13905
048addec
JD
13906 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
13907 not EMACS_INT, to make them compatible with DEFVAR_INT.
13908 * lisp.h (max_specpdl_size): Adjust declaration.
9fbc32aa 13909
048addec 139102002-01-01 Richard M. Stallman <rms@gnu.org>
9fbc32aa 13911
048addec
JD
13912 * print.c (print_object): Test print_escape_nonascii only for
13913 unibyte strings.
13914 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
13915 when outputting to a multibyte buffer.
9fbc32aa 13916
048addec 139172001-12-29 Richard M. Stallman <rms@gnu.org>
9fbc32aa 13918
048addec
JD
13919 * print.c (print_object): In multibyte string, use hex escapes.
13920 Use octal only for unibyte strings.
13921 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
0142178a 13922
048addec
JD
13923 * lread.c (read_escape): New arg BYTEREP for reporting whether
13924 escape forces unibyte or multibyte.
13925 (read1): When reading a string, take note of that info.
0142178a 13926
048addec 139272001-12-29 Ken Raeburn <raeburn@gnu.org>
d4824a5d 13928
048addec
JD
13929 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
13930 comparison to test lisp value returned by Fget.
d4824a5d 13931
048addec 139322001-12-29 Richard M. Stallman <rms@gnu.org>
b1356234 13933
048addec 13934 * lisp.h (max_specpdl_size): Add declaration.
b1356234 13935
048addec 13936 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
3ce081f5 13937
048addec
JD
13938 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
13939 Handle modifier bits. Correct typo in error message.
99e380ee 13940
048addec 139412001-12-28 Richard M. Stallman <rms@gnu.org>
3ce081f5 13942
048addec
JD
13943 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
13944 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
13945 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
13946 Update calls to Fdefine_abbrev.
13947 (write_abbrev): Update for changed data format.
13948 Don't list "system" abbrevs.
13949 (Fexpand_abbrev): Update use count with new data format.
13950 (describe_abbrev): Update for changed data format.
13951 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
66458f32 13952
048addec 13953 * config.in (HAVE_MBSINIT): Add #undef.
66458f32 13954
048addec 13955 * strftime.c (mbsinit): Define as no-op if not available.
66458f32 13956
048addec
JD
13957 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
13958 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
59a86c99 13959
048addec
JD
13960 * keymap.c (Flookup_key): Error message if key has wrong data type.
13961 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
13962 (exclude_key): New variable.
59a86c99 13963
048addec 139642001-12-28 Gerd Moellmann <gerd@gnu.org>
eb77a5f4 13965
048addec
JD
13966 * xterm.c (x_setup_relief_colors): Don't compute an image's
13967 background color if it doesn't have a Pixmap.
eb77a5f4 13968
048addec
JD
13969 * xterm.c (notice_overwritten_cursor): Don't depend on
13970 output_cursor and updated_area. Compare pixel coordinates with
13971 window's cursor pixel coordinates.
13972 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
13973 Call notice_overwritten_cursor with new arg list.
13974 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
13975 unconditionally.
eb77a5f4 13976
048addec
JD
13977 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
13978 height of the cursor line to the amount to scroll.
eb77a5f4 13979
048addec 139802001-12-27 Richard M. Stallman <rms@gnu.org>
bb313871 13981
048addec
JD
13982 * intervals.c (set_point_both): The position after an invisible,
13983 intangible character is not an acceptable stopping point.
bb313871 13984
048addec 139852001-12-27 Ken Raeburn <raeburn@gnu.org>
55b43a63 13986
048addec
JD
13987 * window.c (enlarge_window): In new preserve_before code, convert
13988 CURBEG from lisp object to integer before doing arithmetic.
6052529b 13989
048addec 139902001-12-27 Richard M. Stallman <rms@gnu.org>
3ce081f5 13991
048addec 13992 * bytecode.c (Fbyte_code): Undo previous change.
3ce081f5 13993
048addec 139942001-12-26 Kim F. Storm <storm@cua.dk>
3ce081f5 13995
048addec
JD
13996 * keyboard.c (record_char): Ignore duplicate help-echo events only
13997 separated by mouse-movement. When tracking mouse, only record
13998 first and last mouse-movement event in same window.
13999 Don't record mouse-movement events in keyboard macros.
3ce081f5 14000
048addec 140012001-12-25 Richard M. Stallman <rms@gnu.org>
55b43a63 14002
048addec
JD
14003 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
14004 (Fenlarge_window): New arg PRESERVE_BEFORE.
111ed14e 14005
048addec
JD
14006 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
14007 instead of Fstring_as_unibyte.
9fabb2f5 14008
048addec 140092001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fabb2f5 14010
048addec 14011 The following changes remove mocklisp support:
9fabb2f5 14012
048addec 14013 * mocklisp.h, mocklisp.c: Files removed.
111ed14e 14014
048addec
JD
14015 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
14016 `Qmocklisp' and `Qmocklisp_arguments'.
14017 Remove prototype of syms_of_mocklisp.
2fa0eedf 14018
048addec 14019 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
d1420435 14020
048addec
JD
14021 * callint.c: Do not include mocklisp.h.
14022 (Fcall_interactively): Do not test for mocklisp case.
2fa0eedf 14023
048addec
JD
14024 * eval.c: Remove variables `Qmocklisp_arguments',
14025 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
14026 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
14027 Do not test for mocklisp case.
14028 (Fwhile): Remove unused variable `tem'.
14029 (syms_of_eval): Remove variable `moclisp-arguments'.
ebcbef4e 14030
048addec 14031 * data.c (wrong_type_argument): Remove mocklisp case.
5c131048 14032
048addec 14033 * doc.c (Fdocumentation): Remove mocklisp case.
5c131048 14034
048addec 14035 * emacs.c (main): Do not call syms_of_mocklisp.
5c131048 14036
048addec 140372001-12-21 Richard M. Stallman <rms@gnu.org>
96d276c3 14038
048addec
JD
14039 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
14040 to the left or to the right of the pointer, put it against
14041 the left screen edge.
6108b49c 14042
048addec 140432001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
96d276c3 14044
048addec
JD
14045 * Makefile.in (distclean): Remove .gdbinit if we are building
14046 outside the source tree.
5eea19a4 14047
048addec 140482001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
5eea19a4 14049
048addec 14050 * w32.c (emacs_root_dir): New function.
5eea19a4 14051
048addec 14052 * msdos.c (emacs_root_dir): New function.
5eea19a4 14053
048addec
JD
14054 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
14055 of the current drive as the fallback for default_directory.
438e57dd 14056
048addec
JD
14057 * dired.c (file_name_completion): Run the elements of
14058 completion-ignored-extensions through ENCODE_FILE.
438e57dd 14059
048addec
JD
14060 * lisp.h (scmp): Remove prototype, since it's now a static
14061 function private to dired.c.
c88e5347 14062
048addec 140632001-12-18 Richard M. Stallman <rms@gnu.org>
c88e5347 14064
048addec
JD
14065 * dired.c (scmp): Function moved from minibuf.c.
14066 Delete multibyte handling--used only on encoded strings.
59ce1461 14067
048addec 14068 * minibuf.c (scmp): Function moved to dired.c.
59ce1461 14069
048addec 14070 * fns.c (merge): Add QUIT call.
59ce1461 14071
048addec 140722001-12-18 Dave Love <fx@gnu.org>
8727d588 14073
048addec
JD
14074 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
14075 language/georgian.el.
8727d588 14076
048addec 140772001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
cc63037e 14078
048addec
JD
14079 * Makefile.in (lisp, shortlisp): Synchronize with changes to
14080 lisp/Makefile.in:DONTCOMPILE.
cc63037e 14081
048addec 140822001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
cc63037e 14083
048addec
JD
14084 * xdisp.c (window_box_height): Do not return negative values.
14085 From Gerd Moellmann <gerd@gnu.org>.
cc63037e 14086
048addec 14087 * keyboard.c (head_table): Add missing braces around initializer.
cc63037e 14088
048addec 14089 * term.c (keys): Likewise.
deece6f5 14090
048addec 14091 * xfns.c (x_frame_parms, visual_classes): Likewise.
deece6f5 14092
048addec 140932001-12-17 Sam Steingold <sds@gnu.org>
1b944d9c 14094
048addec
JD
14095 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
14096 patch (COMPOSING_P, not COMPOSING).
28ff4293 14097
048addec 140982001-12-17 Richard M. Stallman <rms@gnu.org>
a395ef6a 14099
048addec 14100 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
a395ef6a 14101
048addec
JD
14102 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
14103 before calling decode_coding.
9b46de40 14104
048addec 14105 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
9b46de40 14106
048addec
JD
14107 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
14108 instead of only for COMPOSITION_DISABLED.
9b46de40 14109
048addec 141102001-12-16 Richard M. Stallman <rms@gnu.org>
aff37336 14111
048addec 14112 * alloc.c (pure_alloc): After overflow, allocate just a small block.
aff37336 14113
048addec 14114 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
b9937f07 14115
048addec
JD
14116 * buffer.h (struct buffer): New field `display_error_modiff'.
14117 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
b9937f07 14118
048addec 14119 * window.c (Frecenter): Clear display_error_modiff field.
2cd23960 14120
048addec
JD
14121 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
14122 Call redisplay_window, but not if display_error_modiff field says no.
14123 (redisplay_window_error): New function.
14124 (displayed_buffer): New variable.
14125 (redisplay_internal, redisplay_windows): Call the new functions
14126 instead of redisplay_window directly.
2cd23960 14127
048addec 141282001-12-15 Richard M. Stallman <rms@gnu.org>
2cd23960 14129
048addec 14130 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
2cd23960 14131
048addec 141322001-12-14 Andrew Innes <andrewi@gnu.org>
a4184c1c 14133
048addec 14134 * makefile.w32-in (EMACSLOADPATH): Define.
f9711de4 14135 ($(EMACS)): Run `list-load-path-shadows' after dumping Emacs.
048addec 14136 (bootstrap-temacs): Remove dependency on bootstrap-clean.
a4184c1c 14137
048addec 141382001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
f6fa0866 14139
048addec
JD
14140 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
14141 parameter have a numeric value all the time.
f6fa0866 14142
048addec 14143 * w32fns.c (x_report_frame_params): Likewise.
f4ca4b00 14144
048addec 141452001-12-12 Richard M. Stallman <rms@gnu.org>
f4ca4b00 14146
048addec 14147 * fileio.c (Fwrite_region): Doc fix.
f4e25f94 14148
048addec
JD
14149 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
14150 (redisplay_internal): Call clear_image_cache only for window terminals.
f4e25f94 14151
048addec 141522001-12-12 Gerd Moellmann <gerd@gnu.org>
91c153e2 14153
048addec
JD
14154 * xdisp.c (move_it_vertically_backward): Change heuristic
14155 for the case that we didn't move far enough initially.
91c153e2 14156
048addec
JD
14157 * window.c (Frecenter): Simplify computation in the case of window
14158 system frames and ARG < 0; use window_box_height.
65b7d3e7 14159
048addec 141602001-12-11 Richard M. Stallman <rms@gnu.org>
65b7d3e7 14161
048addec
JD
14162 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
14163 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
6b5f6311 14164
048addec 141652001-12-11 Andrew Innes <andrewi@gnu.org>
6b5f6311 14166
048addec
JD
14167 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
14168 arg is negative.
be676094 14169
048addec 141702001-12-11 Richard M. Stallman <rms@gnu.org>
be676094 14171
048addec
JD
14172 * m/hp800.h: Split the __hpux conditional into the parts
14173 that are right for GNU/Linux too and the parts that are not.
14174 Use the former if GNU_LINUX.
14175 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
032a857d 14176
048addec 14177 * s/gnu-linux.h (GNU_LINUX): Defined.
032a857d 14178
048addec 141792001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
032a857d 14180
048addec
JD
14181 * macros.c, msdos.c, w16select.c: Change doc-string comments to
14182 `new style' [w/`doc:' keyword].
032a857d 14183
048addec 141842001-12-10 Jason Rumney <jasonr@gnu.org>
b6270150 14185
048addec
JD
14186 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
14187 before using.
b6270150 14188
048addec 141892001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
792e5cbd 14190
048addec
JD
14191 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
14192 keyword].
98cbb9fa 14193
048addec 141942001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
98cbb9fa 14195
048addec 14196 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
98cbb9fa 14197
048addec 14198 * s/hpux10.h (srand48): Don't undefine.
98cbb9fa 14199
048addec 142002001-12-09 Jason Rumney <jasonr@gnu.org>
792e5cbd 14201
048addec
JD
14202 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
14203 Add comment to explain where the struct came from.
14204 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
14205 (add_menu_item): Process pop-up menus first to avoid memory leak.
14206 (add_menu_item, w32_menu_display_help): Use `help' field as
14207 Lisp_Object.
14208 (w32_free_submenu_strings): Only free owner-drawn strings.
fa336b91 14209
048addec 142102001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
fa336b91 14211
048addec 14212 * COPYING: Moved back.
fa336b91 14213
048addec
JD
14214 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
14215 Add parentheses around && within ||.
077907d4 14216
048addec 14217 * indent.c (compute_motion): Likewise.
aa2af83a 14218
048addec 14219 * intervals.c (merge_properties_sticky): Likewise.
60a653f1 14220
048addec
JD
14221 * coding.c (setup_coding_system, shrink_encoding_region)
14222 (Fdecode_sjis_char): Likewise.
60a653f1 14223
048addec 142242001-12-07 Andreas Schwab <schwab@suse.de>
60a653f1 14225
048addec
JD
14226 * xdisp.c (display_mode_element): Don't read past end of string if
14227 it ends with '%'.
60a653f1 14228
048addec
JD
14229 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
14230 can hold.
60a653f1 14231
048addec
JD
14232 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
14233 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
14234 type changed to Lisp_Object.
14235 (syms_of_data): DEFVAR_LISP them.
60a653f1 14236
048addec 142372001-12-07 Richard M. Stallman <rms@gnu.org>
60a653f1 14238
048addec
JD
14239 * callproc.c (init_callproc): Set Vdata_directory based on the source
14240 location whenever Emacs was run uninstalled.
60a653f1 14241
048addec 142422001-12-06 Paul Eggert <eggert@twinsun.com>
60a653f1 14243
048addec
JD
14244 * config.in (HAVE_WORKING_VFORK): New #undefs.
14245 * process.c (create_process):
14246 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
14247 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
14248 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
14249 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
14250 * m/intel386.h (HAVE_VFORK): Likewise.
14251 * m/mips-siemens.h (HAVE_VFORK): Likewise.
14252 * m/mips.h (HAVE_VFORK): Likewise.
14253 * s/freebsd.h (vfork): Remove #define.
14254 * s/lynxos.h (HAVE_VFORK): Remove #undef.
14255 * s/usg5-4-2.h: Fix comment about vfork.
60a653f1 14256
048addec 142572001-12-06 Richard M. Stallman <rms@gnu.org>
60a653f1 14258
048addec
JD
14259 * s/hpux10.h (random): Add undef.
14260 (HAVE_RANDOM): Define it just once.
60a653f1 14261
048addec 142622001-12-06 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 14263
048addec 14264 * eval.c: Undo last change: the standard syntax is not wanted.
60a653f1 14265
048addec 142662001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 14267
048addec
JD
14268 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
14269 scroll bars of the frame before deleting the frame itself. If the
14270 frame has a widget, delete the frame with XtDestroyWidget, and do
14271 not call XDestroyWindow before that.
60a653f1 14272
048addec 142732001-12-06 Kim F. Storm <storm@cua.dk>
60a653f1 14274
048addec 14275 * xfns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 14276
048addec 14277 * w32fns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 14278
048addec 142792001-12-05 Andrew Innes <andrewi@gnu.org>
60a653f1 14280
048addec
JD
14281 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
14282 excessively large.
60a653f1 14283
048addec
JD
14284 * insdel.c (make_gap_larger): New function.
14285 (make_gap_smaller): New function.
14286 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
14287 Call make_gap_smaller if arg is negative.
60a653f1 14288
048addec 142892001-12-04 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 14290
048addec
JD
14291 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
14292 Pass a dummy argument when calling interrupt_signal.
14293 (parse_menu_item): Mark disabled items before checking for empty def.
14294 (read_char_minibuf_menu_prompt): Make safety more visible.
14295 (read_key_sequence): Add a `first_unbound' variable.
14296 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
14297 unbound prefix as soon as we can detect it.
60a653f1 14298
048addec
JD
14299 * doc.c (Fsnarf_documentation): Add prototype.
14300 (get_doc_string): Handle negative arguments.
14301 (Fdocumentation): Use AREF and ASIZE.
14302 Move the calls to get_doc_string to a single place.
14303 Don't confuse an interactive-spec for a docstring reference.
14304 (Fdocumentation_property): Take advantage of the fact that
14305 get_doc_string now ignores the sign of the docstring position.
60a653f1 14306
048addec 14307 * eval.c: Use standard syntax for usage in docstrings.
60a653f1 14308
048addec 143092001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 14310
a64387ee 14311 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
60a653f1 14312
048addec 143132001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 14314
048addec
JD
14315 * xterm.c (x_draw_image_relief): Use predefined macro instead of
14316 constant when the value of `tool_bar_button_relief' is negative.
60a653f1 14317
048addec 143182001-12-02 Richard M. Stallman <rms@gnu.org>
60a653f1 14319
048addec
JD
14320 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
14321 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
60a653f1 14322
048addec 14323 * fileio.c (read_non_regular): Delete Fsignal call.
60a653f1 14324
048addec 143252001-12-01 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 14326
048addec 14327 * lisp.h (run_hook_list_with_args): Undo last change.
60a653f1 14328
048addec 143292001-12-01 Gerd Moellmann <gerd@gnu.org>
60a653f1 14330
048addec 14331 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
60a653f1 14332
048addec 143332001-12-01 Jason Rumney <jasonr@gnu.org>
60a653f1 14334
f63fd14e 14335 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
60a653f1 14336
048addec
JD
14337 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
14338 [!WM_MOUSELEAVE]: Define.
60a653f1 14339
048addec
JD
14340 * w32menu.c (current_popup_menu, get_menu_item_info):
14341 (set_menu_item_info): New vars.
14342 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
14343 (w32_menu_show): Set current_popup_menu.
14344 (add_menu_item): Allocate new strings for owner-drawn menu items
14345 and help strings.
14346 Use owner-draw for disabled menu items again.
14347 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
14348 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
60a653f1 14349
048addec
JD
14350 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
14351 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
14352 <WM_EXITMENULOOP>: Free menu strings.
14353 <WM_MOUSELEAVE>: Stop tracking mouse.
14354 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
60a653f1 14355
048addec
JD
14356 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
14357 and mouse face.
60a653f1 14358
048addec 143592001-12-01 Kim F. Storm <storm@cua.dk>
60a653f1 14360
048addec
JD
14361 The following changes add left-fringe and right-fringe
14362 frame parameters to adjust fringe widths, or remove one or
14363 both fringes.
60a653f1 14364
048addec
JD
14365 * frame.h (struct frame): Remove trunc_area_pixel_width and
14366 trunc_area_cols fields.
14367 (Qleft_fringe, Qright_fringe): Declare.
14368 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
60a653f1 14369
048addec
JD
14370 * frame.c (Qleft_fringe, Qright_fringe): New vars.
14371 (syms_of_frame): Initialize them.
60a653f1 14372
048addec
JD
14373 * window.c (coordinates_in_window): Handle separate left and right
14374 fringe widths.
60a653f1 14375
048addec
JD
14376 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
14377 and fringe_cols fields.
14378 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
14379 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
14380 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
14381 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
14382 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
14383 (x_compute_fringe_widths): Add prototype.
60a653f1 14384
048addec
JD
14385 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
14386 fill fringe evenly with small dashes.
f63fd14e 14387 (x_draw_fringe_bitmap): Clear background if necessary. Align and
048addec
JD
14388 clip the new ZV bitmap to avoid jitter between rows.
14389 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
14390 background. Don't draw fringe bitmaps if fringe width is zero.
14391 (x_compute_fringe_widths): New function.
14392 (x_new_font, x_set_window_size_1): Use it.
60a653f1 14393
048addec
JD
14394 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
14395 (x_set_frame_parameters): Process `font' parameter before other
14396 parameters as fringe widths depend on it.
14397 (x_set_fringe_width): New function.
14398 (x_figure_window_size): Use x_compute_fringe_widths.
14399 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
14400 parameters.
60a653f1 14401
048addec
JD
14402 * widget.c (set_frame_size): Use x_compute_fringe_widths.
14403 (EmacsFrameSetCharSize): Ditto.
60a653f1 14404
048addec
JD
14405 * w32term.h: Merged changes from xterm.h.
14406 * w32term.c: Merged changes from xterm.c.
14407 * w32fns.c: Merged changes from xfns.c.
60a653f1 14408
048addec 144092001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 14410
048addec 14411 * COPYING: Removed.
60a653f1 14412
048addec 144132001-11-29 Dave Love <fx@gnu.org>
60a653f1 14414
048addec
JD
14415 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
14416 extra extra slot.
14417 (detect_coding_mask): Fix call of detect_coding_iso2022.
60a653f1 14418
048addec 144192001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 14420
048addec
JD
14421 * fileio.c (file-name-coding-system)
14422 (default-file-name-coding-system): Doc fix (links to referenced
14423 variables added).
60a653f1 14424
048addec 144252001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 14426
048addec
JD
14427 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
14428 Add dummy uses of gcproN variables.
60a653f1 14429
048addec
JD
14430 * category.c (describe_category, describe_category_1)
14431 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
14432 (syms_of_category): Don't defsubr Sdescribe_categories.
60a653f1 14433
048addec 144342001-11-28 Richard M. Stallman <rms@gnu.org>
60a653f1 14435
048addec 14436 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
60a653f1 14437
048addec
JD
14438 * Makefile.in (lispdir): New variable, referring to build dir.
14439 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
60a653f1 14440
048addec 144412001-11-28 Andrew Innes <andrewi@gnu.org>
60a653f1 14442
048addec
JD
14443 * w32menu.c (w32_menu_display_help): Actually add the new argument
14444 OWNER.
60a653f1 14445
048addec 144462001-11-28 Jason Rumney <jasonr@gnu.org>
60a653f1 14447
048addec
JD
14448 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
14449 menu items. From David Ponce <dponce@wanadoo.fr>.
14450 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
14451 conditionally.
f63fd14e 14452 (w32_menu_display_help): New argument OWNER. Rewritten to store a
048addec 14453 help event in the owner frame's keyboard buffer.
60a653f1 14454
048addec
JD
14455 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
14456 (Fx_show_tip): Don't subtract last width from row width.
14457
14458 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
14459 (w32_read_socket): Use EQ to compare frames.
60a653f1 14460
048addec 144612001-11-28 Gerd Moellmann <gerd@gnu.org>
60a653f1 14462
048addec
JD
14463 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
14464 OVERLAPS_P.
60a653f1 14465
048addec 144662001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 14467
048addec
JD
14468 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
14469 `gcpro3' and `gcpro4'.
60a653f1 14470
048addec 14471 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
60a653f1 14472
048addec 144732001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 14474
048addec 14475 * ccl.c: Use AREF and ASIZE.
60a653f1 14476
048addec 144772001-11-27 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 14478
048addec
JD
14479 * lisp.h (run_hook_list_with_args): Remove.
14480 (LIST_END_P): Fix call to wrong_type_argument.
14481 (make_fixnum_or_float): Use EMACS_INT rather than int.
60a653f1 14482
048addec 144832001-11-26 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 14484
048addec
JD
14485 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
14486 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
60a653f1 14487
048addec
JD
14488 * eval.c: Use AREF and ASIZE.
14489 (Ffetch_bytecode): Add the file name to the error message.
60a653f1 14490
048addec
JD
14491 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
14492 which match the end of the file-name.
14493 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
14494 is not a valid env var, but leave it as is instead.
60a653f1 14495
048addec
JD
14496 * keymap.c (access_keymap): Handle t bindings like nil bindings.
14497 Make nil bindings in char-tables transparent.
14498 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
60a653f1 14499
048addec 145002001-11-26 Richard M. Stallman <rms@gnu.org>
60a653f1 14501
048addec
JD
14502 * textprop.c (set_text_properties_1): Allow START, END in either order.
14503 Do nothing if range is empty.
60a653f1 14504
048addec 14505 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
60a653f1 14506
048addec
JD
14507 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
14508 (clean): Not here.
60a653f1 14509
048addec 145102001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 14511
048addec
JD
14512 * textprop.c (set_text_properties_1): Clearly mark that the
14513 interval should not be empty.
60a653f1 14514
048addec
JD
14515 * intervals.c (graft_intervals_into_buffer):
14516 Don't call set_text_properties_1 on an empty interval.
60a653f1 14517
048addec 145182001-11-25 Richard M. Stallman <rms@gnu.org>
60a653f1 14519
048addec 14520 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
60a653f1 14521
048addec
JD
14522 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
14523 don't lose the data in it.
60a653f1 14524
048addec 145252001-11-25 Juanma Barranquero <lektu@terra.es>
60a653f1 14526
048addec 14527 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
60a653f1 14528
c62aec78 14529 * buffer.c (Fkill_buffer): Likewise.
60a653f1 14530
c62aec78 14531 * print.c (temp_output_buffer_setup): Likewise.
60a653f1 14532
048addec 145332001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 14534
048addec 14535 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
60a653f1 14536
048addec 145372001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 14538
048addec
JD
14539 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
14540 Niemitalo <kon@iki.fi>.
60a653f1 14541
048addec 145422001-11-25 Jason Rumney <jasonr@gnu.org>
60a653f1 14543
048addec 14544 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
60a653f1 14545
048addec
JD
14546 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
14547 (Fx_show_tip): Block input during frame creation.
14548 (Fx_show_tip, Fx_hide_tip): Enable.
60a653f1 14549
048addec 145502001-11-24 Richard M. Stallman <rms@gnu.org>
60a653f1 14551
048addec
JD
14552 * lread.c (Fload): Detect recursive load error for more than 3
14553 nestings of the same file.
14554 (Vrecursive_load_depth_limit): Variable deleted.
14555 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
60a653f1 14556
048addec 145572001-11-24 Jason Rumney <jasonr@gnu.org>
60a653f1 14558
048addec
JD
14559 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
14560 mouse position if either left or top is not specified.
60a653f1 14561
048addec
JD
14562 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
14563 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
14564 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
14565 (my_create_tip_window): Assign tip_window.
14566 (x_create_tip_frame): Use same defaults as X.
14567 (compute_tip_xy): Remove unused variable. Use full screen width.
f63fd14e 14568 (Fx_show_tip): Do not double height. Call ShowWindow directly.
60a653f1 14569
048addec
JD
14570 * w32term.c (x_after_update_window_line): Doc fix.
14571 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
14572 frames.
14573 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
60a653f1 14574
048addec
JD
14575 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
14576 for all Windowed systems.
60a653f1 14577
048addec 145782001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 14579
048addec
JD
14580 * msdos.c (IT_clear_screen): If the frame's faces are not yet
14581 realized, use the initial screen colors to clear the screen.
60a653f1 14582
048addec 145832001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 14584
048addec
JD
14585 * textprop.c (Fset_text_properties): Remove unused variables
14586 `unchanged', `prev_changed', `s' and `len'.
60a653f1 14587
048addec
JD
14588 * search.c (Freplace_match): Remove unused variable `inslen'.
14589
14590 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
14591
145922001-11-22 Jason Rumney <jasonr@gnu.org>
14593
14594 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
14595 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
14596 (my_create_tip_window): New function.
14597 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
14598 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
14599
146002001-11-20 Jason Rumney <jasonr@gnu.org>
14601
14602 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
14603 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
14604
14605 * w32fns.c (Vw32_system_coding_system): Remove.
14606 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
14607
146082001-11-19 Stefan Monnier <monnier@cs.yale.edu>
14609
14610 * fileio.c (Fwrite_region): Move choose_write_coding_system to
14611 after build_annotations.
14612
14613 * syntax.c (describe_syntax): Add dummy arg.
14614 (describe_syntax_1): Update call to describe_vector.
14615
14616 * category.c (describe_category): Add dummy arg.
14617 (describe_category_1): Update call to describe_vector.
14618
14619 * keymap.c (Fdescribe_vector): Add `describer' parameter.
14620 (describe_command, describe_translation): Add dummy second param.
14621 (describe_map): Call elt_describer with two arguments.
14622 (describe_vector_princ): Add `fun' parameter.
14623 Call it instead of the hardcoded `princ'.
14624 (describe_vector): Add arg `args'.
14625 Pass it as a new second argument to elt_describer.
60a653f1 14626
048addec 14627 * keymap.h (describe_vector): Update prototype.
60a653f1 14628
048addec
JD
14629 * frame.c: Don't include keymap.h any more.
14630 (keys_of_frame): Remove.
60a653f1 14631
048addec 14632 * lisp.h (keys_of_frame): Remove declaration.
60a653f1 14633
048addec 14634 * emacs.c (main): Don't call `keys_of_frame' any more.
60a653f1 14635
048addec 146362001-11-14 Andreas Schwab <schwab@suse.de>
60a653f1 14637
048addec
JD
14638 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
14639 if defined, 0 otherwise.
14640 (MAP_FAILED): Define if not defined and use it to test mmap failure.
14641 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
60a653f1 14642
048addec 146432001-11-19 Richard M. Stallman <rms@gnu.org>
60a653f1 14644
048addec 14645 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
60a653f1 14646
048addec 146472001-11-18 Jason Rumney <jasonr@gnu.org>
60a653f1 14648
048addec
JD
14649 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
14650 (x_draw_bar_cursor): If the background color of the glyph under
14651 the cursor equals the frame's cursor color, use the glyph's
14652 foreground color for drawing the bar cursor.
14653 (x_after_update_window_line): Clear internal border in different
14654 circumstances.
14655 (w32_set_vertical_scroll_bar): Check for width and height > 0.
14656 (w32_draw_relief_rect): Correct relief by 1 pixel.
14657 (x_set_glyph_string_background_width):
14658 Set extends_to_end_of_line_p if the row's fill_line_p is set and
14659 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
14660 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
14661 if cursor_in_non_selected_windows is false.
14662 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
14663 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
14664 Notice if cursor gets overwritten.
14665 (notice_overwritten_cursor): Renamed from
14666 note_overwritten_text_cursor. Rewritten to take glyph widths
14667 into account, and to take X positions as parameters.
14668 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
14669 around call to x_draw_glyphs.
14670 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
14671 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
14672 color to use for image glyph reliefs.
14673 (x_draw_image_relief): Accept zero tool_bar_button_relief.
14674 (glyph_rect): Remove unused variable `area'.
60a653f1 14675
048addec
JD
14676 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
14677 some items.
14678 (x_set_internal_border_width): Set frame garbaged when window
14679 doesn't exist yet.
14680 (Fx_create_frame): Accept zero tool_bar_button_relief.
14681 (x_clear_image_1, four_corners_best, image_background)
14682 (image_background_transparent): New functions.
14683 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
14684 (gs_format): Add `:background' entry.
14685 (lookup_image): Set IMG's background color if specified.
14686 (pbm_load, xbm_load_image, png_load): Set IMG's background field
14687 when appropriate.
14688 (x_clear_image_1): Reset `background_valid' and
14689 `background_transparent_valid' fields.
14690 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
14691 calculating it here. Set IMG's background_transparent field.
14692 (enum xpm_keyword_index): Add XPM_BACKGROUND.
14693 (enum png_keyword_index): Add PNG_BACKGROUND.
14694 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
14695 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
14696 (enum gif_keyword_index): Add GIF_BACKGROUND.
14697 (enum gs_keyword_index): Add GS_BACKGROUND.
14698 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
14699 Pre-calculate image background color where necessary.
14700 (x_create_x_image_and_pixmap, xbm_load, gs_load):
14701 Use display info's n_cbits entry for screen depth.
14702 (Fx_show_tip): Remove unused variables `buffer', `top',
14703 `left', `max_width' and `max_height'.
60a653f1 14704
048addec 14705 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
60a653f1 14706
048addec 147072001-11-18 Gerd Moellmann <gerd@gnu.org>
60a653f1 14708
048addec 14709 * puresize.h (BASE_PURESIZE): Increase to 750000.
60a653f1 14710
048addec 147112001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 14712
048addec 14713 * frame.c (Fframe_live_p): Doc fix.
60a653f1 14714
048addec 147152001-11-18 Richard M. Stallman <rms@gnu.org>
60a653f1 14716
048addec
JD
14717 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
14718 (message_dolog_marker3): New static variables hold three markers.
14719 (syms_of_xdisp): Initialize and staticpro them.
14720 (message_dolog): Use message_dolog_marker1..3 instead of
14721 allocating markers each time. Unchain them when done.
60a653f1 14722
048addec 147232001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 14724
048addec 14725 * doc.c (Fsnarf_documentation): Doc fix.
60a653f1 14726
048addec 147272001-11-17 Andreas Schwab <schwab@suse.de>
60a653f1 14728
048addec 14729 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
60a653f1 14730
048addec 147312001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 14732
048addec 14733 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
60a653f1 14734
048addec 147352001-11-17 Jason Rumney <jasonr@gnu.org>
60a653f1 14736
048addec 14737 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
60a653f1 14738
048addec 147392001-11-17 Gerd Moellmann <gerd@gnu.org>
60a653f1 14740
048addec
JD
14741 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
14742 with invalid position.
60a653f1 14743
048addec 147442001-11-16 Richard M. Stallman <rms@gnu.org>
60a653f1 14745
048addec 14746 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
60a653f1 14747
048addec
JD
14748 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
14749 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
14750 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
60a653f1 14751
048addec 14752 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
60a653f1 14753
048addec 147542001-11-16 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 14755
048addec
JD
14756 * fileio.c (build_annotations): Split off the tail.
14757 (build_annotations_2): New fun. Extracted from build_annotations.
14758 (Fwrite_region): Split the call to build_annotations into two
14759 calls to build_annotations and build_annotations_2.
077907d4 14760
048addec 147612001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
1756e2fb 14762
048addec
JD
14763 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
14764 clear_waiting_for_input with argument.
1756e2fb 14765
048addec 14766 * xterm.h (x_update_cursor): Remove duplicated prototype.
06e8f738 14767
048addec 14768 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
06e8f738 14769
048addec 14770 * xterm.c (waiting_for_input): Remove unnecessary declaration.
fa336b91 14771
048addec 14772 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
fa336b91 14773
048addec 147742001-11-16 Stefan Monnier <monnier@cs.yale.edu>
fa336b91 14775
048addec
JD
14776 * fileio.c (choose_write_coding_system): New fun, extracted
14777 from Fwrite_region.
14778 (Fwrite_region): Use it.
fa336b91 14779
048addec
JD
14780 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
14781 (funcall_lambda, run_hook_with_args): Make static and add prototype.
14782 (ml_apply, find_handler_clause): Add prototype.
fa336b91 14783
048addec 147842001-11-16 Eli Zaretskii <eliz@gnu.org>
fa336b91 14785
048addec 14786 * config.in: Add #undef HAVE_COFF_H.
fa336b91 14787
048addec
JD
14788 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
14789 Required for ISC 4.1.
fa336b91 14790
048addec 147912001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
fa336b91 14792
048addec
JD
14793 * syswait.h: (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
14794 Andrew Wiseman <a.wiseman@btclick.com>.
fa336b91 14795
048addec 147962001-11-16 Kim F. Storm <storm@cua.dk>
fa336b91 14797
048addec
JD
14798 The following changes are made to clean up the various internal
14799 references to the fringes to actually use the term `fringe' for
14800 them. Previously, they were called `flags areas', `bitmap areas',
14801 `left/right side of windows', or implicitly as `flags' or
14802 `bitmaps':
fa336b91 14803
048addec 14804 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
f63fd14e 14805 Comments fixed. Use renamed symbols.
06e8f738 14806
f63fd14e 14807 * dispnew.c: Comment fix. Use renamed symbols.
06e8f738 14808
048addec
JD
14809 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
14810 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
14811 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
9ce647f4 14812
048addec 14813 * msdos.c: Comment fix.
9ce647f4 14814
048addec 14815 * w32fns.c: Use renamed symbols.
9b784ab8 14816
f63fd14e 14817 * w32term.c: Comment fixes. Use renamed symbols.
048addec
JD
14818 (fringe_bitmap_type): Renamed from bitmap_type.
14819 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
14820 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
14821 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
9f7e52b4 14822
f63fd14e 14823 * w32term.h: Comment fixes. Use renamed symbols.
048addec
JD
14824 (fringes_extra): Renamed from flags_areas_extra.
14825 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
14826 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
14827 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
14828 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
14829 (FRAME_X_LEFT_FRINGE_WIDTH):
14830 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
14831 (FRAME_X_RIGHT_FRINGE_WIDTH):
14832 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
9f7e52b4 14833
048addec 14834 * widget.c: Use renamed symbols.
9f7e52b4 14835
f63fd14e 14836 * window.c: Comment fixes. Use renamed symbols.
048addec 14837 (coordinates-in-window-p): Doc fix.
fa336b91 14838
f63fd14e 14839 * xdisp.c: Comment fixes. Use renamed symbols.
34e5d0af 14840
048addec 14841 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
9b784ab8 14842
048addec 14843 * xfns.c: Use renamed symbols.
89512fcd 14844
f63fd14e 14845 * xterm.c: Comment fixes. Use renamed symbols.
048addec
JD
14846 (fringe_bitmap_type): Renamed from bitmap_type.
14847 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
14848 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
14849 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
89512fcd 14850
f63fd14e 14851 * xterm.h: Comment fixes. Use renamed symbols.
048addec
JD
14852 (fringes_extra): Renamed from flags_areas_extra.
14853 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
14854 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
14855 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
14856 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
14857 (FRAME_X_LEFT_FRINGE_WIDTH):
14858 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
14859 (FRAME_X_RIGHT_FRINGE_WIDTH):
14860 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
14861
148622001-11-15 Jason Rumney <jasonr@gnu.org>
14863
14864 * w32menu.c (add-menu-item): Make help_echo and radio buttons
14865 work for most menu items. From David Ponce
14866 <david.ponce@wanadoo.fr>.
14867
148682001-11-15 Gerd Moellmann <gerd@gnu.org>
14869
14870 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
14871 Some x_set_* function expect to be called even if old and new
14872 value are equal.
14873
14874 * xdisp.c (build_desired_tool_bar_string): Accept zero
14875 tool_bar_button_relief.
14876
14877 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
14878
14879 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
14880
14881 * xterm.c (x_draw_bar_cursor): If the background color of the
14882 glyph under the cursor equals the frame's cursor color, use
14883 the glyph's foreground color for drawing the bar cursor.
14884
14885 * dispnew.c (direct_output_forward_char): Fix character/byte
14886 position comparison.
7d18891d 14887
048addec 148882001-11-15 Miles Bader <miles@gnu.org>
d2936d21 14889
048addec
JD
14890 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
14891 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
14892 Update arguments to find_field.
14893 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
14894 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
14895 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
14896 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
7d18891d 14897
048addec 148982001-11-14 Richard M. Stallman <rms@gnu.org>
7d18891d 14899
048addec 14900 * editfns.c (Fpropertize): Allow call with 1 arg.
7d18891d 14901
048addec
JD
14902 * dispextern.h (image_background, image_background_transparent):
14903 Conditionalize on HAVE_X_WINDOWS.
7d18891d 14904
048addec 149052001-11-13 Richard M. Stallman <rms@gnu.org>
7d18891d 14906
048addec 14907 * print.c (Fprin1_to_string): Doc fix.
7d18891d 14908
048addec 14909 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
7d18891d 14910
048addec 14911 * floatfns.c (Fceiling, Ffloor): Doc fixes.
7d18891d 14912
048addec 14913 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
7d18891d 14914
048addec 14915 * fileio.c (Ffile_accessible_directory_p): Doc fix.
7d18891d 14916
048addec 14917 * eval.c (syms_of_eval): Doc fix.
7d18891d 14918
048addec 14919 * coding.c (syms_of_coding): Doc fix.
7d18891d 14920
048addec 14921 * doc.c (Fsnarf_documentation): Doc fix.
7d18891d 14922
048addec 14923 * dispnew.c (syms_of_display): Doc fix.
9474c847 14924
048addec 14925 * category.c (Fget_unused_category): Doc fix.
9474c847 14926
048addec 14927 * buffer.c (syms_of_buffer): Doc fixes.
e3059a5d 14928
048addec 149292001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
e3059a5d 14930
048addec 14931 * print.c (prin1, print): Doc fix.
e3059a5d 14932
048addec 149332001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
b3700ae7 14934
048addec
JD
14935 * fontset.h: Remove declarations of variables
14936 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
b3700ae7 14937
048addec
JD
14938 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
14939 `Vclip_large_size_font'.
eae936e2 14940
048addec 149412001-11-13 Jason Rumney <jasonr@gnu.org>
4bb962be 14942
048addec 14943 * w32fns.c: Doc fix.
ddb67bdc 14944
048addec 149452001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3467c402 14946
048addec 14947 * xfaces.c (Fface_attributes_as_vector): Doc fix.
3467c402 14948
048addec 14949 * fns.c: Doc fix.
6e1b91d7 14950
048addec 14951 * emacs.c: Doc fix.
1c1d3d69 14952
048addec 14953 * coding.c: Doc fix.
1c1d3d69 14954
048addec
JD
14955 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
14956 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
14957 `new style' [w/`doc:' keyword].
b6f4c7ba 14958
048addec 149592001-11-12 Richard M. Stallman <rms@gnu.org>
b6f4c7ba 14960
048addec
JD
14961 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
14962 LeaveNotify events. Only FocusIn and FocusOut do that now.
14963 (x_display_and_set_cursor): Do display hollow cursors in active
14964 minibuffer windows when they are not selected.
b6f4c7ba 14965
048addec 149662001-11-12 Jason Rumney <jasonr@gnu.org>
a89f435d 14967
048addec 14968 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
f63fd14e
JB
14969 * w32term.c: Change doc-string comments to `new style'
14970 [w/`doc:' keyword]. Doc fixes.
a89f435d 14971
048addec
JD
14972 * w32fns.c: Don't define max.
14973 (Fx_open_connection): Only execute once.
a4cd0cd7 14974
048addec 149752001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
eafb659a 14976
048addec
JD
14977 * ccl.c: Change macros to use do-while block instead of if-else.
14978 Use braces to follow GNU Coding Standards.
eafb659a 14979
048addec 149802001-11-11 Richard M. Stallman <rms@gnu.org>
a4cd0cd7 14981
048addec 14982 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
a4cd0cd7 14983
048addec 14984 * lread.c (read_escape): Use end_of_file_error for reporting eof.
a4cd0cd7 14985
048addec
JD
14986 * insdel.c (replace_range): Use adjust_markers_for_replace
14987 instead of adjust_markers_for_delete and adjust_markers_for_insert.
a4cd0cd7 14988
048addec 14989 * intervals.h: Declare set_text_properties and set_text_properties_1.
a4cd0cd7 14990
048addec
JD
14991 * textprop.c (set_text_properties_1): New subroutine
14992 broken out of set_text_properties.
14993 (set_text_properties): Use set_text_properties_1.
91823618 14994
048addec
JD
14995 * intervals.c (graft_intervals_into_buffer):
14996 Use set_text_properties_1 to clear out properties.
91823618 14997
048addec
JD
14998 * search.c (Freplace_match): Use replace_range to insert
14999 and delete. Don't request property inheritance from
15000 surrounding text.
86928dfb 15001
048addec 150022001-11-10 Jason Rumney <jasonr@gnu.org>
86928dfb 15003
048addec 15004 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
f63fd14e 15005 vertical fonts. Allow them if face name is explicitly specified.
048addec 15006 Do not give up if we find a font that cannot be converted to an xlfd.
40ef1eda 15007
048addec 150082001-11-10 Gerd Moellmann <gerd@gnu.org>
ab8469eb 15009
048addec
JD
15010 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
15011 instead of malloc/free.
a78e0303 15012
048addec 150132001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
40ef1eda 15014
048addec
JD
15015 * xfaces.c (merge_face_vectors): Use braces to follow GNU
15016 Coding Standards.
15017 (Finternal_set_lisp_face_attribute): Likewise.
fabf4a91 15018
048addec 15019 * buffer.c (Fbury_buffer): Likewise.
0c99b139 15020
048addec 15021 * indent.c (current_column_1): Remove unused variable `prev_col'.
0c99b139 15022
048addec
JD
15023 * coding.c (encode_coding): Use precomputed value of `src'.
15024 (encode_coding): Remove unused variable `src_end'.
15025 (code_convert_region): Remove unused variables `count'.
830ddd77 15026
048addec 150272001-11-07 Jason Rumney <jasonr@gnu.org>
830ddd77 15028
048addec
JD
15029 * w32term.c (x_display_and_set_cursor): Do not move system caret
15030 if cursor_glyph is NULL.
55c6d645 15031
048addec 150322001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
55c6d645 15033
048addec 15034 * keymap.c (access_keymap): Fix compilation error.
5de38842 15035
048addec 150362001-11-07 Miles Bader <miles@gnu.org>
7a4564a4 15037
048addec 15038 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
5de38842 15039
048addec 150402001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4fa23df5 15041
048addec
JD
15042 * intervals.c (graft_intervals_into_buffer):
15043 Remove #ifdef'd-out code.
15044 (graft_intervals_into_buffer): Remove unused variable `middle'.
4fa23df5 15045
048addec
JD
15046 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
15047 code (eval-current-buffer).
15048 Change doc-string comments to `new style' [w/`doc:' keyword].
7a6a97d7 15049
048addec 150502001-11-06 Richard M. Stallman <rms@gnu.org>
c191d13c 15051
048addec 15052 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
7a6a97d7 15053
048addec 150542001-11-06 Stefan Monnier <monnier@cs.yale.edu>
44dc78e0 15055
048addec 15056 * lread.c (read1): Fix behavior with nested backquoting.
44dc78e0 15057
048addec
JD
15058 * keyboard.c (make_lispy_event): Check integerness and fix
15059 Lisp_Object/int mixup.
17893c65 15060
048addec 150612001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4d994a79 15062
048addec 15063 * fns.c (copy_hash_table): Remove unused variable `v'.
d5360cc7 15064
048addec
JD
15065 * fontset.c (fontset_font_pattern): Remove unused variable
15066 `family_registry'.
d5360cc7 15067
048addec 15068 * indent.c (current_column_1): Remove unused variable `prev_col'.
d5360cc7 15069
048addec 150702001-11-05 Richard M. Stallman <rms@gnu.org>
96238a5a 15071
048addec 15072 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
96238a5a 15073
048addec
JD
15074 * buffer.c (Fkill_buffer): Don't delete auto save file
15075 if buffer is modified.
d9d54213 15076
048addec 150772001-11-05 Andrew Innes <andrewi@gnu.org>
d9d54213 15078
048addec
JD
15079 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
15080 CHECK_NUMBER_CDR.
b116830b 15081
048addec 150822001-11-05 Richard M. Stallman <rms@gnu.org>
b116830b 15083
048addec 15084 * unexelf.c (unexec): Minor changes; clean up comments.
3297e2a1 15085
048addec 150862001-11-05 Sam Steingold <sds@gnu.org>
3297e2a1 15087
048addec 15088 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
6fb8339c 15089
048addec 150902001-11-05 Andreas Schwab <schwab@suse.de>
6fb8339c 15091
048addec 15092 * sound.c (sound_perror): Save errno from being clobbered.
7dd73b78 15093
048addec 150942001-11-05 Dale Hagglund <rdh@yottayotta.com>
7dd73b78 15095
048addec
JD
15096 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
15097 the program image directly.
982f6c7e 15098
048addec 150992001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d31053f9 15100
048addec 15101 * buffer.h (Fbuffer_local_value): Add prototype.
d31053f9 15102
048addec 151032001-11-04 Richard M. Stallman <rms@gnu.org>
d31053f9 15104
048addec
JD
15105 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
15106 and CHECK_BUFFER.
d31053f9 15107
048addec
JD
15108 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
15109 (record_char): Likewise.
d31053f9 15110
048addec
JD
15111 * keyboard.c (make_lispy_event): Don't insist a drag event must
15112 move to a different buffer position. Instead, check for moving at
15113 least double_click_fuzz.
982f6c7e 15114
048addec 15115 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
830047fd 15116
048addec 15117 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
b116830b 15118
048addec
JD
15119 * indent.c (current_column_1, Fmove_to_column): Separate the code
15120 for display-table glyphs from the code for buffer text, to fix
15121 bugs in the former.
830047fd 15122
048addec 151232001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
b116830b 15124
048addec
JD
15125 * buffer.c (Fbuffer_local_value): New function.
15126 (syms_of_buffer): Defsubr it.
2df5238c 15127
048addec
JD
15128 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
15129 value of `cursor-in-non-selected-windows'.
4e397688 15130
048addec
JD
15131 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
15132 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
15133 (syms_of_xdisp): Initialize it.
48b0f3ae 15134
048addec 151352001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2df5238c 15136
048addec 15137 * xfns.c (Fx_create_frame): Doc fix.
3ecaf7e5 15138
048addec
JD
15139 * coding.c: Change doc-string comments to `new style' [w/`doc:'
15140 keyword].
3ecaf7e5 15141
048addec
JD
15142 * eval.c (top_level_value, top_level_set): Remove commented and
15143 #ifdef'd-out code.
15144 (Fdefvar): Fix usage in doc-string.
3ecaf7e5 15145
048addec 151462001-11-03 Richard M. Stallman <rms@gnu.org>
3ecaf7e5 15147
048addec 15148 * xfns.c: Include unistd.h, if it exists.
8db2e33b 15149
048addec 15150 * editfns.c: Move the include of ctype.h after unistd.h.
8db2e33b 15151
048addec 15152 * gmalloc.c: Test BROKEN_PROTOTYPES.
aed29b97 15153
048addec 151542001-11-03 Ken Raeburn <raeburn@gnu.org>
aed29b97 15155
048addec
JD
15156 * lisp.h (CHECK_STRING_CAR): New macro.
15157 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
15158 treating XCAR and XCDR as lvalues.
15159 (openp): Use CHECK_STRING_CAR.
15160 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
aed29b97 15161
048addec 151622001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
6cb16f95 15163
048addec
JD
15164 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
15165 (SIGMASKTYPE): Define.
1b1acc13 15166
048addec 15167 * syssignal.h (sigunblock): Don't define if already defined.
020f9b38 15168
048addec 151692001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
020f9b38 15170
048addec
JD
15171 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
15172 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
15173 Fix typos in comments.
6cb16f95 15174
048addec
JD
15175 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
15176 and #ifdef'd-out code.
15177 Fix and reindent comments.
6cb16f95 15178
048addec 15179 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
6cb16f95 15180
048addec
JD
15181 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
15182 argument `i' in macros.
6cb16f95 15183
048addec
JD
15184 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
15185 `i' in macros.
7e9d3c2f 15186
048addec
JD
15187 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
15188 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
15189 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
15190 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
15191 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
15192 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
15193 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
15194 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
15195 in macros.
7e9d3c2f 15196
048addec
JD
15197 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
15198 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
15199 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
15200 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
15201 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
15202 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
15203 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
15204 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
15205 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
15206 (remove unused second argument).
7e9d3c2f 15207
048addec 152082001-11-02 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 15209
048addec
JD
15210 * syntax.c (describe_syntax): New wrapper.
15211 (Finternal_describe_syntax_value): Rename from describe_syntax.
15212 Don't insert space at front and \n at the end.
15213 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
e6bff182 15214
048addec
JD
15215 * regex.c (re_wctype): Try to fix some warnings.
15216 (regcomp, regexec): Don't forget the __restrict.
9ba48103 15217
048addec 152182001-11-02 Richard M. Stallman <rms@gnu.org>
9ba48103 15219
048addec 15220 * textprop.c (Fget_char_property): Doc fix.
9ba48103 15221
048addec 152222001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9ba48103 15223
048addec 15224 * process.c (Fstart_process): Add usage to doc-string.
c22e59e1 15225
048addec 15226 * data.c (Fsetq_default): Ditto.
c22e59e1 15227
048addec 15228 * callint.c (Finteractive): Ditto.
9271ed2c 15229
048addec 152302001-11-01 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 15231
048addec
JD
15232 * macros.c: Don't include keymap.h any more.
15233
152342001-11-01 Richard M. Stallman <rms@gnu.org>
15235
15236 * data.c (Fmake_local_variable): Doc fix.
15237
15238 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
15239 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
e6bff182 15240
048addec 15241 * keymap.c (Fdescribe_buffer_bindings): Print character property
9271ed2c
RS
15242 bindings along with or instead of the buffer local map.
15243 Make the overriding maps override what they should.
15244
f00691a3 152452001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8b8bd9c6
PJ
15246
15247 * window.c (grow_mini_window): Fix typo in comment.
15248
27188d11
GM
152492001-11-01 Gerd Moellmann <gerd@gnu.org>
15250
7b49b9d2
GM
15251 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
15252 (XTset_vertical_scroll_bar): Likewise.
15253
43f7c3ea
GM
15254 * xfns.c (x_build_heuristic_mask): Use four_corners_best
15255 instead of IMAGE_BACKGROUND.
c22e59e1 15256
b350c2e5
GM
15257 * xfns.c (four_corners_best): Reindent.
15258
c22e59e1 15259 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
27188d11
GM
15260 Handle :box so that it is possible to specify sexprs.
15261
bf00d461
EZ
152622001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
15263
15264 * s/hpux11.h: New file.
15265
f00691a3 152662001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e10df59 15267
2b209b97
PJ
15268 * emacs.c (USAGE1): Show command line option --no-window-system
15269 instead of --no-windows in usage.
15270 (standard_args): Rename --no-windows to --no-window-system.
15271 (bug_reporting_address): Follow Emacs coding conventions.
15272
9dbc9081
PJ
15273 * eval.c (Fcommandp): Doc fix.
15274 Change doc-string comments to `new style' [w/`doc:' keyword].
15275
4e10df59
PJ
15276 * frame.c (Fframe_live_p): Doc fix.
15277
15278 * buffer.c (selective-display-ellipses): Doc fix.
15279
dd387b25
GM
152802001-10-31 Gerd Moellmann <gerd@gnu.org>
15281
fe957e65
GM
15282 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
15283
dd387b25
GM
15284 * xfaces.c (realize_x_face): If C is not a single-byte character,
15285 set the face's colors_copied_bitwise_p instead of the defaulted_p
15286 members which have a different meaning.
15287 (free_face_colors): Do nothing for a face whose colors have been
15288 copied bitwise.
15289
c22e59e1 15290 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
dd387b25 15291
f00691a3 152922001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2e1280f8 15293
687784e8
PJ
15294 * marker.c, mocklisp.c: Change doc-string comments to `new style'
15295 [w/`doc:' keyword].
2e1280f8 15296
b9d9a9b9
GM
152972001-10-31 Gerd Moellmann <gerd@gnu.org>
15298
15299 * fns.c (require_unwind): Return Lisp_Object.
15300
f00691a3 153012001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
48400103 15302
fa1361cb
PJ
15303 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
15304 (last-input-char): Revert doc-string to be the same as the
15305 doc-string of `last-input-event'.
15306
6c465a15 15307 * xdisp.c: Fix typos in comments.
48400103 15308
eafa3196
GM
153092001-10-31 Gerd Moellmann <gerd@gnu.org>
15310
15311 * window.c (grow_mini_window): Handle case that the root
15312 window is already smaller than the nominal mininum height.
15313
747d3f2a
SM
153142001-10-30 Stefan Monnier <monnier@cs.yale.edu>
15315
bf9bb76f
SM
15316 * emacs.c (main): Don't call keys_of_macros any more.
15317
15318 * lisp.h (keys_of_macros): Remove.
15319
15320 * macros.c (keys_of_macros): Remove.
15321
747d3f2a
SM
15322 * xfaces.c (Fface_attribute_relative_p): Declare args.
15323
5e905a57
JR
153242001-10-30 Jason Rumney <jasonr@gnu.org>
15325
15326 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
15327 (enum_font_cb2): Ignore fonts with vertical orientation.
15328
3a426197
RS
153292001-10-30 Richard M. Stallman <rms@gnu.org>
15330
15331 * keyboard.c (Finput_pending_p): Doc fix.
15332
a742d646
GM
153332001-10-30 Gerd Moellmann <gerd@gnu.org>
15334
259cf6bc
GM
15335 * xterm.c (x_after_update_window_line): Don't run the code
15336 clearing in borders for rows whose visible height is 0.
15337
3f99f948
GM
15338 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
15339 resized_p flag is set. If not set, use the much less flickering
15340 method previously used.
15341
15342 * dispnew.c (change_frame_size_1): Set frame's resized_p.
15343
15344 * frame.h (struct frame) <resized_p>: New member.
15345
b4a3be43
GM
15346 * lread.c (to_multibyte): Ensure read_buffer is at least twice
15347 as large as the number of bytes to convert.
747d3f2a 15348
a742d646
GM
15349 * lread.c (to_multibyte): New function.
15350 (read1): Use it.
15351
cacbb9e9
EZ
153522001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
15353
15354 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
15355
99cb6b2f
GM
153562001-10-30 Gerd Moellmann <gerd@gnu.org>
15357
327f42ee 15358 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
747d3f2a
SM
15359 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
15360 if the row's fill_line_p is set and drawing the last glyph with
15361 DRAW_IMAGE_{RAISED,SUNKEN}.
327f42ee 15362
99cb6b2f
GM
15363 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
15364
8e8223e2
SM
153652001-10-29 Stefan Monnier <monnier@cs.yale.edu>
15366
15367 * xmenu.c: Include coding.h and charset.h.
15368 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
15369 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
15370 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
15371 Explicitly set wv->help. Use `TRUE' rather than `True'.
15372 (menu_help_callback): Use empty_string.
15373
15374 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
15375 (Fx_popup_dialog): Explicitly init f.
15376 (w32_menu_display_help): Use empty_string.
15377
4d083a8f
RS
153782001-10-29 Richard M. Stallman <rms@gnu.org>
15379
b2304472
RS
15380 * fns.c (Frequire): Detect recursive try to require the same
15381 feature 3 or more levels deep, and get error.
15382 (require_unwind): New subroutine.
15383 (require_nesting_list): New variable.
15384 (syms_of_fns): Init and staticpro it.
15385
4d083a8f
RS
15386 * print.c (print_object): Clarify indication of insertion type.
15387
2fe41216
EZ
153882001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
15389
90480000
EZ
15390 * coding.c (syms_of_coding): Document that locale-coding-system is
15391 used for decoding input on X.
15392
2fe41216
EZ
15393 * window.c (Fscroll_left, Fscroll_right): Doc fix.
15394
f00691a3 153952001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
74e79967
PJ
15396
15397 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
15398 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
15399
60ebcfe8
GM
154002001-10-29 Gerd Moellmann <gerd@gnu.org>
15401
9a7bdceb
GM
15402 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
15403 use NO_CURSOR if cursor_in_non_selected_windows is false.
15404
3f08fcd2
GM
15405 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
15406 the slant attribute if FRAME is t.
15407
0ccfdad2
GM
15408 * xfns.c (x_set_internal_border_width): Set frame garbaged
15409 when X window doesn't exist yet.
15410
ef253080
GM
15411 * xterm.c (x_after_update_window_line): Clear internal border
15412 in different circumstances.
b116830b 15413
60ebcfe8
GM
15414 * xterm.c (XTread_socket) <KeyPress>: Don't use
15415 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
15416 <handa@etl.go.jp>.
15417
73d25f9c
EZ
154182001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
15419
15420 * m/ibms390.h: New file. From Adam Thornton
15421 <athornton@sinenomine.net>.
15422
cac1daf0
GM
154232001-10-28 Gerd Moellmann <gerd@gnu.org>
15424
053b3256 15425 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
b116830b 15426
cac1daf0
GM
15427 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
15428 a loop counter.
15429
f00691a3 154302001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13b1a09c 15431
f9711de4 15432 * emacs.c: Use argv[0] instead of "emacs" when -t was specified.
186486eb 15433
4707d2d0
PJ
15434 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
15435 keyword].
15436 Fix typos in comments.
b116830b 15437
d883731c
PJ
15438 * emacs.c (bug_reporting_address): New function.
15439 Use it when displaying usage message.
15440
04012254
PJ
15441 * minibuf.c (read_minibuf): Remove unused external declaration of
15442 variable `Qread_only'.
15443
13b1a09c
PJ
15444 * keymap.c (access_keymap): Remove unused variable `charset'.
15445
5bbf4378
MB
154462001-10-28 Miles Bader <miles@gnu.org>
15447
15448 * xfaces.c (merge_face_heights): Handle TO being relative as well.
15449 Remove #ifdef'd-out code.
15450 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
15451 (syms_of_xfaces): Initialize them.
15452
1ce1e4ee
JR
154532001-10-27 Jason Rumney <jasonr@gnu.org>
15454
15455 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
15456 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
15457 position using the system caret.
15458
15459 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
15460 (w32_system_caret_height, w32_system_caret_x)
15461 (w32_system_caret_y): New variables for tracking system caret.
15462 (w32_initialize): Initialize them.
c2d53558 15463 (x_display_and_set_cursor): Make system caret follow the active cursor.
1ce1e4ee 15464
c2d53558
SM
15465 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
15466 New messages types.
1ce1e4ee
JR
15467
15468 * w32term.c (note_mouse_highlight): Clear old help_echo.
15469
f00691a3 154702001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e30ce42 15471
bb4600a4
PJ
15472 * xterm.c: Fix typo in a comment.
15473
7db35a48
PJ
15474 * emacs.c: Fix typos in comments.
15475 Remove unnecessary spaces.
15476 Change doc-string comments to `new style' [w/`doc:' keyword].
15477 (USAGE2): Fix typos in usage string.
15478
a7248e4f
PJ
15479 * xterm.c: Fix typo in a comment.
15480
4e30ce42
PJ
15481 * lisp.h: (gdb_lisp_params): Remove code in #if 0 which is now in
15482 emacs.c.
15483
62725a92
GM
154842001-10-27 Gerd Moellmann <gerd@gnu.org>
15485
798dbe1f 15486 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
c2d53558 15487 instead of 1/2 line_height in the heuristic for skipping
798dbe1f
GM
15488 farther backward when target_y was not reached.
15489
62725a92
GM
15490 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
15491 Display errno only if non-zero.
15492 (sound_warning): New function.
15493 (vox_configure): Don't treat failing to set sample rate as error.
15494 (various places): Improve error messages.
15495
d4e34d24
EZ
154962001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
15497
944e6f60
EZ
15498 * fileio.c (Faccess_file): Run the argument filename through
15499 Fexpand_file_name, before using it.
15500
d4e34d24
EZ
15501 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
15502 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
15503
38d2af0c
GM
155042001-10-26 Gerd Moellmann <gerd@gnu.org>
15505
da80a8d5
GM
15506 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
15507
38d2af0c
GM
15508 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
15509 Fix clearing in the case of scroll bars on the right.
c2d53558 15510
45de4a6f 155112001-10-26 Juanma Barranquero <lektu@terra.es>
56f508dd
EZ
15512
15513 * w32gui.h (XImage): Add a dummy typedef.
15514
fbd5ceb2
GM
155152001-10-26 Gerd Moellmann <gerd@gnu.org>
15516
c2d53558 15517 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
fbd5ceb2 15518
b23236fb
EZ
155192001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
15520
15521 * frame.c (Fframe_parameter): Fix last change.
15522
5d991fc4
EZ
15523 * fileio.c: Revert last change (which removed old commented-out
15524 version of expand-file-name). Add a comment that explains why
15525 this old version should not be removed.
15526
879eadc3
GM
155272001-10-25 Gerd Moellmann <gerd@gnu.org>
15528
75700ff2
GM
15529 * frame.c (Fframe_parameter): Fix a bug whereby some
15530 ``artificial'' frame parameters, like `minibuffer' were not
15531 obtained by calling Fframe_parameters.
15532
dfe92a6a
GM
15533 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
15534 cursor differently.
15535
879eadc3
GM
15536 * xdisp.c (move_it_vertically_backward): Compute line height
15537 differently. Add heuristic to try to be more compatible to 20.x.
15538
e1010ebe
SM
155392001-10-25 Stefan Monnier <monnier@cs.yale.edu>
15540
d73a471b
SM
15541 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
15542
d6da5a06
GM
15543 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
15544 boolean.
e1010ebe 15545
f66bd220
MB
155462001-10-25 Miles Bader <miles@gnu.org>
15547
15548 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
15549 BG is a pointer to a structure, not a structure.
15550 (gif_format, png_format): Add missing commas.
15551
d436d538
RS
155522001-10-24 Richard M. Stallman <rms@gnu.org>
15553
15554 * xfaces.c (Fface_attributes_as_vector): New function.
c2d53558 15555 (syms_of_xfaces): Defsubr it.
d436d538 15556
f00691a3 155572001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
075c507b
PJ
15558
15559 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
15560 variable `area'.
15561
f00691a3 155622001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d492b584 15563
c2d53558 15564 * search.c (scan_newline): Remove unused variable `selective_display'.
d492b584 15565
e2a57b34
MB
155662001-10-25 Miles Bader <miles@gnu.org>
15567
15568 * dispextern.h (struct image): Add `background',
15569 `background_valid', and `background_transparent' fields.
15570 (image_background, image_background_transparent): New declarations.
15571 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
15572 * xfns.c (image_background, image_background_transparent)
15573 (four_corners_best): New functions.
c2d53558 15574 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
e2a57b34
MB
15575 (gs_format): Add `:background' entry.
15576 (lookup_image): Set IMG's background color if specified.
15577 (pbm_load, xbm_load_image, png_load): Set IMG's background field
15578 when appropriate.
15579 (x_clear_image_1): Reset `background_valid' and
15580 `background_transparent_valid' fields.
15581 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
15582 calculating it here. Set IMG's background_transparent field.
15583 (enum xpm_keyword_index): Add XPM_BACKGROUND.
15584 (enum png_keyword_index): Add PNG_BACKGROUND.
15585 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
15586 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
15587 (enum gif_keyword_index): Add GIF_BACKGROUND.
15588 (enum gs_keyword_index): Add GS_BACKGROUND.
c2d53558 15589 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
e2a57b34
MB
15590 Pre-calculate image background color where necessary.
15591 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
15592 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
15593 color to use for image glyph reliefs.
15594
b547b6e8
GM
155952001-10-24 Gerd Moellmann <gerd@gnu.org>
15596
d9e3b8c6
GM
15597 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
15598 in full-width rows.
c2d53558 15599
b547b6e8
GM
15600 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
15601 Fix clearing of area not covered by scroll bar.
15602
f00691a3 156032001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2beb36f9
PJ
15604
15605 * xterm.c: (x_insert_glyphs): Remove unused variables `real_end'
15606 and `real_start'.
c2d53558 15607 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
2beb36f9
PJ
15608 (glyph_rect): Remove unused variable `area'.
15609
76cb5e06
GM
156102001-10-24 Gerd Moellmann <gerd@gnu.org>
15611
bdbdebff 15612 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
c2d53558
SM
15613
15614 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
15615 (row_containing_pos): Take additional argument DY.
15616 Treat rows ending in middle of char differently.
62e33982
GM
15617 (display_line): Handle tabs on window systems differently.
15618
15619 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
15620 with additional argument.
15621
15622 * dispextern.h (row_containing_pos): Adjust prototype.
15623
76cb5e06
GM
15624 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
15625 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
15626 (try_window_id, try_window_reusing_current_matrix)
15627 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
6c465a15 15628 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
76cb5e06 15629
f00691a3 156302001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
996fee11 15631
c9e60620
PJ
15632 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
15633 gnuemacs).
15634 (HAVE_BOXES): Fix typo in comment.
15635 (push_menu_pane): Fix typo in comment.
15636
3b552d56
PJ
15637 * xdisp.c: (display_prop_string_p): Remove unused local declaration
15638 of `Qwhen'.
15639 (single_display_prop_string_p): Remove unused local declarations
15640 of `Qwhen' and `Qmargin'.
15641 (string_buffer_position): Remove unused variable `around'.
15642 (store_frame_title): Remove unused variable `width'.
15643
15c565ac
PJ
15644 * window.c: Don't define max.
15645 (coordinates_in_window): Remove unused variable `uy'.
15646
a8818eb9
PJ
15647 * widget.c: Don't define max.
15648
996fee11
PJ
15649 * process.c: Don't define max.
15650 (create_process): Remove unused variable `buffer'.
15651
496e1a5b
GM
156522001-10-23 Gerd Moellmann <gerd@gnu.org>
15653
c2d53558 15654 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
496e1a5b 15655
5905ae8b
EZ
156562001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
15657
15658 * xfaces.c (Finternal_set_lisp_face_attribute)
15659 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
15660 frame is on a windowed display.
15661
24db49fb
GM
156622001-10-23 Gerd Moellmann <gerd@gnu.org>
15663
c2d53558
SM
15664 * dispnew.c (sync_window_with_frame_matrix_rows):
15665 Fix handling of windows which aren't full-width, fix handling
c51488cd
GM
15666 of marginal areas.
15667
c2d53558 15668 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
24db49fb 15669
f0487f05
EZ
156702001-10-23 Andreas Schwab <schwab@suse.de>
15671
15672 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
15673 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
15674
f0a48a01
GM
156752001-10-23 Gerd Moellmann <gerd@gnu.org>
15676
c2d53558 15677 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
f0a48a01
GM
15678 REAL_END. Notice if cursor gets overwritten.
15679 (notice_overwritten_cursor): Take X positions as parameters.
15680 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
15681 around call to x_draw_glyphs.
15682
f00691a3 156832001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
a50a10a0 15684
fc11dff0
PJ
15685 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
15686 instead of C) and usage.
a50a10a0 15687
fc11dff0
PJ
15688 * editfns.c (char-to-string): Fix argument names (use CHAR instead
15689 of C) and usage.
a50a10a0
PJ
15690
15691 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
15692 `left', `max_width' and `max_height'.
15693
8738febd
GM
156942001-10-23 Gerd Moellmann <gerd@gnu.org>
15695
15696 * xdisp.c (display_line): For a tab continued to the next line,
15697 set row's ends_in_middle_of_char_p.
15698
653c329b
GM
156992001-10-22 Gerd Moellmann <gerd@gnu.org>
15700
15701 * xdisp.c (display_line): Fix computation of continuation lines
15702 width for TABs.
15703
f00691a3 157042001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
f958c5ac 15705
7ba51063
PJ
15706 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
15707 `Qlaplace'.
15708
f958c5ac
PJ
15709 * fileio.c: Remove unused code.
15710
eb360291
MB
157112001-10-22 Miles Bader <miles@gnu.org>
15712
15713 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
15714 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
15715 Remove `DOC_STRINGS_IN_COMMENTS' cases.
15716
98515cf0
JR
157172001-10-21 Jason Rumney <jasonr@gnu.org>
15718
15719 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
15720
93026d88
EZ
157212001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
15722
15723 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
15724 (Finsert_string): Avoid the multi-line string literals warning.
15725
c9a95b79
MB
157262001-10-22 Miles Bader <miles@gnu.org>
15727
15728 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
15729 (Fdocumentation): Don't use it.
15730 (syms_of_doc): Don't initialize it.
15731
15732 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
15733 * print.c (Fwith_output_to_temp_buffer): Likewise.
15734 * window.c (Fsave_window_excursion): Likewise.
c2d53558 15735 * editfns.c (Fsave_excursion, Fsave_current_buffer)
c9a95b79 15736 (Fsave_restriction): Likewise.
c2d53558
SM
15737 * eval.c (Frun_hooks, Frun_hook_with_args)
15738 (Frun_hook_with_args_until_failure)
15739 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
15740 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
15741 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
c9a95b79
MB
15742 (Funwind_protect, Fcondition_case): Likewise.
15743 * coding.c (Ffind_operation_coding_system): Likewise.
15744 * keyboard.c (Ftrack_mouse): Likewise.
15745
a3b10252
MB
157462001-10-21 Miles Bader <miles@gnu.org>
15747
c2d53558 15748 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
a3b10252
MB
15749 (Fmake_hash_table): Add usage: string to doc string.
15750 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
c2d53558 15751 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
a3b10252
MB
15752 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
15753 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
15754 (Fml_prefix_argument_loop): Likewise.
15755
f00691a3 157562001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c6f73eec 15757
c2d53558 15758 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
888ebd13 15759
c6f73eec
PJ
15760 * sysdep.c (init_sys_modes): Change doc-string comments to `new
15761 style' [w/`doc:' keyword].
15762
15763 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
15764 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
15765 comments to `new style' [w/`doc:' keyword].
15766
3cf3436e
JR
157672001-10-21 Jason Rumney <jasonr@gnu.org>
15768
15769 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
15770
c169b8f1
JR
15771 * w32term.c (remember_mouse_glyph): New function.
15772 (w32_mouse_position): Use it.
15773 (note_mouse_movement): If the mouse moved off the glyph, remember
15774 its new position.
c2d53558 15775
4fdd691b
JR
15776 * w32term.h (struct w32_output): Correct spelling of x_compatible.
15777 (w32_display_info): Add mouse_face_overlay.
15778
c169b8f1
JR
15779 * w32term.c (notice_overwritten_cursor): Renamed from
15780 note_overwritten_text_cursor. Rewritten to take glyph widths into
15781 account.
15782 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
15783 (fast_find_string_pos): New function.
15784 (fast_find_position): Return the correct vpos. Add parameter
15785 STOP. In the final row, stop before glyphs having STOP as object.
15786 Don't consider glyphs that are not from a buffer.
15787 (fast_find_position) [0]: Add a presumably more correct version
15788 for after 21.1.
15789 (expose_window_tree, expose_frame): Don't compute intersections here.
15790 (expose_window): Do it here instead.
15791 (expose_window_tree, expose_window, expose_line): Return 1 when
15792 overwriting mouse-face.
15793 (expose_window): If W is the window currently being updated, mark
15794 the frame garbaged.
15795 (expose_frame): If mouse-face was overwritten, redo it.
15796 (x_use_underline_position_properties): New variable.
15797 (syms_of_xterm): DEFVAR_BOOL it.
15798 (x_draw_glyph_string): Add comment to use it in future.
15799 (x_draw_glyph_string): Restore clipping after drawing box.
15800 Fix a computation of the underline position.
15801 (w32_get_glyph_string_clip_rect): Minor cleanup.
15802 (x_fill_stretch_glyph_string): Remove an assertion.
15803 (x_produce_glyphs): Don't convert multibyte characters
15804 to unibyte characters in unibyte buffers.
15805 (cursor_in_mouse_face_p): New function.
15806 (x_draw_stretch_glyph_string): Use it to choose a different GC
15807 when drawing a cursor within highlighted text. Don't draw
15808 background again if it has already been drawn.
15809 (x_draw_glyph_string_box): Don't draw a full-width
15810 box just because the glyph row's full_width_p flag is set.
15811 (x_draw_glyphs): Fix computation of rightmost x for
15812 full-width rows.
15813 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
15814 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
f63fd14e 15815 change bottom shadow accordingly. Some cleanup.
c169b8f1
JR
15816 (x_update_window_end): Handle overwritten mouse face
15817 also for tool bar windows.
15818 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
15819 DRAW is DRAW_IMAGE_RAISED.
15820 (clear_mouse_face): Return 1 if text with mouse face was
2c568af5
SM
15821 actually redrawn. Make the function static.
15822 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
c169b8f1
JR
15823 optimize away highlighting if we pass over that same overlay again.
15824 (note_mouse_highlight): Call mouse_face_overlay_overlaps
15825 to detect a case where we have to highlight a different region
15826 despite not having left the currently highlighted region.
15827 Set mouse_face_overlay in the x_display_info. Avoid changing the
15828 mouse pointer shape when show_mouse_face has already done it, or
15829 there is no need. Handle mouse-face and help-echo in strings.
15830 (glyph_rect): New function.
15831 (w32_mouse_position): Use it to raise the threshold for mouse
15832 movement event generation.
15833 (w32_initialize_display_info): Initialize the x_display_info's
15834 mouse_face_overlay.
15835 (w32_set_vertical_scroll_bar): Don't clear a zero height
15836 or width area.
15837 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
15838 a widget to zero height.
15839
3cf3436e 15840 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
4fdd691b 15841 Protect unibyte strings created by replacing their multibyte
3cf3436e
JR
15842 equivalents in menu_items.
15843 (w32_menu_show): Don't overwrite an item's name with its key
15844 description in case the description is a multibyte string.
15845 (single_submenu): Some cleanup.
15846
15847 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
15848 (postprocess_image): New function.
15849 (lookup_image): Call it for all image types except PostScript.
15850 (x_kill_gs_process): Call postprocess_image.
15851 (tiff_error_handler, tiff_warning_handler): New functions.
15852 (tiff_load): Install them as handlers.
15853 (x_kill_gs_process): Recognize if someone has cleared the image
15854 cache under us.
15855 (valid_image_p): Protect better against invalid image
15856 specifications. Previous code could signal an error.
15857 (Fx_hide_tip, Fshow_tip): Doc fix.
15858 (Fv_max_tooltip_size): New variable.
15859 (syns_of_xfns): DEFVAR_LISP it.
15860 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
f63fd14e 15861 window buffer to *tip* right after creating the frame. Set frame's
3cf3436e
JR
15862 window_width. Use a maximum tooltip size specified by
15863 Vx_max_tooltip_size, if that has valid contents.
15864 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
15865 Make sure the tooltip is completely visible.
15866 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
15867 (Fx_create_frame): Adjust the frame's height for presence
15868 of the tool bar before calling x_figure_window_size.
15869 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
15870 when the window gets smaller.
15871 (x_set_foreground_color): Set frame's cursor_pixel.
15872 (x_set_foreground_color, x_set_background_color): Cleaned up.
15873 (x_set_font): Handle case of x_new_fontset returning the same name
15874 as before, although there was a change in fontsets.
15875
386ca361
MB
158762001-10-21 Miles Bader <miles@gnu.org>
15877
c2d53558 15878 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
386ca361
MB
15879 (Flogxor): Add usage: string to doc string.
15880 * charset.c (Fstring): Likewise.
15881 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
15882 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
15883
f00691a3 158842001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14ff1ee0 15885
03be2694
PJ
15886 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
15887
15888 * alloc.c: Reindent DEFUNs with doc: keywords.
15889
15890 * abbrev.c (Finsert_abbrev_table_description): Reindent.
15891
14ff1ee0
PJ
15892 * frame.c: Change doc-string comments to `new style' [w/`doc:'
15893 keyword].
15894
2f147815 15895See ChangeLog.9 for earlier changes.
6922b018
KH
15896
15897;; Local Variables:
49b3bd82 15898;; coding: iso-2022-7bit
6922b018 15899;; End:
2a34a036 15900
2f147815 15901 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
2a34a036
GM
15902 Copying and distribution of this file, with or without modification,
15903 are permitted provided the copyright notice and this notice are preserved.
ab5796a9
MB
15904
15905;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4