(popup_widget_loop): Add argument do_timers.
[bpt/emacs.git] / src / ChangeLog
CommitLineData
c3438661
JD
12004-11-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2
3 * xmenu.c (x_menu_wait_for_event): New function.
4 (popup_get_selection, popup_widget_loop): Call x_menu_wait_for_event
5 to handle timers.
df00f436
JD
6 (popup_widget_loop): Add argument do_timers.
7 (create_and_show_popup_menu, create_and_show_dialog): Pass 1 for
8 do_timers to popup_widget_loop.
c3438661
JD
9 (xmenu_show): Call XMenuActivateSetWaitFunction so that
10 x_menu_wait_for_event is called by XMenuActivate.
df00f436
JD
11 (create_and_show_popup_menu): Pass 1 for do_timers to
12 popup_get_selection.
c3438661 13
32e2fb04
SM
142004-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
15
16 * keymap.c (Fkeymap_prompt): Accept symbol keymaps.
17
0faf6806
KS
182004-11-09 Kim F. Storm <storm@cua.dk>
19
20 * xselect.c: Include <sys/types.h> and <unistd.h> (for getpid).
21 Fix various comments referring to XEvents instead of input events.
22 (x_queue_event): Fix format strings.
23 (x_stop_queuing_selection_requests): Likewise.
24
25 * xdisp.c (produce_image_glyph): Remove unused variable 'face_ascent'.
26 (pint2hrstr): Add extra braces to silence compiler.
27
28 * print.c (print_object): Fix format string.
29
30 * lread.c (read1): Fix next_char matching.
31
32 * lisp.h (Fdelete): Add EXFUN.
33 (replace_range_2): Add prototype.
34
35 * keyboard.c (read_avail_input): Remove unused variable 'discard'.
36
37 * intervals.h (NULL_INTERVAL_P): Add separate version when
38 ENABLE_CHECKING is not defined to silence compiler.
39 (compare_string_intervals): Add prototype.
40
41 * fringe.c (destroy_fringe_bitmap): Fix return type.
42 (Ffringe_bitmaps_at_pos): Remove unused var 'old_buffer'.
43
44 * emacs.c (Fdump_emacs): Fix format string.
45
46 * doc.c: Include <ctype.h>.
47 (Fsubstitute_command_keys): Remove unused variable 'firstkey'.
48
49 * data.c (store_symval_forwarding): Remove unused variables.
50
51 * callint.c (Fcall_interactively): Remove unused variable 'funcar'.
52
16bf4e32
JD
532004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
54
55 * Makefile.in (stamp-oldxmenu): If HAVE_GTK, don't add dependencies
56 to ${OLDXMENU}.
57
cdb805a9
KS
582004-11-09 Kim F. Storm <storm@cua.dk>
59
60 * process.c (Fmake_network_process): Remove kludge for interrupted
61 connects on BSD. If connect is interrupted, just close socket and
62 start over rather than sleeping and retry with same socket.
63
d87a9ab8 642004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
0faf6806 65
a8b16c80
JD
66 * .cvsignore: Add buildobj.lst.
67
d87a9ab8
JD
68 * doc.c: New variable Vbuild_files.
69 (Fsnarf_documentation): If Vbuild_files is nil, populate it with
70 file names from buildobh.lst. Only attach docstrings from files
71 that are in Vbuild_files.
72 (syms_of_doc): Defvar Vbuild_files.
73
74 * Makefile.in (SOME_MACHINE_OBJECTS): Add fringe.o, image.o
75 and w32*.o.
76 (temacs${EXEEXT}): Generate buildobj.lst when temacs is linked.
cdb805a9 77 (mostlyclean): rm buildobj.lst
d87a9ab8
JD
78
79 * makefile.w32-in ($(TEMACS)): Generate buildobj.lst when temacs
80 is linked.
81
b6709e77
KS
822004-11-09 Kim F. Storm <storm@cua.dk>
83
84 * fringe.c (update_window_fringes): Update fringe bitmaps if
85 cur and row ends_at_zv_p differs. If bitmaps of a row is updated,
86 also update previous row to get rid of misc. artifacts.
87
bae9677d
KS
882004-11-08 Kim F. Storm <storm@cua.dk>
89
90 * xdisp.c (fast_find_position): Fix start pos if header line present.
b7127aa8 91 (note_mouse_highlight): Clear mouse face if we move out of text area.
bae9677d 92
3f8ea68c
EZ
932004-11-08 Eli Zaretskii <eliz@gnu.org>
94
95 * editfns.c: Move #include "systime.h" before <sys/resource.h>.
96 Don't include <sys/time.h> explicitly.
97 Include <stdio.h> unconditionally, not just on MacOS.
98
a653f812
KH
992004-11-08 Kenichi Handa <handa@m17n.org>
100
101 * fontset.c (fontset_pattern_regexp): Cancel my previous change;
102 don't pay attention to '\' before '*'.
103 (fontset_pattern_regexp): Change the meaning of the second arg.
104 (Fnew_fontset): Call fs_query_fontset, not Fquery_fontset.
105 (check_fontset_name): Try NAME as literal at first, and if it
106 failes, try NAME as pattern.
107
c37caf9d
JD
1082004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
109
110 * emacs.c (Fdump_emacs): Only output warning on GNU/Linux.
111
b72915a7
AS
1122004-11-07 Andreas Schwab <schwab@suse.de>
113
114 * lisp.h: Declare Fmsdos_downcase_filename.
115 * dired.c: Don't declare Fmsdos_downcase_filename.
116 * fileio.c: Likewise.
117
238a44a8
JD
1182004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
119
120 * dosfns.c (Fdos_memget, Fdos_memput): Use integer variable offs in
121 comparisons with integers instead of Lisp_Object address.
122 (Fmsdos_set_keyboard): Declare argument allkeys.
123
124 * msdos.c (IT_set_frame_parameters): Use EQ, not ==, for Lisp_Object:s.
125
126 * dired.c: extern declare Fmsdos_downcase_filename on MSDOS to avoid
127 int/Lisp_Object mixup.
128
129 * fileio.c: Ditto.
130
31141c13
ST
1312004-11-06 Steven Tamm <steventamm@mac.com>
132
133 * editfns.c: Need to include sys/time.h before resource.h on darwin.
134
f28c1bd9
RS
1352004-11-06 Richard M. Stallman <rms@gnu.org>
136
137 * callint.c (Fcall_interactively): Avoid reusing EVENT for other data.
138
139 * xfaces.c (merge_named_face): GCPRO the face_name in the
140 named_merge_point struct that we make.
141 (merge_face_heights): Eliminate GCPRO arg. All callers changed.
142
143 * keyboard.c (command_loop_1): Change Vtransient_mark_mode
144 before deciding whether to inactivate mark.
145
59dede22
EZ
1462004-11-06 Lars Brinkhoff <lars@nocrew.org>
147
148 * config.in: Regenerate (add HAVE_GETRUSAGE).
6159c232
EZ
149 * editfns.c (Fget_internal_run_time): New function.
150 (syms_of_data): Defsubr it.
151 * fns.c (sxhash): As far as possible, merge calculation of
152 hash code for symbols and strings.
59dede22 153
27540e81
EZ
1542004-11-06 Eli Zaretskii <eliz@gnu.org>
155
156 * frame.c (syms_of_frame): Fix the example in the doc string.
157
df470e3b
JD
1582004-11-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
159
160 * eval.c (Feval): Remove check for INPUT_BLOCKED_P.
161
162 * xmenu.c (popup_get_selection, create_and_show_popup_menu)
163 (create_and_show_dialog): Revert change from 2004-10-31.
bae9677d 164
4cc8522c
LT
1652004-11-05 Luc Teirlinck <teirllm@auburn.edu>
166
167 * macros.c (syms_of_macros) <defining-kbd-macro>: Doc fix.
168
d4a42098
KS
1692004-11-05 Kim F. Storm <storm@cua.dk>
170
a8490886
KS
171 * print.c (print_object): Print Lisp_Misc_Save_Value objects.
172
d4a42098
KS
173 * fileio.c (Ffile_modes): Doc fix.
174 (auto_save_1): Check for Ffile_modes nil value.
175
36a2b04c
KS
1762004-11-05 Kim F. Storm <storm@cua.dk>
177
178 * xselect.c (struct selection_event_queue, selection_queue)
179 (x_queue_selection_requests, x_queue_event)
180 (x_start_queuing_selection_requests)
181 (x_stop_queuing_selection_requests): Add new queue for selection
182 input events to replace previous XEvent queue in xterm.c.
183 (queue_selection_requests_unwind): Adapt to new queue.
32e2fb04
SM
184 (x_reply_selection_request): Adapt to new queue.
185 Unexpect wait_object in case of x errors (memory leak).
36a2b04c
KS
186 (x_handle_selection_request, x_handle_selection_clear): Make static.
187 (x_handle_selection_event): New function. May queue selection events.
188 (wait_for_property_change_unwind): Use save_value instead of cons.
189 Clear property_change_reply_object.
190 (wait_for_property_change): Abort if already waiting.
191 Use save_value instead of cons for unwind data.
192 (x_handle_property_notify): Skip events already arrived, but don't
193 free them, as "arrived" field is checked by wait_for_property_change,
194 and it will be freed by unwind or explicit unexpect_property_change.
195 (x_get_foreign_selection): Add to new queue.
196 (receive_incremental_selection): Don't unexpect wait_object when done
197 as it has already been freed by previous wait_for_property_change.
198
199 * xterm.h (x_start_queuing_selection_requests)
200 (x_stop_queuing_selection_requests, x_handle_selection_request)
201 (x_handle_selection_clear): Remove prototypes.
202 (x_handle_selection_event): Add prototype.
203
204 * xterm.c (handle_one_xevent): Don't queue X selection events
205 here, it may be too late if we start queuing after we have already
206 stored some selection events into the kbd buffer.
207 (struct selection_event_queue, queue, x_queue_selection_requests)
208 (x_queue_event, x_unqueue_events, x_start_queuing_selection_requests)
209 (x_stop_queuing_selection_requests): Remove/move to xselect.c.
210 (x_catch_errors_unwind): Block input around final XSync.
211
212 * keyboard.h (kbd_buffer_unget_event): Add prototype.
213
214 * keyboard.c (kbd_buffer_store_event_hold): Remove obsolete code.
215 (kbd_buffer_unget_event): New function.
216 (kbd_buffer_get_event, swallow_events): Combine SELECTION events
217 and use x_handle_selection_event.
218 (mark_kboards): Don't mark x and y of SELECTION_CLEAR_EVENT.
219
9c3ad9e1
JD
2202004-11-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
221
222 * xselect.c (TRACE3): New debug macro.
223 (x_reply_selection_request): Use it.
224 (receive_incremental_selection): In call to TRACE0, the name of
225 a symbol is in xname.
226
a33b89de
KS
2272004-11-05 Kim F. Storm <storm@cua.dk>
228
229 * fontset.c (fontset_pattern_regexp): Use unsigned char.
230
a872928c
JD
2312004-11-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
232
88208bb8
JD
233 * fileio.c (Fnext_read_file_uses_dialog_p): New function.
234
0a4f23f3
JD
235 * gtkutil.h: Declare use_old_gtk_file_dialog.
236
237 * gtkutil.c: Make use_old_gtk_file_dialog non-static.
32e2fb04 238 (xg_initialize): Move DEFVAR_BOOL for use_old_gtk_file_dialog ...
0a4f23f3
JD
239 * xfns.c (syms_of_xfns): ... to here.
240
a872928c
JD
241 * gtkutil.c (xg_get_file_with_chooser): Expand DEFAULT_FILENAME if
242 it doesn't start with /.
243
b912921c
KH
2442004-11-04 Kenichi Handa <handa@m17n.org>
245
246 * fontset.c (fontset_pattern_regexp): If '*' is preceded by '\',
247 treat it as a literal character.
248
c524d9a6
KS
2492004-11-03 Kim F. Storm <storm@cua.dk>
250
251 * .gdbinit (ppt): New function.
252
8cfd0f36
JD
2532004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
254
a11e1dce
JD
255 * xterm.c (x_window_to_scroll_bar): Only call
256 xg_get_scroll_id_for_window if toolkit scroll bars are used.
257
8cfd0f36
JD
258 * gtkutil.c (xg_get_file_with_chooser): Use GTK_STOCK_OK instead
259 of save.
260
a93563fd
AS
2612004-11-02 Andreas Schwab <schwab@suse.de>
262
263 * window.c (Fscroll_right): Fix last change.
264
2b2d59d8
KS
2652004-11-02 Kim F. Storm <storm@cua.dk>
266
267 * Makefile.in (callproc.o): Depend on blockinput.h atimer.h systime.h.
268
2692004-11-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
270
271 * callproc.c (Fcall_process): Block input around vfork.
272
ca28104d
KS
2732004-11-02 Kim F. Storm <storm@cua.dk>
274
275 * eval.c (Fcalled_interactively_p): Rename from Fcall_interactive_p.
276 (syms_of_eval): Defsubr it.
277
29bb7127
RS
2782004-11-02 Richard M. Stallman <rms@gnu.org>
279
280 * insdel.c (replace_range_2): New function.
281
282 * casefiddle.c (casify_region): Handle changes in byte-length
283 using replace_range_2.
284
285 * emacs.c (USAGE3): Delete --horizontal-scroll-bars, -hb.
286
b6189c3b 287 * xdisp.c (back_to_previous_visible_line_start):
29bb7127
RS
288 Subtract 1 from pos when checking previous newline for invisibility.
289
290 * window.c (window_scroll_pixel_based): Update preserve_y
291 for header line if any.
292 (Fscroll_left, Fscroll_right): Don't call interactive_p;
293 use a new second argument instead.
294
295 * eval.c (Fcall_interactive_p): New function.
296 (interactive_p): Don't test INTERACTIVE here.
297 (Finteractive_p): Doc fix.
298
299 * eval.c (Feval): Abort if INPUT_BLOCKED_P.
300
b6189c3b 3012004-11-02 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
a3fe4aaf
JR
302
303 * w32fns.c (w32_font_match): Use fast_string_match_ignore_case for
b6189c3b 304 comparing font names.
a3fe4aaf 305
2a00cdb4
JD
3062004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
307
f9d64bb3
JD
308 * fileio.c (Fread_file_name): Pass Qt as fifth parameter to
309 Fx_file_dialog if only directories should be read.
310
311 * lisp.h: Fx_file_dialog takes 5 parameters.
312
32e2fb04
SM
313 * xfns.c (Fx_file_dialog): Both Motif and GTK version:
314 Add parameter only_dir_p.
f9d64bb3
JD
315 In Motif version, don't put DEFAULT_FILENAME in filter part of the
316 dialog, just text field part. Do not add DEFAULT_FILENAME
317 to list of files if it isn't there.
318 In GTK version, pass only_dir_p parameter to xg_get_file_name.
319
32e2fb04
SM
320 * macfns.c (Fx_file_dialog): Add parameter only_dir_p.
321 Check only_dir_p instead of comparing prompt to "Dired". When using
f9d64bb3
JD
322 a save dialog, add option kNavDontConfirmReplacement, change title
323 to "Enter name", change text for save button to "Ok".
324
32e2fb04
SM
325 * w32fns.c (Fx_file_dialog): Add parameter only_dir_p.
326 Check only_dir_p instead of comparing prompt to "Dired".
f9d64bb3
JD
327
328 * gtkutil.c (xg_get_file_with_chooser)
329 (xg_get_file_with_selection): New functions, only defined ifdef
330 HAVE_GTK_FILE_CHOOSER_DIALOG_NEW and HAVE_GTK_FILE_SELECTION_NEW
331 respectively.
332 (xg_get_file_name): Add parameter only_dir_p.
333 Call xg_get_file_with_chooser or xg_get_file_with_selection
334 depending on HAVE_GTK_FILE* and the value of use_old_gtk_file_dialog.
335 (xg_initialize): New DEFVAR_BOOL use_old_gtk_file_dialog.
336
337 * gtkutil.h (xg_get_file_name): Add parameter only_dir_p.
338
2a00cdb4
JD
339 * config.in: Rebuild (added HAVE_GTK_FILE_*).
340
f6749d5d
KS
3412004-11-01 Kim F. Storm <storm@cua.dk>
342
32e2fb04
SM
343 * process.c (connect_wait_mask, num_pending_connects):
344 Only declare and use them if NON_BLOCKING_CONNECT is defined.
bad49fc7 345 (init_process): Initialize them if NON_BLOCKING_CONNECT defined.
f6749d5d
KS
346 (IF_NON_BLOCKING_CONNECT): New helper macro.
347 (wait_reading_process_output): Only declare and use local vars
348 Connecting and check_connect when NON_BLOCKING_CONNECT is defined.
f6749d5d 349
1a99fe1a
JR
3502004-11-01 Andy Petrusenco <Igrek@star-sw.com> (tiny change)
351
352 * w32term.c (x_scroll_run): Delete region objects after use.
353
fcdb28b4
JD
3542004-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
355
495ef86b
JD
356 * xmenu.c: Add prototypes for forward function declarations.
357 (popup_get_selection): Remove parameter do_timers, remove call to
358 timer_check.
32e2fb04
SM
359 (create_and_show_popup_menu, create_and_show_dialog):
360 Remove parameter do_timers from call to popup_get_selection.
495ef86b 361
12e6566a
JD
362 * xdisp.c (update_tool_bar): Pass a copy of f->tool_bar_items to
363 tool_bar_items and assign the result to f->tool_bar_items if
364 not equal. Move BLOCK/UNBLOCK_INPUT from around call to
365 tool_bar_items to assignment of result.
366
fcdb28b4
JD
367 * atimer.c (alarm_signal_handler): Do not call set_alarm if
368 pending_atmers is non-zero.
369
1a1a0c4c
KS
3702004-10-31 Kim F. Storm <storm@cua.dk>
371
372 * dispnew.c (margin_glyphs_to_reserve): Don't use ncols_scale_factor.
373
a36f1680
JW
3742004-10-28 Will <will@glozer.net>
375
376 * macterm.c: allow user to assign key modifiers to the Mac Option
377 key via a 'mac-option-modifier' variable.
378
32e2fb04 3792004-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
2d586478
SM
380
381 * xselect.c (Vx_lost_selection_functions, Vx_sent_selection_functions):
382 Rename from Vx_lost_selection_hooks and Vx_sent_selection_hooks.
383 (x_handle_selection_request, x_handle_selection_clear)
384 (x_clear_frame_selections, syms_of_xselect): Adjust accordingly.
385
4f71c13f
RS
3862004-10-28 Richard M. Stallman <rms@gnu.org>
387
388 * w32fns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
389
390 * xfns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
391
068f3848
SM
3922004-10-27 Stefan Monnier <monnier@iro.umontreal.ca>
393
394 * syntax.c (scan_sexps_forward): Give precedence to a 2-char
395 comment-starter over a 1-char one.
396
4660a9e3
RS
3972004-10-27 Richard M. Stallman <rms@gnu.org>
398
399 * xdisp.c (get_next_display_element): In mode lines,
400 treat newline and tab like other control characters.
401
402 * editfns.c (Fmessage): Doc fix.
403
404 * indent.c (vmotion): When moving up, check the newline before.
405 Make prevline an int, not a Lisp_Object.
406
233f3db6
KS
4072004-10-27 Kim F. Storm <storm@cua.dk>
408
409 * editfns.c (Fformat): Allocate discarded table with SAFE_ALLOCA.
410 Only allocate info and discarded tables once.
411
412 * lisp.h (USE_SAFE_ALLOCA): Add and init sa_must_free integer.
413 (SAFE_ALLOCA, SAFE_ALLOCA_LISP): Increment it when malloc is used.
414 (SAFE_FREE): Test it to determine if we need to unwind to free.
415 Remove size arg. All users changed.
416 (SAFE_FREE_LISP) Remove. All users changed to use SAFE_FREE.
417
1442465d
JD
4182004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
419
420 * gtkutil.c: Put empty line between comment and function body.
068f3848
SM
421 (xg_destroy_widgets): Rename from remove_from_container.
422 Just destroy all widgets in list. Argument wcont removed.
1442465d
JD
423 (xg_update_menubar, xg_update_submenu): Call xg_destroy_widgets
424 instead of remove_from_container.
425 (xg_display_close, xg_create_tool_bar, update_frame_tool_bar)
426 (free_frame_tool_bar): Add comment.
427
428 * xfns.c (xic_create_xfontset): Check that FRAME_XIC_BASE_FONTNAME
429 is not NULL before strcmp.
430
c8636435
KS
4312004-10-26 Kim F. Storm <storm@cua.dk>
432
433 * callint.c (Fcall_interactively): Add 'U' code to get the
434 up-event discarded by a previous 'k' or 'K' argument.
435
5629f29b
DK
4362004-10-26 David Kastrup <dak@gnu.org>
437
438 * buffer.c (syms_of_buffer): Fix a few typos.
439
4f2f546e
JD
4402004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
441
442 * xsmfns.c: Put empty line between comment and function body.
443 Use two spaces before comment end.
444
fc1062f5
KH
4452004-10-25 Kenichi Handa <handa@m17n.org>
446
447 * fontset.c (fontset_pattern_regexp): Optimize for the case that
448 PATTERN is full XLFD.
449
be13f5e5
KH
4502004-10-24 Kenichi Handa <handa@m17n.org>
451
452 * regex.h (enum reg_errcode_t): New value REG_ERANGEX.
453
454 * regex.c (re_error_msgid): Add an entry for REG_ERANGEX.
455 (regex_compile): Return REG_ERANGEX if appropriate.
456
d0ee2ed3
KH
4572004-10-22 Kenichi Handa <handa@m17n.org>
458
459 * editfns.c (Ftranslate_region_internal): New function.
460 (syms_of_editfns): Defsubr it.
461
63ea8ea5
JD
4622004-10-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
463
464 * xfns.c (xic_create_xfontset): Initialize missing_list to NULL.
465
c27ed90a
JD
4662004-10-21 K\e,Aa\e(Broly L\e$,1 q\e(Brentey <lorentey@elte.hu>
467
068f3848
SM
468 * xterm.h (x_output): New member `xic_base_fontname'.
469 (FRAME_XIC_BASE_FONTNAME): New macro.
470 (xic_free_xfontset): Declare.
c27ed90a 471
068f3848
SM
472 * xfns.c (xic_create_xfontset): Share fontsets between frames
473 based on base_fontname.
474 (xic_free_xfontset): New function.
475 (free_frame_xic): Use it.
476 (xic_set_xfontset): Ditto.
c27ed90a 477
068f3848 478 * xterm.c (xim_destroy_callback): Ditto.
c27ed90a
JD
479
480
59508699
JR
4812004-10-20 B. Anyos <banyos@freemail.hu> (tiny change)
482
483 * w32term.c (x_draw_glyph_string): Use overline_color for overlines.
484
dede2792
JD
4852004-10-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
486
3aca2078
JD
487 * xterm.h (XSync): If USE_GTK, define XSync as process_all and then
488 XSync.
489
dede2792
JD
490 * emacs.c (my_heap_start, heap_bss_diff, MAX_HEAP_BSS_DIFF):
491 New variables and constant.
492 (main): Calculate heap_bss_diff. If we are dumping and the
493 heap_bss_diff is greater than MAX_HEAP_BSS_DIFF, set PER_LINUX32
494 and exec ourself again.
495 (Fdump_emacs): If heap_bss_diff is greater than MAX_HEAP_BSS_DIFF
496 print a warning.
497
498 * lastfile.c: Make my_endbss and my_endbss_static available on all
499 platforms.
500
501 * Makefile.in (RUN_TEMACS): Remove @SETARCH@.
502 * config.in (HAVE_PERSONALITY_LINUX32): Regenerate.
503
1dc5ba01
LT
5042004-10-19 Luc Teirlinck <teirllm@auburn.edu>
505
506 * data.c (Flocal_variable_if_set_p): Doc fix.
507
950090be
JR
5082004-10-19 Jason Rumney <jasonr@gnu.org>
509
510 * w32.c (init_environment): Set emacs_dir correctly when running
511 emacs from the build directory.
512
8550b998
RS
5132004-10-19 Richard M. Stallman <rms@gnu.org>
514
515 * editfns.c (Fdelete_and_extract_region):
516 If region is empty, return null string.
517
08dedea6
JD
5182004-10-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
519
1dc5ba01 520 * gtkutil.h (xg_update_scrollbar_pos): Remove arguments real_left
08dedea6 521 and canon_width.
068f3848 522 (xg_frame_cleared): Remove.
08dedea6 523
068f3848
SM
524 * gtkutil.c (xg_frame_cleared, xg_fixed_handle_expose)
525 (xg_find_top_left_in_fixed): Remove.
08dedea6
JD
526 (xg_create_scroll_bar): Put an event box widget between
527 the scroll bar widget and the edit widget.
528 (xg_show_scroll_bar): Show the parent widget (the event box).
529 (xg_remove_scroll_bar): Destroy parent (the event box) also.
530 (xg_update_scrollbar_pos): Remove arguments real_left and canon_width.
531 Move the parent (the event box) widget inside the fixed widget.
532 Move window clear to xterm.c.
533
068f3848 534 * gtkutil.h (xg_frame_cleared): Remove.
1dc5ba01 535
08dedea6 536 * xterm.c (x_clear_frame): Remove call to xg_frame_cleared
068f3848
SM
537 (x_scroll_bar_create, XTset_vertical_scroll_bar):
538 Remove arguments left and width to xg_update_scrollbar_pos.
08dedea6
JD
539 (XTset_vertical_scroll_bar): Do x_clear_area for USE_GTK also.
540
8550b998 5412004-10-19 Kenichi Handa <handa@m17n.org>
e3e55463
KS
542
543 * xdisp.c (display_mode_element): Fix display of wide chars.
e3e55463 544
84338890
JD
5452004-10-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
546
547 * gtkutil.c (xg_update_scrollbar_pos): Change XClearWindow to
548 gdk_window_clear and move gdk_window_process_all_updates after
549 clear so events are sent to the X server in correct order.
550
6e1b0d8c
KH
5512004-10-18 Kenichi Handa <handa@m17n.org>
552
553 * fontset.c (fs_load_font): Use fast_string_match_ignore_case for
554 comparing font names.
8550b998 555 (fs_query_fontset): Use fast_string_match for comparing fontset names.
6e1b0d8c
KH
556 (list_fontsets): Likewise.
557
558 * search.c (fast_string_match_ignore_case): New function.
559
560 * lisp.h (fast_string_match_ignore_case): Extern it.
561
345e75a8
KS
5622004-10-17 Kim F. Storm <storm@cua.dk>
563
564 * xdisp.c (overlay_arrow_at_row): Return overlay string rather
565 than bitmap if there is not left fringe.
566 (get_overlay_arrow_glyph_row): Also used on windows system.
567 (display_line): Display overlay string if no left fringe.
568
be13cbb7
JR
5692004-10-16 Jason Rumney <jasonr@gnu.org>
570
571 * w32fns.c (w32_font_match): Encode font name being matched.
572
c2e2ede7
RS
5732004-10-16 Richard M. Stallman <rms@gnu.org>
574
575 * window.c (Fspecial_display_p): Doc fix.
576
3584d95d
SM
5772004-10-15 Stefan <monnier@iro.umontreal.ca>
578
579 * doc.c (Fsubstitute_command_keys): Fix remap-handling.
580 Don't ignore menus, because where-is-internal already does it for us.
581
699a0392
KS
5822004-10-15 Kim F. Storm <storm@cua.dk>
583
b3c7a89b
KS
584 * xdisp.c (redisplay_window): Only update fringes and vertical
585 border on window frames.
699a0392 586
4e382b0f
AS
5872004-10-14 Andreas Schwab <schwab@suse.de>
588
589 * m/ia64.h (DATA_SEG_BITS): Don't define.
590
329a7be2
KS
5912004-10-14 Kim F. Storm <storm@cua.dk>
592
593 * xterm.h: Include Xutil.h after keysym.h to work around bug
dbb37962 594 in some X versions.
329a7be2 595
982241b1
SM
5962004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
597
598 * fns.c (map_char_table): Add missing gcpros.
599
9238467d
SM
6002004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
601
602 * keymap.c (get_keymap): An autoload form is not a keymap.
603
604 * textprop.c (syms_of_textprop): Make `syntax-table' nonsticky.
605
4440e3ca
KS
6062004-10-13 Kim F. Storm <storm@cua.dk>
607
7cfdabde
KS
608 * callproc.c (Fcall_process): Simplify handling of display arg.
609 Resume `display_on_the_fly' once a coding system is determined.
610
4440e3ca
KS
611 * xdisp.c (redisplay_preserve_echo_area): Fix last change.
612
1c8dec6a
KS
6132004-10-12 Kim F. Storm <storm@cua.dk>
614
615 * xdisp.c (redisplay_preserve_echo_area): Flush display in case
616 caller, such as call-process, is not going to poll for input.
617 (calc_line_height_property): Handle case where it->object is nil.
618
619 * xterm.c (x_redisplay_interface): Fix flush_display_optional.
620
170b174c
KH
6212004-10-12 Kenichi Handa <handa@m17n.org>
622
9238467d
SM
623 * xdisp.c (get_next_display_element):
624 If unibyte_display_via_language_environment is zero, display 8-bit
170b174c
KH
625 chars in octal in unibyte buffer.
626
b583964c
KS
6272004-10-12 Kim F. Storm <storm@cua.dk>
628
629 * doc.c (Fsubstitute_command_keys): Ignore remappings unless there
630 are no ordinary bindings.
631
29fabd8c
JD
6322004-10-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
633
9238467d 634 * xfns.c (syms_of_xfns): Defsubr x-file-dialog for GTK also.
29fabd8c 635
c3f4c690
ST
6362004-10-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
637
9238467d
SM
638 * macterm.c (x_raise_frame): Add BLOCK_INPUT around SelectWindow.
639 (x_lower_frame): Add BLOCK_INPUT around SendBehind.
c3f4c690 640 (make_mac_frame): Add BLOCK_INPUT around the making of a
9238467d
SM
641 terminal frame.
642 (mac_initialize): Add BLOCK_INPUT around carbon initialization.
643 * macgui.h (mktime): Use emacs_mktime.
c3f4c690
ST
644 * macfns.c (Fx_file_dialog): Add BLOCK_INPUT around more code.
645 Make a cancel file-open dialog be like C-g.
9238467d
SM
646 * mac.c (mktime): Use emacs_mktime.
647 (Fdo_applescript): Add BLOCK_INPUT around do_applescript.
648 (Fmac_paste_function): Add better error handling for carbon cut/paste.
c3f4c690 649
9688f9eb
KS
6502004-10-10 Kim F. Storm <storm@cua.dk>
651
652 * keyboard.c (timer_resume_idle): New function to resume idle
653 timer without resetting timers on the idle list.
654 (read_char): Use timer_resume_idle. Remove local var last_idle_start.
655 (timer_start_idle, timer_stop_idle): Declare static.
656 (read_key_sequence): Use timer_resume_idle instead of timer_start_idle.
657
658 * keyboard.h (timer_start_idle, timer_stop_idle): Remove prototypes.
659
f7f3a65f
ST
6602004-10-08 Steven Tamm <steventamm@mac.com>
661
9238467d 662 * config.in (HAVE_MALLOC_MALLOC_H): Regenerate.
f7f3a65f 663 * macterm.c (mac_check_for_quit_char): Remove warning for using
9238467d 664 NULL where 0 should be used.
f7f3a65f
ST
665 * unexmacosx.c: Use malloc/malloc.h on Tiger instead of
666 objc/malloc.h
9238467d 667 * mac.c: Include time.h for Tiger compatibility.
f7f3a65f 668
3c7d999a
KS
6692004-10-07 Kim F. Storm <storm@cua.dk>
670
671 * xdisp.c (redisplay_window): Fix flicker on vertical line between
672 windows. Update vertical line after drawing window fringes, but
673 only if actually drawing any bitmaps--or there is no fringe.
674
675 * xterm.c (x_update_window_end): Likewise.
676 * macterm.c (x_update_window_end): Likewise.
677 * w32term.c (x_update_window_end): Likewise.
678
679 * fringe.c (draw_window_fringes): Return value now indicates if
680 any fringe bitmaps were redrawn (or there are no fringes).
681
682 * dispextern.h (draw_window_fringes): Update prototype.
683
bf06c82f
ST
6842004-10-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
685
686 * macfns.c (mac_get_window_bounds): Add extern.
687 (x_real_positions): Use mac_get_window_bounds.
688
689 * macmenu.c (update_submenu_strings): Apply 2004-09-07 change for
690 xmenu.c (YAILOM).
3c7d999a 691
bf06c82f
ST
692 * macterm.c [!MAC_OSX]: Include Windows.h.
693 (front_emacs_window): Rename from mac_front_window. All uses
694 changed. Return the frontmost non-tooltip emacs window.
695 (mac_get_window_bounds): New function.
696 (x_calc_absolute_position): Use the difference of width and height
697 between the inner and outer window.
698 (x_set_offset): Specify window position by the coordinae of the
699 outer window. Adjust the position if the title bar is completely
700 outside the screen.
701 (app_is_suspended, app_sleep_time): Remove unused variables.
702 (do_app_resume, do_app_suspend): Remove their contents because
703 window-activate/deactivate events will do the job.
704 (do_zoom_window): Remove unused variables. Make compliant to the
705 standard way of zooming. Set f->left_pos and f->top_pos.
706 (XTread_socket): Don't use argument `expected'. Don't use
707 FrontWindow to determine the clicked window. Exclude unprocessed
708 mouseUp cases in the early stage. Add parentheses to fix operator
709 precedence.
710 (XTread_socket) [TARGET_API_MAC_CARBON]: Don't specify drag area.
711
712
4cbbf6b7 7132004-10-05 Jan Dj\e,Ad\e(Brv. <jan.h.d@swipnet.se>
d8b43276
JD
714
715 * config.in: Regenerate.
716
717 * Makefile.in (RUN_TEMACS): Check HAVE_RANDOM_HEAPSTART instead of
718 HAVE_EXECSHIELD.
719
b90ee8b5
JD
7202004-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
721
722 * xterm.c (x_find_modifier_meanings): Ignore any Super or Hyper for
723 a row if Alt or Meta has been found for that row. Also stop scanning
724 for Keysyms for that row.
725
904db1a2
KS
7262004-10-04 Kim F. Storm <storm@cua.dk>
727
0207b8ad
KS
728 * fringe.c (Ffringe_bitmaps_at_pos): Change return value from cons
729 to list. Include overlay arrow bitmap in return value.
730
25f7220c
KS
731 * xterm.c (XTset_vertical_scroll_bar): Improve handling of scroll
732 bars with fractional column width. If scroll bar separates two
733 windows, move it towards the window it belongs to. Only update
734 the padding area below the scroll bar widget when necessary,
735 i.e. when scroll bar widget is created, moved, or resized.
736
562020fe
KS
737 * xdisp.c (define_frame_cursor1): Do not change frame cursor
738 while tracking/dragging mouse.
739 (x_draw_vertical_border): Do not draw line if frame has scroll bars.
740
37e34af7
KS
741 * window.c (coordinates_in_window): Relax check for cursor
742 on vertial border between mode lines.
743 (Fset_window_fringes): Do not allow negative widths.
744 (Fset_window_scroll_bars): Likewise.
745
904db1a2
KS
746 * .gdbinit (pp): Shorthand for p ARG + pr.
747 (ff): New command: flush frame updates (X only).
748
38fe4f64
MA
7492004-10-03 Michael Albinus <michael.albinus@gmx.de>
750
751 * fileio.c (auto_save_1) Call Ffile_modes for remote files.
752
9de36315
KH
7532004-09-30 Kenichi Handa <handa@m17n.org>
754
07c381ad 755 * process.c (send_process): Free composition data.
9de36315 756
07c381ad 757 * fileio.c (Finsert_file_contents): Free composition data.
9de36315
KH
758
759 * coding.c (code_convert_region): Don't skip ASCIIs if there are
07c381ad
KH
760 compositions to encode.
761 (encode_coding_string): Likewise. Free composition data.
762
b6189c3b 7632004-09-30 Florian Weimer <fw@deneb.enyo.de>
07c381ad
KH
764
765 * coding.c (code_convert_region): Free composition data.
9de36315 766
f2a54fbc
KS
7672004-09-29 Kim F. Storm <storm@cua.dk>
768
dc5d6435
KS
769 * fringe.c: Remove limit on number of bitmaps.
770 (fringe_bitmaps, fringe_faces): Change to pointers.
771 (max_fringe_bitmaps): New var.
772 (Fdefine_fringe_bitmap): Expand fringe_bitmaps and fringe_faces.
773 (init_fringe): Allocate fringe_bitmaps and fringe_faces.
774
775 * dispextern.h (FRINGE_ID_BITS): Increase to 16 bits (64K bitmaps).
776 (struct glyph_row): Reorder fringe_bitmap related fields.
777 (struct it): Likewise.
778
779 * w32term.c (fringe_bmp): Change to pointer.
780 (max_fringe_bmp): New var.
781 (w32_define_fringe_bitmap): Expand fringe_bmp.
782 (w32_draw_fringe_bitmap): Check max_fringe_bmp.
783 (w32_destroy_fringe_bitmap): Likewise.
784
7852004-09-29 Kim F. Storm <storm@cua.dk>
786
787 * fringe.c: Simplify last change.
f2a54fbc
KS
788 (lookup_fringe_bitmap): New function.
789 (valid_fringe_bitmap_p, resolve_fringe_bitmap): Remove.
790 (Fdestroy_fringe_bitmap): Use lookup_fringe_bitmap.
791 Keep standard bitmaps in Vfringe_bitmaps.
792 (Fdefine_fringe_bitmap): Use lookup_fringe_bitmap.
793 (Fset_fringe_bitmap_face): Likewise.
794
795 * dispextern.h (lookup_fringe_bitmap): Add prototype.
796 (valid_fringe_bitmap_p): Remove prototype.
797
798 * xdisp.c (handle_single_display_prop): Use lookup_fringe_bitmap.
799
841a8bca
KS
8002004-09-29 Kim F. Storm <storm@cua.dk>
801
1f2da365
KS
802 * fringe.c (destroy_fringe_bitmap, init_fringe_bitmap)
803 (w32_init_fringe, w32_reset_fringes): Fix bootstrap (NULL rif).
804
841a8bca
KS
805 * dispextern.h (valid_fringe_bitmap_p): Fix prototype.
806
807 * fringe.c (Vfringe_bitmaps): New variable.
808 (syms_of_fringe): DEFVAR_LISP it.
809 (valid_fringe_bitmap_p): Rename from valid_fringe_bitmap_id_p.
810 Change arg to Lisp_Object and fail if not an integer.
811 (get_fringe_bitmap_name, resolve_fringe_bitmap)
812 (destroy_fringe_bitmap): New functions.
9238467d
SM
813 (Fdestroy_fringe_bitmap): Change arg to bitmap symbol.
814 Use destroy_fringe_bitmap. Remove symbol from Vfringe_bitmaps and
841a8bca
KS
815 clear its fringe property.
816 (init_fringe_bitmap): Use destroy_fringe_bitmap instead of
817 Fdestroy_fringe_bitmap.
818 (Fdefine_fringe_bitmap): Add BITMAP arg specifying new or existing
819 bitmap symbol; remove WHICH arg. Add symbol to Vfringe_bitmaps
820 and set fringe property. Signal error if no free slots.
821 (Fset_fringe_bitmap_face): Change arg to bitmap symbol.
822 (Ffringe_bitmaps_at_pos): Return bitmap symbols instead of numbers.
823
824 * xdisp.c (handle_single_display_prop): Fringe bitmaps are now
825 symbols with a fringe property.
826
4d965590
KS
8272004-09-27 Kim F. Storm <storm@cua.dk>
828
829 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>:
830 Doc fix. Format may now be a symbol or alist, not a cons.
831
832 * fringe.c (update_window_fringes): Handle new formats of
833 indicate-buffer-boundaries (symbol or alist). No longer
834 allow a simple cons.
835 (Ffringe_bitmaps_at_pos): Use nil value for no bitmap.
836
e888c2b3
JD
8372004-09-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
838
9238467d 839 * config.in: Rebuild.
e888c2b3 840
83f1cb94
JD
8412004-09-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
842
843 * config.in: Rebuild.
844
dd3b1d60 845 * Makefile.in: Run setarch i386 ./temacs if exec-shield is present.
83f1cb94 846
2c51754c
SM
8472004-09-18 Stefan Monnier <monnier@iro.umontreal.ca>
848
849 * xterm.c (x_term_init): Work around a bug in some X servers.
850
3df5f8aa
RS
8512004-09-18 Richard M. Stallman <rms@gnu.org>
852
557ca2c1
RS
853 * buffer.c (syms_of_buffer) <default-major-mode>: Doc fix.
854
3df5f8aa
RS
855 * xdisp.c (try_window_reusing_current_matrix):
856 Handle the case where we reach the old displayed text,
857 out of sync with the old line boundary.
858
9238467d 8592004-09-14 Stefan Monnier <monnier@iro.umontreal.ca>
4b70e2c9
SM
860
861 * fileio.c (Finsert_file_contents): Fix case of replacement in a
862 narrowed buffer.
863
bfa02563
KS
8642004-09-14 Kim F. Storm <storm@cua.dk>
865
a25fe164
KS
866 * puresize.h (PURESIZE_RATIO): Define based on BITS_PER_EMACS_INT.
867
bfa02563
KS
868 * xfaces.c (Qface_no_inherit): New var.
869 (syms_of_xfaces): Intern and staticpro it.
870 (Finternal_make_lisp_face, Finternal_set_lisp_face_attribute)
871 (Finternal_copy_lisp_face, update_face_from_frame_parameter):
872 Don't increment face_change_count when face has non-nil
873 face-no-inherit property.
874
126f9c02
SM
8752004-09-13 Stefan Monnier <monnier@iro.umontreal.ca>
876
892a8eb5
SM
877 * bytecode.c (BYTE_CODE_QUIT): Add missing AFTER_POTENTIAL_GC.
878 (Fbyte_code): Remove dead code after `wrong_type_argument'.
879
126f9c02 880 * alloc.c (Fgarbage_collect): Mark keyboards, gtk data, and specpdl
9238467d 881 before doing the mark_stack_check_gcpros since they're not on the stack.
126f9c02 882
c0ad3b38
KS
8832004-09-12 Kim F. Storm <storm@cua.dk>
884
885 * editfns.c (Fformat): Handle format strings with multiple text
886 properties. Reverse text property list from the format string,
887 so the positions are in increasing order.
888
844fc085
JD
8892004-09-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
890
891 * xselect.c (x_reply_selection_request): XSync and UNBLOCK before
892 x_uncatch_errors so that possible protocol errors are delivered.
893
b106731c
EZ
8942004-09-10 Eli Zaretskii <eliz@gnu.org>
895
21065c92
EZ
896 * Makefile.in (msdos.o): Depend on buffer.h, commands.h, and
897 blockinput.h.
898 (dosfns.o): Depend on blockinput.h, window.h, dispextern.h,
899 charset.h, and coding.h
9238467d 900 (w16select.o): Depend on buffer.h, charset.h, coding.h, and composite.h.
21065c92
EZ
901 (term.o): Depend on window.h and keymap.h.
902 (abbrev.o): Depend on syntax.h.
903 (callint.o): Depend on keymap.h.
904 (casefiddle.o): Depend on charset.h and keymap.h.
905 (category.o): Depend on keymap.h.
906 (coding.o): Depend on dispextern.h.
907 (cmds.o): Depend on keyboard.h and keymap.h.
908 (dispnew.o): Depend on indent.h and intervals.h.
909 (doc.o): Depend on keymap.h.
910 (editfns.o): Depend on frame.h.
911 (emacs.o): Depend on dispextern.h.
912 (fileio.o): Don't depend on ccl.h.
913 (filelock.o): Depend on charset.h and coding.h.
914 (frame.o): Depend on w32term.h and macterm.h.
915 (insdel.o): Depend on region-cache.h.
916 (keyboard.o): Depend on keymap.h, w32term.h, and macterm.h.
917 (minibuf.o): Depend on $(INTERVALS_SRC) and keymap.h.
918 (search.o): Depend on $(INTERVALS_SRC).
919 (syntax.o): Depend on keymap.h, regex.h, and $(INTERVALS_SRC).
920 (window.o): Depend on keymap.h, blockinput.h, $(INTERVALS_SRC),
921 xterm.h, w32term.h, and macterm.h.
922 (xdisp.o): Depend on keyboard.h, $(INTERVALS_SRC), xterm.h,
923 w32term.h, and macterm.h.
924 (xfaces.o): Depend on keyboard.h, $(INTERVALS_SRC),
925 region-cache.h, xterm.h, w32term.h, and macterm.h.
926 (bytecode.o): Depend on dispextern.h, frame.h, and xterm.h.
927 (data.o): Depend on frame.h.
928 (fns.o): Depend on keymap.h, xterm.h, and blockinput.h.
929 (print.o): Depend on termchar.h and $(INTERVALS_SRC).
930 (lread.o): Depend on $(INTERVALS_SRC), termhooks.h, and coding.h.
931 (intervals.o): Depend on keymap.h.
932
9238467d
SM
933 * msdos.c (msdos_set_cursor_shape, IT_display_cursor):
934 Add debugging print-out to termscript.
b106731c 935
64b7122d
RS
9362004-09-09 Richard M. Stallman <rms@gnu.org>
937
938 * xdisp.c (decode_mode_spec): Use current buffer for most purposes.
939
5670531e
RS
9402004-09-08 Richard M. Stallman <rms@gnu.org>
941
6cb4a892
RS
942 * window.c (Fset_window_buffer): Doc fix.
943
5670531e
RS
944 * xdisp.c (Fformat_mode_line): New arg BUFFER says which buffer to use.
945
7e388eb7
JL
9462004-09-08 Dan Nicolaescu <dann@ics.uci.edu>
947
948 * minibuf.c (history_delete_duplicates): New variable.
949 (read_minibuf): Use it.
950 (syms_of_minibuf): Create the corresponding lisp variable.
951
370e3587
KS
9522004-09-08 Kim F. Storm <storm@cua.dk>
953
954 * xdisp.c (set_cursor_from_row): Also look at 'cursor' property in
955 overlay just before point.
956
f844ba4e
LT
9572004-09-07 Luc Teirlinck <teirllm@auburn.edu>
958
959 * buffer.h (struct buffer): Add auto_save_file_format field.
9238467d
SM
960 * buffer.c (reset_buffer, init_buffer_once):
961 Handle auto_save_file_format field.
f844ba4e
LT
962 (syms_of_buffer): Add DEFVAR_PER_BUFFER for
963 `buffer-auto-save-file-format'.
f844ba4e
LT
964 * fileio.c: Delete declaration for removed Vauto_save_file_format.
965 (build_annotations): Adapt to replacement of
966 `auto-save-file-format' with the new buffer-local variable
967 `buffer-auto-save-file-format'.
968 (syms_of_fileio): Delete DEFVAR_LISP for auto-save-file-format.
969
f0f90717
JR
9702004-09-07 Jason Rumney <jasonr@gnu.org>
971
972 * w32term.h (AppendMenuW_Proc): Move declaration from w32menu.c.
973
9238467d
SM
974 * w32fns.c (w32_wnd_proc) [WM_MEASUREITEM, WM_DRAWITEM]:
975 Handle Unicode menu titles.
f0f90717 976
4e14f66c
KS
9772004-09-07 Kim F. Storm <storm@cua.dk>
978
979 * xdisp.c (set_cursor_from_row): Fix last change. Only use 'cursor'
980 property from text property or overlay strings at point.
981
9238467d 9822004-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
1806714a
SM
983
984 * xmenu.c (update_submenu_strings): YAILOM.
985 (set_frame_menubar): Make sure last_i is initialized.
986
1f06d367
JR
9872004-09-03 Jason Rumney <jasonr@gnu.org>
988
1806714a 989 * w32menu.c (_widget_value): Add lname and lkey.
1f06d367
JR
990 (digest_single_submenu): Set lname and lkey in widget_value
991 instead of name and key.
992 (update_submenu_strings): New function.
993 (set_frame_menubar): Remove call to inhibit_garbage_collection,
994 call update_submenu_strings.
995
996 * w32menu.c (globals_of_w32menu): Check for Unicode API.
997 (digest_single_submenu, w32_menu_show): Encode menu strings as
998 UTF-8 if Unicode API is available.
999 (utf8to16): New function.
1000 (add_menu_item): Use it when calling Unicode API.
1806714a 1001
46540080
KS
10022004-09-03 Kim F. Storm <storm@cua.dk>
1003
1004 * xdisp.c (set_cursor_from_row): Look for non-nil `cursor' property
1005 in overlay or text-property strings; set cursor on corresponding
1006 glyph rather than at end of the string.
1007
9277ba61 10082004-09-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
46540080 1009
9277ba61 1010 * macfns.c (x_real_positions): Save the current window port and
1806714a
SM
1011 set a new one before obtaining the global coordinate.
1012 Use FRAME_MAC_WINDOW.
1013 (x_set_name, x_set_title): Encode title to UTF8.
1014 Use SetWindowTitleWithCFString.
9277ba61
ST
1015 (Fx_server_version): Get correct OS version.
1016
1806714a
SM
1017 * macmenu.c (add_menu_item): Remove unused variable `i'.
1018 Don't let separator items destroy refence constants of other menu items.
9277ba61
ST
1019
1020 * macterm.c (x_update_end): Move SetPortWindowPort to inside
1021 BLOCK_INPUT.
1022 (x_set_offset): Use FRAME_MAC_WINDOW.
1023
1024 * xdisp.c (note_mouse_highlight): Set the mouse pointer shape to
1025 nontext_cursor if it is on a scroll bar.
1026
1027 * s/darwin.h (LIBS_CARBON): New define to specify libraries for
1028 Carbon support.
1806714a
SM
1029 (LD_SWITCH_SYSTEM_TEMACS): Don't link with unused libstdc++.
1030 Use LIBS_CARBON.
9277ba61 1031
b10daec7
JD
10322004-09-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1033
1034 * xfns.c (x_set_name_internal): New function. Check if we shall call
1035 xfree before ENCODE_UTF_8.
1036 (x_set_name, x_set_title): Call x_set_name_internal.
1037
f7e22385
JR
10382004-08-31 NAKAMURA Toshikazu <nr-tkz@nifty.com> (tiny change)
1039
1040 * w32fns.c (w32_load_font): If a BDF font is already loaded, do not
1041 reload it.
1042
2bf436c3
JD
10432004-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1044
1806714a 1045 * macmenu.c (_widget_value): Add lname and lkey.
16ceacc2
JD
1046 (single_submenu): Set lname and lkey in widget_value
1047 instead of name and key.
1048 (update_submenu_strings): New function.
1049 (set_frame_menubar): Remove call to inhibit_garbage_collection,
1050 call update_submenu_strings.
1051
2bf436c3
JD
1052 * xmenu.c (digest_single_submenu): Set lname and lkey in widget_value
1053 instead of name and key.
1054 (update_submenu_strings): New function.
1055 (set_frame_menubar): Remove call to inhibit_garbage_collection,
ec867797 1056 call update_submenu_strings.
2bf436c3
JD
1057
1058 * gtkutil.h (_widget_value): Added lname and lkey.
1059
11715f92
ST
10602004-08-30 Steven Tamm <steventamm@mac.com>
1061
1062 * macmenu.c (mac_menu_show): Remove shadowing of menu variable
1063 by using different names for inner loop variables.
1064
5500be54
JD
10652004-08-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1066
059cd329
JD
1067 * xmenu.c (set_frame_menubar): Reintroduce inhibit_garbage_collection
1068 from 2002-07-15T00:01:34Z!raeburn@raeburn.org so that strings from ENCODE_UTF_8 isn't GC:ed before used.
1069
5500be54
JD
1070 * gtkutil.c (xg_create_frame_widgets): Compensate for tool bar when
1071 tool bar items is 0.
1072
383418e5
ST
10732004-08-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1074
1075 * macmenu.c (ENCODE_MENU_STRING): Added to handle multibyte
1076 strings in menu items.
1077 (single_submenu): Use ENCODE_MENU_STRING
1078 (mac_menu_show): Use ENCODE_MENU_STRING. Reset grabbed because
1079 button release isn't passed to event loop
1080 (add_menu_item): Use SetMenuItemWithCFString
1081
6eb3ee72
ST
10822004-08-26 Steven Tamm <steventamm@mac.com>
1083
1084 * fileio.c (Fread_file_name): Call x_file_dialog on carbon on
1085 tool-bar/menu click
1086 * macfns.c (Fx_file_dialog): Implemented using NavServices
1087
10b43ac3
JD
10882004-08-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1089
2728b5d0
JD
1090 * xterm.c (x_catch_errors_unwind): Do not XSync if display has closed.
1091
10b43ac3
JD
1092 * xfns.c (x_window_to_frame, x_any_window_to_frame)
1093 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
1094 (x_top_window_to_frame): Return 0 if wdesc is None.
1095
2ee3b79e
RS
10962004-08-22 Richard M. Stallman <rms@gnu.org>
1097
1098 * process.c (process_send_signal) [SIGNALS_VIA_CHARACTERS,
1099 HAVE_TERMIOS]: If there's no char for this signal, drop through
1100 and use system calls.
1101
1102 * bytecode.c (Fbyte_code) <unwind-protect>: Cannot GC.
1103
9a1ba2ea
KS
11042004-08-20 Kim F. Storm <storm@cua.dk>
1105
1106 * process.c (wait_reading_process_output): Rename from
1107 wait_reading_process_input. All uses changed.
1108 (wait_reading_process_output_1): Rename from
1109 wait_reading_process_input_1. All uses changed.
1110
1111 * dispnew.c (Fsleep_for): Remove obsolete code.
1112
295f3b30
KH
11132004-08-20 Kenichi Handa <handa@m17n.org>
1114
1115 * syntax.c (skip_chars): Fix for unibyte case.
1116
27615979
SM
11172004-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
1118
1119 * syntax.c (char_quoted): Mixup byte/char pos.
1120 (back_comment): Fixup globals in all cases.
1121
00267f94
JD
11222004-08-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1123
1124 * xfns.c (x_set_name, x_set_title): Encode title to UTF8 before
1125 passing it to gtk_window_set_title.
1126
2439909e
KS
11272004-08-19 Kim F. Storm <storm@cua.dk>
1128
6ba0f14c
KS
1129 * process.c (wait_reading_process_input): Clean up.
1130 Add wait_for_cell, wait_proc, and just_wait_proc args
1131 to avoid overloading `read_kbd' and `do_display' args.
1132 Change read_kbd arg to int. All callers changed.
1133
2439909e
KS
1134 * process.c (process_send_signal): Use CDISABLE.
1135
1136 * sysdep.c (child_setup_tty, init_sys_modes): Use CDISABLE.
1137
101c421e
KS
11382004-08-18 Kim F. Storm <storm@cua.dk>
1139
1140 * process.c (Faccept_process_output): Add arg JUST-THIS-ONE;
1141 forward to wait_reading_process_input via DO_DISPLAY arg.
1142 (wait_reading_process_input): If DO_DISPLAY < 0 for a process
1143 object, only process output from that process; also inhibit
1144 running timers if DO_DISPLAY==-2.
1145
c438dc33
KS
11462004-08-17 Kim F. Storm <storm@cua.dk>
1147
1148 * process.c (process_send_signal): Fix last change--use
1149 _POSIX_VDISABLE instead of CVDISABLE when available.
1150
8afc13c6
RS
11512004-08-16 Richard M. Stallman <rms@gnu.org>
1152
1153 * sysdep.c (child_setup_tty) [SIGNALS_VIA_CHARACTERS]:
1154 Set VQUIT and VINTR chars to the standard ones if they are unset.
1155 [AIX]: Don't do that here. And don't force VINTR to standard
1156 when SIGNALS_VIA_CHARACTERS.
1157
c438dc33 1158 * process.c (process_send_signal)
8afc13c6
RS
1159 [SIGNALS_VIA_CHARACTERS, HAVE_TERMIOS]: Clean up.
1160 Do nothing if the character is CVDISABLE.
1161
1162 * xfaces.c (merge_face_ref): Specifying `unspecified' is a no-op.
1163
c438dc33 1164 * intervals.c (move_if_not_intangible):
8afc13c6
RS
1165 Force POSITION to be between BEGV and ZV.
1166
6dad1714
JPW
11672004-08-14 John Paul Wallington <jpw@gnu.org>
1168
1169 * buffer.c (Frestore_buffer_modified_p): Doc fix.
1170
1171 * fileio.c (Fread_file_name): Doc fix.
1172
1173 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
1174
2bd77330
LT
11752004-08-09 Luc Teirlinck <teirllm@auburn.edu>
1176
1177 * keymap.c (Fmake_keymap, Fmap_keymap, Fwhere_is_internal): Doc fixes.
1178
c90e7e43
LT
11792004-08-08 Luc Teirlinck <teirllm@auburn.edu>
1180
1181 * keyboard.c: Declare Qdisabled_command_function instead of
8392e138 1182 Qdisabled_command_hook.
c90e7e43 1183 (Fcommand_execute): Use Qdisabled_command_function instead of
8392e138 1184 Qdisabled_command_hook.
c90e7e43
LT
1185 (syms_of_keyboard): Ditto.
1186
81909a1a
LT
11872004-08-07 Luc Teirlinck <teirllm@auburn.edu>
1188
1189 * keymap.c (Flocal_key_binding, Fglobal_key_binding)
1190 (syms_of_keymap) <key-translation-map>: Doc fixes.
1191
0cedd530
SM
11922004-08-07 Stefan Monnier <monnier@iro.umontreal.ca>
1193
1725a7c9
SM
1194 * window.c (window_list_1): YAILOM.
1195
0cedd530
SM
1196 * fileio.c (make_temp_name): Handle multibyte prefixes.
1197
2515a131
LT
11982004-08-06 Luc Teirlinck <teirllm@auburn.edu>
1199
1200 * keyboard.c (syms_of_keyboard) <overriding-terminal-local-map>:
1201 Doc fix.
1202
c8b20fb7
KH
12032004-08-03 Kenichi Handa <handa@m17n.org>
1204
1205 * coding.c (decode_coding_string): Adjust coding->consumed, and
1206 etc. with shrinked_bytes.
1207
fb8b092b
KS
12082004-08-03 Kim F. Storm <storm@cua.dk>
1209
1210 * indent.c (compute_motion): Fix check for full width window
1211 in non-window case. Do not count left truncation glyph on
1212 window systems.
1213
df133612
LT
12142004-08-02 Luc Teirlinck <teirllm@auburn.edu>
1215
1216 * data.c (Finteractive_form): Doc fix.
1217
0f7a93c1
KS
12182004-08-02 Kim F. Storm <storm@cua.dk>
1219
1220 * indent.c (compute_motion): Use actual window width if WIDTH is -1,
1221 properly accounting for continuation glyph on non-window systems.
1222 (Fcompute_motion): Use actual window width if WIDTH is nil, and
1223 actual window width/height if TOPOS is nil, properly accounting for
1224 continuation glyphs on non-window systems, and optional header lines.
1225 (vmotion): Let compute_motion calculate actual window width.
1226
1227 * window.c (window_scroll_line_based): Let compute_motion
1228 calculate actual window width.
1229
f491e1ed
KS
12302004-08-02 Kim F. Storm <storm@cua.dk>
1231
1232 * process.c (read_process_output): Use whole read buffer.
1233 Don't trigger adaptive read buffering on errors.
1234
83f64226
LT
12352004-07-31 Luc Teirlinck <teirllm@auburn.edu>
1236
1237 * keymap.c (Fset_keymap_parent, Fdefine_prefix_command): Doc fixes.
1238
1239 * keyboard.c (syms_of_keyboard) <disable-point-adjustment>: Doc fix.
1240
1241 * callint.c (Fcall_interactively): Doc fix.
1242
8afc13c6
RS
12432004-07-30 Richard M. Stallman <rms@gnu.org>
1244
1245 * abbrev.c (Fexpand_abbrev): Undo previous change.
1246
7c111482
KS
12472004-07-30 Kim F. Storm <storm@cua.dk>
1248
1249 * editfns.c (Fformat): Allocate extra (dummy) element in info.
1250
ee945d08
LT
12512004-07-28 Luc Teirlinck <teirllm@auburn.edu>
1252
1253 * eval.c (Fdefvar, Fdefconst): Doc fixes.
1254
3f911c94
KS
12552004-07-27 Kim F. Storm <storm@cua.dk>
1256
1257 * xdisp.c (move_it_in_display_line_to): Check BUFFER_POS_REACHED_P after
1258 we have ensured that the glyph fits on the current line (or returned
1259 MOVE_LINE_CONTINUED otherwise).
1260
f29ff8c7
KS
12612004-07-26 Kim F. Storm <storm@cua.dk>
1262
1263 * xdisp.c (move_it_in_display_line_to): If overflow-newline-into-fringe
1264 is enabled, return MOVE_LINE_CONTINUED rather than MOVE_POS_MATCH_OR_ZV
1265 if target position is at end of display line but char is not a newline.
1266
81159bb9
RS
12672004-07-25 Richard M. Stallman <rms@gnu.org>
1268
ab431b61
RS
1269 * window.c (coordinates_in_window): Return ON_SCROLL_BAR
1270 instead of ON_VERTICAL_BORDER, when on scroll bar.
1271 (Fcoordinates_in_window_p): Handle ON_SCROLL_BAR--return nil.
1272
1273 * dispextern.h (enum window_part): Add ON_SCROLL_BAR.
1274
f29ff8c7 1275 * window.c (Fcoordinates_in_window_p):
81159bb9
RS
1276 Take account of FRAME_INTERNAL_BORDER_WIDTH.
1277
1278 * alloc.c (check_cons_list): New function (contents commented out).
1279
fc820cc5
LT
12802004-07-24 Luc Teirlinck <teirllm@auburn.edu>
1281
1282 * xfaces.c (Fcolor_supported_p): Doc fix.
1283
1284 * frame.c (Fselect_frame, Fset_frame_selected_window)
1285 (Fframe_visible_p, Fraise_frame): Doc fixes.
1286
289978b5
LT
12872004-07-24 Richard M. Stallman <rms@gnu.org>
1288
7630911d
RS
1289 * keyboard.h (not_single_kboard_state): Declared.
1290
1291 * fileio.c (Fwrite_region): Doc fix.
1292
1293 * window.c (Fwindow_at): Take account of FRAME_INTERNAL_BORDER_WIDTH.
1294
1295 * abbrev.c (Fexpand_abbrev): Run Qpre_abbrev_expand_hook
1296 only when a real abbrev is present.
1297
289978b5
LT
1298 * xfns.c (x_icon_verify): New function.
1299 (Fx_create_frame): Use it.
1300
63cc10ae
KS
13012004-07-22 Barry Fishman <barry_fishman@att.net> (tiny change)
1302
1303 * s/gnu-linux.h: Use GC_MARK_STACK if __amd64__ is defined.
1304
36f826d4
KS
13052004-07-21 Kim F. Storm <storm@cua.dk>
1306
1307 * window.h (struct glyph_matrix): New members nrows_scale_factor
1308 and ncols_scale_factor.
1309
1310 * window.c (make_window): Initialize nrows_scale_factor and
1311 ncols_scale_factor members.
1312
1313 * dispnew.c (margin_glyphs_to_reserve): Apply ncols_scale_factor.
1314 (allocate_matrices_for_frame_redisplay): Fix left/right margin mix-up.
1315 (required_matrix_height): Apply nrows_scale_factor.
1316 (required_matrix_width): Apply ncols_scale_factor.
1317
1318 * xdisp.c (display_line): Increment nrows_scale_factor and set
1319 fonts_changed_p if past last allocated row.
1320 (append_glyph, append_composite_glyph, produce_image_glyph)
1321 (append_stretch_glyph): Increment ncols_scale_factor and set
1322 fonts_changed_p if current area is full.
1323
5fc1c546
JD
13242004-07-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1325
1326 * widget.c (EmacsFrameDestroy): Don't abort if normal_gc is 0.
1327
cb7516e5
LT
13282004-07-19 Luc Teirlinck <teirllm@auburn.edu>
1329
1330 * window.c (Fpos_visible_in_window_p, Fset_window_hscroll)
1331 (Fwindow_inside_pixel_edges, Fwindow_end, Fset_window_point)
1332 (Fset_window_start, Fscroll_up, Fscroll_down)
1333 (Fother_window_for_scrolling, Fscroll_other_window)
1334 (Fsave_window_excursion, Fset_window_vscroll)
1335 (syms_of_window) <window-size-fixed>: Doc fixes.
1336
b6189c3b 13372004-07-19 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
dda741ec
JR
1338
1339 * w32fns.c (Fx_file_dialog): Use ENCODE_FILE instead of
1340 ENCODE_SYSTEM for filenames.
1341
bfcf6608
ST
13422004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1343
1344 * mac.c (sys_select): Block input around call to
1345 ReceiveNextEvent to prevent breakage. Correctly handle
1346 blocking on event queue only by calling ReceiveNextEvent
1347 instead of select (since GUI events aren't on an fd).
1348 (sys_read): Remove function
1349 * sysdep.c: Remove redefine of read to sys_read if HAVE_CARBON
1350
e082ac9d
ST
13512004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1352
1353 * mac.c (sys_select): Redo sys_select to use alarm-based
cb7516e5 1354 polling instead of 1 sec timeouts (like solaris).
e082ac9d 1355
cb7516e5 1356 * macterm.c (x_make_frame_visible): Comment in polling on
e082ac9d
ST
1357 frame creation.
1358
1359 * keyboard.c: Undef SIGIO on Carbon
1360
1361 * atimer.c (alarm_signal_handler): Call alarm handlers after
1362 scheduling.
1363
1364 * eval.c (Feval): Remove quit_char test
1365
1366 * process.c (wait_reading_process_input): Remove clearing
1367 stdin for select call on process input.
1368
4b9da0fb
LT
13692004-07-18 Luc Teirlinck <teirllm@auburn.edu>
1370
1204e81c
LT
1371 * xdisp.c (syms_of_xdisp) <window-scroll-functions>: Correct
1372 capitalization error in docstring.
4b9da0fb 1373
26503ad2
JB
13742004-07-17 Juanma Barranquero <lektu@terra.es>
1375
1376 * keyboard.c (not_single_kboard_state): Do nothing unless
1377 MULTI_KBOARD is defined.
1378
3751eb00
RS
13792004-07-17 Richard M. Stallman <rms@gnu.org>
1380
1381 * window.c (coordinates_in_window): Inside the window but outside
1382 its box to the L or R, return ON_VERTICAL_BORDER.
1383 (window_list_1): Rotate the list to start with WINDOW.
1384
1385 * print.c (print_preprocess): Test for print_depth at limit
1386 before entering in being_printed.
1387
1388 * keyboard.c (not_single_kboard_state): New function.
1389 (stuff_buffered_input): Now no-op only if no SIGTSTP.
1390
1391 * frame.c (Fdelete_frame): If we're in single_bboard_state on
1392 this kboard, and we delete its last frame, go to any_kboard_state.
1393
1394 * buffer.c (syms_of_buffer) <transient-mark-mode>: Doc fix.
1395
b6189c3b 13962004-07-15 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
62eb6ca9
JR
1397
1398 * w32fns.c (Fx_file_dialog): Encode strings in system coding
1399 system before passing them to OS functions for display.
1400
0f6af254
DK
14012004-07-15 David Kastrup <dak@gnu.org>
1402
f9253326
KS
1403 * search.c (syms_of_search): Staticpro `saved_last_thing_searched'.
1404 Apparently fixes an abort condition.
0f6af254 1405
386c8f42
LT
14062004-07-14 Luc Teirlinck <teirllm@auburn.edu>
1407
1408 * fileio.c (Fvisited_file_modtime): Return a list of two integers,
1409 instead of a cons.
1410
366511da
MB
14112004-07-14 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
1412
1413 * keyboard.c (echo_dash): Do nothing if there already is a dash
1414 at the end of the echo string.
1415
f85409d3
KS
14162004-07-12 Kim F. Storm <storm@cua.dk>
1417
1418 * alloc.c (mark_object): Only look at Lisp_Misc_Save_Value
1419 if GC_MARK_STACK.
1420
0ba2e87b
LT
14212004-07-10 Luc Teirlinck <teirllm@auburn.edu>
1422
da38045d
LT
1423 * buffer.c (Fswitch_to_buffer, Fpop_to_buffer): Doc fixes.
1424
0ba2e87b
LT
1425 * window.c (Fwindow_buffer, Fother_window, Fget_lru_window)
1426 (Fget_largest_window, Fget_buffer_window, Fdelete_windows_on)
1427 (Freplace_buffer_in_windows, Fset_window_buffer)
1428 (Fselect-window, Fdisplay-buffer, Fsplit_window): Doc fixes.
1429 (syms_of_window): Expand docstring of `display-buffer-function'.
1430
5668fbb8
LT
14312004-07-09 Luc Teirlinck <teirllm@auburn.edu>
1432
1433 * editfns.c (Ffloat_time, Fformat_time_string, Fdecode_time)
1434 (Fcurrent_time_string, Fcurrent_time_zone): Mention in docstrings
1435 that time values of the type (HIGH . LOW) are considered obsolete.
1436
a085bf9d
LT
14372004-07-06 Luc Teirlinck <teirllm@auburn.edu>
1438
669de2fb
LT
1439 * keyboard.c (syms_of_keyboard): Fix `keyboard-translate-table'
1440 docstring.
1441
bac66325 1442 * fns.c (Fclear_string): Declare `len' before call to CHECK_STRING.
a085bf9d 1443
8e975df9
JPW
14442004-07-06 John Paul Wallington <jpw@gnu.org>
1445
1446 * eval.c (Fdefmacro): Signal an error if NAME is not a symbol.
1447
fa164e6a
JPW
1448 * fns.c (Fclear_string): Signal an error if STRING is not a string.
1449
2bac9bb1
JD
14502004-07-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1451
1452 * macterm.c (mac_initialize_display_info): Use CGGetActiveDisplayList
1453 instead of CGMainDisplayID (only in OSX 10.2 and later).
1454
316ef0dc
JPW
14552004-07-04 John Paul Wallington <jpw@gnu.org>
1456
1457 * fileio.c (read_file_name_completion_ignore_case): New variable.
1458 (syms_of_fileio): Declare and initialise it.
1459 (Fread_file_name): Bind `completion-ignore-case' to respect it.
1460
2a1a35c6
EZ
14612004-07-03 Eli Zaretskii <eliz@gnu.org>
1462
1463 * msdos.c (dos_rawgetc): Use make_number to produce Lisp objects
1464 for event.x and event.y.
1465
33a72331
KH
14662004-07-01 Kenichi Handa <handa@m17n.org>
1467
1468 * w32select.c (Fw32_set_clipboard_data): Update `nbytes' correctly
1469 after getting a new string by pre-write-conversion.
1470
9238467d 14712004-06-30 Stefan Monnier <monnier@iro.umontreal.ca>
07a6ab76
SM
1472
1473 * xterm.c (x_detect_focus_change): Remove unused var `nr_events'.
1474 (x_calc_absolute_position): Remove unused var `child'.
1475
1476 * xfaces.c (x_supports_face_attributes_p)
1477 (Fdisplay_supports_face_attributes_p): YAILOM.
1478 (tty_supports_face_attributes_p): Remove unused var `i'.
1479
1480 * syntax.c (skip_chars): Remove unused labels fwd_unibyte_ok and
1481 back_unibyte_ok.
1482
1483 * search.c (match_limit, Fmatch_data, Fset_match_data): YAILOM.
1484
1485 * fontset.c (Fset_fontset_font): Remove unused vars `family' and `registry'.
1486
1487 * Makefile.in (${etc}DOC): Fix file name of make-docfile.
1488
f96ec754
AS
14892004-06-30 Andreas Schwab <schwab@suse.de>
1490
1491 * image.c (CHECK_LIB_AVAILABLE): Add third parameter LIBRARIES.
1492 (Finit_image_library): Pass LIBRARIES through to
1493 CHECK_LIB_AVAILABLE. Declare parameters. Doc fix.
1494 (lookup_image_type): Pass Qnil as second argument to
1495 Finit_image_library.
1496
1497 * lisp.h: Declare Finit_image_library.
1498
59feca74 14992004-06-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
c8d09ad8 1500
31983645
AS
1501 * macterm.c (do_window_activate, do_window_deactivate): Remove.
1502 (XTread_socket): Send mouse button events to the toolbox
1503 dispatcher even when the mouse is grabbed. Don't process window
1504 activate events for non-Emacs windows. Replace function calls to
1505 do_window_activate and do_window_deactivate with their contents.
1506 Reset mouse grabbing status when a window is deactivated.
59feca74 1507
c61278bb
ST
15082004-06-29 Steven Tamm <steventamm@mac.com>
1509
1510 * macterm.c (mac_get_emulated_btn)
1511 (mac_event_to_emacs_modifiers): Fix emulated mouse button
1512 support to correctly mask out modifiers.
1513
c3762cbd
DK
15142004-06-29 David Kastrup <dak@gnu.org>
1515
1516 * search.c (Fset_match_data): Allow buffer before end of list
1517 which can happen if set-match-data is using a pre-consed list.
1518
c61278bb 15192004-06-28 Steven Tamm <steventamm@mac.com>
e439b925
ST
1520
1521 * macterm.c (XTread_socket): Correctly set the frame position
1522 after the window is moved.
1523
74cdfe05
JD
15242004-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1525
1526 * gtkutil.c (xg_get_image_for_pixmap): Call g_object_unref on
1527 gpix and gmask just before return to avoid memory leak.
03ecb80f
JD
1528 (xg_get_image_for_pixmap): Add workaround for monochrome displays
1529 so insensitive and activated icons look ok.
74cdfe05 1530
ef544dc8
JR
15312004-06-27 Jason Rumney <jasonr@gnu.org>
1532
1533 * w32fns.c (file_dialog_callback): Disable edit control if set
1534 to directories only on CDN_INITDONE message.
1535 (Fx_file_dialog): Default to directories only when prompt starts
1536 with "Dired".
1537
7b7990cc
KS
15382004-06-25 Kim F. Storm <storm@cua.dk>
1539
1540 * alloc.c (allocate_misc): Update total_free_markers.
1541 (free_misc): New function.
1542 (safe_alloca_unwind, free_marker): Use it.
1543
1544 * lisp.h (free_misc): Add prototype.
1545
1546 * fns.c (Fmapconcat, Fmapcar): Remove superfluous GCPROs.
1547
d8c379f8
RS
15482004-06-24 Richard M. Stallman <rms@gnu.org>
1549
1550 * emacs.c (Vsignal_USR1_hook, Vsignal_USR2_hook): Definitions deleted.
1551 (syms_of_emacs): Lisp variables deleted.
1552
559cdd07
DK
15532004-06-23 David Kastrup <dak@gnu.org>
1554
94939b84
DK
1555 * search.c (Freplace_match): Adjust the match-data more thoroughly
1556 when replacing strings in the buffer.
1557 (Fmatch_data): When INTEGERS is non-nil and the last match was in
1558 a buffer, add the buffer as last element to the match data.
1559 (Fset_match_data): If an additional element of the match-data is a
1560 buffer, restore it to last_thing_searched.
c8d09ad8 1561 (save_search_regs): Save last_thing_searched as part of the match data.
559cdd07
DK
1562 (restore_match_data): Restore it again.
1563
dce417e7
LT
15642004-06-23 Luc Teirlinck <teirllm@auburn.edu>
1565
1566 * keymap.c (Ftext_char_description): Doc fix.
1567 * doc.c (Fsnarf_documentation): Doc fix.
1568
ef54b2d0
KS
15692004-06-22 Kim F. Storm <storm@cua.dk>
1570
b5bc4d05
KS
1571 * fns.c (Fmapcar, Fmapconcat): GCPRO the args array.
1572
ef54b2d0
KS
1573 * lisp.h (struct Lisp_Save_Value): New member dogc.
1574 (SAFE_ALLOCA_LISP): Change second arg to number of elements.
1575 Set dogc member in Lisp_Save_Value object so it will be GC'ed.
1576 (SAFE_FREE_LISP): New macro.
1577
1578 * alloc.c (safe_alloca_unwind): Clear dogc and pointer members.
1579 (make_save_value): Init new dogc member.
1580 (mark_object): Mark Lisp_Save_Value pointer array if dogc is set.
1581
1582 * fns.c (Fmapconcat, Fmapcar): Use new SAFE_ALLOCA_LISP and
1583 SAFE_FREE_LISP macros.
1584
3d33d993
KS
15852004-06-22 Kim F. Storm <storm@cua.dk>
1586
1587 * lisp.h (SAFE_ALLOCA_LISP): New macro to allocate Lisp_Objects.
1588 Temporarily inhibits GC if memory is xmalloc'ed, as the Lisp_Objects
1589 in that memory area are unknown to GC. Add comments.
1590
1591 * fns.c (Fmapconcat, Fmapcar): Use SAFE_ALLOCA_LISP.
1592
5c917f98
KS
15932004-06-21 Kim F. Storm <storm@cua.dk>
1594
1595 * lisp.h (MAX_ALLOCA): Define here.
1596 (safe_alloca_unwind): Add prototype.
1597 (USE_SAFE_ALLOCA, SAFE_ALLOCA, SAFE_FREE): New macros.
1598
1599 * alloc.c (safe_alloca_unwind): New function.
1600
1601 * casefiddle.c (casify_object): Use SAFE_ALLOCA.
1602
1603 * charset.c (Fstring): Use SAFE_ALLOCA.
1604
1605 * coding.c (MAX_ALLOCA): Remove define.
1606
1607 * data.c (MAX_ALLOCA): Remove define.
1608 (Faset): Use SAFE_ALLOCA.
1609
1610 * editfns.c (Fformat, Ftranspose_regions): Use SAFE_ALLOCA.
1611
1612 * fns.c (string_make_multibyte, string_to_multibyte)
1613 (string_make_unibyte, Fmapconcat, Fmapcar): Use SAFE_ALLOCA.
1614 (MAX_ALLOCA): Remove define.
1615 (Fbase64_encode_region, Fbase64_encode_string)
1616 (Fbase64_decode_region, Fbase64_decode_string): Use SAFE_ALLOCA.
1617 (Fbase64_encode_region, Fbase64_encode_string): Fix potential
1618 memory leak if encoding fails.
1619
1620 * xdisp.c (add_to_log): Use SAFE_ALLOCA.
1621
9a09408e
EZ
16222004-06-21 Eli Zaretskii <eliz@gnu.org>
1623
1624 * print.c (Fwith_output_to_temp_buffer): Doc fix.
1625
376de739
RS
16262004-06-20 Richard M. Stallman <rms@gnu.org>
1627
1628 * xfaces.c (Finternal_copy_lisp_face): Small cleanup; doc fix.
1629
1630 * search.c (match_limit): Cleaner err msg when no match data available.
1631
1632 * window.c (syms_of_window): Doc fix.
1633
1634 * keyboard.c (command_loop_1): Handle values `only' and `identity'
1635 for Vtransient_mark_mode.
1636
1637 * buffer.c (syms_of_buffer): Doc fix.
1638
acd81db9
DK
16392004-06-21 David Kastrup <dak@gnu.org>
1640
1641 * minibuf.c (Ftry_completion, Fall_completions): Do lazy binding
1642 and unbinding of `case-fold-search' according to
1643 `completion-ignore-case' around calls of string-match and
1644 predicates, respectively. Should give satisfactory performance
1645 in all relevant cases.
1646
f303762d
JD
16472004-06-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1648
95911c74
JD
1649 * xterm.c (x_draw_image_foreground_1): Subtract slice.x/y from
1650 clip_x/y_origin.
1651
a6cb6b78
JD
1652 * fns.c (string_to_multibyte): Use xmalloc/xfree instead of alloca.
1653
f303762d
JD
1654 * macfns.c (Fx_display_color_cells): Do not limit return value to 256.
1655
1656 * macterm.c (mac_initialize_display_info): Initialize n_planes correctly
1657 on Mac OSX.
1658
bbdb2684
LT
16592004-06-16 Luc Teirlinck <teirllm@auburn.edu>
1660
1661 * buffer.c (syms_of_buffer): Clarify `fill-column' docstring.
1662
5ea48b1c
KS
16632004-06-16 Kim F. Storm <storm@cua.dk>
1664
1665 * dispextern.h (Vimage_types): Remove extern.
1666
803aac3e
MB
16672004-06-16 Miles Bader <miles@gnu.org>
1668
1669 * image.c (lookup_image_type): Initialize image type if necessary.
1670
cdc97764
KS
16712004-06-15 Kim F. Storm <storm@cua.dk>
1672
c4a5739c
KS
1673 * xdisp.c (try_cursor_movement): Exclude header line from scroll
1674 margin at top of window.
1675 (try_window_reusing_current_matrix): Calculate proper cursor position
1676 after scrolling up with non-zero scroll margin, as the old cursor
1677 position corresponds to value of PT before executing this command.
1678 (try_window_id): Consider scroll margin at bottom of window too;
1679 otherwise we fail to scroll when hl-line-mode is enabled.
1680
cdc97764
KS
1681 * syntax.c (skip_chars): Only recognize [:class:] when it has the
1682 proper format and class is a lower-case word.
1683
5b166323
JD
16842004-06-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1685
1686 * gtkutil.c (xg_get_image_for_pixmap): New function.
c8d09ad8 1687 (xg_get_gdk_pixmap_and_mask): Remove.
5b166323
JD
1688 (update_frame_tool_bar): Call xg_get_image_for_pixmap instead of
1689 xg_get_gdk_pixmap_and_mask.
cdc97764 1690
5b166323
JD
1691 * xterm.h (struct x_display_info): Typo in comment fixed.
1692
1ebd4f78
JB
16932004-06-14 Juanma Barranquero <lektu@terra.es>
1694
1695 * dispextern.h (Vimage_types): Make it conditional on
1696 HAVE_WINDOW_SYSTEM.
1697
1698 * image.c (Vimage_types): Move from xdisp.c.
1699 (Vimage_type_cache): New variable.
1700 (define_image_type): New argument indicating whether an image
1701 library was loaded; cache loaded status and return t on success,
1702 nil otherwise.
1703 (CACHE_IMAGE_TYPE, ADD_IMAGE_TYPE): New macros.
1704 (w32_delayed_load): New function to load an image library from a
1705 list of possible filenames.
1706 (init_xpm_functions, init_png_functions, init_jpeg_functions)
1707 (init_tiff_functions, init_gif_functions): Use `w32_delayed_load'.
c8d09ad8 1708 (CHECK_LIB_AVAILABLE): Call `define_image_library' with new argument.
1ebd4f78
JB
1709 (Finit_image_library): New function, extracted from `init_image'.
1710 Try to initialize an image library on demand and cache whether we
1711 were successful or not.
1712 (syms_of_image): Initialize `Vimage_types' and
1713 `Vimage_type_cache'. Add recognized image types to Vimage_types.
1714 Export `init-image-library'.
1715 (init_image): Remove initialization of all image types, except xbm
1716 and pbm.
1717
1718 * xdisp.c (Vimage_types): Delete (moved to image.c).
1719
904ee128
AS
17202004-06-14 Andreas Schwab <schwab@suse.de>
1721
1722 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
1723 Avoid calling specbind when completion-regexp-list is empty.
1724
092de21d
RS
17252004-06-13 Richard M. Stallman <rms@gnu.org>
1726
1727 * regex.h (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
1728 (re_wctype, re_iswctype, re_wctype_to_bit):
1729 Non-function definitions moved here from regex.c.
1ebd4f78 1730
092de21d
RS
1731 * regex.c (re_wctype, re_iswctype): Function defs longer static.
1732 (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
1733 (re_wctype, re_iswctype, re_wctype_to_bit):
1734 Non-function definitions moved to regex.h.
1735
1736 * window.c (Fselect_window): Doc fix.
1737
1738 * syntax.c: Include regex.h.
1739 (skip_chars): New arg HANDLE_ISO_CLASSES. Callers changed.
1740 If requested, make a list of classes, then check the scanned
1741 chars for membership in them.
1742 (in_classes): New function.
1743 Doc fix.
1744
1745 * keyboard.c (cmd_error): Don't call any_kboard_state
1746 if inside a recursive edit level.
1747
17482004-06-13 Lorentey K\e,Aa\e(Broly <lorentey@elte.hu>
1749
1750 * keyboard.c (command_loop): Call any_kboard_state before
1751 command_loop_2 when at top level.
1752
3ebc0939
AS
17532004-06-13 Andreas Schwab <schwab@suse.de>
1754
cea5d0d4
AS
1755 * print.c (print_object): Always use %ld for printing EMACS_INT.
1756
1757 * keyboard.c (cancel_hourglass_unwind): Return a value.
1758 (modify_event_symbol): Always use %ld for printing EMACS_INT.
1759 (Fexecute_extended_command): Likewise.
1760
1761 * syntax.h (SYNTAX_ENTRY_FOLLOW_PARENT): Rename local variable to
1762 avoid clashes.
1763 (SYNTAX): Likewise.
1764 (SYNTAX_WITH_FLAGS): Likewise.
1765 (SYNTAX_MATCH): Likewise.
1766
1767 * syntax.c (char_quoted): Avoid warning about undefined operation.
1768 (find_defun_start): Likewise.
1769 (scan_lists): Likewise.
1770 (INC_FROM): Likewise.
1771 (scan_sexps_forward): Likewise.
1772
be8c4ce4
AS
1773 * image.c: Include <ctype.h>.
1774
3ebc0939
AS
1775 * xfaces.c (face_attr_equal_p): Declare parameters.
1776
6fb41b5b
KH
17772004-06-13 Kenichi Handa <handa@m17n.org>
1778
1779 * ccl.c (CCL_READ_CHAR): If hit EOF, set REG to -1.
1780
fc3095ce
EZ
17812004-06-12 Matthew Mundell <matt@mundell.ukfsn.org>
1782
1783 * eval.c (Fdefun): Signal an error if NAME is not a symbol.
1784
66189a40
KH
17852004-06-12 Kenichi Handa <handa@m17n.org>
1786
1787 * ccl.c (CCL_CALL_FOR_MAP_INSTRUCTION): Save eof_ic in
1788 ccl_prog_stack_struct and update it.
1789 (CCL_INVALID_CMD): If CCL_DEBUG is defined, call ccl_debug_hook.
1790 (CCL_READ_CHAR): Get instruction counter from eof_ic, not from
1791 ccl->eof_ic on EOF.
1792 (ccl_debug_hook): New function.
1793 (struct ccl_prog_stack): New member eof_ic.
1794 (ccl_driver): Handle EOF in subrountine call correctly.
1795
17962004-06-11 Kenichi Handa <handa@m17n.org>
1797
1798 * coding.c (decode_coding_string): Check CODING_FINISH_INTERRUPT.
1799
1da71023
KS
18002004-06-11 Kim F. Storm <storm@cua.dk>
1801
1802 * emacs.c (shut_down_emacs): Inhibit redisplay during shutdown.
1803
e9efcef4
JB
18042004-06-11 Juanma Barranquero <lektu@terra.es>
1805
1806 * keyboard.c (Fposn_at_point): Doc fix.
1807
9b9ceb61
DK
18082004-06-11 David Kastrup <dak@gnu.org>
1809
1810 * search.c (match_limit): Don't flag an error if match-data
1811 exceeding the allocated search_regs.num_regs gets requested, just
1812 return Qnil.
1813
6e87ac8f
MB
18142004-06-08 Miles Bader <miles@gnu.org>
1815
1816 * xfaces.c (push_named_merge_point): Return 0 when a cycle is detected.
1817
0b0dea7b
JB
18182004-06-07 Juanma Barranquero <lektu@terra.es>
1819
1820 * editfns.c (Fuser_login_name, Ffloat_time, Fencode_time)
1821 (Fcurrent_time_string, Fcurrent_time_zone)
1822 (Finsert_buffer_substring, Ftranspose_regions): Doc fixes.
1823
a0a23346
MB
18242004-06-07 Miles Bader <miles@gnu.org>
1825
08384afd 1826 * xfaces.c (struct named_merge_point): New type.
a0a23346
MB
1827 (push_named_merge_point): New function.
1828 (merge_named_face): New function.
1829 (merge_face_ref, face_at_buffer_position, face_at_string_position):
1830 Use `merge_named_face'.
1831 (merge_face_inheritance): Function removed.
c8d09ad8 1832 (merge_face_ref): Rename from `merge_face_vector_with_property'.
a0a23346
MB
1833 Add new `err_msgs' and `named_merge_points' args. Return error
1834 status. Only print error messages if ERR_MSGS is true. Don't try to
1835 do :inherit attribute validation.
1836 (merge_face_heights): Handle `unspecified' in both directions.
1837 (merge_face_vectors): Rename `cycle_check' arg to `named_merge_points'.
1838 Call `merge_face_ref' instead of `merge_face_inheritance'.
1839 (Fdisplay_supports_face_attributes_p, Fface_attributes_as_vector)
1840 (compute_char_face, face_at_buffer_position)
1841 (face_at_string_position): Call `merge_face_ref' instead of
1842 `merge_face_vector_with_property'.
1843
12d5b185
KH
18442004-06-07 Kenichi Handa <handa@m17n.org>
1845
1846 * coding.c (find_safe_codings): Check NILP (safe_codings) only at
1847 the necessary places.
1848
2e2d7ee6
KS
18492004-06-07 Kim F. Storm <storm@cua.dk>
1850
1851 * process.c (Fdelete_process): Undo 2004-05-28 change.
1852 Instead, call status_notify also for network process.
1853 (status_message): Use process instead of status as arg.
1854 Give messages "deleted" or "connection broken by remote peer" for
1855 an exited network process.
1856 (status_notify): Change call to status_message.
1857 (read_process_output): Increase readmax to 4096. Do not increase
1858 buffer size for datagram channels (default is now large enough).
1859
fcf0d299
ST
18602004-06-06 Steven Tamm <tamm@Steven-Tamms-Computer.local>
1861
1862 * macfns.c (x_create_tip_frame): Fix Mac OS X 10.1 compilation
1863 problem due to newly defined variable.
1864
0722292b
MB
18652004-06-06 Miles Bader <miles@gnu.org>
1866
1867 * xfaces.c (Fdisplay_supports_face_attributes_p): Give up
1868 immediately if non-interactive or not initialized.
1869
ddfb8369
RS
18702004-06-05 Richard M. Stallman <rms@gnu.org>
1871
1872 * minibuf.c (Fcompleting_read): Doc fix.
1873
57015754
AS
18742004-06-05 Andreas Schwab <schwab@suse.de>
1875
1876 * macfns.c (x_create_tip_frame): Fix declaration after statement.
1877
23715ea6
JB
18782004-06-05 Juanma Barranquero <lektu@terra.es>
1879
1880 * keymap.c (Fdescribe_vector): Fix docstring.
1881 (Fkey_description, Fglobal_key_binding): Fix typo in docstring.
1882
8e330b22
MB
18832004-06-05 Miles Bader <miles@gnu.org>
1884
1885 * xfaces.c (tty_supports_face_attributes_p): Make sure the specified
1886 attributes have different values than the default face.
1887
9742a3a6
EZ
18882004-06-04 Eli Zaretskii <eliz@gnu.org>
1889
1890 * xfaces.c (x_supports_face_attributes_p): Make this function
1891 conditional on HAVE_WINDOW_SYSTEM.
c8d09ad8
SM
1892 (Fdisplay_supports_face_attributes_p) [HAVE_WINDOW_SYSTEM]:
1893 Don't call x_supports_face_attributes_p if it was not compiled in.
9742a3a6 1894
9717e36c
MB
18952004-06-04 Miles Bader <miles@gnu.org>
1896
1897 * xfaces.c (tty_supports_face_attributes_p): New function, mostly
1898 from Ftty_supports_face_attributes_p.
1899 (x_supports_face_attributes_p): New function.
1900 (Ftty_supports_face_attributes_p): Function deleted.
1901 (Fdisplay_supports_face_attributes_p): New function.
1902 (syms_of_xfaces): Initialize Sdisplay_supports_face_attributes_p.
f9711de4 1903 (face_attr_equal_p): New function.
9717e36c
MB
1904 (lface_equal_p): Use it.
1905
52deb19f
JB
19062004-06-03 Juanma Barranquero <lektu@terra.es>
1907
1908 * w32fns.c (Fx_display_grayscale_p, Fw32_send_sys_command)
1909 (Vw32_color_map): Fix typo in docstring.
1910 (Fx_create_frame, Fw32_find_bdf_fonts, Fx_show_tip)
1911 (Fw32_unregister_hot_key, Fw32_reconstruct_hot_key):
1912 Make argument names match their use in docstring.
1913
86d373e6
JB
19142004-06-02 Juanma Barranquero <lektu@terra.es>
1915
1916 Work around bugs/problems with MinGW builds of graphics libraries
1917 called from MSVC builds of Emacs.
1918
1919 * image.c (lookup_image): Make pointer to img static.
1920 (png_read_from_memory): Disable "global" optimization.
1921
2fb0ce67
SM
19222004-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
1923
c8d09ad8
SM
1924 * eval.c (Fcondition_case): Fix usage. Simplify.
1925
2fb0ce67
SM
1926 * mem-limits.h (EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true.
1927
50bf7673
ST
19282004-05-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1929
1930 * macfns.c: Don't include ccl.h.
1931 [MAC_OSX]: Don't include QuickTime/QuickTime.h.
86d373e6
JB
1932 [!MAC_OSX]: Don't include alloca.h, Windows.h, Gestalt.h, or
1933 TextUtils.h.
c8d09ad8 1934 (Fx_create_frame): Sync with xfns.c. Initialize cursor descriptors.
50bf7673
ST
1935 (Fx_display_mm_height, Fx_display_mm_width): Calculate length from
1936 display height/width.
1937 (compute_tip_xy, Vx_max_tooltip_size): Declare.
1938 (unwind_create_tip_frame, compute_tip_xy): New functions.
1939 (x_create_tip_frame, Fx_show_tip, Fx_hide_tip): Sync with xfns.c.
1940 (syms_of_macfns): Initialize Qcancel_timer, Vx_max_tooltip_size,
1941 and last_show_tip_args.
2fb0ce67 1942
50bf7673
ST
1943 * macgui.h [!MAC_OSX]: Include Gestalt.h.
1944 (Cursor, No_Cursor): New defines.
c8d09ad8 1945 [!TARGET_API_MAC_CARBON] (SetPortWindowPort): New compatibility macro.
50bf7673
ST
1946 [!TARGET_API_MAC_CARBON] (arrow_cursor): Declare.
1947
1948 * macmenu.c (mac_menu_show, mac_dialog): Use SetPortWindowPort.
1949
1950 * macterm.c: Don't include Gestalt.h.
1951 (enum mouse_tracking_type, mouse_tracking_in_progress): Remove.
1952 (XDrawLine, XClearArea, XClearWindow, mac_draw_bitmap)
1953 (mac_set_clip_rectangle, mac_reset_clipping, XCreatePixmap)
1954 (XFillRectangle, mac_draw_rectangle, mac_draw_string_common)
1955 (mac_copy_area, mac_copy_area_with_mask, x_update_end)
1956 (construct_mouse_click, XTmouse_position)
1957 (x_scroll_bar_report_motion, x_calc_absolute_position)
1958 (do_mouse_moved, do_zoom_window, mac_do_receive_drag)
1959 (XTread_socket, make_mac_frame): Use SetPortWindowPort.
1960 (note_mouse_movement): Clear the mouse face and reset the pointer
1961 shape when the pointer goes outside the frame without grabbing.
1962 (mac_front_window): New function.
1963 (mac_window_to_frame): New macro.
1964 (XTmouse_position, x_scroll_bar_report_motion, do_window_update)
1965 (do_window_activate, do_window_deactivate, do_app_resume)
1966 (do_app_suspend, do_mouse_moved, do_menu_choice, do_grow_window)
1967 (do_zoom_window, mac_do_receive_drag, XTread_socket)
1968 (mac_check_for_quit_char): Use mac_front_window and/or
1969 mac_window_to_frame.
1970 (x_scroll_bar_handle_click): Set `(PORTION . WHOLE)' part in a
1971 scroll-bar click event.
1972 (mac_define_frame_cursor): Change the pointer shape.
c8d09ad8 1973 (x_free_frame_resources): Reset tip_window to NULL when it is disposed.
50bf7673 1974 [!TARGET_API_MAC_CARBON] (arrow_cursor): New variable.
c8d09ad8 1975 [!TARGET_API_MAC_CARBON] (do_init_managers): Initialize arrow_cursor.
50bf7673
ST
1976 (do_window_update): Don't do anything if the updated window is the
1977 tooltip window.
1978 (do_mouse_moved): Handle mouse movement events here (previously in
1979 XTread_socket). Clear the mouse face if
1980 dpyinfo->mouse_face_hidden is set.
1981 (do_os_event, do_events): Remove (now in XTread_socket).
1982 (XTread_socket): Immediately return if interrupt_input_blocked.
c8d09ad8
SM
1983 Loop until all the events in the queue are processed.
1984 Rearrange codes for mouse grabbing. Add tooltip support. Include the
50bf7673
ST
1985 contents of do_os_event and do_events. Remove mouse movement
1986 handling (now in do_mouse_moved). Add the case where
1987 Vmouse_highlight has an integer value.
1988 (NewMacWindow): Remove.
1989 (make_mac_frame): Do what NewMacWindow previously did. Don't do
1990 excess initializations.
1991 (make_mac_terminal_frame): Previous initializations in
1992 make_mac_frame are moved here.
c8d09ad8
SM
1993 (mac_initialize_display_info):
1994 Initialize dpyinfo->mouse_face_overlay and dpyinfo->mouse_face_hidden.
50bf7673
ST
1995
1996 * xdisp.c [MAC_OS] (No_Cursor): Remove variable.
1997 (define_frame_cursor1): Don't treat HAVE_CARBON as a special case.
1998
08fd1251
RS
19992004-05-29 Richard M. Stallman <rms@gnu.org>
2000
2001 * lisp.h (truncate_undo_list): Update decl.
2002
2003 * alloc.c (undo_outer_limit): New variable.
2004 (syms_of_alloc): Defvar it.
2005 (Fgarbage_collect): Pass undo_outer_limit to truncate_undo_list.
2006
2007 * undo.c (truncate_undo_list): New arg LIMITSIZE.
2008
2009 * alloc.c (lisp_align_malloc): Check for base == 0
2010 regardless of HAVE_POSIX_MEMALIGN.
2011 Clean up HAVE_POSIX_MEMALIGN handling of `err'.
2012
227ef0ff
SM
20132004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
2014
2015 * alloc.c: Undo Kim's recent changes and fix the same bug differently.
2016 (marker_blocks_pending_free): Remove.
2017 (Fgarbage_collect): Sweep after cleaning up undo-lists.
2018 Mark the undo lists after claning them up.
2019 Don't free block in marker_blocks_pending_free.
2020 (mark_buffer): Don't mark undo_list.
2021 (gc_sweep): Sweep hash-tables and strings first.
2022 Do free marker blocks that are empty.
2023
034a6113
SM
20242004-05-28 Jim Blandy <jimb@redhat.com>
2025
2026 * regex.c (print_partial_compiled_pattern): Add missing 'break'
2027 after 'case wordend'. For symbeg and symend, print to stderr,
2028 like the other cases.
2029
33594a8d
NF
20302004-05-28 Noah Friedman <friedman@splode.com>
2031
2032 * process.c (Fdelete_process): Do not call remove_process.
2033
ce50a847
SM
20342004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
2035
2036 * alloc.c (struct backtrace): Remove.
2037 (Fgarbage_collect): Use the new mark_backtrace.
2038
2039 * eval.c (mark_backtrace): New function.
2040
2041 * minibuf.c (run_exit_minibuf_hook): New function.
2042 (read_minibuf_unwind): Don't run exit-minibuffer-hook any more.
2043 (read_minibuf): Use separate unwind handler to run exit-minibuf-hook.
2044
1e8dae36
KS
20452004-05-27 Kim F. Storm <storm@cua.dk>
2046
2047 * xdisp.c (back_to_previous_visible_line_start): Skip backwards
2048 over display properties, e.g. images, that replace buffer text.
2049
846faa3b
KS
20502004-05-25 Kim F. Storm <storm@cua.dk>
2051
2052 * alloc.c (marker_blocks_pending_free): New var.
2053 (gc_sweep): Store free marker blocks on that list.
2054 (Fgarbage_collect): Free them after undo-list cleanup.
2055
2056 * process.c (wait_reading_process_input): Check connect_wait_mask
2057 before actually accepting connection in case it has already been
2058 accepted due to recursion.
2059
b6189c3b 20602004-05-23 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
6239a668 2061
ce50a847
SM
2062 * coding.c (Fset_safe_terminal_coding_system_internal):
2063 Set suppress_error in safe_terminal_coding, not terminal_coding.
6239a668 2064
71d5a208
RS
20652004-05-22 Richard M. Stallman <rms@gnu.org>
2066
2067 * alloc.c (Fmake_string): Doc fix.
2068
2069 * buffer.c (clone_per_buffer_values): Copy the alist of local vars,
2070 and the alist pairs too.
2071
2072 * casefiddle.c (casify_object): Return OBJ unchanged if not real char.
2073
2074 * emacs.c (main): Update copyright year.
2075
2076 * fileio.c (Fread_file_name): Expand DIR if not absolute.
2077
2078 * insdel.c (del_range_2, replace_range): Don't write an anchor
2079 if the gap is empty.
2080
2081 * xdisp.c (try_scrolling): If scroll-up-aggressively or
2082 scroll-down-aggressively is small but positive, put point
2083 near the screen edge.
2084
f63fd14e
JB
20852004-05-22 Juanma Barranquero <lektu@terra.es>
2086
2087 * keymap.c (Fdefine_key): Doc fix.
2088
4d12067c
KS
20892004-05-22 Kim F. Storm <storm@cua.dk>
2090
2091 * alloc.c (struct backtrace): Add debug_on_exit member.
2092 (Fgarbage_collect): Clear out buffer undo_list markers after gc_sweep.
2093 Identify those markers as Lisp_Misc_Free objects. Clear car and cdr of
2094 the removed cons cells.
2095 (mark_object): Undo previous change - disallow Lisp_Misc_Free objects.
2096 (gc_sweep): Clear cons_blocks before sweeping strings, so we don't have
2097 any cons cells pointing to unallocated stings.
2098 Do not lisp_free any marker blocks, as there may still be pointers
2099 to them from buffer undo lists at this stage of GC.
2100
2101 * keyboard.c (struct backtrace): Add debug_on_exit member.
2102 (Fcommand_execute): Clear it.
2103
931285e2
LT
21042004-05-20 Luc Teirlinck <teirllm@auburn.edu>
2105
2106 * intervals.c (lookup_char_property): Do not prematurely return nil.
2107
669fa600
SM
21082004-05-19 Jim Blandy <jimb@redhat.com>
2109
2110 Add support for new '\_<' and '\_>' regexp operators, matching the
f63fd14e 2111 beginning and end of symbols.
4d12067c 2112
669fa600
SM
2113 * regex.c (enum syntaxcode): Add Ssymbol.
2114 (init_syntax_once): Set the syntax for '_' to Ssymbol, not Sword.
2115 (re_opcode_t): New opcodes `symbeg' and `symend'.
2116 (print_partial_compiled_pattern): Print the new opcodes properly.
2117 (regex_compile): Parse the new operators.
ce50a847 2118 (analyse_first): Skip sym(beg|end) (they match only the empty string).
669fa600
SM
2119 (mutually_exclusive_p): `symend' is mutually exclusive with \s_ and
2120 \sw; `symbeg' is mutually exclusive with \S_ and \Sw.
2121 (re_match_2_internal): Match symbeg and symend.
2122
2123 * search.c (trivial_regexp_p): \_ is no longer a trivial regexp.
2124
0d8c2e5c
KS
21252004-05-19 Kim F. Storm <storm@cua.dk>
2126
2127 * .gdbinit (xsymbol): Fix last change.
2128
669fa600
SM
21292004-05-18 Stefan Monnier <monnier@iro.umontreal.ca>
2130
2131 * .gdbinit (xprintstr): New fun.
2132 (xstring, xprintsym): Use it.
2133
2134 * w32proc.c (create_child): Use INTMASK.
2135
2136 * alloc.c (Fgarbage_collect): Do all the marking before flushing
2137 unmarked elements of the undo list.
2138
9a6a4c40
DP
21392004-05-18 David Ponce <david@dponce.com>
2140
2141 * print.c (print): Reset print_depth before to call print_object.
2142
f3c4ec74
JR
21432004-05-18 Jason Rumney <jasonr@gnu.org>
2144
2145 * w32console.c: Prefix RIF functions with w32con_ to avoid
2146 namespace clash with functions in term.c and w32term.c.
2147
2148 * w32menu.c (add_menu_item, w32_menu_display_help)
2149 [USE_LISP_UNION_TYPE]: Cast from Lisp_Object using i member.
2150
0d8c2e5c 2151 * w32term.h (display_x_get_resource, vga_stdcolor_name): Add prototype.
f3c4ec74 2152
6be49c3a
EZ
21532004-05-18 Eli Zaretskii <eliz@gnu.org>
2154
4d0b9a0a
EZ
2155 * lisp.h (DECL_ALIGN): Remove restriction on MS-DOS systems.
2156
6be49c3a
EZ
2157 * msdos.c (syms_of_msdos): Initialize dos-unsupported-char-glyph
2158 with make_number.
2159 (IT_write_glyphs): Extract glyph from dos-unsupported-char-glyph
2160 with XINT.
2161
0bc90bba
KS
21622004-05-18 Kim F. Storm <storm@cua.dk>
2163
89d19988
KS
2164 * blockinput.h (INPUT_BLOCKED_P): New macros.
2165
2166 * keyboard.c (Frecursive_edit): Return immediately if input blocked.
2167 (Ftop_level): Unblock input if blocked.
2168
0bc90bba
KS
2169 * buffer.h (GET_OVERLAYS_AT): New macro.
2170 * msdos.c (IT_note_mouse_highlight): Use it.
2171 * textprop.c (get_char_property_and_overlay): Use it.
2172 * xdisp.c (next_overlay_change, note_mouse_highlight): Use it.
2173 * xfaces.c (face_at_buffer_position): Use it.
2174
2175 * print.c (print_object): Increase buf size.
2176
653bd0f6
JR
21772004-05-17 Jason Rumney <jasonr@gnu.org>
2178
2179 * w32fns.c (Fw32_register_hot_key, Fw32_unregister_hot_key)
2180 (Fw32_toggle_lock_key) [USE_LISP_UNION_TYPE]: Cast from
2181 Lisp_Object using i member.
2182 (w32_quit_key): Rename from Vw32_quit_key, and make an int.
2183 (syms_of_w32fns, globals_of_w32fns): Use Lisp_Object and int
2184 consistently.
2185
2186 * w32proc.c (create_child): Use make_number instead of masking pid.
2187
2188 * w32fns.c (w32_color_map_lookup): Return a Lisp_Object.
2189 (x_to_w32_charset, w32_to_x_charset, w32_to_all_x_charsets):
2190 Use EQ to compare Lisp_Objects.
2191 (w32_parse_hot_key): Use int for lisp_modifiers consistently.
2192
2193 * w32term.c (w32_num_mouse_buttons): Rename from
2194 Vw32_num_mouse_buttons and make it an int.
2195
2196 * w32.c (init_environment): Use it.
2197
2198 * w32fns.c (w32_wnd_proc): Likewise.
2199
2200 * w32proc.c (w32_pipe_read_delay): Rename from
2201 Vw32_pipe_read_delay and make it an int.
2202
2203 * w32.c (_sys_read_ahead): Use it.
2204
2205 * lisp.h (egetenv) [USE_CRT_DLL]: Remove condition.
2206
2207 * w32proc.c (create_child) [USE_LSB_TAG]: Don't try to mask pid.
2208
2209 * w32inevt.c (w32_console_mouse_position, do_mouse_event)
2210 (key_event): Don't mix Lisp_Object and int.
2211
2212 * w32heap.c (init_heap) [USE_LSB_TAG]: Don't check heap location.
2213
2214 * keyboard.c (kbd_buffer_get_event): Don't use event->code and
2215 modifiers in language change event.
2216
54b53ba7
KS
22172004-05-17 Kim F. Storm <storm@cua.dk>
2218
2219 * alloc.c (mark_object): Ignore Lisp_Misc_Free objects.
2220 Such objects may be freed markers which still exist on an undo list.
2221
6e86a75d
JB
22222004-05-16 Juanma Barranquero <lektu@terra.es>
2223
2224 * data.c (Fset_default): Make argument names match their use in
2225 docstring.
2226
fc80da24
AS
22272004-05-15 Andreas Schwab <schwab@suse.de>
2228
2229 * emacs.c (gdb_array_mark_flag): Define.
2230 * .gdbinit: Mask off gdb_array_mark_flag from vector sizes.
2231
c1380aa6
EZ
22322004-05-15 Eli Zaretskii <eliz@gnu.org>
2233
2234 * lisp.h (DECL_ALIGN) [MSDOS]: Don't define DECL_ALIGN to use
2235 __attribute__((__aligned__)), so that USE_LSB_TAG would not become
2236 defined for the MS-DOS build.
2237
89458937
SM
22382004-05-14 Stefan Monnier <monnier@iro.umontreal.ca>
2239
2240 * w32fns.c (Fw32_define_rgb_color): Avoid XSET.
2241
08020f9a
KH
22422004-05-14 Kenichi Handa <handa@m17n.org>
2243
2244 * ccl.c (Fccl_execute_on_string): Fix setting elements of STATUS.
2245
a433994a
ST
22462004-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2247
2248 * lisp.h (Vx_resource_name, Vx_resource_class): Move from xfns.c
2249 section to frame.c section.
2250 (Fxw_display_color_p, Fx_file_dialog): Declare if
89458937 2251 HAVE_WINDOW_SYSTEM defined.
0d8c2e5c 2252
a433994a 2253 * macfns.c (Fx_create_frame): Fix int/Lisp_Object mixup.
0d8c2e5c 2254
a433994a 2255 * macmenu.c (set_frame_menubar): Use NILP to test a lisp value.
0d8c2e5c 2256
a433994a
ST
2257 * macterm.c (mac_get_emulated_btn, mac_event_to_emacs_modifiers)
2258 (mac_get_mouse_btn): Use NILP and EQ to test/compare lisp values.
2259 (XTread_socket): Fix int/Lisp_Object mixup.
2260 (mac_check_for_quit_char): Fix pointer/Lisp_Object mixup.
0d8c2e5c 2261
a433994a
ST
2262 * macterm.h (struct frame, struct face, struct image)
2263 (display_x_get_resource, Fx_display_color_p)
89458937
SM
2264 (Fx_display_grayscale_p, Fx_display_planes, x_free_gcs):
2265 Add prototypes.
a433994a 2266
b51a51b9
KS
22672004-05-14 Kim F. Storm <storm@cua.dk>
2268
2269 * process.c (wait_reading_process_input): Make reentrant.
2270 Make Available and Connecting non-static. Save and restore value
2271 of waiting_for_user_input_p.
2272
2bde1dd8
KS
22732004-05-13 Kim F. Storm <storm@cua.dk>
2274
2275 * keyboard.c (mark_kboards): Don't mark x and y members
2276 that are overloaded in selection request events.
2277
a267ab4d
SM
22782004-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
2279
2280 * lisp.h (USE_LSB_TAG): Make it the default when it is known to work.
2281
eb15ce9e
GM
22822004-05-13 Glenn Morris <gmorris@ast.cam.ac.uk>
2283
2284 * window.c (Fdisplay_buffer, Fsplit_window)
2285 (split-height-threshold): Doc fix.
2286
7fc92635
JB
22872004-05-13 Juanma Barranquero <lektu@terra.es>
2288
2289 * xfaces.c (Ftty_supports_face_attributes_p)
2290 (Finternal_copy_lisp_face): Fix typo in docstring.
2291 (Finternal_get_lisp_face_attribute): Fix docstring.
2292
1ec2a572
JD
22932004-05-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2294
2295 * xfns.c (syms_of_xfns): Provide x-toolkit also for GTK.
2296
ae9292e0
ST
22972004-05-11 Steven Tamm <steventamm@mac.com>
2298
2299 * macfns.c (Fx_create_frame): Default to using tool-bar by
2300 setting tool-bar-lines to 1 in default-frame-alist.
2301
23022004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
ea1aaa6f
ST
2303
2304 * image.c (xpm_scan, xpm_make_color_table_v, xpm_put_color_table_v)
2305 (xpm_get_color_table_v, xpm_make_color_table_h)
2306 (xpm_put_color_table_h, xpm_get_color_table_h)
2307 (xpm_str_to_color_key, xpm_load_image, xpm_load)
2308 (syms_of_image): Support XPM on Carbon Emacs. Does not
a267ab4d 2309 depend on libXpm, but only supports XPM version 3 without extensions.
ea1aaa6f 2310
fe97e8df
ST
23112004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2312
a267ab4d 2313 * macterm.c (x_flush, XTframe_up_to_date): Use FRAME_MAC_P
fe97e8df
ST
2314 instead of FRAME_X_P
2315
b47e779e
KS
23162004-05-11 Kim F. Storm <storm@cua.dk>
2317
2318 * process.c (read_process_output): Grow decoding_buf when needed;
2319 this could cause a crash in allocate_string and compact_small_strings.
2320
cdc9b845
EZ
23212004-04-29 Jim Blandy <jimb@redhat.com>
2322
2323 * regex.c (mutually_exclusive_p): In 'case wordbeg', compare op2
2324 against proper opcode.
2325
aa7094ba
JB
23262004-05-10 Juanma Barranquero <lektu@terra.es>
2327
2328 * process.c (Fstart_process): Fix docstring.
2329
2330 * charset.c (Fget_unused_iso_final_char): Fix typos in docstring.
2331 (Fchar_bytes, Fchar_width, Fstring_width, Fchar_direction)
2332 (Fsplit_char, Fchar_charset): Make argument names match their use
2333 in docstring.
2334
e109331a
RS
23352004-05-10 Richard M. Stallman <rms@gnu.org>
2336
2337 * print.c (print_preprocess): Use being_printed, loop_count and
2338 halftail to detect overdeep nesting and cyclic cdr chains.
2339
9a28b921
AS
23402004-05-10 Andreas Schwab <schwab@suse.de>
2341
2342 * lisp.h: Declare Fmake_symbolic_link.
2343
2344 * fileio.c (Frename_file): Remove extra argument in call to
2345 Fmake_symbolic_link.
2346
e2c02c1a
KS
23472004-05-10 Kim F. Storm <storm@cua.dk>
2348
2349 * xdisp.c (calc_line_height_property): Use string position when
2350 object is a string.
2351
cfe9d13e
KH
23522004-05-10 Kenichi Handa <handa@m17n.org>
2353
a57e8159
KH
2354 * print.c (temp_output_buffer_setup): Bind inhibit-read-only and
2355 inhibit-modification-hooks to t temporarily before calling
2356 Ferase_buffer.
2357
2358 * xfns.c (x_create_tip_frame): Bind inhibit-read-only and
2359 inhibit-modification-hooks to t temporarily before calling
2360 Ferase_buffer.
2361
2362 * w32fns.c (x_create_tip_frame): Bind inhibit-read-only and
2363 inhibit-modification-hooks to t temporarily before calling
2364 Ferase_buffer.
2365
cfe9d13e
KH
2366 * fns.c (count_combining): Delete it.
2367 (concat): Don't check combining bytes.
2368
ceb96489
JR
23692004-05-09 Jason Rumney <jasonr@gnu.org>
2370
2371 * w32fns.c (Vw32_ansi_code_page): New Lisp variable.
2372 (globals_of_w32fns): Set it.
2373
b6189c3b 23742004-05-09 Piet van Oostrum <piet@cs.uu.nl>
b1c661c7
JB
2375
2376 * data.c (Fquo): Simplify.
2377
28712a21
JB
23782004-05-08 Peter Whaite <emacs@whaite.ca> (tiny change)
2379
2380 * data.c (Fquo): If any argument is float, do the computation in
2381 floating point.
2382
0f0af7a8
JB
23832004-05-08 Juanma Barranquero <lektu@terra.es>
2384
88214ef6
JB
2385 * process.c (Fwaiting_for_user_input_p, Fmake_network_process)
2386 (Fset_process_query_on_exit_flag, Vprocess_adaptive_read_buffering):
2387 Fix spelling of Emacs on docstring.
2388 (Fset_process_coding_system, Fprocess_coding_system)
2389 (Fset_process_filter_multibyte, Fprocess_filter_multibyte_p):
2390 Make argument names match their use in docstring.
2391 (Fprocess_id, Fprocess_query_on_exit_flag, Finterrupt_process):
2392 Fix docstring.
2393
0f0af7a8
JB
2394 * editfns.c (Finsert_buffer_substring): Make argument names match their
2395 use in docstring.
2396
2397 * syntax.c (Fmodify_syntax_entry): Fix docstring.
2398
2a316a84
ST
23992004-05-07 Steven Tamm <steventamm@mac.com>
2400
2401 * macterm.c (mac_check_for_quit_char): Adding BLOCK_INPUT
2402 around call to ReceiveEvent to avoid certain crashes.
2403
24042004-05-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
0d8c2e5c 2405
2a316a84
ST
2406 * macterm.c (mac_draw_line_to_pixmap, XCreatePixmapFromBitmapData)
2407 (mac_fill_rectangle_to_pixmap, mac_draw_rectangle_to_pixmap)
2408 (mac_copy_area_to_pixmap, mac_copy_area_with_mask_to_pixmap):
2409 Save/restore the current graphics port and device handle when
2410 drawing into an offscreen graphics world.
2411
2412 * image.c [MAC_OS] (XPutPixel, XGetPixel, image_load_qt_1)
2413 (gif_load): Likewise.
2414
ab80314b
JB
24152004-05-07 Juanma Barranquero <lektu@terra.es>
2416
2417 * window.c (Fset_window_buffer): Fix docstring.
2418
70646bb5
TTN
24192004-05-06 Thien-Thi Nguyen <ttn@gnu.org>
2420
2421 * emacs.c (main) [VMS]: Fix var ref.
2422
b6189c3b 24232004-05-06 Romain Francoise <romain@orebokech.com>
b03a4fdd
JB
2424
2425 * data.c (Fsetq_default): Fix docstring.
2426
279d3293
JR
24272004-05-06 Jason Rumney <jasonr@gnu.org>
2428
2429 * image.c (Display) [HAVE_NTGUI]: Redefine while loading xpm.h
2430 to avoid name clash.
2431
f72b5416
JD
24322004-05-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2433
2434 * fileio.c (barf_or_query_if_file_exists): Use lstat.
2435 (Frename_file): Handle renaming of symlinks across file systems.
440c7d00 2436 (Frename_file): Put symlink handling inside #ifdef S_IFLNK.
f72b5416 2437
6ab66799
KS
24382004-05-04 Kim F. Storm <storm@cua.dk>
2439
2440 * xdisp.c (Qtotal): New var.
2441 (syms_of_xdisp): Intern and staticpro it.
2442 (calc_line_height_property): New arg total. Set it if
2443 line-spacing property has format (total . VALUE).
2444 (x_produce_glyphs): Ignore line-spacing if line-height is 0.
2445 Handle total line-spacing property.
2446
ab2d724b
JD
24472004-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2448
2449 * gtkutil.c (xg_update_scrollbar_pos): Call XClearWindow to clear
2450 "under" scroll bar when size/position changes.
2451
238add5e
JR
24522004-05-03 Jason Rumney <jasonr@gnu.org>
2453
2454 * makefile.nt: Remove.
2455
1644f4e4
EZ
24562004-05-02 Eli Zaretskii <eliz@gnu.org>
2457
a267ab4d
SM
2458 * syntax.h (SET_RAW_SYNTAX_ENTRY, SYNTAX_ENTRY_INT):
2459 Avoid compiler warnings.
05fdbeb8 2460
1644f4e4
EZ
2461 * Makefile.in (region-cache.o): Depend on config.h.
2462
b6189c3b 24632004-05-02 Romain Francoise <romain@orebokech.com>
6cbc951e
SM
2464
2465 * indent.c (compute_motion): Save vpos in prev_vpos when dealing
2466 with continuation lines, too.
2467
2b98b088
TTN
24682004-05-02 Thien-Thi Nguyen <ttn@gnu.org>
2469
2470 * syssignal.h (init_signals): Move decl outside `#ifdef POSIX_SIGNALS'.
2471
d9bf7950
SM
24722004-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
2473
2474 * xdisp.c (calc_line_height_property): YAILOM (yet another
2475 int/Lisp_Object mixup).
2476
affa509c
EZ
24772004-05-01 Eli Zaretskii <eliz@gnu.org>
2478
2479 * msdos.c (top-level): Add "#pragma pack(0)" after <dir.h>, to
2480 undo bad effect of pack(4) in some versions of system headers.
2481
07c07cfe
JR
24822004-05-01 Jason Rumney <jasonr@gnu.org>
2483
2484 * w32term.c (x_draw_hollow_cursor): Sync with xterm.c
2485
e71caa4e
KS
24862004-04-30 Kim F. Storm <storm@cua.dk>
2487
2488 * buffer.c (syms_of_buffer) <line-spacing>: Allow float value.
b2b55d03 2489 (syms_of_buffer) <cursor-type>: Doc fix.
e71caa4e
KS
2490
2491 * dispextern.h (struct it): Remove member use_default_face.
2492 Add members override_ascent, override_descent, override_boff.
2493
2494 * xdisp.c (init_iterator): Handle line-spacing float value.
2495 Initialize override_ascent member.
2496 (append_space_for_newline): Reset override_ascent.
2497 Remove use_default_face.
2498 (calc_line_height_property): New function to calculate value of
2499 line-height and line-spacing properties. Look at overlays, too.
2500 Set override_ascent, override_descent, override_boff members when
2501 using another face than the current face. Float values are now
2502 relative to the frame default font, by default; accept a cons
2503 of ratio and face name to specify value relative to a specific face.
2504 (x_produce_glyphs): Use calc_line_height_property.
2505 Use override_ascent etc. when set to handle different face heights.
2506 A negative line-spacing property value is interpreted as a total
2507 line height, rather than inter-line spacing.
2508 (note_mouse_highlight): Allocate room for 40 overlays initially.
2509
0fddae66
SM
25102004-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
2511
2512 * data.c (Fsubr_name): New fun.
2513 (syms_of_data): Defsubr it.
2514
712d23dc
KS
25152004-04-29 Kim F. Storm <storm@cua.dk>
2516
2517 * xdisp.c (null_glyph_slice): New var.
2518 (append_glyph, append_composite_glyph, append_stretch_glyph):
2519 Use it to initialize glyph slice.
2520
033ad8c6
SM
25212004-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
2522
2523 * xdisp.c (x_produce_glyphs): Fix the proverbial int/Lisp_Object mixup.
2524 (on_hot_spot_p): Make sure we always return a value.
2525 (Flookup_image_map): Remove unused var ix and iy.
2526 (note_mode_line_or_margin_highlight): Remove unused var `image'.
2527
93397360
EZ
25282004-04-27 Eli Zaretskii <eliz@gnu.org>
2529
2530 * msdos.c (init_environment): If one of the TMP... environment
2531 variables is set to a drive letter without a trailing slash,
2532 append a slash.
2533
0c54865e
EZ
25342004-04-27 Matthew Mundell <matt@mundell.ukfsn.org>
2535
2536 * editfns.c (lisp_time_argument): Provide externally.
2537
2538 * fileio.c (Fset_file_times): New function.
2539 (syms_of_fileio): Intern and staticpro it.
2540
d3b111bd
KS
25412004-04-27 Kim F. Storm <storm@cua.dk>
2542
07dc1231
KS
2543 * xdisp.c (x_produce_glyphs): Fix last change; handle newline in
2544 header line strings.
2545
360fe9d2
KS
2546 * dispextern.h (struct it): New member use_default_face.
2547
d3b111bd
KS
2548 * xdisp.c (Qline_height): New variable.
2549 (syms_of_xdisp): Intern and staticpro it.
2550 (append_space_for_newline): Partially undo 2004-04-25 change;
2551 add default_face_p arg, and restore callers.
2552 Clear it->use_default_face after use.
2553 (x_produce_glyphs): Set default font for ascii char if
2554 it->use_default_font is set. Change line-spacing property to set
2555 just extra line spacing. Handle new line-height property.
2556
0448588b
AS
25572004-04-26 Andreas Schwab <schwab@suse.de>
2558
2559 * print.c (print_object): Print non-ascii characters in bool
2560 vector representation as octal escapes.
2561
2562 * lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define.
2563 * print.c (print_object): Use it instead of BITS_PER_CHAR for
2564 bool vectors.
2565 * lread.c (read1): Likewise.
2566 * alloc.c (Fmake_bool_vector): Likewise.
2567 * data.c (Faref, Faset): Likewise.
2568 * fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray)
2569 (mapcar1): Likewise.
d3b111bd 2570
536d6baa
ST
25712004-04-26 Steven Tamm <tamm@Steven-Tamms-Computer.local>
2572
2573 * lread.c (init_lread): Fixing typo HAVE_CARBON test logic
2574
ae11577a
MB
25752004-04-26 Miles Bader <miles@gnu.org>
2576
2577 * lisp.h (CYCLE_CHECK): Macro moved from xfaces.c.
2578
e198ba87
JB
25792004-04-26 Juanma Barranquero <lektu@terra.es>
2580
2581 * buffer.c (Fpop_to_buffer): Fix docstring.
2582
f3d5f92d 25832004-04-26 Steven Tamm <steventamm@mac.com>
e198ba87 2584
f3d5f92d
ST
2585 * lread.c (init_lread): Don't display missing lisp directory
2586 warnings with Carbon Emacs because self-contained bundled Emacs
e198ba87 2587 may be built without correct installation path.
f3d5f92d 2588
03e35edc
KS
25892004-04-25 Kim F. Storm <storm@cua.dk>
2590
9ff3aa31
KS
2591 * macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
2592
2593 * xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
2594
03e35edc
KS
2595 * xdisp.c (append_space_for_newline): Rename from append_space.
2596 Remove DEFAULT_FACE_P arg; always use current face. Callers changed.
2597 (x_produce_glyphs): Handle line-spacing property on newline char.
2598 If value is t, adjust ascent and descent to fit current row height.
2599 If value is an integer or float, set extra_line_spacing to integer
2600 value, or to float value x current line height.
2601
f24814e0
KH
26022004-04-23 Kenichi Handa <handa@m17n.org>
2603
2604 * fontset.c (Finternal_char_font): If POSITION is nil, return
2605 font for displaying CH with the default face.
2606
d814862a
JB
26072004-04-23 Juanma Barranquero <lektu@terra.es>
2608
2609 * makefile.w32-in: Add "-*- makefile -*-" mode tag.
2610
063a45c5
SM
26112004-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
2612
2613 * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]:
2614 Don't make assumptions about the relative place of i and val.
2615 (EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well.
2616
ae7ab2d3
KS
26172004-04-21 Kim F. Storm <storm@cua.dk>
2618
2619 * dispextern.h (struct glyph_slice): New struct.
2620 (struct glyph): New member slice.
2621 (GLYPH_SLICE_EQUAL_P): New macro.
2622 (GLYPH_EQUAL_P): Use it.
2623 (struct glyph_string): New member slice.
2624 (struct it_slice): New struct.
2625 (struct it): New member slice, add member to stack too.
2626 New member constrain_row_ascent_descent_p.
2627 (image_ascent): Add prototype.
2628
2629 * dispnew.c (buffer_posn_from_coords): Return full image width
2630 and height even for image slices (posn is relative to full image).
2631 (marginal_area_string): Adjust x0,y0 for image slice.
2632
2633 * image.c (image_ascent): Add slice arg; calculate ascent for
2634 image slice (or full image).
2635
2636 * keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns.
2637 (syms_of_keyboard): Defsubr them.
2638
2639 * lisp.h (pos_visible_p): Fix prototype.
2640
c62aec78 2641 * macterm.c (x_draw_relief_rect): Add top_p and bot_p args.
ae7ab2d3
KS
2642 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
2643 (x_draw_image_foreground, x_draw_image_relief)
2644 (x_draw_image_foreground_1, x_draw_image_glyph_string):
2645 Draw sliced images.
2646
2647 * w32term.c (w32_draw_relief_rect): Add top_p and bot_p args.
2648 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
2649 (x_draw_image_foreground, x_draw_image_relief)
2650 (w32_draw_image_foreground_1, x_draw_image_glyph_string):
2651 Draw sliced images.
2652
2653 * w32term.h (image_ascent): Remove prototype.
2654
2655 * window.c (Fpos_visible_in_window_p): Return pixel position if
2656 PARTIALLY arg is non-nil. Simplify. Doc fix.
2657 (Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg
2658 to return/set vscroll in pixels.
2659
2660 * window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
2661
2662 * xdisp.c (Qslice): New variable.
2663 (syms_of_xdisp): Intern and staticpro it.
2664 (pos_visible_p): Return pixel position in new x and y args.
2665 (init_iterator): Reset it->slice info.
2666 (handle_display_prop): Parse (slice ...) property.
2667 (push_it, pop_it): Save/restore slice info.
2668 (make_cursor_line_fully_visible): Fix 2004-04-14 change. Do not
2669 force repositioning of tall row if window is vscrolled, as that
2670 would reset vscroll.
2671 (append_space): Set it->constrain_row_ascent_descent_p to avoid
2672 increasing row height if row is non-empty.
2673 (fill_image_glyph_string): Copy slice info.
2674 (take_vertical_position_into_account): Simplify.
2675 (produce_image_glyph): Handle iterator slice info, setup glyph
2676 slice info. Do not force minimum line height.
2677 (x_produce_glyphs): If it->constrain_row_ascent_descent_p is set,
2678 do not increase height (ascent/descent) of non-empty row when
2679 adding normal character glyph; instead reduce glyph ascent/descent
2680 appropriately; if row is higher than current glyph, adjust glyph
2681 descent/ascent to reposition glyph within the existing row.
2682 Likewise, when char is newline, only set ascent/descent if row is
2683 currently empty.
2684 (note_mouse_highlight): Handle hotspots with sliced image.
2685
2686 * xterm.c (x_draw_relief_rect): Add top_p and bot_p args.
2687 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
2688 (x_draw_image_foreground, x_draw_image_relief)
2689 (x_draw_image_foreground_1, x_draw_image_glyph_string):
2690 Draw sliced images.
2691
2692 * xterm.h (image_ascent): Remove prototype.
2693
d58f8753
SM
26942004-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
2695
2696 * keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup.
2697
4ce2719d
JPW
26982004-04-20 John Paul Wallington <jpw@gnu.org>
2699
2700 * fns.c (Fassoc, Feql): Fix indentation.
2701
d58f8753 2702 * fontset.c (regularize_fontname): Rename from regulalize_fontname.
4ce2719d 2703
95f8c3b9
JPW
27042004-04-19 John Paul Wallington <jpw@gnu.org>
2705
2706 * fns.c (Feql): New function.
d58f8753 2707 (syms_of_fns): Defsubr it.
95f8c3b9 2708
b7e85537
JR
27092004-04-18 Jason Rumney <jasonr@gnu.org>
2710
2711 * w32select.c (Fw32_set_clipboard_data): Get sequence number
2712 after closing the clipboard.
2713
5a72efd4
LT
27142004-04-16 Luc Teirlinck <teirllm@auburn.edu>
2715
2716 * buffer.c (Fbuffer_base_buffer): Doc fix.
2717
20dc8583
KS
27182004-04-17 Kim F. Storm <storm@cua.dk>
2719
60962ec4
KS
2720 * keymap.c (Fkey_description): Add optional PREFIX arg.
2721 Combine prefix with KEYS to make up the full key sequence to describe.
2722 Correlate meta_prefix_char and following (simple) key to describe
2723 as meta modifier. All callers changed.
2724 (describe_map): Rename arg `keys' to `prefix'. Remove local
2725 `elt_prefix' var. Use Fkey_description with prefix instead of
2726 elt_prefix combined with Fsingle_key_description.
2727 (describe_vector): Declare static. Replace arg `elt_prefix' with
2728 `prefix'. Add KEYMAP_P arg. Add local var `elt_prefix'; use it
2729 if !KEYMAP_P. Use Fkey_description with prefix instead of
2730 Fsingle_key_description.
2731
2732 * keymap.h (Fkey_description): Fix prototype.
2733 (describe_vector): Remove prototype.
2734
409368b9
KS
2735 * xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0.
2736
20dc8583
KS
2737 * image.c (PNG_BG_COLOR_SHIFT): Remove.
2738 (png_load): Fix calculation of transparent background color on X
2739 and W32 platforms.
2740
75c5501b
JB
27412004-04-16 Juanma Barranquero <lektu@terra.es>
2742
2743 * xdisp.c (try_scrolling): Make sure `scroll-conservatively' is
2744 not too large before computing how much to scroll.
2745
da879ae8
SM
27462004-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
2747
2748 * dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler.
2749
d01ca4a8
LT
27502004-04-14 Luc Teirlinck <teirllm@auburn.edu>
2751
2752 * fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime):
2753 Add hyperlink to Elisp manual to the docstring.
2754
572943b3
SM
27552004-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
2756
2757 * callint.c (fix_command): Use XDCR.
2758
5e30a0fb
NR
27592004-04-14 Nick Roberts <nick@nick.uklinux.net>
2760
2761 * window.c (Fget_lru_window): Doc fix.
2762
a27ddfaf
KS
27632004-04-14 Kim F. Storm <storm@cua.dk>
2764
2765 * editfns.c (Fformat): Fix allocation size of precision array.
2766
2767 * dispnew.c (update_window): Only set changed_p if
2768 scrolling_window actually did scroll.
2769 (scrolling_window): Only return 1 if we actually did scroll.
2770
2771 * xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor
2772 height to glyph height when cursor row is not fully visible.
2773 (make_cursor_line_fully_visible): Add FORCE_P arg to return
2774 failure in case row is higher than window. Callers changed.
2775 (try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd).
2776 Try to scroll partially visible, higher-than-window cursor row.
2777 (redisplay_window): Always try to scroll partially visible,
2778 higher-than-window cursor row - both initially and again with
2779 centering_position = 0.
2780 Clear desired matrix before retrying with centering_position = 0.
2781
da879ae8
SM
27822004-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
2783
2784 * syntax.c (scan_lists): Simplify backward string scan.
2785 Fix off-by-one boundary check for string and comment fences.
2786
5fc16e8e
SM
27872004-04-13 Joe Buehler <jbuehler@hekimian.com>
2788
2789 * sheap.c, unexcw.c: New files.
2790
c9aac8e6
LT
27912004-04-12 Luc Teirlinck <teirllm@auburn.edu>
2792
2793 * buffer.c (Fmake_indirect_buffer): Throw an error if the intended
2794 base buffer has been killed. Correct the error message if the
2795 base buffer does not exist.
2796
1e88a355
SM
27972004-04-12 Joe Buehler <jbuehler@hekimian.com>
2798
2799 * s/cygwin.h: Changes for Cygwin unexec() support, changes in
2800 Cygwin itself. Add support for Xaw3d scrollbars.
2801
2802 * puresize.h: Set up PURE_P() for Cygwin unexec() support.
2803
2804 * lastfile.c: Define my_endbss[] for Cygwin unexec() support.
2805
2806 * gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(),
2807 before Cygwin unexec.
2808
2809 * Makefile.in: Link changes for Cygwin unexec() support.
2810
8dbff9a0
AS
28112004-04-12 Andreas Schwab <schwab@suse.de>
2812
2813 * buffer.c (Fmake_indirect_buffer): Check that NAME is a string.
2814
54dffe35
LT
28152004-04-11 Luc Teirlinck <teirllm@auburn.edu>
2816
2817 * buffer.c (Fgenerate_new_buffer_name): Return NAME argument if
2818 IGNORE argument equals NAME. Doc fix.
2819
99a72bdf
MY
28202004-04-11 Masatake YAMATO <jet@gyve.org>
2821
1e88a355 2822 * buffer.c (fix_start_end_in_overlays): Make overlays
99a72bdf
MY
2823 empty if they are backwards.
2824
40899d7b
SM
28252004-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
2826
2827 * xfaces.c (face_color_supported_p): Fix compilation without X11.
2828
f8f853de
SM
28292004-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
2830
2831 * doc.c (Fsnarf_documentation): Ignore new file name entries.
2832
c953fe1b
KS
28332004-04-06 Kim F. Storm <storm@cua.dk>
2834
661e85c1
KS
2835 * msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden.
2836 (dos_rawgetc): Set mouse_face_hidden after clearing highlight.
2837
2838 * w32term.c (w32_read_socket): Set mouse_face_hidden after
2839 clearing highlight.
2840
2841 * xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden.
2842
2843 * xterm.c (handle_one_xevent): Set mouse_face_hidden after
2844 clearing highlight.
2845
c953fe1b
KS
2846 * indent.c (vmotion): Do not reserve one column for continuation
2847 marks on window frames.
2848
c1994268
EZ
28492004-04-04 Eli Zaretskii <eliz@gnu.org>
2850
2851 * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings
2852 from GCC.
2853
9f691b0d
SM
28542004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
2855
2856 * .gdbinit-union: Remove.
2857
2858 * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION.
2859 (xgetptr, xgetint, xgettype): New funs. Use them everywhere.
2860 ($nonvalbits): Remove.
2861 ($valmask): Set it by calling xreload to avoid redundancy.
2862
2863 * emacs.c (gdb_use_union, gdb_use_lsb): New vars.
2864 (gdb_emacs_intbits): Remove.
2865
7a8560d7
JD
28662004-03-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2867
9f691b0d 2868 * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes.
7a8560d7 2869
3c8111fc
KH
28702004-03-30 Kenichi Handa <handa@m17n.org>
2871
2872 * editfns.c (Fformat): Fix initialization of the array info.
2873
48a0bce4
KS
28742004-03-30 Kim F. Storm <storm@cua.dk>
2875
2876 * xterm.c (x_mouse_click_focus_ignore_position): New var.
2877 (syms_of_xterm): DEFVAR_BOOL it.
2878 (ignore_next_mouse_click_timeout): New var.
2879 (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify.
2880 Use it to filter mouse clicks following focus event.
2881
1cd0066c
KS
28822004-03-29 David Ponce <david@dponce.com>
2883
2884 * callint.c (Fcall_interactively): Fix last change.
2885
adb3b353
SM
28862004-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
2887
2888 * eval.c (Fcommandp): Simplify.
2889
2890 * data.c (Finteractive_form): Rename from Fsubr_interactive_form.
2891 Extend to handle all kinds of functions.
2892
2893 * lisp.h (Finteractive_form): Declare.
2894
2895 * callint.c (Fcall_interactively): Use it.
2896
6fc4c9c9
KS
28972004-03-26 Kim F. Storm <storm@cua.dk>
2898
2899 * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error
2900 to catch errors in calc_pixel_width_or_height during redisplay.
2901
abdb9b83
MY
29022004-03-26 Masatake YAMATO <jet@gyve.org>
2903
b17856dd 2904 * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range.
abdb9b83 2905
b17856dd 2906 * lisp.h (fix_start_end_in_overlays): Likewise.
abdb9b83 2907
b17856dd 2908 * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays.
abdb9b83 2909
b17856dd 2910 * editfns.c (Ftranspose_regions): Likewise.
abdb9b83 2911
e8a84b6c
JD
29122004-03-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2913
b17856dd 2914 * xterm.c (handle_one_xevent): Do not pass key press events to GTK.
e8a84b6c 2915
36a3fd05
RS
29162004-03-19 Richard M. Stallman <rms@gnu.org>
2917
2918 * s/sol2-6.h: Delete previous change.
2919
ab24c127
KS
29202004-03-19 Kim F. Storm <storm@cua.dk>
2921
2922 * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
2923 to_charpos corresponds to newline in right fringe. Use local
2924 BUFFER_POS_REACHED_P macro.
2925
992126de
JD
29262004-03-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2927
2928 * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
2929 to compile on non-window system.
2930
45dbfc84
KS
29312004-03-19 Kim F. Storm <storm@cua.dk>
2932
2933 * dispextern.h (calc_pixel_width_or_height): Add prototype.
2934
2935 * image.c (Qcenter): Move to xdisp.c.
2936
2937 * xdisp.c (Qcenter): Declare here.
adb3b353 2938 (syms_of_xdisp): Intern and staticpro it.
45dbfc84
KS
2939 (handle_single_display_prop): Allow space display property on all
2940 platforms.
2941 (display_mode_line): Set mode_line_p before displaying line.
2942 (calc_pixel_width_or_height): Declare extern. Add separate :align-to
2943 handling. Remove complex cases for fringes and scroll-bars.
2944 Add left, right, and center alignment positions. Add text (area)
2945 width/height. Return width or height for image specs.
2946 (produce_stretch_glyph): Improve handling of :align-to. Is now
2947 relative to left of text area by default, but other base offsets
2948 can be specified -- also for text lines.
2949
2950 * term.c (produce_glyphs): Handle IT_STRETCH.
2951 (produce_stretch_glyph): New function to handle space width and
2952 align-to display properties on non-window systems.
2953
37264101
SM
29542004-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
2955
2956 * fileio.c (Fread_file_name): Set completion-ignore-case for
2957 case-insensitive systems.
2958
73bc43da
MY
29592004-03-14 Masatake YAMATO <jet@gyve.org>
2960
2961 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
2962 when keymap and cursor are setup.
2963
9062aa89
ST
29642004-03-14 Steven Tamm <steventamm@mac.com>
2965
b17856dd 2966 * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o.
9062aa89 2967
e4b1b5ab
KS
29682004-03-14 Kim F. Storm <storm@cua.dk>
2969
2970 * dispextern.h (x_find_image_file): Add prototype.
2971
2972 * image.c (x_find_image_file): Make extern.
2973
2974 * xfns.c (x_find_image_file): Remove prototype.
2975
a6eeaa81 29762004-03-13 Eli Zaretskii <eliz@gnu.org>
5109b06a 2977
37264101 2978 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
5109b06a 2979
37264101 2980 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
5109b06a 2981
e69cfac2
RS
29822004-03-12 Richard M. Stallman <rms@gnu.org>
2983
2984 * fns.c (internal_equal): New arg PROPS controls comparing
2985 text properties. All callers changed.
2986 (Fequal_including_properties): New function.
2987 (syms_of_fns): defsubr it.
2988
45034953
KS
29892004-03-12 Kim F. Storm <storm@cua.dk>
2990
2991 Fix image support on MAC. From YAMAMOTO Mitsuharu.
37264101 2992
45034953
KS
2993 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
2994 (image_background, image_background_transparent): Fix prototypes.
2995
37264101 2996 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
45034953
KS
2997
2998 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
2999 (x_query_font, x_find_ccl_program, x_set_window_size)
3000 (x_make_frame_visible, mac_initialize, XCreatePixmap)
3001 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
3002 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
3003
3004 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
3005 (x_query_font, x_find_ccl_program, x_set_window_size)
3006 (x_make_frame_visible, mac_initialize, XCreatePixmap)
3007 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
3008 (mac_draw_line_to_pixmap): Add prototypes.
3009
30102004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3011
3012 * macterm.c (XTread_socket): Fix mouse click on tool bar.
3013
a12d3d87
KS
30142004-03-11 Kim F. Storm <storm@cua.dk>
3015
d3ab1cf1
KS
3016 * dispextern.h: Move image related prototypes from xfns.c section
3017 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
3018 HAVE_X_WINDOWS.
37264101 3019
37de9f51 3020 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
37264101 3021 Move gtkutil.o to new GTK_OBJ list.
a12d3d87
KS
3022 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
3023 (GTK_OBJ) [USE_GTK]: New declaration.
3024 (obj): Add $(GTK_OBJ) to list.
3025
5243c06a 30262004-03-11 Steven Tamm <steventamm@mac.com>
5109b06a 3027
5243c06a
ST
3028 * image.c [MAC_OSX]: Include sys/stat.h
3029
3030 * macfns.c (syms_of_macfns): Remove definitions of things now
3031 defined in image.c
3032
c0f97789
KS
30332004-03-11 Kim F. Storm <storm@cua.dk>
3034
3035 The following changes consolidates the identical/similar image
3036 support code previously found in xfns.c, w32fns.c, and macfns.c
3037 into a new file image.c.
3038
3039 * makefile.w32-in (OBJ1): Add image.o.
3040 ($(BLD)/image.$(O)): Add dependencies.
3041
3042 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
3043 (image.o): Add dependencies.
37264101 3044
c0f97789
KS
3045 * image.c: New file with consolidated image support code.
3046 (COLOR_TABLE_SUPPORT): New define to control whether
3047 color table support is available (X only).
3048 (Bitmap_Record): Common name for x_bitmap_record,
3049 w32_bitmap_record, and mac_bitmap_record.
3050 (XImagePtr): Common name for pointer to XImage or equivalent.
3051 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
3052 to XImagePtr on X+MAC, and to HDC on W32.
3053 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
3054 (NO_PIXMAP): Common name for "None" or equivalent.
3055 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
3056 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
3057 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
37264101
SM
3058 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
3059 Define with suitable equivalents on W32 and MAC for code sharing.
c0f97789
KS
3060 (XDrawLine): Define on MAC for code sharing.
3061 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
3062 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
3063 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
3064 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
3065 (x_reference_bitmap, x_create_bitmap_from_data)
3066 (x_create_bitmap_from_file, x_destroy_bitmap)
3067 (x_destroy_all_bitmaps, x_create_bitmap_mask)
3068 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
3069 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
3070 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
3071 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
3072 (define_image_type, lookup_image_type, valid_image_p)
3073 (image_error, enum image_value_type, struct image_keyword)
3074 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
3075 (make_image, free_image, prepare_image_for_display, image_ascent)
3076 (four_corners_best, image_background, image_background_transparent)
3077 (x_clear_image_1, x_clear_image, x_alloc_image_color)
3078 (make_image_cache, free_image_cache, clear_image_cache)
3079 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
3080 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
3081 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
3082 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
3083 (init_image_func_pointer, image_load_quartz2d)
3084 (struct ct_color, init_color_table, free_color_table)
3085 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
3086 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
3087 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
3088 (x_disable_image, x_build_heuristic_mask)
3089 (XBM support, XPM support, PBM support, PNG support, JPEG support)
3090 (TIFF support, GIF support, Ghostscript support): Consolidate image
3091 code from xfns.c, w32fns.c, and macfns.c.
3092 (syms_of_image): Consolidate image related symbol setup here.
3093 (init_image): Consolidate image related initializations here.
37264101 3094
c0f97789
KS
3095 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
3096 and init_image. Remove call to init_xfns.
3097
37264101
SM
3098 * macterm.h (struct mac_bitmap_record): Add file member.
3099 Not currently used, but simplifies code sharing.
c0f97789
KS
3100
3101 * macfns.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 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
3107 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
3108 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
3109 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
3110 (define_image_type, lookup_image_type, valid_image_p)
3111 (image_error, enum image_value_type, struct image_keyword)
3112 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
3113 (make_image, free_image, prepare_image_for_display, image_ascent)
3114 (four_corners_best, image_background, image_background_transparent)
3115 (x_clear_image_1, x_clear_image, x_alloc_image_color)
3116 (make_image_cache, free_image_cache, clear_image_cache)
3117 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
3118 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
3119 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
3120 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
3121 (init_image_func_pointer, image_load_quartz2d)
3122 (struct ct_color, init_color_table, free_color_table)
3123 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
3124 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
3125 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
3126 (x_disable_image, x_build_heuristic_mask)
3127 (XBM support, XPM support, PBM support, PNG support, JPEG support)
3128 (TIFF support, GIF support, Ghostscript support): Merge with image
3129 code from xfns.c and macfns.c into image.c.
3130 (syms_of_xfns): Move image related symbols to image.c.
3131 (init_external_image_libraries, init_xfns): Remove; initialization
3132 moved to init_image in image.c.
3133
3134 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
3135 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
3136 (x_reference_bitmap, x_create_bitmap_from_data)
3137 (x_create_bitmap_from_file, x_destroy_bitmap)
3138 (x_destroy_all_bitmaps, x_create_bitmap_mask)
3139 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
3140 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
3141 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
3142 (define_image_type, lookup_image_type, valid_image_p)
3143 (image_error, enum image_value_type, struct image_keyword)
3144 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
3145 (make_image, free_image, prepare_image_for_display, image_ascent)
3146 (four_corners_best, image_background, image_background_transparent)
3147 (x_clear_image_1, x_clear_image, x_alloc_image_color)
3148 (make_image_cache, free_image_cache, clear_image_cache)
3149 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
3150 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
3151 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
3152 (struct ct_color, init_color_table, free_color_table)
3153 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
3154 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
3155 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
3156 (x_disable_image, x_build_heuristic_mask)
3157 (XBM support, XPM support, PBM support, PNG support, JPEG support)
3158 (TIFF support, GIF support, Ghostscript support): Merge with image
3159 code from xfns.c and macfns.c into image.c.
3160 (syms_of_xfns): Move image related symbols to image.c.
3161 (init_external_image_libraries, init_xfns): Remove; initialization
3162 moved to init_image in image.c.
3163
3164 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
3165 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
3166 (x_reference_bitmap, x_create_bitmap_from_data)
3167 (x_create_bitmap_from_file, x_destroy_bitmap)
3168 (x_destroy_all_bitmaps, x_create_bitmap_mask)
3169 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
3170 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
3171 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
3172 (define_image_type, lookup_image_type, valid_image_p)
3173 (image_error, enum image_value_type, struct image_keyword)
3174 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
3175 (make_image, free_image, prepare_image_for_display, image_ascent)
3176 (four_corners_best, image_background, image_background_transparent)
3177 (x_clear_image_1, x_clear_image, x_alloc_image_color)
3178 (make_image_cache, free_image_cache, clear_image_cache)
3179 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
3180 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
3181 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
3182 (struct ct_color, init_color_table, free_color_table)
3183 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
3184 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
3185 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
3186 (x_disable_image, x_build_heuristic_mask)
3187 (XBM support, XPM support, PBM support, PNG support, JPEG support)
3188 (TIFF support, GIF support, Ghostscript support): Merge with
3189 w32fns.c and macfns.c image code into image.c.
3190 (syms_of_xfns): Move image related symbols to image.c.
3191 (init_xfns): Remove; initialization moved to init_image in image.c.
3192
3193 * lisp.h (syms_of_image, init_image): Add protoypes.
3194 (init_xfns): Remove prototype.
3195
3196 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
3197 (x_reference_bitmap, x_create_bitmap_from_data)
3198 (x_create_bitmap_from_file, x_destroy_bitmap)
3199 (x_create_bitmap_mask): Move prototypes from dispextern.h.
3200 (gamma_correct) [MAC_OS]: Add prototype.
3201
3202 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
3203 (x_reference_bitmap, x_create_bitmap_from_data)
3204 (x_create_bitmap_from_file, x_destroy_bitmap)
3205 (x_create_bitmap_mask): Move prototypes to dispextern.h.
3206
6eced09c
KH
32072004-03-09 Kenichi Handa <handa@etlken2>
3208
3209 * coding.c (decode_coding_emacs_mule): Handle insufficent source
3210 correctly.
3211
9a7e95f3
RS
32122004-03-04 Richard M. Stallman <rms@gnu.org>
3213
04a6e76b
RS
3214 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
3215
9a7e95f3
RS
3216 * window.c (Fdisplay_buffer): Doc fix.
3217
3218 * buffer.c (Fpop_to_buffer): Doc fix.
3219
6c2488df
KS
32202004-03-03 Kim F. Storm <storm@cua.dk>
3221
3222 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
3223
d8d95bc7
SM
32242004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
3225
3226 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
3227
357589bf
RS
32282004-03-02 Richard M. Stallman <rms@gnu.org>
3229
3230 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
3231
409949b5
KH
32322004-03-02 Kenichi Handa <handa@m17n.org>
3233
3234 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
3235
d24bc50f
KS
32362004-03-02 Kim F. Storm <storm@cua.dk>
3237
3238 * window.h (struct window): New member overlay_arrow_bitmap.
3239
3240 * window.c (make_window): Initialize overlay_arrow_bitmap.
3241
3242 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
3243 implement and integrate multiple overlay arrows with redisplay.
3244 (syms_of_xdisp): DEFVAR_LISP and initialize it.
3245 (last_arrow_position, last_arrow_string): Replace by properties.
3246 (Qlast_arrow_position, Qlast_arrow_string)
3247 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
3248 (syms_of_xdisp): Intern and staticpro them.
3249 (overlay_arrow_string_or_property, update_overlay_arrows)
3250 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
3251 (overlay_arrow_at_row): New functions for multiple overlay arrows.
3252 (redisplay_internal): Use them instead of directly accessing
3253 Voverlay_arrow_position etc. for multiple overlay arrows.
3254 (mark_window_display_accurate): Use update_overlay_arrows.
3255 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
3256 (try_window_id): Use overlay_arrows_changed_p.
3257 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
3258 (display_line): Use overlay_arrow_at_row to check multiple
3259 overlay arrows, and get relevant overlay-arrow-string and
d8d95bc7 3260 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
d24bc50f
KS
3261 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
3262 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
3263
3264 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
3265 (update_window_fringes): Remove unused code.
3266
c1464661
JR
32672004-03-01 Jason Rumney <jasonr@gnu.org>
3268
3269 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
3270
a64387ee
JB
32712004-03-01 Juanma Barranquero <lektu@terra.es>
3272
3273 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
3274
3275 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
3276
334faa08
JD
32772004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3278
3279 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
3280 how many colors can be displayed.
3281
bb62616f
KH
32822004-03-01 Kenichi Handa <handa@m17n.org>
3283
3284 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
3285 correctly.
3286
0fd16104
KS
32872004-02-28 Kim F. Storm <storm@cua.dk>
3288
3289 * dispnew.c (update_window): Update header line also if there are
3290 no other changes in window (move code after set_cursor label).
3291
3292 * lisp.h (mark_window_display_accurate): Remove prototype.
3293
3294 * window.c (window_loop, Fforce_window_update): Force mode line
3295 updates by setting prevent_redisplay_optimizations_p and
3296 update_mode_lines.
3297
b59dd9c8
JD
32982004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3299
d8d95bc7 3300 * xfns.c (x_window): Fix indentation.
b59dd9c8
JD
3301
3302 * xterm.c (x_calc_absolute_position): Call x_real_positions
3303 to get WM window sizes and use those to calculate position.
d8d95bc7 3304 (x_set_offset): Remove code commented out.
b59dd9c8 3305
a874691c
MB
33062004-02-28 Miles Bader <miles@gnu.org>
3307
3308 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
3309
3e0c6482
KS
33102004-02-28 Kim F. Storm <storm@cua.dk>
3311
3312 * keyboard.c (kbd_buffer_store_event_hold): New function to store
3313 an event into kbd fifo, but with special handling of quit event;
3314 a quit event is saved for later, and further events are discarded
3315 until the saved quit event has been processed.
3316 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
3317 (gen_help_event): Store help event in kbd fifo.
3318 (NREAD_INPUT_EVENTS): Remove.
3319 (read_avail_input): Adapt to new read_socket_hook interface.
3320 Remove allocation and initialization of local input_event buffer,
3321 as read_socket_hook stores events directly in fifo. Allocate and
3322 initialize local hold_quit event to handle postponed quit event
3323 (and store it if set by kbd_buffer_store_event_hold).
3324
3325 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
3326 (gen_help_event): Fix prototype.
3327
a64387ee 3328 * macterm.c (XTread_socket): Remove bufp_r and
3e0c6482 3329 numcharsp args. Add hold_quit arg.
f63fd14e 3330 Rework to use just one, local, inev input_event. Store inev
3e0c6482
KS
3331 directly in fifo using kbd_buffer_store_event_hold.
3332
3333 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
3334 (read_input_waiting): Adapt to new read_socket_hook interface.
3335 Remove allocation and initialization of local input_event buffer,
3336 as read_socket_hook stores events directly in fifo. Allocate and
3337 initialize local hold_quit event to handle postponed quit event
3338 (and store it if set by kbd_buffer_store_event_hold).
3339
a64387ee 3340 * term.c (read_socket_hook): Fix arg list.
3e0c6482
KS
3341
3342 * termhooks.h (read_socket_hook): Fix prototype.
3343
3344 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
3345 numcharsp args. Add hold_quit arg.
f63fd14e 3346 Rework to use just one, local, inev input_event. Store inev
3e0c6482
KS
3347 directly in fifo using kbd_buffer_store_event_hold.
3348
3349 * w32inevt.h (w32_console_mouse_position): Fix prototype.
3350
3351 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
f63fd14e
JB
3352 Add hold_quit arg. Rework to use just one, local, inev
3353 input_event. Store inev directly in fifo using
3e0c6482
KS
3354 kbd_buffer_store_event_hold. Update count in one place.
3355 Postpone call to gen_help_event until inev is stored; use new
3356 local do_help for this.
3357 Remove local emacs_event in handing of ButtonPress event; just use
3358 inev instead (so no reason to copy it later).
3359
3360 * xsmfns.c (x_session_check_input): Remove numchars arg.
3361
d8d95bc7
SM
3362 * xterm.c (x_focus_changed, x_detect_focus_change):
3363 Remove numchars arg. Always store event into bufp arg.
3364 Return nothing. Callers changed accordingly.
3e0c6482
KS
3365 (glyph_rect): Simplify.
3366 (STORE_KEYSYM_FOR_DEBUG): New macro.
3367 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
3368 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
3369 (current_hold_quit) [USE_GTK]: Add.
3370 (event_handler_gdk): Adapt to new handle_one_xevent.
3371 (handle_one_xevent): Remove bufp_r and numcharsp args.
f63fd14e
JB
3372 Add hold_quit arg. Rework to use just one, local, inev
3373 input_event. Store inev directly in fifo using
3e0c6482
KS
3374 kbd_buffer_store_event_hold. Update count in one place.
3375 Postpone call to gen_help_event until inev is stored; use new
3376 local do_help for this.
3377 Simplify handling of keysyms (consolidate common code). Fix bug
3378 where count was updated with nchars instead of nbytes.
3379 Remove local emacs_event in handing of ButtonPress event; just use
3380 inev instead (so no reason to copy it later).
3381 Remove `out' label. Rename label `ret' to `done'; add various
3382 `goto done' to clarify code flow in deeply nested blocks.
3383 (x_dispatch_event): Simplify as handle_one_xevent now calls
3384 kbd_buffer_store_event itself.
f63fd14e 3385 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
3e0c6482
KS
3386 arg. Call handle_one_xevent with new arglist. Store event from
3387 x_session_check_input in fifo.
3388 [USE_GTK]: Setup current_hold_quit.
3389 Decrement handling_signal before unblocking input.
3390 (x_initialize) [USE_GTK]: Initialize current_count.
3391
3392 * xterm.h (x_session_check_input): Fix prototype.
3393
e3564461 33942004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
a64387ee 3395
d8d95bc7 3396 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
a64387ee 3397
e3564461
ST
3398 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
3399 macgui.h).
a64387ee 3400
e3564461 3401 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
a64387ee 3402
e3564461
ST
3403 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
3404 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
3405 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
3406 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
3407 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
3408 (Bitmap): Remove typedef.
3409 (Pixmap): Change int to GWorldPtr.
3410
d8d95bc7 3411 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
a64387ee 3412
d8d95bc7
SM
3413 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
3414 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
3415 New #define to extract 16-bit depth color components from unsigned
e3564461
ST
3416 long representation.
3417 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
3418 colors used for masks.
3419 (struct mac_display_info): Add color_p. Remove n_cbits.
a64387ee 3420
e3564461
ST
3421 * macfns.c: Include sys/types.h and sys/stat.h.
3422 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
3423 Include QuickTime/QuickTime.h.
3424 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
3425 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
3426 functions defined in macterm.c.
3427 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
3428 (ZPixmap): New #define for compatibility with xfns.c.
3429 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
3430 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
d8d95bc7
SM
3431 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
3432 New functions.
e3564461 3433 (four_corners_best, x_create_x_image_and_pixmap)
d8d95bc7
SM
3434 (x_destroy_x_image, unwind_create_frame, x_disable_image)
3435 (x_edge_detection, init_color_table, colors_in_color_table)
e3564461
ST
3436 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
3437 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
3438 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
3439 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
3440 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
3441 long mixup.
3442 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
3443 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
3444 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
3445 (x_set_cursor_type, Fxw_color_values, valid_image_p)
3446 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
3447 (x_alloc_image_color, clear_image_cache, lookup_image)
3448 (x_find_image_file, xbm_read_bitmap_file_data)
3449 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
3450 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
3451 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
3452 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
3453 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
d8d95bc7 3454 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
e3564461
ST
3455 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
3456 #if 0.
3457 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
3458 #if 0. Free white_relief.gc and black_relief.gc.
d8d95bc7
SM
3459 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
3460 New functions (from xfns.c).
e3564461
ST
3461 (Fx_create_frame): Record unwind_create_frame.
3462 (Fxw_display_color_p): Use dpyinfo->color_p.
3463 (Fx_display_grayscale_p, Fx_display_planes): Don't use
3464 dpyinfo->n_cbits.
3465 (Fx_display_color_cells): Use dpyinfo->n_planes;
3466 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
3467 (Qheuristic, cross_disabled_images, emboss_matrix)
3468 (laplace_matrix): New variables (from xfns.c).
3469 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
3470 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
3471 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
d8d95bc7
SM
3472 (image_background_transparent): New function (from xfns.c).
3473 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
3474 (image_load_quicktime): Add declaration.
3475 [MAC_OSX] (image_load_quartz2d): Likewise.
3476 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
3477 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
d8d95bc7 3478 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
e3564461
ST
3479 (xbm_load_image_from_file, x_laplace_read_row)
3480 (x_laplace_write_row, pbm_read_file): Remove functions.
3481 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
3482 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
3483 (colors_in_color_table): Sync with xfns.c (although not used).
3484 (lookup_rgb_color): Don't lookup color table. Just do gamma
3485 correction.
3486 (COLOR_INTENSITY): New #define (from xfns.c).
d8d95bc7
SM
3487 (x_disable_image): New function (from xfns.c).
3488 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
3489 (x_build_heuristic_mask): Sync with xfns.c.
3490 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
3491 (HAVE_PBM): Remove #ifdef.
3492 (pbm_load): Sync with xfns.c. Set img->width and img->height
3493 before IMAGE_BACKGROUND.
d8d95bc7 3494 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
e3564461
ST
3495 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
3496 Don't enclose with #if HAVE_PNG.
3497 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
d8d95bc7
SM
3498 symbol _CGImageCreateWithPNGDataProvider is defined.
3499 Otherwise use image_load_quicktime.
e3564461 3500 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
d8d95bc7
SM
3501 [HAVE_PNG] (png_load): Sync with xfns.c.
3502 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
3503 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
3504 HAVE_JPEG.
3505 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
3506 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
3507 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
3508 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
3509 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
3510 (tiff_image_p, tiff_load): Don't enclose declarations with #if
3511 HAVE_TIFF.
3512 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
3513 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
3514 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
d8d95bc7
SM
3515 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
3516 New functions (from xfns.c).
e3564461 3517 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
d8d95bc7 3518 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
e3564461
ST
3519 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
3520 Don't enclose with #if HAVE_GIF.
3521 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
3522 animated gif. Otherwise use image_load_quicktime.
3523 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
3524 gif_DrawText to avoid conflict with QuickdrawText.h.
3525 [HAVE_GIF] (gif_load): Sync with xfns.c.
3526 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
3527 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
3528 Ghostscript is not supported yet).
3529 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
3530 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
3531 cross_disabled_images (from xfns.c). Remove #if 0 for supported
3532 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
3533 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
3534 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
d8d95bc7
SM
3535 HAVE_PNG. Call EnterMovies to support animated gifs.
3536 Call init_image_func_pointer to bind a symbol
e3564461 3537 _CGImageCreateWithPNGDataProvider if it is defined.
a64387ee 3538
d8d95bc7 3539 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
e3564461
ST
3540 (x_draw_bar_cursor): Sync declaration with xterm.c.
3541 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
3542 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
3543 graphics).
3544 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
3545 (mac_draw_line_to_pixmap, XCreatePixmap)
3546 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
d8d95bc7
SM
3547 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
3548 New functions.
3549 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
3550 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
3551 Cast bits to char *.
e3564461
ST
3552 (reflect_byte): New function (from w32fns.c).
3553 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
3554 due to byte alignment.
d8d95bc7
SM
3555 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
3556 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
e3564461
ST
3557 (XSetForeground): Remove static (now used in macfns.c).
3558 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
3559 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
3560 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
3561 (x_draw_glyph_string_box, x_draw_image_foreground)
3562 (x_draw_image_foreground_1, x_draw_image_glyph_string)
3563 (x_draw_stretch_glyph_string, x_draw_glyph_string)
3564 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
3565 Sync with xterm.c.
3566 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
3567 than the xterm.c version when a strictly horizontal or vertical
3568 line is drawn.
3569 (XTset_terminal_window): Add static.
3570 (x_make_frame_visible): Add UNBLOCK_INPUT.
3571 (x_free_frame_resources): New funcion (from xterm.c).
3572 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
3573 occurs in tool bar area.
d8d95bc7
SM
3574 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
3575 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
e3564461
ST
3576 Initialize image cache.
3577 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
3578 Enclose unused functions with #if 0.
3579 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
3580 (decode_mac_font_name): New function to apply code conversions
d8d95bc7 3581 from a mac font name to an XLFD font name according to its script code.
e3564461 3582 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
d8d95bc7 3583 font name to a mac font name according to REGISTRY and ENCODING fields.
e3564461
ST
3584 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
3585 whose name starts with `.'.
3586 (init_font_name_table): Use decode_mac_font_name. Add both
3587 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
3588 of a font is smJapanese.
3589 (mac_do_list_fonts): New function to list fonts that match a given
3590 pattern.
3591 (x_list_fonts, XLoadQueryFont): Use it.
3592 (XLoadQueryFont): Set rbearing field for each variable width
3593 character to avoid needless redraw.
3594 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
3595
446f5f3d
KS
35962004-02-26 Kim F. Storm <storm@cua.dk>
3597
af617d0f
KS
3598 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
3599 as read_socket_hook handler on X aborts if buffer is too small
3600 and W32 handler doesn't always check buffer limit.
3601
446f5f3d
KS
3602 * xdisp.c (handle_single_display_prop): Handle left-fringe and
3603 right-fringe similar to a display margin image. Specifically,
3604 the characters having the fringe prop are no longer shown, and
3605 we use IT_IMAGE/next_element_from_image with image_id = -1 to
3606 do this. Set fringe bitmap face_id in it->face_id.
3607 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
3608 still realize it->face (i.e. the fringe bitmap face).
3609
7d8a0b55
MB
36102004-02-25 Miles Bader <miles@gnu.org>
3611
3612 * xdisp.c (check_it): Check string/string_pos consistency.
3613 (init_iterator): Initialize string-related fields properly.
3614
36152004-02-11 Miles Bader <miles@gnu.org>
3616
3617 * xdisp.c (produce_image_glyph): Force negative descents to zero.
3618
36192004-02-10 Miles Bader <miles@gnu.org>
3620
3621 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
3622 BLOCK_INPUT can be nested, so it doesn't make much sense.
3623
a64387ee 36242004-02-24 Michael Mauger <mmaug@yahoo.com>
ce35edd1
JR
3625
3626 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
3627 (xbm_read_bitmap_data): Use unsigned char for image data.
3628
92f5fba2
LT
36292004-02-23 Luc Teirlinck <teirllm@auburn.edu>
3630
3631 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
3632
8565fb3d
JR
36332004-02-22 Jason Rumney <jasonr@gnu.org>
3634
3635 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
3636 correctly over other bitmaps.
3637
a6eeaa81 36382004-02-21 Eli Zaretskii <eliz@gnu.org>
f8125c39
EZ
3639
3640 * emacs.c (USAGE1): Split into two halves.
3641 (USAGE2): Second half of the old USAGE1.
d8d95bc7
SM
3642 (USAGE3): Rename from USAGE2.
3643 (USAGE4): Rename from USAGE3.
f8125c39 3644
4effffca
EZ
36452004-02-21 Juri Linkov <juri@jurta.org>
3646
3647 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
3648 Fix --multibyte. Move --help, --version to USAGE2. Add alias
3649 --file. Fix -f, -l. Sort options. Untabify.
3650 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
3651
923c1e6f
LT
36522004-02-19 Luc Teirlinck <teirllm@auburn.edu>
3653
3654 * category.c (Fdefine_category, Fcategory_docstring)
3655 (Fget_unused_category, Fset_category_table)
3656 (Fcategory_set_mnemonics): Doc fixes.
3657
b0e225fd
KS
36582004-02-20 Kim F. Storm <storm@cua.dk>
3659
3660 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
3661 The following changes are relative to the 2004-01-21 revision.
3662 (NREAD_INPUT_EVENTS): Define as max number of input events to read
3663 in one call to read_socket_hook. Value is 8.
3664 (read_avail_input): Separate and rework handling of read_socket_hook
3665 and non-read_socket_hook cases. Use smaller input_event buffer
d8d95bc7
SM
3666 in read_socket_hook case, and repeat if full buffer is read.
3667 Use new local variable 'discard' to skip input after C-g.
b0e225fd
KS
3668 In non-read_socket_hook case, just use a single input_event, and
3669 call kbd_buffer_store_event on the fly for each character.
3670
b15aa9f9
SM
36712004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
3672
3673 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
3674 Remove unused `gu' alternative.
3675
83c9aa95
AS
36762004-02-19 Andreas Schwab <schwab@suse.de>
3677
3678 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
3679 warning.
3680
cc808173
KS
36812004-02-18 Kim F. Storm <storm@cua.dk>
3682
3683 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
3684 Fix last change.
3685
ab90a54d
KS
36862004-02-17 Kim F. Storm <storm@cua.dk>
3687
b26f249f
KS
3688 * xdisp.c (fast_find_position): Fix return value of new version;
3689 it was inverted compared to the 21.1 version.
3690 (get_window_cursor_type): Don't look at glyph if NULL.
3691 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
0bf7d005 3692
ab90a54d
KS
3693 * keyboard.c: Rework previous change; it didn't consider that the
3694 buf array was allocated on the stack.
3695 (prev_read): Remove variable.
3696 (read_avail_input_buf): New static event buffer array.
b9568dfc 3697 (in_read_avail_input): New static variable to handle re-entrancy.
ab90a54d 3698 (read_avail_input): Change buf to pinter to read_avail_input_buf.
b9568dfc
KS
3699 Use in_read_avail_input to handle re-entrance; when re-entered,
3700 fully initialize and use tmp_buf array instead of read_avail_input_buf.
3701 Do not initialize read_avail_input_buf in full here; instead assume it
ab90a54d
KS
3702 is always cleared on entry. To ensure that, we clear (just) the
3703 entries that were used before we return.
3704 (init_keyboard): Initialize read_avail_input_buf here.
3705
b6189c3b 37062004-02-16 Jesper Harder <harder@ifa.au.dk>
4e039f3f
EZ
3707
3708 * cmds.c (Fend_of_line): Doc fix.
3709
7b5368c1
EZ
37102004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
3711
3712 * keyboard.c (prev_read): New static variable.
3713 (read_avail_input): Use it to zero out only those slots in buf[]
3714 that were used last time we were called.
3715
a6eeaa81 37162004-02-16 Eli Zaretskii <eliz@gnu.org>
ca4bc494
EZ
3717
3718 * Makefile.in (obj): Move fringe.o from here...
3719 (XOBJ, MAC_OBJ): ...to here.
3720
159c348e
SE
37212004-02-16 Stephen Eglen <stephen@gnu.org>
3722
3723 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
3724
d2f14999
SM
37252004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
3726
b15aa9f9
SM
3727 * data.c (Fbyteorder):
3728 * fringe.c (Fdefine_fringe_bitmap):
3729 * xdisp.c (handle_single_display_prop):
d2f14999
SM
3730 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
3731
8d50508a
JR
37322004-02-16 Jason Rumney <jasonr@gnu.org>
3733
3734 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
3735
dd4497dc
ST
37362004-02-15 Steven Tamm <steventamm@mac.com>
3737
3738 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
3739 controlling emulation of a three button mouse with option and
3740 command keys.
3741 (Qreverse, mac_get_enumlated_btn): Handle the emulation
b15aa9f9 3742 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
dd4497dc 3743
c9159cb3
KS
37442004-02-15 Kim F. Storm <storm@cua.dk>
3745
2cc52658
KS
3746 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
3747
c9159cb3
KS
3748 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
3749 Perform byte-swapping.
3750
12fde2dc
KS
37512004-02-14 Kim F. Storm <storm@cua.dk>
3752
3753 * dispextern.h (struct draw_fringe_bitmap_params): Change member
3754 bits from char to short to facilitate wider bitmaps.
3755 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
3756 member.
3757
3758 * fringe.c (struct fringe_bitmap): Change member bits from char to
3759 short to facilitate 16 bits wide bitmaps. Modify all standard
3760 bitmaps accordingly.
3761 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
3762 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
3763 (draw_fringe_bitmap): Ditto.
3764 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
3765 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
3766 handle up to 16 bits wide bitmaps.
3767 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
f21a7192 3768 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
12fde2dc
KS
3769
3770 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
3771 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
3772 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
3773
3774 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
3775 so it is no longer necessary to expand them here.
3776
3777 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
3778
9d7271e8
KS
37792004-02-12 Kim F. Storm <storm@cua.dk>
3780
3781 * window.c (Fwindow_fringes): Doc fix.
3782
706c1e4f
JD
37832004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3784
3785 * xselect.c (x_get_foreign_selection): Add new optional parameter
3786 time_stamp.
3787 (Fx_get_selection_internal): Ditto, pass time_stamp to
3788 x_get_foreign_selection.
3789
3790 * data.c (Fbyteorder): New function.
3791
c2d12b5d
JD
37922004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3793
3794 * atimer.c: Move include stdio.h to same place as in other files.
3795
3796 * region-cache.c: Ditto.
3797
3798 * sysdep.c: Ditto.
3799
3800 * xfaces.c: Ditto.
3801
4c1947b9
SS
38022004-02-09 Sam Steingold <sds@gnu.org>
3803
89458937 3804 * w32term.c (w32_draw_fringe_bitmap): Fix a typo in the last patch.
4c1947b9 3805
82722af3
KS
38062004-02-09 Kim F. Storm <storm@cua.dk>
3807
3808 * fringe.c: New file. Move original fringe related declarations
3809 and code from dispextern.h and xdisp.c here.
3810 Rework code to support user defined fringe bitmaps, redefining
3811 standard bitmaps, ability to overlay user defined bitmap with
3812 overlay arrow bitmap, and add faces to bitmaps.
3813 (Voverflow_newline_into_fringe): Declare here.
3814 (enum fringe_bitmap_align): New enum.
3815 (..._bits): All bitmaps are now defined without bitswapping; that
3816 is now done in init_fringe_once (if necessary).
3817 (standard_bitmaps): New array with specifications for the
3818 standard fringe bitmaps.
3819 (fringe_faces): New array.
3820 (valid_fringe_bitmap_id_p): New function.
3821 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
3822 (draw_fringe_bitmap): New function which draws fringe bitmap,
3823 possibly overlaying bitmap with cursor in right fringe or the
3824 overlay arrow in the left fringe.
3825 (update_window_fringes): Do not handle overlay arrow here.
3826 Compare and copy fringe bitmap faces.
3827 (init_fringe_bitmap): New function.
3828 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
3829 define and destroy user defined fringe bitmaps.
3830 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
3831 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
3832 (syms_of_fringe): New function. Defsubr new DEFUNs.
3833 DEFVAR_LISP Voverflow_newline_into_fringe.
3834 (init_fringe_once, init_fringe): New functions.
3835 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
4c1947b9 3836
82722af3
KS
3837 * Makefile.in (obj): Add fringe.o.
3838 (fringe.o): New dependencies.
3839
3840 * dispextern.h (FRINGE_ID_BITS): New definition for number of
3841 bits allocated to hold a fringe number. Increase number of bits
3842 from 4 to 8 to allow user defined fringe bitmaps.
3843 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
3844 left_user_fringe_face_id, right_user_fringe_bitmap,
3845 right_user_fringe_face_id.
3846 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
3847 Move to new file fringe.c.
3848 (MAX_FRINGE_BITMAPS): Define here.
3849 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
3850 and overlay_p. Change member which to int.
3851 (struct redisplay_interface): New members define_fringe_bitmap
3852 and destroy_fringe_bitmap.
3853 (valid_fringe_bitmap_id_p): Add prototype.
3854 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
3855
3856 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
3857 arrows.
3858 (update_frame): Do flush_display if force_flush_display_p to
3859 ensure display (specifically fringes) are updated in a timely
3860 manner when resizing the frame by dragging the mouse.
3861 (update_window_line): Update row if overlay arrow changed.
3862 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
3863 or overlay arrow changed.
3864
3865 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
3866 syms_of_fringe, and init_fringe.
3867
3868 * frame.h (struct frame): New member force_flush_display_p.
3869
3870 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
3871 Add prototypes.
3872
a3993cc8 3873 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
a64387ee 3874 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
a3993cc8
KS
3875 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
3876 Use cursor color for displaying cursor in fringe.
82722af3
KS
3877 (x_redisplay_interface): Add null handlers for
3878 define_fringe_bitmap and destroy_fringe_bitmap functions.
3879
3880 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
3881 xterm.c to handle overlayed fringe bitmaps and to use cursor color
3882 for displaying cursor in fringe.
3883 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
3884 specific functions to define and destroy fringe bitmaps in fringe_bmp.
3885 (w32_redisplay_interface): Add them to redisplay_interface.
3886 (w32_term_init): Call w32_init_fringe instead of explicitly
3887 defining fringe bitmaps in fringe_bmp array.
3888 (x_delete_display): Call w32_reset_fringes instead of explicitly
3889 destroying fringe bitmaps in fringe_bmp array.
3890
3891 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
3892 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
3893 (continued_bits, continuation_bits, ov_bits, first_line_bits)
3894 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
3895 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
3896 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
3897 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
3898 Move fringe handling vars and code to new file fringe.c.
3899 (handle_display_prop): Handle left-fringe and right-fringe
3900 display properties; store user fringe bitmaps in iterator.
3901 (move_it_in_display_line_to): Handle cursor in fringe at eob.
3902 (clear_garbaged_frames): Set force_flush_display_p if resized.
3903 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
3904 (display_line): Handle cursor in fringe at eob.
3905 (display_line): Set row user fringe bitmaps from iterator.
3906
3907 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
3908 Use cursor color for displaying cursor in fringe.
3909 (x_redisplay_interface): Add null handlers for
3910 define_fringe_bitmap and destroy_fringe_bitmap functions.
3911
030400eb
JD
39122004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3913
3914 * macfns.c (Fx_change_window_property): Make doc string and
3915 parameters same as for X version.
3916
3917 * w32fns.c (Fx_change_window_property): Ditto.
3918
3af55251
KS
39192004-02-07 Kim F. Storm <storm@cua.dk>
3920
ec110e9e
KS
3921 * xdisp.c (hscroll_window_tree): Position cursor near to right
3922 margin in hscrolled window when jumping to end of line (rather
3923 than centering cursor).
3924
3af55251
KS
3925 * process.c (wait_reading_process_input): Don't do adaptive read
3926 buffering if waiting for a specific process.
3927
b0c138ce
LT
39282004-02-05 Luc Teirlinck <teirllm@auburn.edu>
3929
3930 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
3931 (Fread_minibuffer, Feval_minibuffer)
3932 (Fread_string, Fread_no_blanks_input)
3933 (Fcompleting_read): Doc fixes.
3934 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
3935 completion-regexp-list. Define Qcase_fold_search and staticpro it.
3936 (read_minibuf): Fix initial comment.
3937 (Ftry_completion, Fall_completions, Ftest_completion): Bind
e8eeaed8 3938 case-fold-search to the value of completion-ignore-case when
b0c138ce
LT
3939 checking completion-regexp-list.
3940 (Fdisplay_completion_list): Make it handle arguments that are
3941 symbols. Doc fix.
3942
9676f5ad 39432004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
64d1e373 3944
9676f5ad 3945 * xterm.h: Add declaration of free_frame_menubar.
64d1e373 3946
9676f5ad
JD
3947 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
3948 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
b0c138ce 3949 (Fx_change_window_property): Add declaration of parameters type and
9676f5ad 3950 format. Remove unused variable cons.
5b698285
JD
3951
3952 * xselect.c: Include stdio,h.
3953
fc1d15f6
KH
39542004-02-05 Kenichi Handa <handa@m17n.org>
3955
ebaff4af
KH
3956 * fns.c (Fset_char_table_range): Fix previous change.
3957
fc1d15f6
KH
3958 * buffer.c (Fset_buffer_multibyte): Fix docstring.
3959
9676f5ad
JD
39602004-02-04 Luc Teirlinck <teirllm@auburn.edu>
3961
3962 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
3963
da75761f
SM
39642004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
3965
3966 * keymap.c (Vmouse_events): Rename from Vmenu_events.
3967 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
3968
13c5d120
KH
39692004-02-04 Kenichi Handa <handa@m17n.org>
3970
3971 * fns.c (Fset_char_table_range): Handle charsets ascii,
3972 eight-bit-control, and eight-bit-graphic correctly.
3973
2883d842
JR
39742004-02-03 Jason Rumney <jasonr@gnu.org>
3975
3976 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
3977
3978 * w32fns.c (x_to_w32_font): Likewise.
3979
69eff41f
JD
39802004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3981
3982 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
3983 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
3984
3985 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
3986 ClientMessages.
3987
3988 * xselect.c: Include termhooks.h and X11/Xproto.h
3989 (x_check_property_data, x_fill_property_data)
3990 (x_property_data_to_lisp, mouse_position_for_drop)
3991 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
da75761f 3992 (Fx_send_client_event): Move here from xfns.c.
69eff41f
JD
3993 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
3994
da75761f 3995 * xfns.c (x-send-client-message): Move to xselect.c
69eff41f
JD
3996 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
3997 OUTER_P.
3998 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
3999 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
4000 if vector_ret_p is true.
4001 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
69eff41f 4002
a6eeaa81 40032004-02-02 Eli Zaretskii <eliz@gnu.org>
dcdbbb5d
EZ
4004
4005 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
4006 basename of FILE relative to it, not FILE itself.
4007
09721b31
KH
40082004-02-02 Kenichi Handa <handa@m17n.org>
4009
4010 * coding.c (coding_restore_composition): Check invalid
4011 composition data more rigidly.
4012
eb996101
LT
40132004-01-30 Luc Teirlinck <teirllm@auburn.edu>
4014
4015 * fileio.c (Fread_file_name_internal): Correctly handle the case
4016 where insert-default-directory is nil.
4017 (Fread_file_name): Always return an empty string if the user exits
4018 with an empty minibuffer. Adapt the docstring accordingly.
4019 (syms_of_fileio): Adapt the docstring of insert-default-directory
4020 to the change in Fread_file_name.
4021
a6eeaa81 40222004-01-29 Eli Zaretskii <eliz@gnu.org>
a0367d42
EZ
4023
4024 * alloca.c [!alloca]: Fix the prototype for xfree.
4025
13f52ed8
KH
40262004-01-29 Kenichi Handa <handa@m17n.org>
4027
4028 * fns.c (string_char_to_byte): Optimize for ASCII only string.
4029 (string_byte_to_char): Likewise.
4030
d57625a0
JR
40312004-01-28 Peter Runestig <peter@runestig.com>
4032
4033 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
4034
a64387ee 40352004-01-27 Steven Tamm <steventamm@mac.com>
911c78b4
ST
4036
4037 * unexmacosx.c (unexec_copy): Do not copy more than was
4038 requested to prevent overwriting during unexec.
4039
eb37b8fd
JD
40402004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4041
ce38070a
JD
4042 * process.c (sigchld_handler): Add comment about not calling malloc.
4043
eb37b8fd
JD
4044 * process.h: Add extern to synch_process_termsig.
4045
a64387ee 40462004-01-27 Steven Tamm <steventamm@mac.com>
21a3e657 4047
da75761f
SM
4048 * macterm.c (make_mac_frame, make_mac_terminal_frame):
4049 Move setting of scroll bars from make_mac_frame to
4050 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
21a3e657 4051
d62a265d
RS
40522004-01-26 Richard M. Stallman <rms@gnu.org>
4053
4054 * search.c (Freplace_match): Handle nonexistent
4055 back-references properly.
4056
40572004-01-03 Richard M. Stallman <rms@gnu.org>
4058
4059 * window.c (decode_any_window): New function.
4060 (Fwindow_height, Fwindow_width, Fwindow_edges)
4061 (Fwindow_pixel_edges, Fwindow_inside_edges)
4062 (Fwindow_inside_pixel_edges): Use decode_any_window.
4063
ff236419
JD
40642004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4065
4066 * process.h: synch_process_termsig new variable.
4067
4068 * callproc.c: Define synch_process_termsig.
4069 (Fcall_process): Initiate synch_process_termsig to zero and
4070 check if non-zero and get signal name after subprocess has ended.
4071
4072 * process.c (sigchld_handler): Set synch_process_termsig
4073 if terminated by a signal. synch_process_death setting removed.
4074
4075 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
4076
41b867ea
AS
40772004-01-26 Andreas Schwab <schwab@suse.de>
4078
4079 * print.c (print_preprocess): Declare size as EMACS_INT to not
4080 lose bits.
4081 (print_object): Likewise.
4082 * alloc.c (Fpurecopy): Likewise.
4083
a08084ff
LT
40842004-01-25 Luc Teirlinck <teirllm@auburn.edu>
4085
4086 * window.c (Fwindow_minibuffer_p): Doc fix.
4087
b19ac475
JY
40882004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
4089
4090 * editfns.c (Fformat): Make both passes accept the same set of flags.
4091
fe905025
KH
40922004-01-23 Kenichi Handa <handa@m17n.org>
4093
4094 * fns.c (Fmd5): If OBJECT is a buffer different from the current
4095 one, set buffer to OBJECT temporarily.
4096
438fc6c0
SM
40972004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
4098
455316e2
SM
4099 * keyboard.c (kbd_buffer_gcpro): Remove.
4100 (kbd_buffer_store_event, clear_event, Fdiscard_input)
4101 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
4102 Don't initialize and/or maintain the variable any more. It was made
4103 redundant by my commit of 2003-06-15.
4104
438fc6c0
SM
4105 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
4106
5335a4ee
JD
41072004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4108
4109 * lisp.h: Add undef DECL_ALIGN.
4110
dcdaeebc
SM
41112004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
4112
4113 * process.c (wait_reading_process_input) [SYNC_INPUT]:
4114 Check interrupt_input_pending explicitly.
4115
4116 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
4117
4118 * keyboard.c (handle_async_input): New fun,
4119 extracted from input_available_signal.
4120 (input_available_signal, reinvoke_input_signal): Use it.
4121
9076a823
SM
41222004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
4123
d7107586
SM
4124 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
4125
4126 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
4127 manipulation macros for when tags are in the lower bits.
4128 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
4129 (DECL_ALIGN): New macro.
4130 (DEFUN): Use it.
4131
4132 * lisp.h [ENABLE_CHECKING]: Don't force union type.
4133
4134 * s/darwin.h (__attribute__): Remove outdated workaround.
4135
4136 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
4137
4138 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
4139 Don't check range of malloc address.
4140 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
4141
9076a823
SM
4142 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
4143
4144 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
4145
ba029065
KH
41462004-01-19 Kenichi Handa <handa@m17n.org>
4147
4148 * fontset.c (fontset_font_pattern): Fix previous change.
4149
7af0e8d7
MB
41502004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
4151
4152 * xdisp.c (Voverflow_newline_into_fringe)
4153 (move_it_in_display_line_to, redisplay_internal)
4154 (update_window_fringes, redisplay_window, display_line, window):
4155 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
4156 that it compiles without a window-system.
4157 * dispnew.c (direct_output_for_insert, update_window): Likewise.
4158
77a9cf69
KS
41592004-01-16 Kim F. Storm <storm@cua.dk>
4160
4161 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
4162
a64387ee 4163 * buffer.c (init_buffer_once): Set buffer_defaults and
77a9cf69
KS
4164 buffer_local_flags for indicate_buffer_boundaries.
4165 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
4166 default- variable for it.
4167
4168 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
4169 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
d7107586 4170 New members exact_window_width_line_p and cursor_in_fringe_p for
77a9cf69
KS
4171 overflowing newlines into right fringe.
4172 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
4173 and indicate_bottom_line_p for buffer boundaries and scrolling.
4174 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
4175 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
4176 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
4177 and HOLLOW_SQUARE_BITMAP.
4178 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
4179 Add prototypes.
4180
4181 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
4182 instead of related indicator fields.
4183 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
4184 (direct_output_for_insert): Handle exact width lines like
4185 contined lines. Call update_window_fringes.
4186 (update_window): Call update_window_fringes.
4187 (scrolling_window): Don't skip desired rows with changed bitmaps.
4188 Check if fringe bitmaps changes when assigning scrolled rows.
4189
4190 * xdisp.c (Voverflow_newline_into_fringe): New variable.
4191 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
4192 (move_it_in_display_line_to): Overflow newline into fringe for
4193 rows that are exactly as wide as the window.
4194 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
4195 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
4196 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
4197 (fringe_bitmaps): Add new bitmaps.
4198 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
4199 Select proper bitmap for cursor in fringe when appropriate.
4200 Handle alignment of bitmap to top or bottom of row.
4201 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
4202 done by update_window_fringes.
4203 (update_window_fringes, draw_window_fringes): New functions.
4204 (redisplay_internal): Call update_window_fringes in case only
4205 cursor row is updated.
4206 (redisplay_window): Call update_window_fringes.
4207 Explicitly call draw_window_fringes if redisplay was done using
4208 the current matrix or the overlay arrow is in the window.
4209 (try_window_reusing_current_matrix): Mark scrolled rows for
4210 fringe update (to update buffer-boundaries / scrolling icons).
4211 (find_last_unchanged_at_beg_row): Handle exact width lines line
4212 continued lines.
4213 (display_line): Overflow newline into fringe for rows that are
4214 exactly as wide as the window. Don't append space for newline
d7107586 4215 in this case.
77a9cf69
KS
4216 (notice_overwritten_cursor): Explicitly clear cursor bitmap
4217 in fringe as if it had been overwritten.
4218 (erase_phys_cursor): Erase cursor bitmap in fringe.
d7107586 4219 (syms_of_xdisp): Mark show-trailing-whitespace and
77a9cf69
KS
4220 void-text-area-pointer as user options.
4221 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
d7107586 4222
77a9cf69
KS
4223 * xterm.c (x_update_window_end): Call draw_window_fringes.
4224 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
4225 in row instead of actually drawing fringe bitmaps.
4226 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
4227 (x_draw_window_cursor): Draw cursor in fringe.
4228
4229 * w32term.c (x_update_window_end): Call draw_window_fringes.
4230 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
4231 in row instead of actually drawing fringe bitmaps.
4232 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
4233 (w32_draw_window_cursor): Draw cursor in fringe.
4234
4235 * macterm.c (x_update_window_end): Call draw_window_fringes.
4236 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
4237 in row instead of actually drawing fringe bitmaps.
4238 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
4239 (mac_draw_window_cursor): Draw cursor in fringe.
4240
a633a954
JD
42412004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4242
4243 * xterm.c (handle_one_xevent): Don't handle characters that are part
4244 of an old style (XLookupString) compose sequence.
4245
80460525
KH
42462004-01-15 Kenichi Handa <handa@m17n.org>
4247
4248 * search.c (Freplace_match): Use make_multibyte_string or
4249 make_unibyte_string according to the buffer multibyteness.
4250
7fc34f85
SM
42512004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
4252
4253 * alloc.c (struct interval_block, struct string_block)
4254 (struct symbol_block, struct marker_block, live_string_p)
4255 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
4256 Better preserve alignment for objects in blocks.
4257 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
4258
4259 * lread.c (defvar_per_buffer): Remove dead declaration.
4260
4261 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
4262 space size.
4263
66070bd1
JD
42642004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4265
4266 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
4267 if a key press should pop down. Only pop down if a key is pressed
4268 outside the menu/dialog.
4269 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
4270 popup_get_selection.
4271 (create_and_show_dialog): Pass 1 for down_on_keypress to
4272 popup_get_selection.
4273
de7515d6
JD
42742004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4275
4276 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
4277 BLOCK/UNBLOCK_INPUT.
4278
160b1b50
JD
42792004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4280
4281 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
4282 specified.
4283
3a9f36e6
KH
42842004-01-08 Kenichi Handa <handa@m17n.org>
4285
4286 * editfns.c (Fformat): Fix '&' to '&&'.
4287
3803eb32
AS
42882004-01-08 Andreas Schwab <schwab@suse.de>
4289
4290 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
4291 size if PSEUDOVECTOR_FLAG is set.
4292
9da88f37
KH
42932004-01-07 Kenichi Handa <handa@m17n.org>
4294
74ac5074
KH
4295 * charset.c (Fdeclare_equiv_charset): Fix docstring.
4296
9da88f37
KH
4297 * fontset.c (fontset_ref_via_base): Fix previous change.
4298
05faee07
KS
42992004-01-07 Kim F. Storm <storm@cua.dk>
4300
4301 * process.c (read_process_output): Only activate adaptive
4302 buffering if we read less than 256 bytes at a time.
4303
634910c8
KS
43042004-01-06 Kim F. Storm <storm@cua.dk>
4305
4306 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
4307 object and image object. Return glyph width and height.
4308 (mode_line_string, marginal_area_string): Ditto.
4309
4310 * dispextern.h (buffer_posn_from_coords, mode_line_string)
4311 (marginal_area_string): Fix prototypes.
4312
4313 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
f63fd14e 4314 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
634910c8
KS
4315 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
4316
4317 * keyboard.c (make_lispy_position): Use modified mode_line_string,
4318 buffer_posn_from_coords, and marginal_area_string functions to
4319 include both string object and image object in the lispy position.
4320 Also add actual glyph width and height to position.
4321 (read_key_sequence): Use real buffer position from mouse
4322 event to find keymap property even when click is in marginal area.
4323
4324 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
4325 mode_line_string and marginal_area_string functions to handle
4326 both string object and image object properties.
d7107586 4327
57951c2e
AS
43282004-01-06 Andreas Schwab <schwab@suse.de>
4329
4330 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
4331 character.
4332
181e6a61
AS
43332004-01-02 Andreas Schwab <schwab@suse.de>
4334
d7107586
SM
4335 * macterm.c (emacs_options, x_initialized, same_x_server):
4336 Remove unused (and duplicated) definitions.
181e6a61 4337
31e0fbdd
KS
43382004-01-02 Kim F. Storm <storm@cua.dk>
4339
4340 * process.h (struct Lisp_Process): New members for adaptive read
4341 buffering: adaptive_read_buffering, read_output_delay, and
4342 read_output_skip.
4343
4344 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
4345 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
4346 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
4347 (process_output_delay_count, process_output_skip): New vars.
4348 (Vprocess_adaptive_read_buffering): New variable.
4349 (make_process): Initialize adaptive read buffering members.
4350 (Fstart_process): Set adaptive_read_buffering member.
4351 (deactivate_process): Cleanup adaptive read buffering.
4352 (wait_reading_process_input): Temporarily omit delayed
4353 subprocesses from the set of file descriptors to read from;
4354 adjust the select timeout if we skipped any subprocesses.
4355 (read_process_output): Increase adaptive read buffering delay if
4356 we read less than a full buffer; reduce delay when we read a
4357 full buffer.
4358 (send_process): Simplify using local Lisp_Process var.
4359 Reset adaptive read buffering delay after write.
4360 (init_process): Initialize process_output_delay_count and
4361 process_output_skip.
4362 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
4363
68c6a789
JR
43642004-01-01 Jason Rumney <jasonr@gnu.org>
4365
d7107586 4366 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
68c6a789 4367
3f70fe82
LT
43682003-12-30 Luc Teirlinck <teirllm@auburn.edu>
4369
4370 * print.c (Ferror_message_string): Add hyperlink in the docstring
4371 to the definition of `signal' in the Elisp manual.
4372 * eval.c (Fsignal): Ditto.
4373
b6189c3b 43742003-12-29 James Clark <jjc@jclark.com>
c2be49ed
EZ
4375
4376 * fns.c (internal_equal): Return t for two NaN arguments.
4377
7abd90ea
RS
43782003-12-29 Richard M. Stallman <rms@gnu.org>
4379
4380 * data.c (store_symval_forwarding): Handle setting
4381 default-fill-column, etc., by changing the value in
4382 buffers that use the default.
4383
4384 * minibuf.c (Fset_minibuffer_window): Doc fix.
4385
4386 * fileio.c (choose_write_coding_system): Ignore auto_saving
4387 if using the visited file for auto saves.
4388 (Fwrite_region): Don't update SAVE_MODIFF
4389 if auto-saving in visited file.
4390
3e7cfcdc
KH
43912003-12-29 Kenichi Handa <handa@m17n.org>
4392
4393 * dispextern.h (face_font_available_p): Extern it.
4394
4395 * fontset.c (Voverriding_fontspec_alist): New variable.
4396 (lookup_overriding_fontspec): New function.
d7107586 4397 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
3e7cfcdc
KH
4398 (fontset_font_pattern): Likewise.
4399 (regulalize_fontname): New function.
4400 (Fset_fontset_font): Call regulalize_fontname.
4401 (Fset_overriding_fontspec_internal): New function.
d7107586
SM
4402 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
4403 Defsubr Sset_overriding_fontspec_internal.
3e7cfcdc
KH
4404
4405 * xfaces.c (face_font_available_p): New function.
4406
7abd90ea
RS
44072003-12-28 Richard M. Stallman <rms@gnu.org>
4408
4409 * buffer.c (Fother_buffer): Don't crash if BUF is nil
4410 or if its name is nil.
4411
4412 * buffer.c (Fkill_buffer): Don't delete auto-save file
4413 if it's the same as the visited file.
4414
de1d1a40
LT
44152003-12-28 Luc Teirlinck <teirllm@auburn.edu>
4416
4417 * coding.c (Fcheck_coding_system): Doc fix.
4418
204fb75e
KS
44192003-12-28 Kim F. Storm <storm@cua.dk>
4420
4421 * Makefile.in (eval.o): Depend on dispextern.h.
4422
4423 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
4424 image glyph using image's ascent.
4425 (mode_line_string): Return image glyph as object clicked on.
4426 Adjust y0 for image glyph using image's ascent.
4427
4428 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
4429 (struct glyph): New members, ascent and descent. Used to save
4430 this glyph's ascent and descent, instead of having.
4431 (struct glyph): Declare member face_id using FACE_ID_BITS.
4432 (find_hot_spot): Add prototype.
4433
4434 * keyboard.c (Qimage): Remove extern (now in lisp.h).
4435 (QCmap): Declare extern.
4436 (make_lispy_position): When position is inside image hot-spot,
4437 use hot-spot element's id as posn element.
4438
4439 * lisp.h (IMAGEP): New macro to test for image object type.
4440 (Qimage): Declare extern.
4441
4442 * macfns.c (Qimage): Remove extern (now in lisp.h).
4443 (valid_image_p, parse_image_spec): Use IMAGEP macro.
4444
4445 * macterm.c (Qface, Qmouse_face): Remove unused externs.
4446
4447 * w32fns.c (Qimage): Remove extern (now in lisp.h).
4448 (valid_image_p, parse_image_spec): Use IMAGEP macro.
4449
4450 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
4451
4452 * w32term.c (Qface, Qmouse_face): Remove unused externs.
4453
4454 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
4455 pointer types.
4456 (Qrelative_width, Qalign_to): Remove unused variables.
4457 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
4458 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
4459 image maps.
d7107586 4460 (x_y_to_hpos_vpos): Return glyph relative coordinates through
204fb75e
KS
4461 new dx and dy args.
4462 Remove buffer_only_p arg (always 0). Simplify code accordingly.
4463 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
4464 than row's ascent and height, to get sensible height on tall rows.
4465 (build_desired_tool_bar_string): Remove Qimage extern.
4466 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
4467 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
4468 image glyph is alone on the last line.
4469 (append_glyph, append_composite_glyph, produce_image_glyph)
d7107586 4470 (append_stretch_glyph): Set glyph's ascent and descent.
204fb75e 4471 (on_hot_spot_p): New function to check if position is inside an
d7107586 4472 rectangular, circular, or polygon-shaped image hot-spot,
204fb75e
KS
4473 (find_hot_spot): New function to search for image hot-spot.
4474 (Flookup_image_map): New defun to search for image hot-spot.
4475 (define_frame_cursor1): New aux function to determine frame pointer.
4476 (note_mode_line_or_margin_highlight, note_mouse_highlight):
4477 Handle `pointer' text property and :pointer image property to
4478 control frame pointer shape. Detect image hot-spots for pointer
4479 and help_echo properties. Use define_frame_cursor1.
4480 (note_mouse_highlight): Use Vvoid_text_area_pointer.
f63fd14e 4481 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
204fb75e
KS
4482 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
4483
4484 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
4485
4486 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
4487 (Qimage): Remove extern (now in lisp.h).
4488 (valid_image_p, parse_image_spec): Use IMAGEP macro.
4489
4490 * xmenu.c (show_help_event): Remove unused code.
4491
4492 * xterm.c (Qface, Qmouse_face): Remove unused externs.
4493 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
4494 row's ascent and descent, to get a sensible height on tall rows.
4495
fc052137
LT
44962003-12-25 Luc Teirlinck <teirllm@auburn.edu>
4497
4498 * minibuf.c (Fcompleting_read): Undo previous change.
4499
a64387ee 45002003-12-25 Lars Hansen <larsh@math.ku.dk>
b9148500
LH
4501
4502 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
4503 Arguments GCPRO'ed in call to file name handler.
4504
56ffd194
TTN
45052003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
4506
4507 * termcap.c (tgetst1): Scan for "%pN"; if all
4508 N are continuous in [1,9], remove all "%pN".
4509
5202d23d
JD
45102003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4511
f26fab36
JD
4512 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
4513
5202d23d
JD
4514 * xfaces.c (lface_fully_specified_p): Take into account that
4515 MAC OS always have unspecified stipple.
4516
8babaa59
TTN
45172003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
4518
4519 * tparam.c (tparam1): Add handling for `%pN', which
4520 means use param N for the next substitution.
4521
2d176448
TTN
45222003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
4523
4524 * xfaces.c (Fcolor_gray_p): Fix omission bug:
4525 In case `frame' is nil, consult the selected frame.
4526 (Fcolor_supported_p): Likewise.
4527
adb0708c
LT
45282003-12-23 Luc Teirlinck <teirllm@auburn.edu>
4529
000eeb15
LT
4530 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
4531 Doc fixes.
0dc72b11
LT
4532
4533 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
4534 and an integer. Adapt the introductory comment accordingly.
adb0708c
LT
4535 (Fread_from_minibuffer): Delete code moved into read_minibuf.
4536 Doc fix.
4537 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
4538 read_minibuf.
4539 (Fcompleting_read): Delete code moved into read_minibuf.
d7107586 4540 (Ftest_completion): Make it handle obarrays and hash tables correctly.
adb0708c 4541
2e4d132b
KH
45422003-12-03 Kenichi Handa <handa@m17n.org>
4543
4544 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
4545 encoding sequence.
4546
3999c705
KH
45472003-12-01 Kenichi Handa <handa@m17n.org>
4548
4549 * composite.c (syms_of_composite): Don't make the compostion hash
4550 table week.
4551
d344ecbb
LT
45522003-11-30 Luc Teirlinck <teirllm@auburn.edu>
4553
4554 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
4555 * textprop.c (Fget_char_property_and_overlay): New function.
4556 (syms_of_textprop): Defsubr it.
4557
03d6484e
JD
45582003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4559
019b1f0e
JD
4560 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
4561 to compile on terminal configuration.
4562
03d6484e
JD
4563 * fileio.c (Fread_file_name): Check use_file_dialog also before
4564 calling Fx_file_dialog.
4565
4566 * fns.c: use_file_dialog: New variable.
4567 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
4568
442d3fd0
KS
45692003-11-29 Kim F. Storm <storm@cua.dk>
4570
4571 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
4572 (syms_of_msdos): Don't intern and staticpro them.
4573
0f6a07a8
KS
45742003-11-27 Kim F. Storm <storm@cua.dk>
4575
4576 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
4577 coordinates relative to glyph at posn. If glyph is an image,
4578 return that as object at posn. Callers changed.
4579 (mode_line_string, marginal_area_string): Calculate and return
4580 pixel coordinates relative to glyph. Callers changed.
4581
4582 * dispextern.h (buffer_posn_from_coords, mode_line_string)
4583 (marginal_area_string): Fix prototypes.
4584 (window_box_left_offset, window_box_right_offset): Add prototypes.
4585
4586 * frame.h (get_specified_cursor_type, get_window_cursor_type):
4587 Remove prototypes.
4588
4589 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
4590
4591 * keyboard.c (make_lispy_position): Add x and y coordinates
4592 relative to the current glyph as 7th element of position.
4593 If glyph is an image, return it in the object element.
4594 (read_key_sequence): Skip checks for keymap property in cases
4595 where POSN_STRING is not a string (e.g. an image).
4596
4597 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
4598 (Vshow_text_cursor_in_void): New variable.
4599 (glyph_to_pixel_coords): Don't use negative hpos.
4600 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
4601 (append_stretch_glyph): Change ascent arg to be actual value
f63fd14e 4602 in pixels rather than ratio to height. Callers changed.
0f6a07a8
KS
4603 (calc_pixel_width_or_height): New aux function, implementing
4604 pixel based artihmetic for glyph widths and heights.
4605 (produce_stretch_glyph): Use calc_pixel_width_or_height for
4606 :width, :height, :align-to, and :ascent, thus allowing these to
4607 be specified in pixels as well as multiples of characters.
4608 Don't produce stretch glyphs with zero width or height.
4609 (get_specified_cursor_type): Declare static.
4610 (get_window_cursor_type): Declare static. Add glyph arg to be
4611 able to know when cursor is on an image; always substitute
4612 hollow-box cursor for filled-box cursor on images, to avoid
4613 negative images and flicker when blinking the cursor.
4614 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
4615 (note_mode_line_or_margin_highlight): Use non-text cursor rather
4616 than vertical scroll-bar cursor in display margins.
4617 (note_mouse_highlight): Use non-text cursor rather than text
4618 cursor in fringes and over images in the text area.
4619 Use non-text cursor when mouse pointer is outside editable text,
4620 i.e. in the void after end-of-line or end-of-buffer; this was
4621 already done for W32, but is now standard for all systems --
4622 user can toggle show-text-cursor-in-void to get old behaviour.
4623 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
4624 Vdisplay_pixels_per_inch.
4625
00498bfc
AS
46262003-11-25 Andreas Schwab <schwab@suse.de>
4627
4628 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
4629 EMACS_INT to not lose bits.
4630 (Ffillarray): Don't set bits beyond the size of a bool vector.
4631
edaa824d
KS
46322003-11-25 Kim F. Storm <storm@cua.dk>
4633
4634 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
4635 define this defun on systems that cannot use stderr as lvalue.
4636
74d6f539
GM
46372003-11-24 Gerd Moellmann <gerd@gnu.org>
4638
4639 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
4640 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
4641 ld's default is incompatible with unexec.
4642
6a1ff3ba
KS
46432003-11-23 Kim F. Storm <storm@cua.dk>
4644
63dc7c6b
KS
4645 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
4646 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
4647 (Fforce_window_update): New defun.
4648 (syms_of_window): Defsubr it.
4649 (Fset_window_margins, Fset_window_fringes): Doc fix.
4650
6a1ff3ba
KS
4651 * print.c (Fredirect_debugging_output): New defun.
4652 (syms_of_print): Defsubr it.
4653
aef109b7
LT
46542003-11-22 Luc Teirlinck <teirllm@auburn.edu>
4655
4656 * fns.c (Fset_char_table_parent): Doc fix.
4657
6a1ff3ba 46582003-11-22 Kim F. Storm <storm@cua.dk>
63ccbe21
KS
4659
4660 * dispnew.c (buffer_posn_from_coords): Return actual row/column
4661 for glyph clicked on, rather than (unused) pixel positions.
4662 (mode_line_string, marginal_area_string): Change X and Y args to
4663 pointers for returning actual row/column for glyph clicked on.
4664 Simplify and optimize loops.
4665
aef109b7
LT
4666 * dispextern.h (mode_line_string, marginal_area_string):
4667 Update prototypes.
63ccbe21
KS
4668
4669 * keyboard.c (make_lispy_position): New function for generating
4670 mouse click positions from frame and pixel coordinates.
4671 Enhanced to return buffer position and actual row/column for
4672 events outside the text area using updated mode_line_string and
4673 marginal_area_string functions.
4674 Return left-fringe and right-fringe clicks as such, rather than
4675 clicks in text area.
4676 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
4677 pixel_to_glyph_coords, as we never use the results.
4678 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
4679 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
4680 Eliminate unused code in WHEEL_EVENT handling.
4681 (make_lispy_movement): Use make_lispy_position.
4682
4683 * window.c (coordinates_in_window): Remove redundant tests.
4684 Fix returned X pixel value for left-margin.
4685
4686 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
4687 mode_line_string and marginal_area_string parameters.
4688
a64387ee 46892003-11-22 Lars Hansen <larsh@math.ku.dk>
930a9995 4690
d7107586
SM
4691 * w32.c (struct the_group, getgrgid): Add.
4692 * mac.c (struct my_group, getgrgid): Add.
aef109b7 4693
3dbf3426
LT
46942003-11-21 Luc Teirlinck <teirllm@auburn.edu>
4695
4696 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
4697
cae8ddbb 46982003-11-21 Lars Hansen <larsh@math.ku.dk>
ded4064f 4699
d7107586
SM
4700 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
4701 include in call to file name handler. Optionally translate numeric
4702 UID and GID to strings. Update docstring.
4703 (directory_files_internal): Add parameter ID-FORMAT.
4704 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
4705 include in call to file name handler and call to
4706 directory_files_internal. Update Docstring.
4707 (Fdirectory_files): Add dummy parameter in call to
4708 directory_files_internal.
4709 * lisp.h (Qinteger): Add.
4710 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
4711 (Ffile_attributes): Add parameter.
4712 * data.c (Qinteger): Export.
cae8ddbb 4713
2550b848
LT
47142003-11-21 Luc Teirlinck <teirllm@auburn.edu>
4715
3dbf3426 4716 * fns.c (Freverse, Fnreverse): Doc fixes.
2550b848 4717
88380018
KS
47182003-11-19 Kim F. Storm <storm@cua.dk>
4719
4720 * xdisp.c (init_iterator): Initialize it->start to position
4721 before reseating (in case start position is invisible).
4722 (init_to_row_start): Set it->start to row-start.
4723 (redisplay_window): Accept optional_new_start if start position
4724 is invisible (in which case IT_CHARPOS overshoots PT).
4725 (display_line): Setup row->start from it->start (rather than
4726 it->current which is wrong if first char on line is invisible).
4727 When done, reseat it->start to it->current (= start of next row).
4728 (expose_area): Fix exposure of text area when first char (e.g. TAB)
4729 is only partially visible.
4730
4731 * dispextern.h (struct it): New member start.
4732
854c1a59
SM
47332003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
4734
455316e2
SM
4735 * alloc.c (make_float, Fcons): Clear the markbit at init time.
4736 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
4737 of block_index outside of the macro call.
4738 (Fgarbage_collect): Remove null code.
4739
4740 * m/amdx86-64.h: Don't redefine XPNTR.
4741
854c1a59
SM
4742 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
4743 of VALMASK.
4744
4745 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
4746 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
4747 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
4748
4749 * lisp.h (VALMASK): Only define for non-union type.
4750 (MARKBIT): Remove.
4751 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
4752 (XTYPE): Define unconditionally.
4753 (XSETTYPE): Remove one more remnant.
4754 (EQ): Define differently for the union and non-union cases.
4755 (INTMASK): New bit mask.
4756 (struct Lisp_Marker): Move down to prepare for upcoming patch.
4757 (GC_EQ): Delegate to EQ.
4758
4759 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
4760
a0c6ef2d
JD
47612003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4762
4763 * xterm.c (x_window_to_scroll_bar): Move check of display to
4764 where window_id is compared.
4765
859492c4
KS
47662003-11-17 Kim F. Storm <storm@cua.dk>
4767
4768 * dispextern.h (struct it): New member first_vpos.
4769
4770 * xdisp.c (start_display): Set it->first_vpos.
4771 (try_window_id): Use first_vpos to start display in first _text_
4772 line if no reusable lines at start of window with header line.
4773
810f2256
JD
47742003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4775
7c402969 4776 * w32fns.c (XPutPixel):
854c1a59
SM
4777 * w32bdf.c (w32_init_bdf_font):
4778 * sunfns.c (sel_read):
4779 * process.c (Fmake_network_process):
4780 * frame.c (store_frame_param):
4781 * fontset.c (Fset_fontset_font):
4782 * emacs.c (shut_down_emacs):
a64387ee 4783 * ccl.c (ccl_driver): Remove period at end of error message.
7c402969 4784
a32e9bfd
JD
4785 * config.in: Regenerate.
4786
810f2256
JD
4787 * xfns.c (x_window_to_frame, x_any_window_to_frame)
4788 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
4789 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
4790 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
4791 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
4792
4793 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
4794
4795 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
4796 (XTmouse_position, handle_one_xevent): Pass Display* to
4797 x_window_to_scroll_bar.
4798 (x_window_to_scroll_bar): Take a Display* argument.
4799 Check that display for frame is equal to Display* argument.
854c1a59 4800 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
810f2256
JD
4801 x_display_info_for_display instead. Use Display in xev instead
4802 of GDK_DISPLAY.
4803 (x_dispatch_event): Call x_display_info_for_display.
f63fd14e 4804 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
810f2256
JD
4805 (x_connection_closed): Call xg_display_close for GTK.
4806 (x_term_init): Call xg_display_open for additional displays.
4807 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
4808 for GTK.
4809
4810 * xmenu.c (single_menu_item, mouse_position_for_popup)
4811 (x_activate_menubar): Formatting adjustments.
4812
4813 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
4814 adjustments.
4815
4816 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
4817 (xg_display_close, xg_create_default_cursor)
4818 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
4819 handling.
854c1a59
SM
4820 (xg_left_ptr_cursor): Remove.
4821 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
810f2256
JD
4822 cursor here.
4823 (xg_win_to_widget): Take Display* argument, call
4824 gdk_xid_table_lookup_for_display.
4825 (xg_create_frame_widgets, xg_get_file_name, create_menus)
4826 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
4827 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
4828 in FRAME_X_DISPLAY_INFO.
4829 (xg_get_scroll_id_for_window): Take Display* argument.
4830 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
854c1a59 4831 (xg_initialize): Remove xg_left_ptr_cursor.
810f2256
JD
4832
4833 * gtkutil.h: xg_get_scroll_id_for_window, xg_win_to_widget takes
4834 Display* argument also. Declare xg_display_open,
4835 xg_display_close, xg_create_default_cursor.
4836
0b03cc78
JD
48372003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4838
4839 * xterm.c (x_detect_focus_change): Do not change focus frame for
4840 Enter/LeaveNotify if the current focus frame has explicit focus.
4841
77e688fa
KS
48422003-11-14 Kim F. Storm <storm@cua.dk>
4843
4844 * dispnew.c (update_text_area): Fix redisplay error when hscroll
4845 is active and first glyph is only partially visible.
854c1a59 4846
dd429b03
KH
48472003-11-13 Kenichi Handa <handa@m17n.org>
4848
4849 * xdisp.c (select_frame_for_redisplay): New function.
4850 (redisplay_internal): Record also selected_frame for
4851 unwind_redisplay. Call select_frame_for_redisplay before
4852 redrawing each frame.
4853 (unwind_redisplay): Argument changed to a cons.
4854
6d9266f4
LT
48552003-11-12 Luc Teirlinck <teirllm@auburn.edu>
4856
4857 * fns.c (Fstring_to_multibyte): Doc fix.
4858
80060eb3
KH
48592003-11-11 Kenichi Handa <handa@m17n.org>
4860
4861 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
4862
74305183
JD
48632003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4864
4865 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
4866 program specified positions.
4867
cfda993e
JD
48682003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4869
4870 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
4871
df211069
KH
48722003-11-08 Kenichi Handa <handa@m17n.org>
4873
4874 * Makefile.in (lisp): Add kannada.el.
4875 (shortlisp): Likewise.
4876
4307d534
KH
48772003-11-07 Kenichi Handa <handa@m17n.org>
4878
854c1a59
SM
4879 * coding.c (coding_allocate_composition_data):
4880 Reset coding->composing to COMPOSITION_NO.
4307d534
KH
4881 (coding_restore_composition): Detect invalid composition data.
4882 Give Fstring and Fvector a Lispy integer, not C int.
4883
854c1a59
SM
48842003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
4885
4886 * floatfns.c (Flogb): Don't use VALMASK.
4887
4888 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
4889 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
4890
4891 * lisp.h (XINT): Move the cast to clarify what is going on.
4892 (GCTYPEMASK, XSETTYPE): Remove.
4893 (XGCTYPE): Make it an alias of XTYPE.
4894
d04103a1
JD
48952003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4896
4897 * xterm.c (x_term_init): Fix formatting.
4898
da18b5ac
JD
48992003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4900
4901 * gtkutil.h: Declare xg_have_tear_offs, remove xg_keep_popup
4902 and xg_did_tearoff.
4903
4904 * gtkutil.c: Remove variable xg_did_tearoff.
4905 (xg_have_tear_offs): New function.
4906 (tearoff_remove): Just decrease xg_detached_menus.
4907 (tearoff_activate): Increase xg_detached_menus and call
4908 tearoff_remove when tearoff is removed.
854c1a59 4909 (xg_keep_popup): Remove function.
da18b5ac
JD
4910 (create_menus): Give add_tearoff_p as argument to recursive
4911 call to create_menus.
4912 (xg_create_widget): Use variables instead of multiple
4913 strcmp. Tell create_menus to create tear off only for
4914 menu bar menus.
4915 (xg_update_menubar): Change title for a detached menu also.
4916 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
4917 of deep_p.
4918 (xg_initialize): Initialize xg_detached_menus, remove
4919 initialization of xg_did_tearoff.
4920
4921 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
4922 xg_have_tear_offs returns non-zero.
4923 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
4924 call to xg_keep_popup.
4925
64d4923e
AC
49262003-11-01 Andrew Choi <akochoi@shaw.ca>
4927
4928 * macterm.c (XTread_socket): Handle menubar selection and grow
4929 window only for mouseDown events.
854c1a59 4930
6cc8bc07
JD
49312003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4932
4933 * xterm.c (x_term_init): For GTK part, increase x_initialized
4934 to check for more than one display. Use error instead of return 0.
4935
043131c4
AC
49362003-10-31 Andrew Choi <akochoi@shaw.ca>
4937
854c1a59 4938 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
043131c4
AC
4939 (copy_dysymtab): Call it.
4940
bdda99a1
LT
49412003-10-31 Luc Teirlinck <teirllm@auburn.edu>
4942
4943 * eval.c (Fdefvaralias): Doc fix.
4944
800f42ff 49452003-10-26 Luc Teirlinck <teirllm@auburn.edu>
0d11571e
LT
4946
4947 * data.c (Fsetplist): Doc fix.
4948
ef35b389
LK
49492003-10-14 Lute Kamstra <lute@gnu.org>
4950
4951 * window.c (Fset_window_fringes): Clarify docstring.
07107abc 4952
ef35b389 49532003-10-14 Kim F. Storm <storm@cua.dk>
854c1a59 4954
07107abc
KS
4955 * window.c (Fset_window_margins): Simplify arg checking.
4956
f7005886
RS
49572003-10-13 Richard M. Stallman <rms@gnu.org>
4958
4959 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
4960 (print_partial_compiled_pattern): Replace assert with a printout.
4961 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
4962
4963 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
4964
4965 * window.c (Fset_window_margins): Allow only integers as args.
4966 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
4967 Doc fixes.
4968
9c0c2af5
LK
49692003-10-13 Lute Kamstra <lute@gnu.org>
4970
4971 * window.c (Fset_window_fringes): Elaborate docstring.
4972
3f080e4e
AC
49732003-10-12 Andrew Choi <akochoi@shaw.ca>
4974
854c1a59 4975 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
a4887377 4976
3f080e4e
AC
4977 * s/darwin.h (GC_MARK_STACK): Define.
4978
0aa513ed
JD
49792003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4980
4981 * window.c (shrink_windows): New function.
4982 (size_window): Call shrink_windows to calculate window sizes when
4983 shrinking frame with more than one window.
4984
6aa8858a
KS
49852003-10-12 Kim F. Storm <storm@cua.dk>
4986
4987 * xdisp.c (compute_fringe_widths): Doc fix.
4988
c2164d91
KH
49892003-10-08 Kenichi Handa <handa@m17n.org>
4990
854c1a59 4991 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
c2164d91 4992
f82ac129
KH
49932003-10-07 Kenichi Handa <handa@m17n.org>
4994
4995 * coding.c (Qcoding_system_define_form): New variable.
4996 (syms_of_coding): Intern and staticpro it.
4997 (Fcheck_coding_system): Try to autoload the definition of
4998 CODING-SYSTEM.
4999
9296c947
LT
50002003-10-05 Luc Teirlinck <teirllm@auburn.edu>
5001
5002 * fns.c (Frequire): Doc fix.
5003
c1f0671a
JD
50042003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5005
3d8c3826
JD
5006 * xfns.c (Fx_send_client_event): New function as a base for
5007 manipulating extended window manager hints.
6dc15d98 5008 (Fx_send_client_event): Remove unused variable s.
3d8c3826 5009
068ae0fd
JD
5010 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
5011 that function is removed.
5012
5013 * xterm.c (x_set_offset): Use move_offset_left/top instead of
5014 x/y_pixels_outer_diff.
5015 (x_check_expected_move): Calculate move_offset_left/top.
5016
5017 * xterm.h (struct x_output): New members: move_offset_top/left.
5018
854c1a59 5019 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
068ae0fd
JD
5020 call x_set_offset directly.
5021
5022 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
5023
96f09305
JD
5024 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
5025
5026 * xterm.c (x_delete_display): Free font names and font_encoder
5027 in dpyinfo->font_table.
5028
854c1a59
SM
5029 * xfns.c (Fx_close_connection): Only call XFreeFont here.
5030 Move xfree of font names to x_delete_display.
96f09305 5031
c1f0671a
JD
5032 * xterm.h (struct x_display_info): New member, wm_type.
5033 (struct x_output): New members, expected_top/left and
5034 check_expected_move.
5035
5036 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
5037 is received.
854c1a59
SM
5038 (handle_one_xevent): Rename x_check_expected_move from
5039 x_check_fullscreen_move.
c1f0671a
JD
5040 (x_set_offset): Only add WM decoration sizes to modified_top/left
5041 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
854c1a59 5042 (x_check_expected_move): Rename from x_check_fullscreen_move.
c1f0671a
JD
5043 Removed fullscreen specific code. Use check_expected_move,
5044 expected_left/top instead. Also, set wm_type.
5045 (x_term_init): Initialize wm_type to unknown.
5046
5047 * frame.c (x_fullscreen_move): Remove addition of WM decoration
5048 sizes to move_x/y.
5049
be2fdba9
KH
50502003-10-03 Kenichi Handa <handa@m17n.org>
5051
5052 * macterm.c (x_load_font): Clear all members of FONTP before start
5053 filling them.
5054
50552003-10-02 Kenichi Handa <handa@m17n.org>
5056
5057 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
5058 before calling find_ccl_program_func. Call find_ccl_program_func
5059 only when fontp->font_encoder is not NULL.
5060
5061 * xterm.c (x_load_font): Clear all members of FONTP before start
5062 filling them.
5063
26a6e439
JPW
50642003-10-03 John Paul Wallington <jpw@gnu.org>
5065
5066 * keymap.c (map_keymap): Don't abort when binding is a vector.
5067
0d4c2dc2
JR
50682003-10-02 Jason Rumney <jasonr@gnu.org>
5069
854c1a59
SM
5070 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
5071 Sync dependencies with Makefile.in.
a63cf46f
JR
5072 (alloca.o): Remove.
5073
0d4c2dc2
JR
5074 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
5075 filling them.
5076
5077 * w32bdf.c (w32_load_bdf_font): Likewise.
5078
ab8f7d5c
RS
50792003-09-30 Richard M. Stallman <rms@gnu.org>
5080
5081 * term.c (set_tty_color_mode): Calculate current_mode_spec
5082 regardless of value of VAL.
5083
854c1a59 5084 * intervals.c (graft_intervals_into_buffer):
ab8f7d5c
RS
5085 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
5086 Handle over_used when splitting UNDER.
5087
a64387ee 50882003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
ab8f7d5c
RS
5089
5090 * regex.c (regex_compile): Free the stack when returning from function.
5091
3413f972
KH
50922003-09-28 Kenichi Handa <handa@m17n.org>
5093
5094 * fontset.c (Finternal_char_font): Change return value to
5095 cons (FONT-NAME . GLYPH-CODE).
5096
a6eeaa81 50972003-09-28 Eli Zaretskii <eliz@gnu.org>
40409f05
EZ
5098
5099 * term.c (tty_setup_colors): Treat any negative argument as -1.
5100
f98ddc99
KH
51012003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
5102
5103 * process.c (send_process): Delete unused temp_buf.
5104
66c8f1a8
DL
51052003-09-26 Dave Love <fx@gnu.org>
5106
5107 * xterm.c (x_bitmap_mask): Declare.
5108
ca716c26
DL
51092003-09-25 Dave Love <fx@gnu.org>
5110
5111 * Makefile.in (fns.o): Depend on md5.h.
5112
fbe57420
KS
51132003-09-25 Kim F. Storm <storm@cua.dk>
5114
5115 * window.c (set_window_buffer): Fix redisplay problems when
5116 switching between buffers with different display margin widths.
5117
ef6ae4ff
KS
51182003-09-23 Kim F. Storm <storm@cua.dk>
5119
5120 * process.c (set_socket_option): Fix :bindtodevice option.
5121 (Fset_network_process_option): Update process contact list when
5122 setting option succeeds.
5123 (Fmake_network_process): Doc fix.
5124
68e03c1c
DL
51252003-09-23 Dave Love <fx@gnu.org>
5126
7146d1c1 5127 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
68e03c1c 5128
a6eeaa81 51292003-09-22 Eli Zaretskii <eliz@gnu.org>
2f809aae
EZ
5130
5131 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
5132 color mode is an integer number (it could be -1).
5133
8fe7d8c8
RS
51342003-09-22 Richard M. Stallman <rms@gnu.org>
5135
5136 * intervals.c (graft_intervals_into_buffer): Correct the main loop
5137 in the case where OVER is longer than UNDER.
5138
2f71b5ea
MY
51392003-09-22 Masatake YAMATO <jet@gyve.org>
5140
7146d1c1 5141 * window.c (Fset_window_scroll_bars): Validate the value of
2f71b5ea 5142 `vertical_type'.
7146d1c1 5143
0c4da023
KS
51442003-09-21 Kim F. Storm <storm@cua.dk>
5145
5146 * frame.c (Vdefault_frame_scroll_bars): New variable.
5147 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
5148 (syms_of_frame): DEFVAR_LISP it, and initialize according to
5149 window-system default scroll bar position.
5150
b648413b
KS
5151 * window.c (Fwindow_scroll_bars): Doc fix.
5152
8f5b9e34
JD
51532003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5154
854c1a59 5155 * xterm.c (x_set_offset): Take window manager decorations into account.
8f5b9e34 5156
b0f23edf
RS
51572003-09-19 Richard M. Stallman <rms@gnu.org>
5158
5159 * atimer.h: Don't include lisp.h.
5160 (P_): Define it here (as well as elsewhere).
5161
5162 * print.c (Fprin1_to_string): Move the PRINTPREPARE
5163 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
5164
5165 * data.c (Fvariable_binding_locus): New function.
5166 (syms_of_data): defsubr it.
5167 (Flocal_variable_p): Delete duplicate call to indirect_variable.
5168
e1283999
DL
51692003-09-18 Dave Love <fx@gnu.org>
5170
ad5f3636
DL
5171 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
5172
e1283999
DL
5173 * process.c (Fnetwork_interface_info): Fix type error.
5174 (Fnetwork_interface_list): Doc fix.
5175 (read_process_output, read_process_output): Delete unused var.
5176
b8c7fd71
KS
51772003-09-17 Kim F. Storm <storm@cua.dk>
5178
5179 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
5180 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
5181 (Fnetwork_interface_info): Check that ifreq struct has required
5182 fields before accessing them; this requires that those fields are
5183 defined as macros, which may be too restrictive on some platforms,
5184 but it is better than failing on other platforms.
5185 (syms_of_process): Only defsubr above fns when included.
5186
11e0a411
DL
51872003-09-17 Dave Love <fx@gnu.org>
5188
5189 * unexalpha.c: Don't include varargs.h.
5190
e9c50801
KS
51912003-09-17 Kim F. Storm <storm@cua.dk>
5192
5193 * process.c (Fset_process_sentinel): Add sentinel to childp plist
5194 for network process.
5195 (socket_options): Add `:' prefix to option names. Add optbit field.
5196 (set_socket_option): Remove no_error arg and special handling of s < 0.
5197 Return 1<<optbit for known option, 0 for unknown.
5198 Do not interpret 0 as false for boolean option (only nil).
5199 Pass failed option and value to report_file_error.
7146d1c1 5200 (Fset_network_process_options): Replace by Fset_network_process_option.
e9c50801
KS
5201 (Fset_network_process_option): New function to set just one option.
5202 (Fmake_network_process): Allow :coding arg to be a cons.
5203 Allow :server arg to be an integer specifying backlog size.
5204 Remove :options arg, and allow options to be specified directly
5205 as :KEY, VALUE pairs. Parse these options before binding socket.
5206 As before, :reuseaddr t is default for a server process, but this
5207 can now be disabled by specifying :reuseaddr nil.
5208 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
5209 (init_process): Availability of network options is now checked with
5210 simpler syntax (featurep 'make-network-process :OPTION); use loop to
5211 setup features.
5212 (syms_of_process): Fix defsubr's for the replaced functions.
5213
a0fc3644
DL
52142003-09-16 Dave Love <fx@gnu.org>
5215
5216 * Makefile.in: Depend on coding.h.
5217
6df2a645
KS
52182003-09-14 Kim F. Storm <storm@cua.dk>
5219
5220 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
5221 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
5222 (syms_of_process): Defsubr them.
5223
5224 * config.in: Regenerate.
7146d1c1
SM
5225
52262003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
5227
5228 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
5229 * m/news-r6.h (XUNMARK): Remove.
5230 * m/mips.h (XUNMARK): Remove.
5231 * m/mips-siemens.h (XUNMARK): Remove.
5232 * m/iris4d.h (XUNMARK): Remove.
5233 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
5234
0930c1a1
SM
52352003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
5236
31003b9e
SM
5237 * lisp.h (VALBITS): Don't remove 1 for the markbit.
5238 (union Lisp_Object): Use unsigned int for types. Remove markbit.
5239 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
5240 (XTYPE): Use unsigned right-shift.
5241 (XMARKBIT, XMARK, XUNMARK): Remove.
5242
0930c1a1
SM
5243 * alloc.c (init_intervals, init_symbol, init_marker):
5244 Don't preallocate anything.
5245 (Fgarbage_collect, mark_object): Ignore the markbit.
5246
5247 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
5248
19bb0fcd 52492003-09-08 Lute Kamstra <lute@gnu.org>
5df034de
LK
5250
5251 * xdisp.c (pint2hrstr): New function.
5252 (decode_mode_spec): Add `%i' and `%I' specs.
5253 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
5254 for `mode-line-format'.
5255
03bb6a06
AS
52562003-09-07 Andreas Schwab <schwab@suse.de>
5257
5258 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
5259 avoid warning.
5260
a6eeaa81 52612003-09-07 Eli Zaretskii <eliz@gnu.org>
2063d89c 5262
0930c1a1 5263 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
2063d89c 5264
ed159bbf
KS
52652003-09-03 Kim F. Storm <storm@cua.dk>
5266
5267 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
5268 change (superseded by 2002-08-30 change); the default blink-off
5269 cursor is now again "no cursor".
5270
fe64a394
JR
52712003-09-01 Jason Rumney <jasonr@gnu.org>
5272
5273 * makefile.w32-in (alloca.o): Remove.
5274 (coding.o): Depend on intervals.h
5275 (emacs.o, bytecode.o): Depend on window.h
5276
c0175e24
DL
52772003-09-01 Dave Love <fx@gnu.org>
5278
5279 * Makefile.in (alloca.o): Remove commands.
5280 (coding.o): Depend on intervals.h composite.h window.h.
5281 (emacs.o): Depend on window.h keyboard.h keymap.h.
5282 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
5283 (bytecode.o): Depend on window.h.
5284
a24d4cb2
JR
52852003-08-31 Jason Rumney <jasonr@gnu.org>
5286
4bc2315e
JR
5287 * w32term.c (w32_per_char_metric): Allow cached metrics to be
5288 returned even when font_type is unknown.
5289
a24d4cb2
JR
5290 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
5291
9d35adc7
JD
52922003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5293
5294 * xterm.c (x_term_init): Initialize new fields in x_display_info.
5295
5296 * xterm.h (struct x_display_info): Add red/green/blue_bits and
5297 *_offset.
5298
5299 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
5300 calculate pixel value.
5301
6f68b035
GM
53022003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
5303
0930c1a1
SM
5304 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
5305 Don't tell redisplay display is accurate when it's actually been
5306 paused for pending input.
6f68b035 5307
4828b4d7
RS
53082003-08-29 Richard M. Stallman <rms@gnu.org>
5309
5310 * dispnew.c (adjust_glyph_matrix): Call window_box
5311 whenever W is nonzero.
5312
5313 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
5314 (Fkill_local_variable, Fmake_variable_frame_local)
0930c1a1 5315 (Flocal_variable_p, Flocal_variable_if_set_p):
4828b4d7
RS
5316 Use indirect_variable to trace thru variable aliases.
5317
5318 * config.in: Updated.
5319
5320 * callint.c (Fcall_interactively): Save and restore
5321 Vthis_command, Vthis_original_command, real_this_command,
5322 and current_kboard->Vlast_command.
5323
5324 * abbrev.c (Fexpand_abbrev): Insert before deleting.
5325
e019878d
GM
53262003-08-29 Gerd Moellmann <gerd@gnu.org>
5327
5328 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
5329
85478bc6
KH
53302003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
5331
0930c1a1 5332 * coding.c (decode_coding_iso2022): Initialize local variable c2.
85478bc6
KH
5333 (decode_coding_sjis_big5): Likewise.
5334
07ce82d3
JR
53352003-08-27 Jason Rumney <jasonr@gnu.org>
5336
d3703de3
JR
5337 * w32.c (sys_pipe): Protect against file descriptor overflow.
5338
ee4a01d1
JR
5339 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
5340
07ce82d3
JR
5341 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
5342
a64387ee 53432003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
72d19c66
LK
5344
5345 * xfns.c (Vgtk_version_string): New variable.
5346 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
5347
a6eeaa81 53482003-08-24 Eli Zaretskii <eliz@gnu.org>
5459e42a 5349
0930c1a1 5350 * term.c (term_init): Remove `const' from buffer_size's declaration.
3d8714e7 5351
5459e42a
EZ
5352 * Makefile.in (msdos.o): Depend on intervals.h.
5353
0930c1a1 5354 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
5459e42a 5355
231d6cfb
JD
53562003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5357
5358 * xterm.h (struct x_display_info): New fields: client_leader_window
5359 and Xatom_wm_client_leader.
5360
5361 * xterm.c (x_initialize): Move call to x_session_initialize to ...
5362 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
5363
5364 * xsmfns.c (create_client_leader_window): New function.
5365 (x_session_initialize): Call create_client_leader_window, take
5366 dpyinfo as argument.
5367
5368 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
5369
5370 * Makefile.in (xsmfns.o): Add more depenedencies.
5371
afa88464
DL
53722003-08-21 Dave Love <fx@gnu.org>
5373
5374 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
5375
f730033e
KH
53762003-08-21 Kenichi Handa <handa@m17n.org>
5377
5378 * term.c (term_init): Fix previous change; don't rely on the
5379 length of `buffer' if TERMINFO is defined.
5380
6dca786c
DL
53812003-08-20 Dave Love <fx@gnu.org>
5382
5383 * atimer.h: Include lisp.h.
5384
5385 * lisp.h (EMACS_LISP_H): New.
5386 (popup_activated_flag): Don't declare.
5387
5388 * alloca.c: Some merging with gnulib. Change logic and doc
5389 concerning (x)malloc/(x)free -- no longer Emacs-specific.
5390 [DO_BLOCK_INPUT]: Don't include lisp.h.
5391 (xmalloc, xfree): Declare.
5392 (malloc): Don't declare.
5393
0930c1a1 5394 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
6dca786c
DL
5395 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
5396 atimer.h, blockinput.h.
5397
5398 * alloc.c (lisp_align_malloc): Change type of `aligned'.
5399
5400 * alloca.s: Removed.
5401
3a06a6d9
RS
54022003-08-19 Gerd Moellmann <gerd@gnu.org>
5403
5404 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
5405 use -lncurses.
5406
5407 * term.c (term_init): Use a buffer of size 4096 for tgetent since
5408 FreeBSD returns something longer than 2044. Abort if the end of
5409 the buffer is overwritten.
5410
27eeee55
MB
54112003-08-19 Miles Bader <miles@gnu.org>
5412
5413 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
5414
2f297815
GM
54152003-08-19 Gerd Moellmann <gerd@gnu.org>
5416
f4446bbf
GM
5417 * alloc.c (lisp_align_malloc): Check for memory full when
5418 allocating ablocks, which also avoids freeing a pointer into an
5419 ablocks structure.
5420
5421 * puresize.h (BASE_PURESIZE): Increase to 1100000.
5422
0930c1a1 5423 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
2f297815 5424
0e7d7aae
RS
54252003-08-16 Richard M. Stallman <rms@gnu.org>
5426
5427 * editfns.c (Fencode_time): Doc fix.
5428
54292003-08-16 David Ponce <david@dponce.com>
5430
5431 * fileio.c (Fwrite_region): Fix conditional expression to issue
5432 the right message.
5433
b6189c3b 54342003-08-16 Juri Linkov <juri@jurta.org>
0e7d7aae
RS
5435
5436 * syntax.c (Fforward_word): Argument changed to optional.
0930c1a1 5437 Set default value to 1.
0e7d7aae 5438
5d551295
KH
54392003-08-15 Kenichi Handa <handa@m17n.org>
5440
5441 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
5442 what autoscaled.
5443 (best_matching_font): Once we find a better scalable font, set
5444 non_scalable_has_exact_height_p to 1.
5445 (try_font_list): Call try_alternative_families to try any family
5446 with the given registry.
5447
1661e56b
AS
54482003-08-09 Andreas Schwab <schwab@suse.de>
5449
f29181dc
AS
5450 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
5451
1661e56b
AS
5452 * print.c (print_string): Fix printing of multibyte string with
5453 nontrivial printcharfun.
5454
465aa50a
JD
54552003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5456
5457 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
5458
5459 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
5460
e430e5ba
KH
54612003-07-31 Kenichi Handa <handa@m17n.org>
5462
5463 * process.c (read_process_output): Return the actually read bytes
5464 instead of the result of decoding.
5465
97e7188e
KH
54662003-07-31 Kenichi Handa <handa@m17n.org>
5467
5468 * xterm.h (struct x_bitmap_record): New member have_mask.
5469
5470 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
5471 to 0.
5472 (x_create_bitmap_from_file): Likewise.
5473 (x_destroy_bitmap): Check have_mask member before freeing a mask.
5474 (x_destroy_all_bitmaps): Likewise.
5475 (x_create_bitmap_mask): Set have_mask member to 1.
5476
b53094d6
RS
54772003-07-30 Richard M. Stallman <rms@gnu.org>
5478
5479 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
5480
631f2082
JD
54812003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5482
5483 * gtkutil.c (xg_mark_data): Update calls to mark_object.
5484
c855f2ca
RS
54852003-07-29 Richard M. Stallman <rms@gnu.org>
5486
5487 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
5488 Conditionalize XIM code on HAVE_XIM.
5489
5490 * fns.c (Fclear_string): New function.
5491 (syms_of_fns): defsubr it.
5492
b6189c3b 54932003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
17e6d491 5494
0930c1a1 5495 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
17e6d491 5496
29ea8ae9
SM
54972003-07-22 Stefan Monnier <monnier@cs.yale.edu>
5498
5499 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
5500
5501 * buffer.c (delete_all_overlays): New function.
5502 * buffer.h (delete_all_overlays): Declare.
5503 * coding.c (run_pre_post_conversion_on_str):
5504 * print.c (temp_output_buffer_setup):
5505 * fileio.c (Finsert_file_contents):
5506 * minibuf.c (get_minibuffer): Use it.
5507
1dd7ccf2
AC
55082003-07-22 Andrew Choi <akochoi@shaw.ca>
5509
5510 * unexmacosx.c (unexec_regions_sort_compare):
5511 (unexec_regions_merge): New functions. Sort and merge unexec
5512 regions before dumping them.
5513
f57bd967
DL
55142003-07-22 Dave Love <fx@gnu.org>
5515
5516 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
5517
7cdee936
SM
55182003-07-21 Stefan Monnier <monnier@cs.yale.edu>
5519
5520 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
5521 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
5522 MARKBIT as the gcmarkbit for strings.
5523
e50886d3
RS
55242003-07-21 Richard M. Stallman <rms@gnu.org>
5525
5526 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
5527
29ea8ae9 5528 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
e50886d3
RS
5529 (syms_of_fns): Corresponding change.
5530
5531 * alloc.c (syms_of_alloc): Doc fixes.
5532
55332003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
5534
5535 * s/netbsd.h: Use -Wl syntax.
5536
fdc39b59
RS
55372003-07-17 Richard M. Stallman <rms@gnu.org>
5538
5539 * xterm.c (xim_initialize): Redo 6/24 change.
5540
9c53385f
SM
55412003-07-15 Stefan Monnier <monnier@cs.yale.edu>
5542
5543 * buffer.c (copy_overlays): Use EMACS_INT for positions.
5544 (Fswitch_to_buffer): Don't signal an error when switching to the same
5545 buffer in a dedicated window.
5546
5547 * alloc.c: Use bitmaps for cons, as was done for floats.
5548 (init_float, init_cons): Let the normal code allocate the first block.
5549 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
5550 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
5551 New macros.
5552 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
5553 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
5554 (live_cons_p): Check the pointer is not past the `conses' array.
5555 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
5556 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
5557 (survives_gc_p): Use CONS_MARKED_P and simplify.
5558 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
5559
dde13196
PE
55602003-07-13 Paul Eggert <eggert@twinsun.com>
5561
5562 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
5563 puts it into BSS instead, at least on Solaris 8 and 9.
5564 This is a valid optimization, and it may occur on other platforms,
5565 so Emacs should not assume that initializing a static variable to
5566 zero puts it into data.
5567 * alloc.c (pure, staticvec):
5568 Initialize these arrays to nonzero, so that they're not
5569 put into BSS by that optimization.
5570
a801bc34
SM
55712003-07-13 Stefan Monnier <monnier@cs.yale.edu>
5572
5573 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
5574 (lisp_align_malloc): Use posix_memalign is available.
5575 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
5576 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
5577 for consistency. Update users.
5578
0c8b2afa
RS
55792003-07-13 Richard M. Stallman <rms@gnu.org>
5580
5581 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
5582
668c2ab0
JB
55832003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
5584
5585 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
5586 and use the Gtk+ function gtk_window_icon_from_file if available.
5587
5588 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
5589 handle mask of bitmaps.
5590 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
5591 mask property.
5592 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
5593
5594 * xterm.h (xg_set_icon): New function.
5595
800bebe3
RS
55962003-07-12 Paul Eggert <eggert@twinsun.com>
5597
5598 * unexelf.c (unexec): Consider a section to precede the .bss
5599 section if its addresses overlap that of .bss.
5600
69e38995
RS
56012003-07-12 Richard M. Stallman <rms@gnu.org>
5602
5603 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
5604
5605 * config.in (HAVE_CRTIN): Add #undef.
5606 (INLINE): Really inline only if OPTIMIZE is defined.
5607
5608 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
5609 END_FILES_1.
5610 (START_FILES_1, END_FILES_1): New macros (conditional).
a801bc34 5611 (LD_SWITCH_SYSTEM_TEMACS): Define.
69e38995
RS
5612
5613 * s/openbsd.h: Don't include bsd4-3.h.
a801bc34
SM
5614 (TERMINFO): Define.
5615 (LIBS_TERMCAP): Define.
5616 (LD_SWITCH_SYSTEM): Define (two definitions).
69e38995
RS
5617
5618 * xfns.c: Include libpng/png.h instead of png.h.
5619
f1d0c238
AS
56202003-07-11 Andreas Schwab <schwab@suse.de>
5621
5622 * buffer.c (modify_overlay): Update prototype.
5623 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
5624 Likewise.
5625
5f6bf5fe
SM
56262003-07-09 Stefan Monnier <monnier@cs.yale.edu>
5627
5628 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
5629 (struct interval): Move to intervals.h.
5630 (struct Lisp_Marker): Use EMACS_INT for position info.
5631 (forward_point): Remove prototype of defunct function.
5632 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
5633 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
5634 (syms_of_textprop, set_text_properties): Remove prototypes that are
5635 already in intervals.h.
5636
5637 * intervals.h (struct interval): Move from lisp.h.
5638 Use EMACS_INT for position and size info.
5639
5640 * coding.c: Include intervals.h for Fset_text_properties.
5641
5642 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
5643 position and length information.
5644
2765b457
SM
56452003-07-09 Stefan Monnier <monnier@cs.yale.edu>
5646
5647 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
5648 position and length information.
5649
2410d73a
SM
56502003-07-09 Stefan Monnier <monnier@cs.yale.edu>
5651
5652 Change overlays_after and overlays_before so the overlays themselves
5653 are linked into lists, rather than using cons cells. After all each
5654 Lisp_Misc already occupies 5 words, so we can add a `next' field to
5655 Lisp_Overlay for free and save up one cons cell per overlay (not
5656 to mention one indirection when traversing the list of overlay).
5657
5658 * lisp.h (struct Lisp_Overlay): New field `next'.
5659
5660 * buffer.h (struct buffer): Change overlays_before and overlays_after
5661 from Lisp lists of overlays to pointers to overlays.
5662
5663 * buffer.c (overlay_strings, recenter_overlay_lists):
5664 Fix typo in eassert in last commit.
5665 (unchain_overlay): New function.
5666 (add_overlay_mod_hooklist): Use AREF.
5667 (copy_overlays, reset_buffer, overlays_at, overlays_in)
5668 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
5669 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
5670 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
5671 (report_overlay_modification, evaporate_overlays, init_buffer_once):
5672 Adjust to new type of overlays_(before|after).
5673
5674 * alloc.c (mark_object): Mark the new `next' field of overlays.
5675 (mark_buffer): Manually mark the overlays_(after|before) fields.
5676
5677 * coding.c (run_pre_post_conversion_on_str):
5678 * editfns.c (overlays_around):
5679 * xdisp.c (load_overlay_strings):
5680 * fileio.c (Finsert_file_contents):
5681 * indent.c (current_column):
5682 * insdel.c (signal_before_change, signal_after_change):
5683 * intervals.c (set_point_both):
5684 * print.c (temp_output_buffer_setup): Use new type for
5685 overlays_(before|after).
5686
04812929
SM
56872003-07-08 Stefan Monnier <monnier@cs.yale.edu>
5688
5689 * buffer.c (report_overlay_modification): Don't run hooks while
5690 traversing the list of overlays.
5691
5692 * buffer.h (struct buffer): Use an int for overlay_center.
5693 (overlays_at, evaporate_overlays, recenter_overlay_lists)
5694 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
5695
5696 * buffer.c (reset_buffer, recenter_overlay_lists)
5697 (adjust_overlays_for_insert, adjust_overlays_for_delete)
5698 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
5699 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
5700 (overlays_at, evaporate_overlays, recenter_overlay_lists)
5701 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
5702
5703 * xdisp.c (fast_find_position): Remove unused var.
5704
5705 * cmds.c (Qexpand_abbrev): New sym.
5706 (syms_of_cmds): Initialize it.
5707 (internal_self_insert): Use it to call expand-abbrev.
5708
2e7ecf15
KS
57092003-07-09 Kim F. Storm <storm@cua.dk>
5710
f9711de4 5711 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if Emacs
2e7ecf15 5712 was configured with --without-xim.
42f81f64 5713 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
2e7ecf15 5714
c6de56a0
RS
57152003-07-07 Richard M. Stallman <rms@gnu.org>
5716
5717 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
5718
5719 * alloc.c (Fgarbage_collect): Doc fix.
5720
b6189c3b 57212003-07-07 Nozomu Ando <nand@mac.com>
b93fb365
KH
5722
5723 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
5724
bfe1a3f7
SM
57252003-07-06 Stefan Monnier <monnier@cs.yale.edu>
5726
04812929
SM
5727 * minibuf.c (read_minibuf): UNGCPRO before returning.
5728 (Ftry_completion, Fall_completions): Doc fix.
5729
bfe1a3f7
SM
5730 * alloc.c (live_float_p): Check that p is not past the `floats' array,
5731 now that `floats' is not the last element of the struct any more.
5732
ee79d1aa
JR
57332003-07-06 Jason Rumney <jasonr@gnu.org>
5734
5735 * w32term.h (ClipboardSequence_Proc): New type.
5736
5737 * w32fns.c (clipboard_sequence_fn): New variable.
5738 (globals_of_w32fns): Initialize it.
5739
5740 * w32select.c (last_clipboard_sequence_number): New variable.
5741 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
5742 number if possible.
5743
49723c04
SM
57442003-07-06 Stefan Monnier <monnier@cs.yale.edu>
5745
4698665f
SM
5746 * m/amdx86-64.h (MARKBIT):
5747 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
5748 MARKBIT and ARRAY_MARK_FLAG any more.
5749
5750 * m/hp800.h (XSETMARKBIT):
5751 * m/sr2k.h (XSETMARKBIT):
5752 * lisp.h (XSETMARKBIT): Remove unused macro.
5753
49723c04
SM
5754 * lisp.h (mark_object): Change prototype.
5755
5756 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
5757 (last_marked): Change accordingly.
5758 (mark_interval, mark_maybe_object, mark_maybe_pointer)
5759 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
5760 (mark_buffer): Update calls to mark_object.
5761
5762 * bytecode.c (mark_byte_stack):
5763 * fns.c (sweep_weak_table):
5764 * keyboard.c (mark_kboards): Update calls to mark_object.
5765
1d660eca
JR
57662003-07-06 Jason Rumney <jasonr@gnu.org>
5767
5768 * alloc.c (struct ablock): Only include padding when there is some.
5769
618b5ae4
SM
57702003-07-04 Stefan Monnier <monnier@cs.yale.edu>
5771
5772 * alloc.c (ALIGN): Add casts to simplify usage.
5773 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
5774 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
5775 (struct ablock, struct ablocks): New types.
5776 (free_ablock): New global var.
5777 (lisp_align_malloc, lisp_align_free): New functions.
5778 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
5779 (struct float_block): Reorder and add gcmarkbits.
5780 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
5781 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
5782 (init_float, make_float): Use lisp_align_malloc.
5783 (free_float, live_float_p): Don't use `type' any more.
5784 (make_float): Use FLOAT_UNMARK to access to mark bit.
5785 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
5786 Use FLOAT_MARKED_P to access the mark bit.
5787 (pure_alloc): Simplify use of ALIGN.
5788 (mark_object): Use FLOAT_MARK to access the mark bit.
5789 (gc_sweep): Use new macros to access the float's mark bit.
5790 (init_alloc_once): Init free_ablock.
5791
5792 * lisp.h (struct Lisp_Float): Remove unused field `type'.
5793
3ef06d12
SM
57942003-06-27 Stefan Monnier <monnier@cs.yale.edu>
5795
5796 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
5797 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
5798 (allocate_buffer): Move.
5799 (string_bytes): Don't mask markbit of `size_byte'.
5800 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
5801 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
5802 Use the `size' field of buffers (rather than the `name' field) for
5803 the mark bit, as is done for all other vectorlike objects.
5804 Use the new macros to access the mark bit of vectorlike objects.
5805
e81043aa
RS
58062003-06-26 Richard M. Stallman <rms@gnu.org>
5807
5808 * puresize.h (BASE_PURESIZE): Increment base size.
5809
5810 * xdisp.c (fast_find_position): Enable Gerd's new definition.
5811
5812 * xterm.c (xim_initialize): Undo previous change.
5813
2d0834cc
SM
58142003-06-26 Stefan Monnier <monnier@cs.yale.edu>
5815
5816 * alloc.c (survives_gc_p): Simplify.
5817
5818 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
5819
5820 * window.c (Fset_window_dedicated_p): Simplify.
5821 (display_buffer_1): Don't raise the win from which minibuf was entered.
5822 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
5823 (Fminibuffer_selected_window): Simplify.
5824
5825 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
5826
5827 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
5828 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
5829
5830 * insdel.c (check_markers, adjust_markers_for_delete)
5831 (adjust_markers_for_insert, adjust_markers_for_replace)
5832 (prepare_to_modify_buffer, RESTORE_VALUE):
5833 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
5834 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
5835 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
5836 * alloc.c (Fmake_marker, free_marker, gc_sweep):
5837 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
5838 * editfns.c (save_excursion_restore, transpose_markers):
5839 * window.c (delete_window):
5840 * xdisp.c (message_dolog): Update for new types.
5841
d54ae3d8
JD
58422003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5843
a5f696ac
JD
5844 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
5845 (realize_default_face): Use default_face_done_p for the force_p
2d0834cc 5846 argument to set_lface_from_font_name. Set default_face_done_p to one.
a5f696ac
JD
5847
5848 * frame.c (make_frame): Initialize default_face_done_p.
5849
5850 * frame.h (struct frame): Add default_face_done_p.
5851
d54ae3d8
JD
5852 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
5853 will be defined.
5854
2336fe58
SM
58552003-06-25 Stefan Monnier <monnier@cs.yale.edu>
5856
5857 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
5858 Initialize the new field `gcmarkbit'.
5859 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
5860 (mark_interval_tree): Don't mark the tree separately from the nodes.
5861 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
5862 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
5863 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
5864
5865 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
5866 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
5867 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
5868 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
5869 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
5870
bcea31c2
DL
58712003-06-24 Dave Love <fx@gnu.org>
5872
5873 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
5874
5875 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
5876 from gnulib.
5877
2601f59e
RS
58782003-06-21 Richard M. Stallman <rms@gnu.org>
5879
5880 * fileio.c (Fwrite_region): Alternate messages
5881 for append and partial write.
5882
5883 * keyboard.c (read_key_sequence): When converting upcase fn key to
5884 downcase, update fkey and keytran so `backspace' gets translated.
5885
5886 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
5887
5888 * process.c (wait_reading_process_input): Don't signal SIGIO
5889 in batch mode.
5890
b5d2c621
KH
58912003-06-17 Kenichi Handa <handa@m17n.org>
5892
5893 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
5894 composite.h.
5895
5896 * xselect.c: Don't include charset.h, coding.h, composite.h.
5897 (Qforeign_selection): New variable.
5898 (syms_of_xselect): Intern and static it.
5899 (selection_data_to_lisp_data): Return a unibyte string made from
5900 data with `foreign-selection' text property.
5901
6793bc63
SM
59022003-06-15 Stefan Monnier <monnier@cs.yale.edu>
5903
5904 * termhooks.h (EVENT_INIT): New macro.
5905
5906 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
5907
5908 * alloc.c (mark_kboards): Move to keyboard.c.
5909
5910 * keyboard.c (record_asynch_buffer_change, read_avail_input):
5911 * xterm.c (x_dispatch_event):
5912 * xmenu.c (find_and_call_menu_selection):
5913 * xdisp.c (handle_tool_bar_click):
5914 * w32menu.c (menubar_selection_callback):
5915 * sysdep.c (kbd_input_ast, read_input_waiting):
5916 * msdos.c (dos_rawgetc):
5917 * macterm.c (mac_check_for_quit_char):
5918 * macmenu.c (menubar_selection_callback):
5919 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
5920 data to kbd_buffer_store_event.
5921
b3ea810c
KS
59222003-06-15 Kim F. Storm <storm@cua.dk>
5923
5924 * xdisp.c (x_fix_overlapping_area): Always use area relative X
6793bc63 5925 to fix redisplay problem with tall characters (such as \e,AC\e(B).
b3ea810c 5926
b8f75eda
KG
59272003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
5928
5929 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
5930
ba92ce48
KH
59312003-06-12 Kenichi Handa <handa@m17n.org>
5932
5933 * fileio.c (Fwrite_region): Save and restore restriction.
5934
b80263be
DL
59352003-06-12 Dave Love <fx@gnu.org>
5936
5937 * alloca.c (alloca): Declare arg as size_t.
5938
6793bc63
SM
5939 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
5940 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
b80263be 5941
b23c0a83
DL
59422003-06-11 Dave Love <fx@gnu.org>
5943
5944 * search.c (shrink_regexp_cache): Use xrealloc.
5945 (syms_of_search): Use xmalloc.
5946
700e47c2
KS
59472003-06-10 Kim F. Storm <storm@cua.dk>
5948
5949 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
5950 Adjust phys_cursor.x to be relative to window box, rather than
5951 text area before checking -- to ensure cursor is redrawn when
5952 exposing window.
5953 Note: This also fixes a similar (older) bug if display margins
5954 are present.
5955
f11aa0b2
KH
59562003-06-06 Kenichi Handa <handa@m17n.org>
5957
5958 * coding.c (encoding_buffer_size): If coding->type is
5959 coding_type_ccl, double magnification on CRLF encoding.
5960
3d143690
JR
59612003-06-06 Jason Rumney <jasonr@gnu.org>
5962
5963 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
5964 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
5965
5966 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
5967 Mac too.
5968
f16205ca
DL
59692003-06-05 Dave Love <fx@gnu.org>
5970
b23c0a83
DL
5971 * strftime.c: Merge changes from gnulib.
5972
f16205ca
DL
5973 * mktime.c (__mktime_internal): Merge changes from gnulib
5974 involving year 69 and dst2.
5975
5976 Changes to merge with gnulib version and be consistent with the
5977 autoconf test:
5978
6793bc63
SM
5979 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
5980 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
f16205ca
DL
5981 [HAVE_LOCALE_H]: Include locale.h.
5982 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
5983
9b87a0bc
KS
59842003-06-05 Kim F. Storm <storm@cua.dk>
5985
5986 * window.c (coordinates_in_window): Convert X and Y to window
5987 relative coordinates inside mode-line and header-line parts.
5988 Convert X and Y to margin area relative coordinates inside left
5989 and right display margin parts.
5990
5a8a15ec
JR
59912003-06-05 Jason Rumney <jasonr@gnu.org>
5992
5993 * w32fns.c (add_system_logical_colors_to_map): New function.
5994 (Fx_open_connection): Use it.
5995
01ed8ff1
SM
59962003-06-04 Stefan Monnier <monnier@cs.yale.edu>
5997
5998 * process.c (allocate_pty): Revert part of the previous patch.
5999 (Faccept_process_output): Simplify.
6000
b427b65d
JR
60012003-06-04 Jason Rumney <jasonr@gnu.org>
6002
6003 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
6004
6005 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
6006 (lispy_mouse_wheel_names): Remove.
6007 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
6008 Always define drag_and_drop_syms.
6009
6010 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
6011 WHEEL_EVENT events.
6012
914a8c47
SM
60132003-06-03 Stefan Monnier <monnier@cs.yale.edu>
6014
01ed8ff1
SM
6015 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
6016
914a8c47
SM
6017 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
6018
adcb132c
JD
60192003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6020
6021 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
6022 menu item label.
6023
be781fa7
RS
60242003-06-03 Richard M. Stallman <rms@gnu.org>
6025
6026 * window.c (Fwindow_edges): Doc fix.
6027 (Fwindow_pixel_edges, Fwindow_inside_edges)
6028 (Fwindow_inside_pixel_edges): New functions.
6029 (syms_of_window): defsubr them.
6030
6031 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
6032 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
6033
914a8c47
SM
60342003-06-02 Stefan Monnier <monnier@cs.yale.edu>
6035
6036 * dispnew.c (Fsit_for): Don't lie about the number of args.
6037
5b07197a
DL
60382003-06-02 Dave Love <fx@gnu.org>
6039
6040 * callproc.c: Use HAVE_FCNTL_H, not USG5.
6041 (syms_of_callproc) <process-environment>: Doc fix.
6042
6043 * doc.c: Use HAVE_FCNTL_H, not USG5.
6044
6045 * xfaces.c (font_rescale_ratio): Fix for K&R.
6046
6047 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
6048
6049 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
6050
6051 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
6052
6053 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
6054 (xg_create_frame_widgets): Use ENCODE_UTF_8.
6055
d7107586 6056 * xterm.c (Qutf_8): Move to coding.c
5b07197a
DL
6057
6058 * xmenu.c (ENCODE_MENU_STRING): New.
6059 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
6060 Use it.
6061
6062 * coding.h (ENCODE_UTF_8): New.
6063 (Qutf_8): Declare.
6064
6065 * coding.c (Qutf_8): New.
6066 (syms_of_coding): Intern it.
6067
6068 * fns.c: Doc fixes.
6069
7335b336
KH
60702003-06-02 Kenichi Handa <handa@m17n.org>
6071
6072 * buffer.c (Fset_buffer_multibyte): Fix previous change.
6073
914a8c47
SM
60742003-06-01 Stefan Monnier <monnier@cs.yale.edu>
6075
6076 * lread.c (openp): Make sure STR is a string.
6077
9862c135
JR
60782003-06-01 David Ponce <david@dponce.com>
6079
6080 * termhooks.h (enum event_kind): Added new WHEEL_EVENT event.
6081 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
6082
6083 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
6084 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
6085 (discard_mouse_events): Discard WHEEL_EVENT events too.
6086 (lispy_wheel_names, wheel_syms): New.
6087 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
6088 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX
6089 defined.
914a8c47 6090 (make_lispy_event): Add WHEEL_EVENT handler.
9862c135
JR
6091
6092 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
6093 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
6094 WHEEL_EVENT events.
6095
f984e73e
JPW
60962003-05-31 John Paul Wallington <jpw@gnu.org>
6097
6098 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
6099 timer are in lisp/emacs-lisp.
6100
1efcd78f
KH
61012003-05-31 Kenichi Handa <handa@m17n.org>
6102
458c8af4
KH
6103 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
6104 region when a buffer is changed to unibyte.
6105
1efcd78f
KH
6106 * charset.h (VALID_LEADING_CODE_P): New macro.
6107 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
6108
778e2804
KH
6109 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
6110 is nonzero, accept multibyte form of eight-bit-control chars.
6111 (decode_composition_emacs_mule): Likewise.
6112 (decode_coding_emacs_mule): Likewise.
6113 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
6114 multibyte form of eight-bit-control chars.
6115
6116 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
6117 (Finsert_file_contents): If coding-system-for-read is bound to
6118 Qauto_save_coding, use the coding system emacs-mule with special
6119 setting for recovering a file.
6120 (choose_write_coding_system): On auto saving, use the coding
6121 system emacs-mule with special setting for auto saving.
6122 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
6123
034060e4
KH
61242003-05-30 Kenichi Handa <handa@m17n.org>
6125
6126 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
6127 properly before calling ccl_driver.
6128
778e2804 6129 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
034060e4
KH
6130
6131 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is
6132 nonzero.
6133 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
6134 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
6135
595f5aa5
GM
61362003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
6137
6138 * xfaces.c (realize_default_face): Do not abort if lface is
6139 non-existent - reverts change from 2003-05-19.
6140
103e0180
KH
61412003-05-29 Kenichi Handa <handa@m17n.org>
6142
6143 * coding.c (decode_coding_iso2022): Pay attention to the byte
6144 sequence of CTEXT extended segment, and retain those bytes as is.
6145
61462003-05-28 Kenichi Handa <handa@m17n.org>
6147
6148 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjusted for the name change
6149 of CODING_REPLACEMENT_CHARACTER.
6150 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
6151 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
6152 check this flag on encoding.
6153 (encode_coding_sjis_big5): Check
6154 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
6155 (Fset_terminal_coding_system_internal): Set
6156 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
6157 instead of setting CODING_FLAG_ISO_SAFE flag in
6158 terminal_coding.flags.
6159
6160 * coding.h (CODING_REPLACEMENT_CHARACTER): Renamed from
6161 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
6162 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
6163
ff6a3bfb 61642003-05-28 Richard M. Stallman <rms@gnu.org>
45f266dc 6165
ff6a3bfb
RS
6166 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
6167
6168 * eval.c (unbind_to): Move init of this_binding to separate statement.
45f266dc 6169
1963c428
KS
61702003-05-28 Kim F. Storm <storm@cua.dk>
6171
6172 * xdisp.c (expose_window): Fix error in calculation of
6173 window relative coordinates of area to redisplay.
6174
2b5d4601
JR
61752003-05-27 Jason Rumney <jasonr@gnu.org>
6176
6177 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
6178
1c64a4a2
JB
61792003-05-27 David Ponce <david@dponce.com>
6180
6181 Handle W32 mouse wheel events as mouse click events, like in X.
6182
6183 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
6184 MOUSE_WHEEL_EVENT anymore.
6185
6186 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
6187 Scrolling down/up the mouse wheel is respectively mapped to mouse
6188 button 4 and 5.
6189 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
6190 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
6191 WM_MOUSEWHEEL events.
6192
2d031b89
AS
61932003-05-27 Andreas Schwab <schwab@suse.de>
6194
20464fdf
AS
6195 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
6196
2d031b89
AS
6197 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
6198 partially visible line.
6199
6200 * alloc.c (Fgarbage_collect): Fix last change.
6201
97bc76d4
JPW
62022003-05-26 John Paul Wallington <jpw@gnu.org>
6203
6204 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
6205
56613f06
SM
62062003-05-25 Stefan Monnier <monnier@cs.yale.edu>
6207
6208 * window.c (Fset_window_buffer): Add type of `keep_margins'.
6209 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
6210
6211 * window.h (window_box_text_cols): Declare.
6212
6213 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
6214 (x_draw_vertical_border): Remove unused var `f'.
6215
6216 * xfaces.c (build_scalable_font_name): Remove `unused var
6217 pixel_size' warning.
6218
6219 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
6220
6221 * unexelf.c (unexec): Remove `unused var n' warning.
6222
6223 * strftime.c (my_strftime_localtime_r): Remove `defined but
6224 unused' warning.
6225
6226 * process.c (allocate_pty): Remove `unused var stb' and
6227 `cp might be used uninitialized' warnings.
6228
6229 * dispnew.c (mode_line_string): Remove unused var `f'.
6230
6231 * coding.c (find_safe_codings): Remove unused var `i'.
6232
6233 * bytecode.c (Fbyte_code): Remove `unused val' warning.
6234
6235 * buffer.c (Fkill_buffer): Remove unused var `list'.
6236
6237 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
6238
93421a1f
JD
62392003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6240
6241 * frame.c (make_frame): Condition want_fullscreen with
6242 HAVE_WINDOW_SYSTEM.
6243
c4b8aebc
JB
62442003-05-25 Juanma Barranquero <lektu@terra.es>
6245
6246 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
6247 (Fwindow_scroll_bars): Fix typo in docstring.
6248
0416870b
KS
62492003-05-24 Kim F. Storm <storm@cua.dk>
6250
6251 The following changes serve several purposes:
6252
6253 1) Swap the position of fringes and display margins in windows, i.e.
6254 the fringes are now displayed between the margins and the text area
6255 (by default).
6256
6257 2) Allow fringe and scroll bar parameters to be set per-buffer and
6258 per-window (like display margins). Such settings are now stored
6259 in window configurations, preserved when frames are resized, and
9018a88e 6260 copied when windows are split vertically or horizontally.
0416870b
KS
6261 Several bugs related to display margins have been fixed.
6262
6263 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
9018a88e 6264
0416870b
KS
6265 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
6266 rather than FRAME_WIDTH (FRAME_FONT (f)).
6267
6268 5) Introduce a consistent naming of variables, members and macros
6269 depending on whether their value is measured in pixels or in
6270 canonical columns/lines. Pixel dimensions are named *_width and
6271 *_height, while canonical columns/lines are named *_cols and
6272 *_lines. Pixel positions are named *_x and *_y, while column/line
6273 positions are named *_col and *_line.
6274
6275 6) Consolidate more of the X, W32, and MAC gui code by moving
6276 common data into struct frame, and generalize it for the non-gui
6277 case by using suitable defaults.
6278
6279 7) Cleanup and consolidate the macros controlling frame and window
6280 layout into frame.h and window.h, and generalize the use of the
6281 various window_box_* functions (enhanced to handle the new fringe
6282 position and the per-window fringe and scroll bar settings).
6283
6284 * frame.h (struct frame): Rename members height to text_lines,
6285 width to text_cols, window_height to total_lines, window_width to
6286 total_cols, new_height to new_text_lines, new_width to
6287 new_text_cols. All uses changed.
6288 (struct frame): New members which consolidate common members of
6289 x_output, w32_output, and mac_output structures: left_pos,
6290 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
6291 win_gravity, size_hint_flags, border_width, internal_border_width,
6292 line_height, fringe_cols, left_fringe_width, right_fringe_width,
6293 want_fullscreen. All uses changed.
6294 (struct frame): New member column_width contaning the canonical
6295 column width, analogue to line_height. All uses changed.
6296 (struct frame): Rename members scroll_bar_pixel_width to
6297 config_scroll_bar_width, and scroll_bar_cols to
6298 config_scroll_bar_cols. All uses changed.
6299 (struct frame): New member scroll_bar_actual_width which
6300 consolidates and renames the vertical_scroll_bar_extra member of
6301 x_output, w32_output, and mac_output structures. All uses changed.
6302 (FRAME_PIXEL_HEIGHT): Renamed from PIXEL_HEIGHT and moved
6303 from x/w32/macterm.h files. All uses changed. Also change code
6304 which referred to f->output_data...->pixel_height.
6305 (FRAME_PIXEL_WIDTH): Renamed from PIXEL_WIDTH and moved
f63fd14e 6306 from x/w32/macterm.h files. All uses changed. Also change code
0416870b
KS
6307 which referred to f->output_data...->pixel_width.
6308 (FRAME_LINES): Renamed from FRAME_HEIGHT. All uses changed.
6309 Also change code which referred to f->height.
6310 (FRAME_COLS): Renamed from FRAME_WIDTH. All uses changed.
6311 Also change code which referred to f->width.
6312 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
6313 to update new_text_lines and new_text_cols members directly.
6314 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Renamed from
6315 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
6316 (FRAME_CONFIG_SCROLL_BAR_COLS): Renamed from
6317 FRAME_SCROLL_BAR_COLS. All uses changed.
6318 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
6319 Renamed from FRAME_LEFT_SCROLL_BAR_WIDTH and
6320 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
6321 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
6322 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
6323 (FRAME_TOTAL_COLS): Renamed from FRAME_WINDOW_WIDTH.
6324 (SET_FRAME_COLS): Renamed from SET_FRAME_WIDTH.
6325 (FRAME_TOTAL_COLS_ARG): Renamed from FRAME_WINDOW_WIDTH_ARG.
6326 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
6327 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
6328 (FRAME_LINE_HEIGHT): Renamed from CANON_Y_UNIT. Unconditionally
6329 return line_height member (it now has proper value also for
6330 non-window frames).
6331 (FRAME_COLUMN_WIDTH): Renamed from CANON_X_UNIT. Unconditionally
6332 return new column_width member (rather than the default font width).
6333 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
6334 (FRAME_RIGHT_FRINGE_WIDTH): Renamed from FRAME_X_... and moved
6335 from x/w32/macterm.h files. Unconditionally return corresponding
6336 member of frame structure (they now have proper values also for
6337 non-window frames).
6338 (FRAME_TOTAL_FRINGE_WIDTH): Renamed from FRAME_FRINGE_WIDTH.
6339 Calculate return value from left and right widths.
6340 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
6341 internal_border_width member (has proper value for non-window frame).
6342 (FRAME_PIXEL_X_FROM_CANON_X): Renamed from PIXEL_X_FROM_CANON_X.
6343 (FRAME_PIXEL_Y_FROM_CANON_Y): Renamed from PIXEL_Y_FROM_CANON_Y.
6344 (FRAME_CANON_X_FROM_PIXEL_X): Renamed from CANON_X_FROM_PIXEL_X.
6345 (FRAME_CANON_Y_FROM_PIXEL_Y): Renamed from CANON_Y_FROM_PIXEL_Y.
6346 (FRAME_LINE_TO_PIXEL_Y): Renamed from CHAR_TO_PIXEL_ROW,
6347 consolidated from xterm.h, macterm.h, and w32term.h.
6348 (FRAME_COL_TO_PIXEL_X): Renamed from CHAR_TO_PIXEL_COL,
6349 consolidated from xterm.h, macterm.h, and w32term.h.
6350 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Renamed from
6351 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
6352 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Renamed from
6353 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
6354 (FRAME_PIXEL_Y_TO_LINE): Renamed from PIXEL_TO_CHAR_ROW
6355 consolidated from x/mac/w32term.h.
6356 (FRAME_PIXEL_X_TO_COL): Renamed from PIXEL_TO_CHAR_COL
6357 consolidated from x/mac/w32term.h.
6358 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Renamed from
6359 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
6360 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Renamed from
6361 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
6362
6363 * window.h (struct window): Rename members left to left_col,
6364 top to top_line, height to total_lines, width to total_cols,
6365 left_margin_width to left_margin_cols, right_margin_width to
6366 right_margin_cols, orig_height to orig_total_lines, orig_top to
6367 orig_top_line. All uses changed.
6368 (struct window): New members left_fringe_width, right_fringe_width,
6369 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
6370 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
6371 New macros primarily used to simplify other macros.
6372 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
6373 referred to XINT (w->width).
6374 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
6375 referred to XINT (w->height).
6376 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
6377 referred to XINT (w->width) * canon_x_unit.
6378 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
6379 referred to XINT (w->height) * canon_y_unit.
6380 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
6381 referred to XINT (w->left).
6382 (WINDOW_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_EDGE. Change
6383 all uses and code that referred to XINT (w->left) + XINT (w->width).
6384 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
6385 referred to XINT (w->top).
6386 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
6387 referred to XINT (w->top) + XINT (w->height).
6388 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
6389 referred to XINT (w->left) * canon_x_unit.
6390 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
6391 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
6392 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
6393 referred to XINT (w->top) * canon_y_unit.
6394 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
6395 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
6396 (WINDOW_LEFTMOST_P): New macro.
6397 (WINDOW_BOX_LEFT_EDGE_COL): Renamed from WINDOW_LEFT_MARGIN.
6398 All uses changed.
6399 (WINDOW_BOX_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_MARGIN.
6400 All uses changed.
6401 (WINDOW_BOX_LEFT_EDGE_X): Renamed from
6402 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
6403 Do not exclude left fringe width.
6404 (WINDOW_BOX_RIGHT_EDGE_X): Renamed from
6405 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
6406 Do not exclude fringe widths.
6407 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
6408 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
6409 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
6410 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
6411 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
6412 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
6413 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
6414 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
6415 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
6416 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
6417 New macros. Change code which referenced corresponding
6418 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
6419 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
6420 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
6421 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
6422 allow per-window scroll-bar settings.
6423 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
6424 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
6425 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
6426 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
6427 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
6428 FRAME_SCROLL_BAR_WIDTH.
6429 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
9018a88e 6430 (WINDOW_SCROLL_BAR_AREA_X): New macros.
0416870b
KS
6431 (WINDOW_HEADER_LINE_HEIGHT): Renamed from
6432 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
6433 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Renamed from
6434 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
6435 (WINDOW_BOX_TEXT_HEIGHT): Renamed from
6436 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
6437 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
6438 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
6439 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Moved here from dispextern.h.
6440 (WINDOW_LEFT_MARGIN_WIDTH): Renamed from
6441 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
6442 (WINDOW_RIGHT_MARGIN_WIDTH): Renamed from
6443 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
6444 (window_from_coordinates): Update prototype.
6445 (Fset_window_buffer): Update EXFUN.
6446 (set_window_buffer): Update prototype.
9018a88e 6447
0416870b 6448 * dispextern.h (struct glyph_matrix): Rename members window_left_x
9018a88e 6449 to window_left_col, window_top_y to window_top_line. All uses
0416870b
KS
6450 changed.
6451 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
6452 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
6453 internal_border_width is now set to 0 for non-window frames.
6454 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
6455 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
6456 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
6457 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
6458 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
6459 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
6460 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
6461 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
6462 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
9018a88e 6463 Move to window.h and renamed [see window.h changes].
0416870b
KS
6464 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
6465 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
9018a88e
SM
6466 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
6467 Use WINDOW_TOTAL_LINES.
0416870b
KS
6468 (frame_update_line_height): Remove prototype.
6469
6470 * buffer.h (struct buffer): Rename members measured in columns:
6471 left_margin_width to left_margin_cols, right_margin_width to
6472 right_margin_cols. All uses changed.
6473 New members left_fringe_width, right_fringe_width,
6474 fringes_outside_margins for per-buffer fringe settings.
6475 New members scroll_bar_width and vertical_scroll_bar_type for
6476 per-buffer scroll bar settings.
6477
6478 * buffer.c (init_buffer_once): Set buffer_defaults and
6479 buffer_local_flags for new buffer-local variables
6480 left_fringe_width, right_fringe_width, fringes_outside_margins,
6481 scroll_bar_width, and vertical_scroll_bar_type.
6482 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
6483 default-* variables for them.
6484
6485 * dispnew.c: Make (many) trivial substitutions for renamed and
6486 new macros in dispextern.h, frame.h and window.h.
6487 (mode_line_string): No need to adjust width for mode lines, as it
6488 is already adjusted by the caller.
6489 (marginal_area_string): Handle fringes inside/outside margins.
9018a88e 6490
0416870b
KS
6491 * frame.c: Make (many) trivial substitutions for renamed and
6492 new macros in dispextern.h, frame.h and window.h.
6493 (make_frame): Initialize left_fringe_width, right_fringe_width,
6494 fringe_cols, scroll_bar_actual_width, border_width,
6495 internal_border_width, column_width, line_height, x_pixels_diff,
6496 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
6497 members with values suitable for a non-window frames.
6498
6499 * gtkutil.c: Make (many) trivial substitutions for renamed and
6500 new macros in dispextern.h, frame.h and window.h.
9018a88e 6501
0416870b
KS
6502 * indent.c: Make (few) trivial substitutions for renamed and
6503 new macros in dispextern.h, frame.h and window.h.
6504
6505 * keyboard.c: Make (many) trivial substitutions for renamed and
6506 new macros in dispextern.h, frame.h and window.h.
6507 (make_lispy_event): Use window positions returned from
6508 window_from_coordinates when constructing the lisp event for
6509 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
6510 (incorrect) values locally.
6511 (make_lispy_movement): Use window positions returned from
6512 window_from_coordinates when constructing the lisp event, rather
6513 than calculating (incorrect) values locally.
6514
6515 * scroll.c: Make (some) trivial substitutions for renamed and
6516 new macros in dispextern.h, frame.h and window.h.
6517
6518 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
6519 scroll-bars.
6520
6521 * sysdep.c: Make (few) trivial substitutions for renamed and
6522 new macros in dispextern.h, frame.h and window.h.
6523
6524 * term.c: Make (some) trivial substitutions for renamed and
6525 new macros in dispextern.h, frame.h and window.h.
6526
6527 * widget.c: Make (few) trivial substitutions for renamed and
6528 new macros in dispextern.h, frame.h and window.h.
6529
6530 * window.c: Make (many) trivial substitutions for renamed and
6531 new macros in dispextern.h, frame.h and window.h.
6532 (make_window): Initialize new members
6533 left_margin_cols, right_margin_cols, left_fringe_width,
6534 right_fringe_width, fringes_outside_margins, scroll_bar_width,
6535 and vertical_scroll_bar_type.
6536 (coordinates_in_window): Adapted to new fringe/margin positions
9018a88e 6537 and per-window fringes and scroll-bars.
0416870b 6538 Fix bug related to incorrectly adjusting coordinates by
9018a88e 6539 frame's internal_border_width (the effect normally negible since
0416870b
KS
6540 the internal_border_width is typically 0 or 1 pixel, but very
6541 noticeable for an internal_border_width of e.g. 25 pixels).
6542 Upon successful return (other than ON_NOTHING), the coordinates
6543 are now always properly converted to window relative for the
6544 given display element.
6545 (window_from_coordinates): Add new parameters wx and wy to
6546 return the window relative x and y position in the returned
6547 window and part. A null arg means, don't return the position.
6548 All callers changed.
6549 (adjust_window_margins): New function which may reduce the width
6550 of the display margins if a window's text area is too small after
6551 resizing or splitting windows.
6552 (size_window): Fix bug that did not account for display margin
6553 widths when checking the minimum width of a window; use
6554 adjust_window_margins.
6555 (set_window_buffer): Call Fset_window_fringes and
6556 Fset_window_scroll_bars to setup per-window elements.
6557 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
6558 existing display margin, fringe widths, and scroll bar settings
9018a88e
SM
6559 (e.g. after splitting a window or resizing the frame).
6560 All callers changed.
0416870b
KS
6561 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
6562 (Fsplit_window): Duplicate original window's display margin,
6563 fringe, and scroll-bar settings; then call Fset_window_buffer with
6564 KEEP_MARGINS non-nil. This fixes a bug which caused a split
6565 window to only preserve the display margins in one of the windows.
c4b8aebc 6566 When splitting horizontally, call adjust_window_margins on both
0416870b 6567 windows to ensure that the text area of the new windows is non too
f9711de4 6568 narrow. This fixes a bug which could cause Emacs to trap if the
0416870b
KS
6569 width of the split window was less than the width of the display
6570 margins.
9018a88e
SM
6571 (window_box_text_cols): Renamed from window_internal_width.
6572 All uses changed. Adapt to per-window fringes and scroll bars.
0416870b
KS
6573 Fix bug that caused vertical separator to be subtracted also on
6574 window frames. Fix another bug that did not reduce the returned
6575 value by the columns used for display margins.
6576 (window_scroll_line_based): Fix bug related to scrolling too much
6577 when display margins are present (implicitly fixed by the fix to
6578 window_box_text_cols).
6579 (scroll_left, scroll_right): Fix bug related to scrolling too far
6580 by default when display margins are present (implicitly fixed by
6581 the fix to window_box_text_cols).
6582 (struct saved_window): Rename members left to left_col, top to
6583 top_line, width to total_cols, height to total_lines, orig_top to
6584 orig_top_line, orig_height to orig_total_lines. All uses changed.
6585 New members left_margin_cols, right_margin_cols,
6586 left_fringe_width, right_fringe_width, fringes_outside_margins,
6587 scroll_bar_width, and vertical_scroll_bar_type for saving
6588 per-window display elements.
6589 (Fset_window_configuration): Restore display margins, fringes,
6590 and scroll bar settings. This fixes a bug which caused display
6591 margins to be discarded when saving and restoring a window
6592 configuration.
6593 (save_window_save): Save display margins, fringes, and scroll bar
6594 settings. This fixes a bug which caused display margins to be
6595 discarded when saving and restoring a window configuration.
6596 (Fset_window_margins): Do nothing if display margins are not
6597 really changed. Otherwise, call adjust_window_margins to ensure
6598 the text area doesn't get too narrow. This fixes a bug which
f9711de4 6599 could cause Emacs to trap if setting display margins wider than
0416870b
KS
6600 the width of the window.
6601 (Fset_window_fringes): New defun to allow user to specifically set
6602 this window's fringe widths and position vs. display margins.
6603 (Fwindow_fringes): New defun to return window's actual fringe
6604 settings.
6605 (Fset_window_scroll_bars): New defun to allow user to specifically
6606 set this window's scroll bar width and position.
6607 (Fwindow_scroll_bars): New defun to return window's actual scroll
6608 bar settings.
6609 (compare_window_configurations): Also compare display margins,
6610 fringes, and scroll bar settings.
6611 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
6612
6613 * xdisp.c: Make (many) trivial substitutions for renamed and
6614 new macros in dispextern.h, frame.h and window.h.
6615 (window_box_width): Adapt to per-window fringes and scroll bars,
f63fd14e 6616 and new fringe vs. display margin position. Note that returned
0416870b
KS
6617 value is no longer guaranteed to be a whole multiple of the frame
6618 column width, since per-window fringes may now be any width.
6619 (window_box_left_offset): New function like window_box_left, but
6620 value is relative to left border of window (rather than frame).
6621 (window_box_right_offset): New function like window_box_right,
6622 but value is relative to left border of window.
6623 (window_box_left): Adapt to per-window fringes and scroll bars,
6624 and new fringe vs. display margin position. Simplify by using
6625 WINDOW_LEFT_EDGE_X and window_box_left_offset.
6626 (window_box): Allow null args for unnecessary return values;
6627 change/simplify relevant callers.
6628 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
9018a88e
SM
6629 and new fringe vs. display margin position.
6630 Use window_box_left_offset and window_box_right_offset
0416870b 6631 (get_glyph_string_clip_rect): Adapt to per-window fringes and
9018a88e
SM
6632 scroll bars, and new fringe vs. display margin position.
6633 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
0416870b
KS
6634 (draw_fringe_bitmap): Rework to handle per-window fringes and new
6635 fringe vs. display margin position.
6636 (hscroll_window_tree): Use window_box_width instead of window_box.
a64387ee
JB
6637 (redisplay_window): Adapt to per-window scroll bars.
6638 (draw_glyphs): Rework to handle per-window fringes and scroll
9018a88e
SM
6639 bars, and new fringe vs. display margin position.
6640 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
a64387ee 6641 (x_clear_end_of_line): Adapt to per-window fringes and scroll
0416870b
KS
6642 bars, and new fringe vs. display margin position. Fix bug which
6643 increased total width of full_width rows by width of scroll bars
6644 although window's total width already includes that.
6645 (x_fix_overlapping_area): Simplify using window_box_left_offset.
6646 (expose_area): Simplify using window_box_left_offset.
6647 (x_draw_vertical_border): Handle per-window scroll bar settings,
6648 mixing windows with left, right and no scroll bars.
6649
6650 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
6651 where it's used in x_list_fonts (for clarity).
6652 (frame_update_line_height): Remove unused function; functionality
6653 is now done directly when setting the default font in x_set_font.
6654
6655 * xfns.c: Make (many) trivial substitutions for renamed and
6656 new macros in dispextern.h, frame.h and window.h.
6657
6658 * xmenu.c: Make (some) trivial substitutions for renamed and
6659 new macros in dispextern.h, frame.h and window.h.
6660
6661 * xterm.h (struct x_output): Move members left_pos, top_pos,
6662 border_width, pixel_height, pixel_width, line_height,
6663 internal_border_width, vertical_scroll_bar_extra,
6664 left_fringe_width, right_fringe_width, fringe_cols,
6665 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
6666 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
6667 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
6668 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
6669 (PIXEL_WIDTH, PIXEL_HEIGHT)
6670 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
6671 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
6672 frame.h and renamed [see frame.h changes].
6673 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
6674 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
6675 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
6676 and renamed [see frame.h changes].
9018a88e 6677
0416870b
KS
6678 * xterm.c: Make (several) trivial substitutions for renamed and
6679 new macros in dispextern.h, frame.h and window.h.
6680 (x_draw_glyph_string_box): Adapt to per-window fringes and
6681 scroll-bars.
6682 (scroll_run): Adapt to new fringe position.
6683 (glyph_rect): Use window coordinates returned from
6684 window_from_coordinates rather than frame_to_window_pixel_xy.
6685 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
6686 scroll-bars.
6687 (handle_one_xevent): Simplify a USE_GTK conditional.
6688 (x_clip_to_row): Remove superfluous whole_line_p arg and code
6689 (fringes are now inside margins, i.e. always in the clipping area).
6690 All callers changed.
6691 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
6692 directly, then call compute_fringe_widths. Don't call
6693 frame_update_line_height.
6694
6695 * w32term.h (struct w32_output): Move members left_pos, top_pos,
6696 border_width, pixel_height, pixel_width, line_height,
6697 internal_border_width, vertical_scroll_bar_extra,
6698 left_fringe_width, right_fringe_width, fringe_cols,
6699 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
6700 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
6701 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
6702 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
6703 (PIXEL_WIDTH, PIXEL_HEIGHT)
6704 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
6705 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
6706 frame.h and renamed [see frame.h changes].
6707 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
6708 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
6709 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
6710 and renamed [see frame.h changes].
9018a88e 6711
0416870b
KS
6712 * w32term.c: Make (several) trivial substitutions for renamed and
6713 new macros in dispextern.h, frame.h and window.h.
6714 (x_draw_glyph_string_box): Adapt to per-window fringes and
6715 scroll-bars.
6716 (glyph_rect): Use window coordinates returned from
6717 window_from_coordinates rather than frame_to_window_pixel_xy.
6718 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
6719 scroll-bars.
6720 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
6721 (fringes are now inside margins, i.e. always in the clipping area).
6722 All callers changed.
6723 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
6724 directly, then call compute_fringe_widths. Don't call
6725 frame_update_line_height.
6726
6727 * w32console.c: Make (few) trivial substitutions for renamed and
6728 new macros in dispextern.h, frame.h and window.h.
6729
6730 * w32fns.c: Make (many) trivial substitutions for renamed and
6731 new macros in dispextern.h, frame.h and window.h.
6732
6733 * w32menu.c: Make (few) trivial substitutions for renamed and
6734 new macros in dispextern.h, frame.h and window.h.
6735
6736 * macterm.h (struct mac_output): Move members left_pos, top_pos,
6737 border_width, pixel_height, pixel_width, line_height,
6738 internal_border_width, vertical_scroll_bar_extra,
6739 left_fringe_width, right_fringe_width, fringe_cols,
6740 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
6741 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
6742 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
6743 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
6744 (PIXEL_WIDTH, PIXEL_HEIGHT)
6745 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
6746 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
6747 frame.h and renamed [see frame.h changes].
6748 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
6749 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
6750 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
6751 and renamed [see frame.h changes].
9018a88e 6752
0416870b
KS
6753 * macterm.c: Make (several) trivial substitutions for renamed and
6754 new macros in dispextern.h, frame.h and window.h.
6755 (x_draw_glyph_string_box): Adapt to per-window fringes and
6756 scroll-bars.
6757 (glyph_rect): Use window coordinates returned from
6758 window_from_coordinates rather than frame_to_window_pixel_xy.
6759 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
6760 scroll-bars.
6761 (x_clip_to_row): Remove superfluous whole_line_p arg and code
6762 (fringes are now inside margins, i.e. always in the clipping area).
6763 All callers changed.
6764 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
6765 directly, then call compute_fringe_widths. Don't call
6766 frame_update_line_height.
6767
6768 * macfns.c: Make (several) trivial substitutions for renamed and
6769 new macros in dispextern.h, frame.h and window.h.
9018a88e 6770 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
0416870b
KS
6771
6772 * macmenu.c: Make (few) trivial substitutions for renamed and
6773 new macros in dispextern.h, frame.h and window.h.
6774
6775 * msdos.h (struct x_output): Remove members left_pos, top_pos,
6776 and line_height, and use corresponding new members in struct
6777 frame. All uses changed.
6778 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
6779 superseeded by corresponding macros in frame.h.
6780
6781 * msdos.c: Make (several) trivial substitutions for renamed and
6782 new macros in dispextern.h, frame.h and window.h.
6783 (IT_note_mouse_highlight): Use updated window coordinates returned
9018a88e 6784 by window_from_coordinates, rather than adjusting them locally.
0416870b
KS
6785 (internal_terminal_init): No need to initialize line_height here;
6786 it now defaults to 1.
6787
9018a88e
SM
67882003-05-24 Stefan Monnier <monnier@cs.yale.edu>
6789
6790 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
6791 dropping `down' events.
6792
016bd3c0
AS
67932003-05-24 Andreas Schwab <schwab@suse.de>
6794
6795 * coding.c (find_safe_codings): Fix last change.
6796
4dacadcc
TTN
67972003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
6798
6799 * xfns.c (x_window): Fix typo from 2003-05-21 change.
6800
319830ce
SM
68012003-05-23 Stefan Monnier <monnier@cs.yale.edu>
6802
9018a88e
SM
6803 * xdisp.c (display_mode_element): Increase max depth.
6804 Simplify the error handling code. Use a different error string
6805 for the case where we hit the depth limit.
6806
319830ce
SM
6807 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
6808
6809 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
6810
68112003-05-21 Stefan Monnier <monnier@cs.yale.edu>
6812
6813 * intervals.c (get_local_map): Don't get char-property of previous
6814 point any more: get_pos_property already does it and better.
6815
c67de8ba
DL
68162003-05-21 Dave Love <fx@gnu.org>
6817
6818 [Merged from unicode branch.]
6819
6820 * xfns.c (x_window, x_window): Use use_xim.
6821
6822 * xterm.c (use_xim): Initialize.
6823 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
6824 (x_term_init): Maybe set use_xim.
6825
6826 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
6827
edd3ff1d
JR
68282003-05-21 Jason Rumney <jasonr@gnu.org>
6829
6830 * unexw32.c (_start): Remove _fmode initialization.
6831
6832 * emacs.c (main) [WINDOWSNT]: Move it here.
6833
463f55ee
DL
68342003-05-20 Dave Love <fx@gnu.org>
6835
6836 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
6837
af253914
RS
68382003-05-19 Richard M. Stallman <rms@gnu.org>
6839
6840 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
6841 as value for QCfont attribute.
6842 (realize_default_face): lface should already exist; crash if not.
6843 Specify 0 for FORCE_P when calling set_lface_from_font_name.
6844
6845 * frame.c (Fignore_event): Doc fix.
6846
1d211019
KH
68472003-05-19 Kenichi Handa <handa@m17n.org>
6848
6849 * coding.c (decode_coding_string): Handle post-read-conversion
6850 even if the coding doesn't require decoding.
6851
4dd68254
RS
68522003-05-18 Richard M. Stallman <rms@gnu.org>
6853
6854 * callproc.c (Fcall_process_region): Doc fix.
6855
14d87dc9
SM
68562003-05-17 Stefan Monnier <monnier@cs.yale.edu>
6857
deca5d96
SM
6858 * lread.c (Fload): Print a message if package is obsolete.
6859
14d87dc9
SM
6860 * window.c (Fselect_window): Add optional `norecord' arg.
6861 (select_window_1): Fold into Fselect_window.
6862 (select_window_norecord): New function.
6863 (temp_output_buffer_show): Use it. Preserve current buffer.
6864
6865 * window.h (Fselect_window): Update declaration.
6866
6867 * window.c (delete_window, Fother_window, Fset_window_configuration):
6868 * minibuf.c (read_minibuf):
6869 * macterm.c (x_new_focus_frame):
6870 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
6871 * callint.c (Fcall_interactively):
6872 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
6873
6874 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
6875
78f52183
DK
68762003-05-17 David Kastrup <dak@gnu.org>
6877
6878 * process.c (read_process_output): Back out change from 2003-03-09.
6879
14d87dc9
SM
68802003-05-17 Stefan Monnier <monnier@cs.yale.edu>
6881
6882 * editfns.c (get_pos_property): Don't assume that `object' = nil.
6883
6884 * textprop.c (text_property_stickiness): New arg `buffer'.
6885
6886 * intervals.h (text_property_stickiness): New arg `buffer'.
6887 (get_pos_property): Declare.
6888
6889 * intervals.c (get_local_map): Use get_pos_property, to obey
6890 stickiness and empty overlays.
6891 (create_root_interval, graft_intervals_into_buffer): Use BEG.
6892 (merge_properties, intervals_equal, merge_properties_sticky):
6893 Use XCAR, XCDR.
6894 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
6895
1fd1cc2f
RS
68962003-05-17 Richard M. Stallman <rms@gnu.org>
6897
4f9f637a
RS
6898 * minibuf.c (read_minibuf): If buffer is empty, record the default
6899 in the history.
6900 (Fminibuffer_complete_word): When deleting the overlap, take account
6901 of its real position.
6902
6903 * fns.c (map_char_table): Fix previous change.
6904
1fd1cc2f
RS
6905 * syntax.c (find_defun_start):
6906 When open_paren_in_column_0_is_defun_start,
6907 return beginning of buffer.
6908
6909 * lisp.h (map_char_table): Declare added arg.
6910
6911 * fns.c (map_char_table): New arg TABLE gets the master table.
6912 All calls changed.
6913 Process default and inheritance, resorting to Faref if necessary.
6914
6915 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
6916 (Faccessible_keymaps): Pass new arg to map_char_table.
6917
6918 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
6919
6920 * casetab.c (set_case_table): Pass new arg to map_char_table.
6921
6922 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
6923
6924 * lisp.h (specbinding_func): New typedef.
6925 (struct specbinding): Use specbinding_func, to put the `volatile'
6926 in the right place.
6927
6928 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
6929 to avoid GCC warning.
14d87dc9 6930
b6189c3b 69312003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org>
b4bd27c5 6932
14d87dc9 6933 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
b4bd27c5 6934
35fb885d
SM
69352003-05-15 Stefan Monnier <monnier@cs.yale.edu>
6936
6937 * keyboard.c (apply_modifiers): Don't fill the other cache.
6938
9a274fbd
SM
69392003-05-14 Stefan Monnier <monnier@cs.yale.edu>
6940
c55b5fad
SM
6941 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
6942
9a274fbd
SM
6943 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
6944 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
6945 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
6946 (Fset_window_configuration, Fcurrent_window_configuration)
6947 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
6948 (Fpos_visible_in_window_p, mark_window_cursors_off)
6949 (window_internal_height, window_internal_width, Frecenter)
6950 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
6951 (replace_buffer_in_all_windows, init_window_once, init_window)
6952 (syms_of_window, keys_of_window): Move from lisp.h.
6953 * lisp.h: Move window.c declarations to window.h.
6954
6955 * bytecode.c: Include window.h.
6956 * emacs.c: Include window.h.
6957
14d87dc9 6958 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
9a274fbd
SM
6959 (keyremap): Add `parent' field.
6960 (keyremap_step): Use it. Remove `parent' argument.
6961 (read_key_sequence): Setup and use the new `parent' field.
6962
fd93e331
SM
69632003-05-11 Stefan Monnier <monnier@cs.yale.edu>
6964
6965 * keyboard.c (adjust_point_for_property): Ensure termination.
6966
1c4001a1
SM
69672003-05-10 Stefan Monnier <monnier@cs.yale.edu>
6968
6969 * keyboard.c (follow_key): Remove dead variable `did_meta'.
6970 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
6971 duplicated handling of function-key-map and key-translation-map
6972 in read_key_sequence.
6973 (read_key_sequence): Use them.
6974
6975 * keyboard.c (adjust_point_for_property): Try harder to move point
6976 to the non-sticky end of an invisible property.
6977
6978 * xdisp.c (single_display_prop_intangible_p): Make `space' display
6979 property intangible as well.
6980
780379b1
AS
69812003-05-10 Andreas Schwab <schwab@suse.de>
6982
6983 * xmenu.c (single_menu_item): Change last parameter to void* to
6984 avoid warning.
6985
ca2de342
RS
69862003-05-09 Richard M. Stallman <rms@gnu.org>
6987
6988 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
6989 Bind Qinhibit_modification_hooks to t so there will be no GC.
6990 Rename local `tem' to `save_deactivate_mark'.
6991
6992 * eval.c (specpdl_ptr): Declare volatile.
6993 (unbind_to): Copy the whole binding and decrement specpdl_ptr
6994 before doing the work of unbinding it.
6995
6996 * lisp.h (struct specbinding): Declare elements volatile.
6997 (specpdl_ptr): Declare volatile.
6998
6999 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
7000
7001 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
7002 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
7003
347003be
DL
70042003-05-08 Dave Love <fx@gnu.org>
7005
7006 * coding.c (Vlast_coding_system_used): Doc fix.
7007
5adcec23
JR
70082003-05-07 Jason Rumney <jasonr@gnu.org>
7009
7010 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
7011 when system does not support them.
7012
5fe3b8a4
SM
70132003-05-05 Stefan Monnier <monnier@cs.yale.edu>
7014
7015 * fileio.c (Qwrite_region_annotate_functions): New var.
7016 (build_annotations): Use it to process the global part of the hook.
7017 (syms_of_fileio): Init and staticpro it.
7018
7019 * keyboard.c (safe_run_hooks_error): Display a message instead of
7020 silently ignoring the error.
7021
70222003-05-03 Stefan Monnier <monnier@cs.yale.edu>
7023
7024 * keyboard.c (input_available_signal): Mark static.
7025 (menu_bar_items): Use map_keymap.
7026 (menu_bar_one_keymap): Remove.
7027 (menu_bar_item): Adjust arglist (for use in map_keymap).
7028 Properly hide a second binding when not both are keymaps.
7029
7030 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
7031 (single_keymap_panes): Use it and map_keymap.
7032 (single_menu_item): Use skp as well.
7033
7034 * keymap.h (map_keymap_function_t): New type.
7035 (map_keymap): Declare.
7036
7037 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
7038 (map_keymap_call, Fmap_keymap): New functions.
7039 (syms_of_keymap): Defsubr map-keymap.
7040
4b1b4443
JD
70412003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7042
7043 * gtkutil.c (create_dialog, make_widget_for_menu_item)
7044 (make_menu_item, create_menus, xg_update_menu_item): Don't call
7045 ..._with_mnemonic functions for menu items.
7046
1f816871
KH
70472003-05-01 Kenichi Handa <handa@m17n.org>
7048
7049 * coding.c (coding_system_accept_latin_extra_p): Delete this
7050 function.
7051 (find_safe_codings): Pay attention to
7052 the property tranlsation-table-for-encode of each codings.
7053 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
7054
5ed6ba5b
SM
70552003-05-01 Stefan Monnier <monnier@cs.yale.edu>
7056
7057 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
7058
32c06229
SM
70592003-04-30 Stefan Monnier <monnier@cs.yale.edu>
7060
7061 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
7062
7063 * lisp.h (CHECK): Wrap args in parenthesis.
7064 (specbind): Fix doc: symbol = Qnil is not supported any more.
7065
7066 * bytecode.c (Fbyte_code) <unwind-protect>:
7067 Use Fprogn rather than 0 and Qnil.
7068
7069 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
7070 `double', and `triple' modifiers as well.
7071
ed3c3314
RS
70722003-04-30 Richard M. Stallman <rms@gnu.org>
7073
7074 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
7075
7076 * alloc.c (abort_on_gc): New variable.
7077 (Fgarbage_collect): Abort if abort_on_gc is set.
7078
7079 * lisp.h (abort_on_gc): Add decl.
7080
7081 * eval.c (Fsignal): Clear abort_on_gc.
7082
7083 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
32c06229 7084 Reinit FORMAT_START and END before second scan.
ed3c3314
RS
7085
7086 * xdisp.c (move_it_vertically_backward): Do the final big else
7087 even if nlines is 0.
7088
7089 * xdisp.c (redisplay_internal): Finish the per-frame loop
7090 even if redisplay is suspended by input.
7091
0b325c12
AC
70922003-04-24 Andrew Choi <akochoi@shaw.ca>
7093
7094 * macterm.c (x_list_fonts): Return all fonts that match if
7095 maxnames = -1.
7096
4e837cd0
KH
70972003-04-25 Kenichi Handa <handa@m17n.org>
7098
7099 * syntax.c (skip_chars): Fix previous change.
7100
9af7511a
KH
71012003-04-24 Kenichi Handa <handa@m17n.org>
7102
7103 * syntax.c (skip_chars): Make the code faster by using the common
7104 technique of *p, *stop, and *endp.
7105
e3b2c21f
JD
71062003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7107
7108 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
32c06229 7109 tool_bar_items so GTK tool bar expose callback does not access items
e3b2c21f
JD
7110 being updated.
7111
32c06229
SM
71122003-04-19 Stefan Monnier <monnier@cs.yale.edu>
7113
7114 * eval.c (Fapply): Undo last change and add a comment about why.
7115
c6464167
MB
71162003-04-18 Miles Bader <miles@gnu.org>
7117
7118 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
7119 pickier PARSE_MULTIBYTE_SEQ.
7120
e509f168
SM
71212003-04-17 Stefan Monnier <monnier@cs.yale.edu>
7122
7123 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
7124 Use XCDR, XCAR, CONSP.
7125 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
7126 (Fapply): Remove unnecessary GCPRO.
7127
7128 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
7129
7130 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
7131
7132 * buffer.h: Don't hardcode BEG==1.
7133
7134 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
7135
5ceea398
RS
71362003-04-16 Richard M. Stallman <rms@gnu.org>
7137
7138 * xdisp.c (try_window, try_window_reusing_current_matrix):
7139 When at end of window, set window_end_pos to Z-ZV.
7140
7141 * buffer.c (Foverlay_recenter): Doc fix.
7142
e509f168
SM
71432003-04-14 Stefan Monnier <monnier@cs.yale.edu>
7144
7145 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
7146
d243e605
AC
71472003-04-14 Andrew Choi <akochoi@shaw.ca>
7148
7149 * macterm.c (mac_check_for_quit_char): Don't check more often than
7150 once a second.
7151
6901b111
SM
71522003-04-11 Stefan Monnier <monnier@cs.yale.edu>
7153
7154 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
7155 specially, so that they can't hide an implicit switch-frame event.
7156 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
7157 (head_table): Use switch-frame as event_kind for select-window.
7158 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
7159
7160 * editfns.c (Fformat): Lisp_Object/int mixup.
7161 (format2): Remove unused var numargs.
7162
e301806f 71632003-04-11 Kenichi Handa <handa@m17n.org>
aa95b710 7164
6901b111 7165 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
aa95b710
KH
7166 (Qafter_insert_file_set_coding): New variable.
7167 (syms_of_fileio): Initialize and staticpro it. Delete declaration
7168 for after-insert-file-adjust-coding-function.
7169 (Finsert_file_contents): Call Qafter_insert_file_set_coding
7170 instead of Vafter_insert_file_adjust_coding_function.
7171
38914424
KH
71722003-04-11 Kenichi Handa <handa@m17n.org>
7173
7174 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
7175
7176 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
7177 string. Callers changed.
7178
71792003-04-10 Kenichi Handa <handa@m17n.org>
a288d979 7180
6901b111 7181 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
a288d979 7182 (syms_of_fileio): Declare it as a lisp variable.
6901b111
SM
7183 (Finsert_file_contents):
7184 Call Vafter_insert_file_adjust_coding_function before calling
a288d979
KH
7185 decode-format.
7186
f979dc05
JD
71872003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7188
7189 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
7190 get GtkAdjustment as widget now is a GtkRange.
7191
7192 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
7193 GtkRange to avoid memory leak.
7194
f8c6b4c2 71952003-04-09 Kenichi Handa <handa@m17n.org>
cb98871c 7196
50ebc53d
KH
7197 * xfaces.c (Vface_font_rescale_alist): New variable.
7198 (struct font_name): New member rescale_ratio.
7199 (font_rescale_ratio): New function.
6901b111 7200 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
50ebc53d
KH
7201 (better_font_p): On comparing point sized, pay attention to
7202 recale_ratio member of fonts.
7203 (build_scalable_font_name): Reflect font->rescale_ratio in the
7204 font name.
6901b111 7205 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
50ebc53d 7206
cb98871c
KH
7207 * lread.c (read1): Before calling index, check if the 2nd
7208 arguemnt is in ASCII range.
7209
4773b8ca
RS
72102003-04-08 Richard M. Stallman <rms@gnu.org>
7211
b0ada147
RS
7212 * fileio.c (Ffile_symlink_p): Doc fix.
7213
7214 * editfns.c (Fformat): Translate positions of text properties
7215 in the format string to apply them to the result.
7216
4773b8ca
RS
7217 * fileio.c (Finsert_file_contents): Doc fix.
7218 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
7219
72202003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
6901b111 7221
4773b8ca
RS
7222 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
7223
e8f25745 72242003-04-08 Steven Tamm <steventamm@mac.com>
b0ada147 7225
e8f25745
ST
7226 * mac.c (init_mac_osx_environment): Switch libexec and bin so
7227 that self-contained application finds libexec files.
7228
f8c6b4c2 72292003-04-08 Kenichi Handa <handa@m17n.org>
2310d84c 7230
6901b111
SM
7231 * coding.c (code_convert_region_unwind):
7232 Set Vlast_coding_system_used to the argument.
2310d84c
KH
7233 (code_convert_region): If post-read-conversion function changed
7234 the value of last-coding-sytem, keep the new value in
7235 coding->symbol so that it won't be overridden.
7236 (run_pre_post_conversion_on_str): Likewise.
7c086845
KH
7237 (coding_system_accept_latin_extra_p): New function.
7238 (find_safe_codings): Pay attention to characters registered in
7239 latin-extra-code-table.
2310d84c 7240
39c9a034
TTN
72412003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
7242
7243 * Makefile.in (md5.o): Add missing dependency info.
7244
eb67c5d6
RS
72452003-04-06 Richard M. Stallman <rms@gnu.org>
7246
7247 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
7248
7249 * marker.c (verify_bytepos): New function.
7250
7251 * intervals.c (set_intervals_multibyte_1): When becoming
7252 multibyte, adjust right and left child sizes to a whole set of
7253 characters. If an interval gets zero total-length, delete it.
7254 If an interval consists of just its children, delete one of them.
7255
7256 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
7257 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
39c9a034 7258
eb67c5d6
RS
7259 * alloc.c: (VALIDATE_LISP_STORAGE): Macro deleted.
7260 All calls deleted.
7261 (lisp_malloc): Do the work here directly.
7262
b1f81fc5
JB
72632003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
7264
7265 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
7266 char tables.
7267
72682003-04-04 Kenichi Handa <handa@m17n.org>
aa8b70ae
KH
7269
7270 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
7271 destructively change "%S" to "%s".
7272
774666fb
MB
72732003-04-03 Miles Bader <miles@gnu.org>
7274
7275 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
7276 always set.
7277
19c37f01
DL
72782003-04-01 Dave Love <fx@gnu.org>
7279
7280 * xfns.c (xpm_lookup_color): Grok "opaque".
7281
2f4b24c3
AC
72822003-03-31 Andrew Choi <akochoi@shaw.ca>
7283
7284 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
7285 parent window ID.
7286
7287 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
7288
7289 * macterm.h (struct mac_output): Define x_pixels_diff and
7290 y_pixels_diff.
b1f81fc5 7291
9443fcf6
JB
72922003-03-31 Juanma Barranquero <lektu@terra.es>
7293
7294 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
7295 blockinput.h and files included from it.
7296
e072891b
KS
72972003-03-31 Kim F. Storm <storm@cua.dk>
7298
7299 The following changes consolidates the common code related to
7300 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
7301 files into frame.c.
9443fcf6 7302
e072891b
KS
7303 * frame.c: Include blockinput.h.
7304 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
7305 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
7306 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
7307 related vars here.
7308 (struct frame_parm_table, frame_parms): New table for describing
7309 frame parameters and their associated Q-variable.
7310 The order of the parameters corresponds to the sequence of the
7311 frame_parm_handlers table in redisplay_interface.
7312 (x_fullscreen_move, x_set_frame_parameters)
7313 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
7314 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
7315 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
7316 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
7317 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
7318 Generic functions for processing of frame parameters.
7319 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
7320 (display_x_get_resource, x_get_resource_string): Functions for
7321 generic access to X resources.
7322 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
7323 (x_default_parameter, Fx_parse_geometry): Functions for generic
7324 access to frame parameters.
6901b111
SM
7325 (x_figure_window_size): Generic calculation of frame size.
7326 Fixed to add space needed for tool bar. Also setup size_hint_flags.
e072891b
KS
7327 (syms_of_frame): Intern and staticpro frame parameter variables.
7328 Defvar_lisp Vx_resource_class and Vx_resource_name here.
7329 Defsubr Sx_get_resource and Sx_parse_geometry.
9443fcf6 7330
e072891b
KS
7331 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
7332 parameter related vars defined in frame.c.
7333 (EMACS_CLASS): Define here.
7334 (enum FULLSCREEN_*): Define here.
7335 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
7336 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
7337 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
7338 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
7339 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
7340 (x_set_visibility, x_set_autoraise, x_set_autolower)
7341 (x_set_unsplittable, x_set_vertical_scroll_bars)
7342 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
7343 (x_figure_window_size): Add prototypes.
7344
7345 * dispextern.h (frame_parm_handler): New typedef.
7346 (struct redisplay_interface): New member frame_parm_handlers.
7347 (enum resource_types): Move declaration here.
7348 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
7349 (x_default_parameter): Add prototypes.
7350
7351 * window.c: Remove extern decl for frame parameter vars.
7352 (change_window_heights): New generic function;
7353 replaces x_change_window_heights. All users changed.
7354
7355 * window.h (change_window_heights): Add prototype.
7356
7357 * xfaces.c: Remove extern decl for frame parameter vars.
7358
7359 * xterm.h (EMACS_CLASS): Remove. Use generic define.
7360 (struct w32_display_info): Fix type of xrdb member.
7361 (enum FULLSCREEN_*): Remove.
7362 Remove prototypes for generic functions (in frame.h).
7363
7364 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
7365 parameters now defined in frame.h and frame.c.
f63fd14e 7366 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
7367 (enum x_frame_parms): Remove (bogus, unused enum).
7368 (check_x_display_info): Make non-static (for frame.c).
7369 (struct x_frame_parm_table, x_frame_parms): Remove.
7370 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
7371 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
7372 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
7373 (x_change_window_heights, x_set_autoraise, x_set_autolower)
7374 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
7375 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
7376 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
7377 Remove. Use generic functions instead.
7378 (enum resource_types): Remove.
7379 (x_set_scroll_bar_default_width): New global function (for frame.c).
7380 (Fx_create_frame): Depend on x_figure_window_size to add space for
7381 toolbar and setup size_hint_flags.
7382 (x_frame_parm_handlers): New table for redisplay_interface.
7383 (syms_of_xfns): Don't intern/staticpro removed vars.
9443fcf6 7384
e072891b 7385 * xterm.c: Remove unnecessary extern declarations.
f63fd14e 7386 (x_fullscreen_adjust): Remove. Use generic instead.
e072891b
KS
7387 (x_redisplay_interface): Add x_frame_parm_handlers member.
7388
7389 * w32gui.h (XrmDatabase): New (dummy) typedef.
7390
7391 * w32term.h (EMACS_CLASS): Remove. Use generic define.
7392 (struct w32_display_info): Fix type of xrdb member.
7393 (enum FULLSCREEN_*): Remove.
7394 (x_fullscreen_adjust): Remove prototype.
7395
7396 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
7397 parameters now defined in frame.h and frame.c.
f63fd14e 7398 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
7399 (enum x_frame_parms): Remove (bogus, unused enum).
7400 (check_x_display_info): Make non-static (for frame.c).
7401 (struct x_frame_parm_table, x_frame_parms): Remove.
7402 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
7403 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
7404 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
7405 (x_change_window_heights, x_set_autoraise, x_set_autolower)
7406 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
7407 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
7408 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
7409 Remove. Use generic functions instead.
7410 (enum resource_types): Remove.
7411 (x_set_scroll_bar_default_width): New global function (for frame.c).
7412 (Fx_create_frame): Depend on x_figure_window_size to add space for
7413 toolbar and setup size_hint_flags.
7414 (w32_frame_parm_handlers): New table for redisplay_interface.
7415 (syms_of_w32fns): Don't intern/staticpro removed vars.
9443fcf6 7416
e072891b
KS
7417 * w32term.c: Remove unnecessary extern declarations.
7418 (x_fullscreen_adjust): Remove. Use generic instead.
7419 (x_redisplay_interface): Add w32_frame_parm_handlers member.
7420
7421 * w32reg.c (x_get_string_resource): Use XrmDatabase.
7422
7423 * macgui.h (XrmDatabase): New (dummy) typedef.
7424
7425 * macterm.h (EMACS_CLASS): Remove.
7426 (struct mac_display_info): Add xrdb member.
7427 (struct mac_output): Add want_fullscreen member.
7428
7429 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
7430 parameters now defined in frame.h and frame.c.
f63fd14e 7431 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
7432 (check_x_display_info): Make non-static (for frame.c).
7433 (struct x_frame_parm_table, x_frame_parms): Remove.
7434 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
7435 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
7436 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
7437 (x_change_window_heights, x_set_autoraise, x_set_autolower)
7438 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
7439 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
7440 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
7441 Remove. Use generic functions instead.
7442 (enum resource_types): Remove.
7443 (x_set_scroll_bar_default_width): New global function (for frame.c).
7444 (mac_frame_parm_handlers): New table for redisplay_interface.
7445 (syms_of_macfns): Don't intern/staticpro removed vars.
9443fcf6 7446
e072891b
KS
7447 * macterm.c: Remove unnecessary extern declarations.
7448 (x_redisplay_interface): Add mac_frame_parm_handlers member.
7449
3e6a560b
KS
7450 * Makefile.in (frame.o): Add dependency on blockinput.h and files
7451 included from it (atimer.h and systime.h).
7452
7b7b454e
AS
74532003-03-30 Andreas Schwab <schwab@suse.de>
7454
7455 * xdisp.c (x_insert_glyphs): Fix swapped width and height
7456 parameters for shift_glyphs_for_insert.
7457
7458 * macterm.c (x_redisplay_interface): Add missing entry for
7459 draw_vertical_window_border.
7460
beb402de
KG
74612003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
7462
7463 * fileio.c (Fexpand_file_name): In the no-handler case, after
7464 expanding, look again for a handler and invoke it. This is needed
7465 for filenames like "/foo/../user@host:/bar/../baz" -- the first
7466 expansion produces "/user@host:/bar/../baz" which needs to be
7467 expanded again for the finame result "/user@host:/baz".
7468
b676f356
JD
74692003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7470
7471 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
7472 of area to be redrawn for better performance.
7473
3c671a56
SM
74742003-03-28 Stefan Monnier <monnier@cs.yale.edu>
7475
7476 * xterm.c (take_vertical_position_into_account): Remove.
7477 (xt_action_hook): Call set_vertical_scroll_bar if needed.
7478 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
7479 (xm_scroll_callback, x_create_toolkit_scroll_bar)
7480 (x_set_toolkit_scroll_bar_thumb): Simplify.
7481 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
7482 (XTread_socket): Remove unused var.
7483 (x_make_frame_invisible): Replace goto with else.
7484
7485 * xdisp.c (set_vertical_scroll_bar): New fun.
7486 (redisplay_window): Use it.
7487
84f2e615
RS
74882003-03-26 Richard M. Stallman <rms@gnu.org>
7489
7490 * xdisp.c (update_tool_bar): Recompute tool bar if
7491 update_mode_lines is set. Set w->update_mode_line
7492 only if the tool bar contents actually change.
7493 (update_menu_bar): Undo previous change.
7494
70b6104c
JD
74952003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7496
5fd6f727
JD
7497 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
7498 (xg_frame_set_char_size): Calculate scroll bar width before frame
7499 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
7500 (xg_separator_p): Check for all documented separator types.
7501 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
7502 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
7503
70b6104c
JD
7504 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
7505 so tool bar gets updated.
7506
d9b36d19
SM
75072003-03-26 Stefan Monnier <monnier@cs.yale.edu>
7508
7509 * data.c (store_symval_forwarding): Re-instate part of the code
7510 that was deleted with too much enthusiasm.
7511
75122003-03-25 Stefan Monnier <monnier@cs.yale.edu>
7513
7514 * data.c (store_symval_forwarding): Delete special read-only
7515 hack for type == -1, since we now use ->constant instead.
7516 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
7517
7518 * buffer.c (overlays_in): Declare static.
7519 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
7520 `constant' field rather than the variable's `type' field.
7521
365fa1b3
AC
75222003-03-24 Andrew Choi <akochoi@shaw.ca>
7523
7524 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
7525
7526 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
7527
7528 * fns.c [MAC_OSX]: Do not redefine vector.
7529
7530 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
7531
7532 * macgui.h: Remove definition of No_Cursor.
7533
d9b36d19 7534 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
365fa1b3
AC
7535
7536 * xdisp.c: Define No_Cursor.
7537 (x_write_glyphs, notice_overwritten_cursor)
7538 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
7539 (note_mouse_highlight): Remove Mac-specific code.
7540 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
d9b36d19 7541
c0bcce6f
JPW
75422003-03-24 John Paul Wallington <jpw@gnu.org>
7543
7544 * xdisp.c (redisplay_window): If mini window's buffer is not
7545 empty, then redisplay it like other windows.
7546
a526b96c
KS
75472003-03-23 Kim F. Storm <storm@cua.dk>
7548
7549 * w32term.c (w32_draw_window_cursor): Fix last change.
7550
37ab321e
KH
75512003-03-23 Kenichi Handa <handa@m17n.org>
7552
a526b96c
KS
7553 * alloc.c (make_string_from_bytes, make_specified_string):
7554 Add `const' for the arg CONTENTS.
37ab321e
KH
7555
7556 * lisp.h (make_string_from_bytes, make_specified_string):
7557 Prototypes adjusted.
7558
7863d625
JD
75592003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7560
a526b96c 7561 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
fd4c9408 7562
7863d625
JD
7563 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
7564 (XG_SB_RANGE): New define.
7565
7566 * gtkutil.c (xg_fixed_handle_expose): New function.
7567 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
7568 expose events.
7569 (xg_update_scrollbar_pos): Take two more arguments, left and width
7570 of scroll bar including borders.
7571 Clear left and right part outside scroll bar separately as some
7572 themes have bars that are not an even number of pixels.
d9b36d19 7573 Don't set reallocate_redraws, don't call
7863d625
JD
7574 gdk_window_process_all_updates.
7575 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
7576 so no need to change it. Calculate size and value with XG_SB_RANGE.
7577
d9b36d19
SM
7578 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
7579 Pass left and width of scroll bar including borders to
7863d625
JD
7580 xg_update_scrollbar_pos.
7581
af0ad939
TTN
75822003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
7583
7584 * Makefile.in: Make sure space precedes end-of-line backslashes.
7585
b22139fd
KS
75862003-03-22 Kim F. Storm <storm@cua.dk>
7587
7588 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
7589 Add generic versions here. Remove system specific versions
7590 defined elsewhere.
7591
7592 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
7593 Add prototypes.
7594
6e6410cf
KS
7595 * xterm.h (STORE_NATIVE_RECT): New macro.
7596
5c9cc435
KS
75972003-03-21 Kim F. Storm <storm@cua.dk>
7598
00c64fab
SM
7599 * xdisp.c (get_glyph_string_clip_rect):
7600 Use FRAME_INTERNAL_BORDER_WIDTH.
5c9cc435
KS
7601
7602 * dispextern.h (struct redisplay_interface): Add active_p
7603 argument to draw_window_cursor member. All uses changed.
7604
acd37560
KS
76052003-03-21 Kim F. Storm <storm@cua.dk>
7606
7607 The following changes consolidate code related to writing and
7608 inserting glyphs, exposing frame, the tool bar, the mouse face,
7609 the output cursor, and help echo from xterm.c, w32term.c and
7610 macterm.c into xdisp.c. It also generalizes the use of the
7611 window_part enum instead of using numeric values throughout.
af0ad939 7612
acd37560
KS
7613 * xdisp.c: Consolidate gui-independent code here.
7614 Include keymap.h.
7615 (Qhelp_echo): Import.
7616 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
7617 (help_echo_string, help_echo_window, help_echo_object)
7618 (previous_help_echo_string, help_echo_pos): Declare here.
7619 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
7620 (estimate_mode_line_height): Define here. Handle windowing
7621 systems directly (without using estimate_mode_line_height_hook).
7622 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
7623 (update_window_cursor, update_cursor_in_window_tree)
7624 (fast_find_position, fast_find_string_pos)
7625 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
7626 (expose_area, expose_line, expose_overlaps, expose_window)
7627 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
7628 declared static as they are only used locally in xdisp.c.
7629 (draw_glyphs): Rename from x_draw_glyphs and make static.
7630 (tool_bar_item_info, notice_overwritten_cursor): Make static.
7631 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
7632 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
af0ad939 7633 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
acd37560
KS
7634 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
7635 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
7636 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
7637 (note_mouse_highlight, x_clear_window_mouse_face)
7638 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
7639 (x_intersect_rectangles): New generic functions for use by xdisp.c
7640 and GUI front-ends.
7641 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
7642 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
7643
7644 * dispextern.h (Display_Info): Generic typedef for *_display_info.
7645 (NativeRectangle): Generic typedef for rectangle type.
7646 (enum window_part): Move here from window.c.
7647 (struct redisplay_interface): New members flush_display_optional,
7648 define_frame_cursor, clear_frame_area, draw_window_cursor,
7649 draw_vertical_window_border, shift_glyphs_for_insert.
7650 Rename member clear_mouse_face to clear_window_mouse_face.
7651 (estimate_mode_line_height_hook): Remove hook.
7652 (auto_raise_tool_bar_buttons_p): Don't declare extern.
7653 (tool_bar_item_info): Remove prototype.
7654 (help_echo_string, help_echo_window, help_echo_object)
7655 (previous_help_echo_string, help_echo_pos)
7656 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
7657 (x_stretch_cursor_p, output_cursor): Declare extern.
7658 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
7659 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
7660 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
7661 (display_and_set_cursor, set_output_cursor, x_cursor_to)
7662 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
7663 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
7664 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
7665 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
7666 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
7667 Add prototypes.
7668 (mode_line_string, marginal_area_string): Fix prototypes.
7669
7670 * window.c (enum window_part): Move to dispextern.h.
7671 (coordinates_in_window): Use enum window_part member names
7672 instead of numbers to describe return value.
7673 (struct check_window_data): Change part member to window_part.
7674 (check_window_containing): Return window_part unaltered.
7675 (window_from_coordinates): Change part arg from int to enum
7676 window_part. Allow part arg to be null. All users changed.
7677
7678 * window.h (window_from_coordinates): Fix prototype.
7679
7680 * term.c (estimate_mode_line_height): Move to xdisp.c.
7681
7682 * keyboard.c (make_lispy_event): Use enum window_part.
7683
7684 * dispnew.c (mode_line_string, marginal_area_string): Use enum
7685 window_part instead of int in arg list. Users changed.
7686
7687 * xterm.h (No_Cursor): Declare as None for X.
7688 (struct mac_output): Replace member cross_cursor by hand_cursor.
af0ad939 7689
acd37560
KS
7690 * xterm.c: Remove consolidated defines and code.
7691 (BETWEEN): Remove unused macro.
7692 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
7693 (x_define_frame_cursor, x_clear_frame_area)
7694 (x_draw_window_cursor): New X-specific functions for RIF.
7695 (x_redisplay_interface): Add new members.
7696
7697 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
7698
7699 * w32term.h (struct w32_output): Remove cross_cursor member.
7700
7701 * w32term.c: Remove consolidated defines and code.
7702 (BETWEEN): Remove unused macro.
7703 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
7704 (w32_define_frame_cursor, w32_clear_frame_area)
7705 (w32_draw_window_cursor): New W32-specific functions for RIF.
7706 (w32_redisplay_interface): Add new members.
7707
a64387ee 7708 * w32gui.h (No_Cursor): Define as 0 for W32.
acd37560
KS
7709 (XRectangle): Add X compatible rectangle type.
7710 (NativeRectangle): Declare as RECT for W32.
7711 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
7712
7713 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
7714
7715 * w32console.c: Remove consolidated defines and code.
af0ad939 7716
acd37560
KS
7717 * msdos.h (Display_Info): Add generic typedef.
7718
7719 * msdos.c: Remove consolidated defines and code.
7720 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
7721
7722 * macterm.h (struct mac_output): Replace member cross_cursor by
7723 hand_cursor.
7724 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
7725
7726 * macterm.c: Remove consolidated defines and code.
7727 (BETWEEN): Remove unused macro.
7728 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
7729 (mac_define_frame_cursor, mac_clear_frame_area)
7730 (mac_draw_window_cursor): New Mac-specific functions for RIF.
7731 (x_redisplay_interface): Add new members.
7732
7733 * macgui.h (No_Cursor): Define as 0 for Mac.
7734 (XRectangle): Add X compatible rectangle type.
7735 (NativeRectangle): Declare as Rect for Mac.
7736 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
7737
204ccab1
KS
7738 * macfns.c (x_set_mouse_color): Setup hand_cursor.
7739 (x_set_cursor_color): Use x_display_and_set_cursor.
acd37560 7740
9443fcf6 7741 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
acd37560
KS
7742 included from it. Add dependency on keymap.h.
7743
7744 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
7745
8ba01a70 77462003-03-21 Kenichi Handa <handa@m17n.org>
3f817c73
KH
7747
7748 * fileio.c (Fexpand_file_name): Fix previous change.
7749
8ba01a70 77502003-03-19 Kenichi Handa <handa@m17n.org>
4f497b0a
KH
7751
7752 * fileio.c (Ffile_name_directory): Reconstruct file name by
7753 make_specified_string.
7754 (Ffile_name_nondirectory, Ffile_name_as_directory)
7755 (Fdirectory_file_name, Fexpand_file_name)
7756 (Fsubstitute_in_file_name): Likewise.
7757 (Fread_file_name): Compare decoded homedir with DIR and
7758 DEFAULT_FILENAME.
7759
7760 * alloc.c (make_specified_string): If NCHARS is negative, count
7761 the number of characters.
7762
19536747
JD
77632003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7764
de38ae5a
JD
7765 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
7766 all widgets.
7767
19536747
JD
7768 * gtkutil.h: Removed xg_ignore_next_thumb.
7769
37ab321e 77702003-03-18 Kenichi Handa <handa@m17n.org>
cb0d4562
KH
7771
7772 * coding.c (Vchar_coding_system_table): Remove this variable.
7773 (Vcoding_system_safe_chars): New variable.
7774 (intersection): Remove this function.
7775 (find_safe_codings): Don't use Vchar_coding_system_table, but try
7776 all codings in SAFE_CODINGS.
00c64fab 7777 (Ffind_coding_systems_region_internal): Adjust for the change of
cb0d4562
KH
7778 find_safe_codings. Get generic coding systems from
7779 Vcoding_system_safe_chars.
7780 (Fdefine_coding_system_internal): New function.
7781 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
7782 Initialize and staticpro Vcoding_system_safe_chars.
7783
17097258
JD
77842003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7785
2a2071c3
JD
7786 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
7787 equal old values before updating.
7788
17097258
JD
7789 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
7790
7791 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
7792
77932003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7794
7795 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
7796 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
7797 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
7798 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
7799 (xg_create_scroll_bar): Pass bar to button event callback.
7800 (xg_find_top_left_in_fixed): New function.
7801 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
7802 whole scroll bar area. Get old position with
7803 xg_find_top_left_in_fixed, calculate and only clear needed areas.
7804 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
7805 dragging is in progress. Calculate whole as for Motif.
7806 Remove code that saved last values. Call gtk_range functions to
7807 set scroll bar sizes.
7808
7809 * gtkutil.h: Removed xg_ignore_next_thumb.
7810
8cb9dfbf
JB
78112003-03-17 Juanma Barranquero <lektu@terra.es>
7812
7813 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
7814 and files included from it.
7815
00c64fab
SM
78162003-03-18 Stefan Monnier <monnier@cs.yale.edu>
7817
7818 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
7819 multiple occurrences of the same keymap under different prefixes.
7820 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
7821
c45bb3b2
JR
78222003-03-16 Jason Rumney <jasonr@gnu.org>
7823
7824 * w32gui.h: Use HDC for Display.
7825
7826 * w32term.c (w32_encode_char): Prevent double-byte chars from
7827 crashing Emacs.
7828
7829 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
7830 as binary.
7831
2a6d0874
JB
78322003-03-16 Juanma Barranquero <lektu@terra.es>
7833
7834 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
7835
03eb5fab
KS
78362003-03-16 Kim F. Storm <storm@cua.dk>
7837
7838 The following changes consolidate some of the gui-independent
7839 parts of the processing and drawing of "glyph strings" from
7840 xterm.c, w32term.c, and macterm.c into xdisp.c.
2a6d0874 7841
03eb5fab
KS
7842 * dispextern.h (struct glyph): Reduce face_id member from 22 to
7843 21 bits (this reduces number of faces from 4M to 2M).
7844 Replace W32 specific w32_font_type member (2 bits) by generic
7845 font_type member (3 bits) for portability.
7846 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
7847 (enum draw_glyphs_face): Define here.
7848 (struct glyph_string): Define here. Merge W32 and X versions.
7849 (struct redisplay_interface): New members per_char_metric,
7850 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
7851 (VCENTER_BASELINE_OFFSET): Define here.
7852 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
7853 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
7854
7855 * xdisp.c: Consolidate gui-independent "glyph string" code here.
7856 (dump_glyph_string): Moved here.
7857 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
7858 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
7859 (fill_composite_glyph_string, fill_glyph_string)
7860 (fill_image_glyph_string, fill_stretch_glyph_string)
7861 (left_overwritten, left_overwriting, right_overwritten)
7862 (right_overwriting, get_char_face_and_encoding)
7863 (set_glyph_string_background_width, compute_overhangs_and_x)
7864 (append_glyph, append_composite_glyph, produce_image_glyph)
7865 (take_vertical_position_into_account, append_stretch_glyph)
7866 (produce_stretch_glyph): New generic functions (based on X version).
7867 Call platform specific functions through rif.
7868 (INIT_GLYPH_STRING): New macro, hides W32 details.
7869 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
7870 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
7871 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
7872 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
7873 (notice_overwritten_cursor):
7874 Generic functions exported to platform modules. Users changed.
7875
7876 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
7877 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
7878 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
fad49844 7879 New macros for consolidated code.
2a6d0874 7880
03eb5fab
KS
7881 * xterm.c: Remove consolidated defines and code.
7882 (x_per_char_metric, x_encode_char)
7883 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
7884 (x_redisplay_interface): Add new members.
7885
7886 * w32gui.h (Display): Add dummy typedef for consolidation.
7887 (XChar2b): Define alias for wchar_t for consolidation.
7888 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
7889
7890 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
2a6d0874 7891 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
03eb5fab
KS
7892 New macros for consolidation.
7893
fad49844 7894 * w32term.c: Remove consolidated defines and code.
03eb5fab
KS
7895 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
7896 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
7897 (w32_per_char_metric): Change font_type arg to int for RIF.
7898 (w32_encode_char): Return int according to RIF requirements.
7899 (w32_compute_glyph_string_overhangs): Adapt to RIF.
7900 (w32_get_glyph_overhangs): New function for RIF. Uses generic
7901 x_get_glyph_overhangs.
7902 (w32_redisplay_interface): Add new members.
7903
7904 * macgui.h (XChar2b): Move typedef here for consolidation.
7905 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
7906
7907 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
7908 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
7909 consolidation.
7910
7911 * macterm.c: Remove consolidated defines and code.
7912 (mac_per_char_metric): New function for RIF.
00c64fab 7913 (mac_encode_char): Adapt to new RIF requirements.
03eb5fab
KS
7914 (mac_compute_glyph_string_overhangs): Adapt for RIF.
7915 (x_redisplay_interface): Add new members.
7916
00c64fab
SM
79172003-03-15 Stefan Monnier <monnier@cs.yale.edu>
7918
7919 * keymap.c (Vmenu_events): New var.
7920 (syms_of_keymap): Initialize it.
7921 (where_is_internal): Check more carefully what is a menu event.
7922
225c7a07
RS
79232003-03-14 Richard M. Stallman <rms@gnu.org>
7924
7925 * lread.c (read1): After #!, exit loop on eof.
7926
cea9be54
JD
79272003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7928
9ea0e54d
JD
7929 * gtkutil.h: Add declaration for xg_frame_cleared.
7930
0cb35f4e
JD
7931 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
7932
cea9be54
JD
7933 * gtkutil.c (struct xg_last_sb_pos): New structure.
7934 (handle_fixed_child): New function.
7935 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
7936 and force a redraw on them.
7937 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
7938 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
7939 so we can avoid unneeded redraws.
7940 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
7941 and force a redraw on the scroll bar.
7942 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
7943 if xg_last_sb_pos shows the positions are up to date.
0cb35f4e 7944 (xg_frame_cleared): New function.
cea9be54 7945
20b853f3
KH
79462003-03-13 Kenichi Handa <handa@m17n.org>
7947
7948 * coding.c (Fdetect_coding_region): Fix docstring.
7949 (Fdetect_coding_string): Fix docstring.
7950
7a555aff
AS
79512003-03-13 Andreas Schwab <schwab@suse.de>
7952
25cc0080
AS
7953 * gtkutil.c: Add prototype for create_menus.
7954
30225431
AS
7955 * data.c (long_to_cons): Fix type of top.
7956
7957 * xselect.c (selection_data_to_lisp_data): Use int instead of
7958 long for an integer of size 4.
7959
7a555aff 7960 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
30225431 7961 (xg_tool_bar_help_callback): Likewise.
7a555aff 7962
a3e4741f
AS
79632003-03-12 Andreas Schwab <schwab@suse.de>
7964
7965 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
7966
9668be7c
KS
79672003-03-12 Kim F. Storm <storm@cua.dk>
7968
03eb5fab 7969 The following changes consolidate the fringe handling from
9668be7c 7970 xterm.c, w32term.c, and macterm.c into xdisp.c.
00a88f32 7971
9668be7c
KS
7972 * xdisp.c: Consolidate fringe handling code here.
7973 (left_bits, right_bits, continued_bits, continuation_bits)
7974 (ov_bits, zv_bits): Define fringe bitmaps.
7975 (fringe_bitmaps): New array holding fringe bitmaps.
7976 (draw_fringe_bitmap): Draw a specific bitmap; call display
7977 specific drawing routine via rif->draw_fringe_bitmap.
7978 (draw_row_fringe_bitmaps): Generic replacement for
7979 x_draw_row_fringe_bitmaps; all callers changed.
7980 (compute_fringe_widths): Generic replacement for
7981 x_compute_fringe_widths; all callers changed.
7982
7983 * dispextern.h (enum fringe_bitmap_type): Define here.
7984 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
7985 (fringe_bitmaps): Declare extern.
7986 (struct redisplay_interface): New member draw_fringe_bitmap.
7987 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
7988
7989 * xterm.c: Remove generic fringe code.
7990 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
7991 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
7992
7993 * w32term.c: Remove generic fringe code.
7994 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
7995 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
00a88f32 7996
9668be7c
KS
7997 * macterm.c: Remove generic fringe code.
7998 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
7999 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
8000
00a88f32
SM
80012003-03-11 Stefan Monnier <monnier@cs.yale.edu>
8002
8003 * print.c (Fprin1_to_string): Return unibyte string if possible.
8004
1d1de695
DK
80052003-03-09 David Kastrup <dak@gnu.org>
8006
8007 * process.c (read_process_output): We have allocated enough space
8008 for readmax and carryover, so actually use the alloted space.
8009
257f40f2
JD
80102003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8011
8012 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
8013 toolkit scrollbar click.
8014
8015 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
8016 for USE_GTK.
8017 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
8018 also.
8019 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
8020 scrollbar and control is pressed, call x_scroll_bar_handle_click.
00a88f32 8021
257f40f2
JD
8022 * gtkutil.h: Declare xg_get_scroll_id_for_window.
8023
8024 * gtkutil.c (xg_get_scroll_id_for_window): New function.
8025 (xg_tool_bar_item_expose_callback): New function.
8026 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
8027 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
8028 on the tool bar widget.
8029 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
8030 to expose on the tool bar item widgets.
8031
15213141
JD
80322003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8033
26b74a0b 8034 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
00a88f32 8035 struct image* when deciding to update (struct image* may have been
26b74a0b
JD
8036 deleted from the image cache).
8037
15213141
JD
8038 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
8039 the event isn't for a frame (i.e. for dialogs).
8040
20b853f3 80412003-03-07 Kenichi Handa <handa@m17n.org>
cb681b34
KH
8042
8043 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
8044 composition components reaches the limit, terminate composing.
8045 (COMPOSITION_OK): New macro.
00a88f32 8046 (detect_coding_iso2022): Use it if an escape sequence for
cb681b34
KH
8047 composition is found.
8048 (coding_restore_composition): Adjust the number of composition
8049 components if it is not sane.
8050
c9029fe5
JB
80512003-03-06 Juanma Barranquero <lektu@terra.es>
8052
8053 * w32term.h (struct w32_display_info): Add xrdb member to support
8054 passing resources via -xrm on Windows.
8055
8056 * w32term.c (w32_make_rdb): New function.
8057 (w32_term_init): Use it to initialize xrdb member of w32_display_info
8058 struct. Delete leftover code.
8059
8060 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
8061 for resources passed on the command line.
8062
8063 * w32reg.c (w32_get_rdb_resource): New function.
8064 (x_get_string_resource): Use it, so resources passed with -xrm
8065 supercede the ones in the registry.
8066
9d00001f
JD
80672003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8068
8069 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
8070 instead of x_top_window_to_frame.
8071
ca2417b9
JD
80722003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8073
8074 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
8075 when restarting Emacs.
8076
5b20caf0
RS
80772003-03-03 Richard M. Stallman <rms@gnu.org>
8078
8079 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
8080 to run kill-buffer-query-functions.
8081 (Qkill_buffer_query_functions): New var.
8082 (syms_of_buffer): Init and staticpro it.
8083
58e91b77
JD
80842003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8085
8086 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
8087
932357b4
KS
80882003-02-25 Kim F. Storm <storm@cua.dk>
8089
8090 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
8091 If centering point failed to make whole line visible and vscroll
8092 is non-zero, disable vscroll and try centering point again.
8093
8094 * lread.c (read1): Accept `single space' syntax like (? x).
8095
bb8db7e1
JD
80962003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8097
8098 * keyboard.c (cancel_hourglass_unwind): Surround with
8099 #ifdef HAVE_X_WINDOWS
8100
47d77aab
KH
81012003-02-25 Kenichi Handa <handa@m17n.org>
8102
8103 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
8104 process only when "subprocesses" is defined.
8105
6a097c0c
SM
81062003-02-24 Stefan Monnier <monnier@cs.yale.edu>
8107
8108 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
8109
0b063c27
JB
81102003-02-24 Juanma Barranquero <lektu@terra.es>
8111
d1135afc
JB
8112 * callint.c (fix_command): Declare as static void and move before
8113 Fcall_interactively.
8114
0b063c27
JB
8115 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
8116 (syms_of_xdisp): Don't initialize Qwhen.
8117
0af912f0
JD
81182003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8119
8120 * keyboard.c (cancel_hourglass_unwind): New function.
8121 (command_loop_1): Cancel hourglass with unwind-protect.
8122
120d0a23
RS
81232003-02-23 Richard M. Stallman <rms@gnu.org>
8124
8125 * callint.c (fix_command): New subroutine, from Fcall_interactively.
8126 Detect (when ... (region-beginning)) etc.
8127 (Fcall_interactively): Call fix_command.
8128 (Qif, Qwhen): New variables.
8129 (syms_of_callint): Init and staticpro them.
0b063c27 8130
120d0a23
RS
8131 * regex.c (print_partial_compiled_pattern): Output to stderr.
8132
4ece81a6
KG
81332003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
8134
8135 * dired.c (directory_files_internal): Don't expand directory.
8136 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
8137 instead. From Lars Hansen <larsh@math.ku.dk>.
8138
e52bd6b7
SM
81392003-02-22 Stefan Monnier <monnier@cs.yale.edu>
8140
8141 * fns.c (string_to_multibyte): Remove unused var i.
8142 (Flanginfo): Fix int/Lisp_Object mixup.
8143 (void_call2): New fun.
8144 (Fmap_char_table): Use it in place of call2.
8145
8146 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
8147
8148 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
8149
8150 * keymap.c (copy_keymap_1): Make it static.
8151
8152 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
8153
c33ef7c4
JB
81542003-02-22 David Ponce <david@dponce.com>
8155
8156 * lread.c (Fload): Don't check STRING_MULTIBYTE.
8157
16782258
JD
81582003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8159
8160 * process.h: Removed subtty field from struct Lisp_Process.
8161
8162 * process.c (create_process): Remove setting of subtty.
8163 (emacs_get_tty_pgrp): New function.
e52bd6b7
SM
8164 (Fprocess_running_child_p, process_send_signal):
8165 Call emacs_get_tty_pgrp instead of ioctl.
16782258
JD
8166 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
8167
3abeca61
KG
81682003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
8169
8170 * keymap.c (Fdefine_key): Doc fix.
8171
92a8ce63
JB
81722003-02-21 Juanma Barranquero <lektu@terra.es>
8173
8174 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
8175
8176 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
8177 POLLING_PROBLEM_IN_SELECT.
8178
8179 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
8180 Delete #undef of POLLING_PROBLEM_IN_SELECT.
8181
8182 * s/hpux10-20.h: New file.
8183
e52bd6b7
SM
8184 * process.c (wait_reading_process_input):
8185 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
92a8ce63 8186
20f1ef2e
KH
81872003-02-20 Kenichi Handa <handa@m17n.org>
8188
32d0a9dc
KH
8189 * fontset.c (check_fontset_name): If NAME is nil, return the
8190 default fontset.
8191 (override_font_info): New function.
e52bd6b7 8192 (Fset_fontset_font): Document that NAME nil means the default fontset.
32d0a9dc
KH
8193 (Ffontset_info): If FONTSET is not the default fontset, merge
8194 FONTSET onto the copy of the default fontset, and work on that
8195 copy. Document that NAME nil means the default fontset.
8196 (Ffontset_font): Document that NAME nil means the default fontset.
8197
20f1ef2e
KH
8198 * process.c (setup_process_coding_systems): If the process's
8199 in/out descriptor is -1, do nothing.
8200
77d1daf2
AS
82012003-02-19 Andreas Schwab <schwab@suse.de>
8202
e52bd6b7
SM
8203 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
8204 Add prototypes.
77d1daf2 8205
f9a45bb3
KH
82062003-02-19 Kenichi Handa <handa@m17n.org>
8207
8208 * xfaces.c (try_alternative_families): Try all scalable fonts if
8209 Vscalable_fonts_allowed is not Qt.
8210
72ecb43c
JD
82112003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8212
8213 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
8214
ee5be7c3
JD
82152003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8216
8217 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
8218 names.
8219
8220 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
e52bd6b7 8221 (sorted_font_list): Move allocation of struct font_name to
ee5be7c3
JD
8222 x_face_list_fonts.
8223 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
8224 (Fx_list_fonts): Set maxnames to -1 to get all font names.
8225
4cd519a7
KS
82262003-02-18 Kim F. Storm <storm@cua.dk>
8227
068f9882
KS
8228 * lread.c (read1): Fix last change.
8229 "`" is not always special. Allow "?" after a character constant.
4cd519a7 8230
7290a344
AC
82312003-02-18 Andrew Choi <akochoi@shaw.ca>
8232
8233 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
8234
1f7fa69b
AS
82352003-02-18 Andreas Schwab <schwab@suse.de>
8236
8237 * window.c (window_scroll_pixel_based): Move outside a
8238 multi-glyph character before setting new window start.
8239
8240 * xdisp.c (in_display_vector_p): New function.
8241 * dispextern.h (in_display_vector_p): Declare.
8242
23e21195
KS
82432003-02-18 Kim F. Storm <storm@cua.dk>
8244
8245 * lread.c (read1): Fix and relax read syntax.
8246 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
8247 Only recognize "," after dotted-pair dot if inside backquote.
8248 Never include "`" or "," (inside backquote) in a symbol.
8249 Allow dotted-pair dot after a character constant.
8250 Allow "`" and "," (inside backquote) after a character constant.
92a8ce63 8251
f098b121
JD
82522003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8253
8254 * gtkutil.c (xg_tool_bar_expose_callback): New function.
8255 (xg_create_tool_bar): Force style of tool bar to be horizontal with
8256 icons. Set name of tool bar to emacs-toolbar.
8257 (update_frame_tool_bar): Connect expose event to
8258 xg_tool_bar_expose_callback.
8259
63020c46
RS
82602003-02-17 Richard M. Stallman <rms@gnu.org>
8261
8262 * keyboard.c (this_command_key_count_reset): New variable.
8263 Initiatize to 0 where this_command_key_count is set.
8264 (read_char): Save and restore this_command_key_count_reset
8265 around input method code.
8266 (read_char): If this_command_key_count_reset, echo reread commands.
8267 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
8268
fb4452cc
KH
82692003-02-17 Kenichi Handa <handa@m17n.org>
8270
8271 * fns.c (string_to_multibyte): Always return a multibyte string.
8272
bd11cc09
JR
82732003-02-16 Jason Rumney <jasonr@gnu.org>
8274
e52bd6b7
SM
8275 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
8276 Negative max_fonts parameter means list all.
bd11cc09 8277
4cdf4bde
DL
82782003-02-14 Dave Love <fx@gnu.org>
8279
8280 * fns.c (Flanginfo): Doc fix.
8281
023b93f6
KS
82822003-02-13 Kim F. Storm <storm@cua.dk>
8283
37cd4238
KS
8284 * lread.c (read_escape): Interpret \s as a SPACE character, except
8285 for \s-X in a character constant which still is the super modifier.
8286 (read1): Signal an `invalid read syntax' error if a character
8287 constant is immediately followed by a digit or symbol character.
8288
140a6b7e
KS
8289 * search.c (Fmatch_data): Doc fix. Explicitly state that
8290 match-data is undefined if last search failed.
8291
023b93f6
KS
8292 * keymap.c (Fcommand_remapping): Renamed from Fremap_command.
8293 All uses changed.
8294
7d5c86e5
JB
82952003-02-12 Juanma Barranquero <lektu@terra.es>
8296
8297 * eval.c (Fdefmacro): Fix typo.
8298
295fff2c
KS
82992003-02-12 Kim F. Storm <storm@cua.dk>
8300
8301 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
8302 macro is a string, convert meta modifiers in string when copying
8303 the string into a vector.
8304
60f3202d
KS
83052003-02-11 Kim F. Storm <storm@cua.dk>
8306
8307 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
8308
61cb0b53
KH
83092003-02-11 Kenichi Handa <handa@m17n.org>
8310
8311 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
8312
7392e23c
KS
83132003-02-10 Kim F. Storm <storm@cua.dk>
8314
8315 * process.c: Doc fixes.
8316 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
8317
ce4254bd
KH
83182003-02-10 Kenichi Handa <handa@m17n.org>
8319
9c7a329a
KH
8320 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
8321
ce4254bd
KH
8322 * process.c (QCfilter_multibyte): New variable.
8323 (setup_process_coding_systems): New function.
e52bd6b7
SM
8324 (Fset_process_buffer, Fset_process_filter):
8325 Call setup_process_coding_systems.
ce4254bd
KH
8326 (Fstart_process): Initialize the member `filter_multibyte' of
8327 struct Lisp_Process.
8328 (create_process): Call setup_process_coding_systems.
8329 (Fmake_network_process): New keyward `:filter-multibyte'.
8330 Initialize the member `filter_multibyte' of struct Lisp_Process.
8331 Call setup_process_coding_systems.
8332 (server_accept_connection): Call setup_process_coding_systems.
8333 (read_process_output): If the process has a filter, decide the
8334 multibyteness of a string to given to the filter by
8335 `filter_multibyte' member of the process. If the process doesn't
8336 have a filter and the result of conversion is unibyte, use
8337 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
8338 multibyte form.
8339 (Fset_process_coding_system): Call setup_process_coding_systems.
8340 (Fset_process_filter_multibyte): New function.
8341 (Fprocess_filter_multibyte_p): New function.
8342 (syms_of_process): Intern and staticpro QCfilter_multibyte.
8343 Defsubr Sset_process_filter_multibyte and
8344 Sprocess_filter_multibyte_p.
8345
8346 * process.h (struct Lisp_Process): New member filter_multibyte.
8347
8348 * lisp.h (setup_process_coding_systems): Add prototype.
8349
8350 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
8351 process, update coding systems for the process.
8352
b08d5f59
KH
83532003-02-09 Kenichi Handa <handa@m17n.org>
8354
8355 * fns.c (string_to_multibyte): New function.
8356 (Fstring_to_multibyte): New function.
8357 (syms_of_fns): Defsubr it.
8358
0dfd93c0
AS
83592003-02-08 Andreas Schwab <schwab@suse.de>
8360
8361 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
8362 instead of the substitution.
8363
7b76ca1c
JD
83642003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8365
8366 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
8367
8368 * xmenu.c (menu_position_func): Adjust menu popup position so that
8369 the menu is fully visible.
7b76ca1c 8370
2436a4e4
JD
83712003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8372
8373 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
e52bd6b7
SM
8374 (x_make_frame_invisible, x_wm_set_icon_position):
8375 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
2436a4e4
JD
8376
8377 * xfns.c (x_set_name, x_set_title): Ditto.
8378
37d1e680
RS
83792003-02-04 Richard M. Stallman <rms@gnu.org>
8380
8381 * keyboard.c (echo_now): Update before_command_echo_length.
8382 (Freset_this_command_lengths): Reset this_command_key_count etc.
8383 immediately rather than arranging to do it later.
8384 (before_command_key_count_1, before_command_echo_length_1)
8385 (before_command_restore_flag): Vars deleted.
8386 (add_command_key): Don't handle before_command_restore_flag.
8387 (read_char, record_menu_key): Don't update before_command_key_count or
8388 before_command_echo_length.
8389 (read_char): Don't handle before_command_restore_flag.
8390
8391 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
8392 in direct-output clauses if it wouldn't be called in the ordinary case.
8393
578846a3
KS
83942003-02-04 Kim F. Storm <storm@cua.dk>
8395
8396 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
8397
49853a4d
JD
83982003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8399
8400 * gtkutil.c (remove_from_container): Copying list is not needed.
8401 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
8402 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
8403 on list returned from gtk_container_get_children to avoid memory leak.
8404
8b53dc06
JR
84052003-02-01 Jason Rumney <jasonr@gnu.org>
8406
5d54d177
JR
8407 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
8408 local malloc.
8409 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
8410 definitions in xpm.h.
8411 (init_xpm_functions): New function.
f63fd14e 8412 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
5d54d177
JR
8413 (init_external_image_libraries): Try to load libXpm.dll.
8414
8b53dc06
JR
8415 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
8416 timestamp.
8417
b222e415
DL
84182003-01-31 Dave Love <fx@gnu.org>
8419
8420 * syntax.c (Fskip_chars_forward)
8421 (open-paren-in-column-0-is-defun-start): Doc fix.
8422
c60ee5e7
JB
84232003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
8424
8425 * fileio.c: Support // at start of name for Cygwin (just added proper
8426 preprocessor tests).
8427
8428 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
8429
8430 * Makefile.in: Use @EXEEXT@ for Cygwin.
8431
8432 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
8433
8434 * s/cygwin.h: Added for Cygwin port.
8435
53b37591
JB
84362003-01-31 Juanma Barranquero <lektu@terra.es>
8437
8438 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
8439 when including gif_lib.h.
fe929957 8440 (init_gif_functions, init_tiff_functions): New functions.
f63fd14e
JB
8441 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
8442 Windows. Disable color table lookups. Call library functions
53b37591 8443 through pointers determined at runtime.
fe929957
JB
8444 (init_external_image_libraries): Try to load libungif.dll and
8445 libtiff.dll.
53b37591 8446
45415a8f
KH
84472003-01-31 Kenichi Handa <handa@m17n.org>
8448
8449 * xdisp.c (SKIP_GLYPHS): New macro.
e52bd6b7 8450 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
45415a8f 8451
a97e4138
JD
84522003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8453
e52bd6b7 8454 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
a97e4138 8455
6eed9bed
DL
84562003-01-30 Dave Love <fx@gnu.org>
8457
8458 * alloc.c (Vgc_elapsed, gcs_done): New variables.
8459 (Fgarbage_collect): Use them.
8460 (init_alloc, syms_of_alloc): Set them up.
8461
100dcd40
JB
84622003-01-30 Juanma Barranquero <lektu@terra.es>
8463
8464 * w32fns.c (init_external_image_libraries): Add missing operator.
8465
fbd852af
JR
84662003-01-29 Jason Rumney <jasonr@gnu.org>
8467
8468 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
8469 an alternative name for jpeg.dll.
8470
8a2d8020
KH
84712003-01-29 Kenichi Handa <handa@m17n.org>
8472
8473 * xdisp.c (set_cursor_from_row): Pay attention to string display
8474 properties.
8475
058c18c7
AC
84762003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
8477
8478 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
8479 <escape>.
8480 (keycode_to_xkeysym_table): Reformat and add more comments.
8481 (XTread_socket): Drop special case for backspace.
8482
385f11cf
AC
84832003-01-28 Andrew Choi <akochoi@shaw.ca>
8484
8485 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
8486 values in old-style RGB specs.
8487
c922a224
JB
84882003-01-27 Juanma Barranquero <lektu@terra.es>
8489
8490 * w32fns.c (init_external_image_libraries): Try alternate names for the
8491 jpeg dll.
8492
0a1d6de0
JD
84932003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8494
8495 * gtkutil.c (create_dialog, xg_separator_p)
8496 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
8497 before calling strcmp or strlen.
8498
a97e4138 84992003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1d1885fc
JD
8500
8501 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
8502 and handle image load failure.
8503
28908312
JR
85042003-01-26 Jason Rumney <jasonr@gnu.org>
8505
8506 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
8507 New functions.
f63fd14e
JB
8508 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
8509 Disable color table lookups. Call jpeg library functions
28908312
JR
8510 through pointers determined at runtime.
8511 (init_external_image_libraries): Try to load jpeg.dll.
8512
84e47416
RS
85132003-01-25 Richard M. Stallman <rms@gnu.org>
8514
8515 * lisp.h: Declare format2 instead of format1.
8516
8517 * fileio.c (barf_or_query_if_file_exists):
8518 Call format2 instead of format1.
8519
8520 * editfns.c (format2): New function, replaces format1
8521 but takes exactly two Lisp Objects as format args.
8522
8523 * buffer.c (Fkill_buffer): Call format2 instead of format1.
8524
a97e4138 85252003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1fcfb866
JD
8526
8527 * xterm.h: Change to return value of x_dispatch_event to int.
8528
8529 * xterm.c (x_filter_event): New function.
8530 (event_handler_gdk, XTread_socket): Call x_filter_event.
8531 (x_dispatch_event): Change to return value of finish.
8532 (event_handler_gdk): Use return value from x_dispatch_event.
8533
8534 * xfns.c (x_window): Call create_frame_xic for GTK version to
8535 initialize input methods.
8536
8537 * gtkutil.h: Add (void) prototypes.
8538
8539 * gtkutil.c (create_menus): Remove code that puts the help menu to
8540 the right.
8541
54eefef1
JR
85422003-01-25 Jason Rumney <jasonr@gnu.org>
8543
8544 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
8545 [HAVE_PNG]: Sync with xfns.c version.
f63fd14e
JB
8546 (png_load): Adjust colors for Windows. Use Windows
8547 bitmaps. Disable color table lookups.
c262430d
JR
8548 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
8549 (init_png_functions): New function.
8550 (png_read_from_memory, png_load): Call png library functions
8551 through pointers determined at runtime.
8552 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
8553 (init_external_image_libraries): New function.
8554 (init_xfns): Call it.
54eefef1 8555
1a9e275b
AS
85562003-01-24 Andreas Schwab <schwab@suse.de>
8557
8558 * minibuf.c (Fminibuffer_message): Verify type of parameter.
8559
a97e4138 85602003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
81e302ef
JD
8561
8562 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
8563 of static initializer.
8564
422eec7e
DL
85652003-01-24 Dave Love <fx@gnu.org>
8566
8567 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
8568 architectures.
8569
8570 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
8571 Use __alignof__.
8572
2a026b04
KH
85732003-01-24 Kenichi Handa <handa@m17n.org>
8574
8575 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
e52bd6b7 8576 It it is nonzero, don't pretend that an invisible area doesn't exist.
2a026b04
KH
8577 (command_loop_1): Call adjust_point_for_property with proper
8578 second arg.
8579
a18bb28d
JR
85802003-01-22 Jason Rumney <jasonr@gnu.org>
8581
8582 Sync changes with xterm.c and xfns.c.
8583
8584 * w32term.c (x_draw_glyph_string_foreground)
8585 (x_draw_composite_glyph_string_foreground): Implement overstriking.
8586
8587 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
8588 phys_cursor's hpos is overwritten. This is still not completely
8589 correct, as it doesn't really make sense to use hpos at all to
8590 get the cursor glyph (as that is relative to the width of the
8591 characters on the line, which may have changed during the update).
8592
8593 * w32term.c (notice_overwritten_cursor): Handle the special case
8594 of the cursor being in the first blank non-text line at the
8595 end of a window.
8596
8597 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
8598 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
8599 Compute from the x position returned by x_draw_glyphs.
8600
8601 (x_display_and_set_cursor): Don't set phys_cursor_width here,
8602 except for NO_CURSOR and system caret, to make phys_cursor_width
8603 contain what its name suggests.
8604 (notice_overwritten_cursor): Consider the cursor image erased if
8605 the output area intersects the cursor image in y-direction.
8606
6a097c0c
SM
8607 * w32term.c (note_mode_line_or_margin_highlight): Rename from
8608 note_mode_line_highlight and extend.
a18bb28d
JR
8609
8610 * w32term.c (last_window): New variable.
8611 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
8612 (note_mouse_movement): Remove reimplemented code in #if 0.
8613
8614 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
8615 not update_mode_lines, and always set it to 1.
8616
ac6e47ef
JR
86172003-01-21 Jason Rumney <jasonr@gnu.org>
8618
8619 * w32fns.c (IDC_HAND): Define it if system headers don't.
8620
86212003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
8622
8623 * w32term.h (struct w32_output): New member hand_cursor.
8624 (WM_EMACS_SETCURSOR): New message definition.
8625
8626 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
8627 function w32_define_cursor.
8628 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
8629 position, change member name output_data.x to output_data.w32 and
8630 add function w32_define_cursor.
8631 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
8632 and change member name output_data.x to output_data.w32.
e52bd6b7
SM
8633 (w32_initialize_display_info):
8634 Setup dpyinfo->vertical_scroll_bar_cursor.
ac6e47ef
JR
8635
8636 * w32fns.c (Vx_hand_shape): New variable.
8637 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
8638 WM_EMACS_SETCURSOR.
8639 (x-create-frame): Setup Cursor types.
8640
ceb39a17
JB
86412003-01-21 David Ponce <david@dponce.com>
8642
ac6e47ef 8643 * w32term.c (w32_encode_char): For DIM=1 charset, set
f63fd14e 8644 ccl->reg[2] to -1 before calling ccl_driver. (Sync. with xterm.c
ac6e47ef 8645 x_encode_char change by Kenichi Handa <handa@m17n.org> on
ceb39a17 8646 2002-09-30.)
ac6e47ef
JR
8647 (w32_draw_relief_rect): Declare all args.
8648 (w32_define_cursor): New.
8649
8650 * w32fns.c (w32_load_cursor): New function.
8651 (w32_init_class): Use it.
8652 (x_put_x_image): Declare all args.
8653
b6189c3b 86542003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk>
46cf0bed
JB
8655
8656 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
8657
a97e4138 86582003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e8794476
JD
8659
8660 * gtkutil.c: Must include stdio.h before termhooks.h
8661
83fc9c63
DL
86622003-01-21 Dave Love <fx@gnu.org>
8663
8664 * alloc.c (Fgc_status): Print zombie list.
8665 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
8666 Fix assignment of zombies.
8667 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
8668 Don't take car of non-cons.
8669
8670 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
8671
8672 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
8673
fe04b8c8
JR
86742003-01-20 David Ponce <david@dponce.com>
8675
8676 * w32menu.c (digest_single_submenu): Declare all args.
8677
8678 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
8679 changes in xmenu.c:
8680
8681 (parse_single_submenu): Use individual keymap's prompt
8682 string as pane name, if there is one.
8683 (set_frame_menubar): Save menu_items_n_panes from each call to
8684 parse_single_submenu and use it when calling digest_single_submenu.
8685
539e69a9
ST
86862003-01-20 Steven Tamm <steventamm@mac.com>
8687
8688 * macterm.c (XTread_socket): Checks for valid, visible window
8689 before sending a scroll-wheel event.
8690
675d000f
RS
86912003-01-20 Richard M. Stallman <rms@gnu.org>
8692
8693 * xdisp.c (redisplay_window): If mini window's buffer is not
8694 a minibuffer, then redisplay it like other windows.
8695
a97e4138 86962003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
22174d10
JD
8697
8698 * gtkutil.c (xg_create_frame_widgets): Check if there is an
8699 external tool bar before setting tool bar height.
8700
048addec
JD
87012003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8702
8703 * xterm.c (handle_one_xevent): Surround popup_activated
8704 with #ifdef:s for non-toolkit version.
8705
8706 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
8707 (gtkutil.o): New file.
8708 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
8709 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
8710
8711 * gtkutil.c: New file for GTK version.
8712
8713 * gtkutil.h: New file for GTK version.
8714
8715 * xterm.h: Add xt_or_gtk_widget.
8716 Include gtk files for USE_GTK.
8717 (struct x_output): Add toolbar_height.
8718 (struct x_output): Add GTK widgets and Gdk size_hints.
8719 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
8720 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
8721 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
8722
8723 * xterm.c: Include gtkutil.h for USE_GTK.
8724 Declare extern void free_frame_menubar for USE_GTK.
8725 (note_mouse_highlight): Check popup_activated for USE_GTK.
8726 (xt_action_hook): Don't compile if USE_GTK.
8727 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
8728 (xg_scroll_callback): New function.
8729 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
8730 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
8731 for USE_GTK.
8732 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
8733 xg_show_scroll_bar for USE_GTK.
8734 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
8735 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
8736 (event_handler_gdk): New function for USE_GTK.
8737 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
8738 (handle_one_xevent): Make sure widget is mapped before
8739 calling x_real_positions for USE_GTK.
8740 (XTread_socket): Add GTK event loop for USE_GTK.
8741 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
8742 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
8743 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
8744 (x_iconify_frame): Add code for USE_GTK.
8745 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
8746 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
8747 is in gtkutil.c.
8748 (x_term_init): Add initialization for GTK.
8749 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
8750
8751 * xmenu.c: Include gtkutil.h for USE_GTK.
8752 (Fx_popup_menu): Use current position if x and y is NIL.
6bdb309a
SM
8753 (single_menu_item, single_menu_item, Fx_popup_dialog):
8754 Check for USE_GTK.
048addec
JD
8755 (popup_widget_loop): New function for USE_GTK.
8756 (x_activate_menubar): Add code for USE_GTK.
8757 (popup_activate_callback, popup_deactivate_callback)
6bdb309a
SM
8758 (menu_highlight_callback, menubar_selection_callback):
8759 Add USE_GTK versions.
048addec
JD
8760 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
8761 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
8762 (free_frame_menubar): Only compile if not USE_GTK. GTK version
8763 is in gtkutil.c.
8764 (popup_selection_callback): New version for USE_GTK.
8765 (create_and_show_popup_menu): New fuction, one USE_GTK version and
6bdb309a 8766 one USE_X_TOOLKIT version.
048addec
JD
8767 (xmenu_show): Call create_and_show_popup_menu.
8768 (dialog_selection_callback): New version for USE_GTK.
8769 (create_and_show_dialog): New fuction, one USE_GTK version and
6bdb309a 8770 one USE_X_TOOLKIT version.
048addec
JD
8771 (xdialog_show): Call create_and_show_dialog.
8772
8773 * xfns.c: Include gtkutil for USE_GTK.
8774 (x_window_to_frame, x_any_window_to_frame)
8775 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
8776 (x_top_window_to_frame): Add code for USE_GTK.
8777 (x_set_background_color): Call xg_set_background_color for GTK.
8778 (x_set_menu_bar_lines): Check for USE_GTK.
8779 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
8780 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
8781 (x_window): Call xg_create_frame_widgets for USE_GTK.
8782 (Fx_create_frame): Check for USE_GTK
8783 (Fx_file_dialog): New implementation for USE_GTK.
8784
8785 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
8786 (update_menu_bar): Add check for USE_GTK.
8787 (update_tool_bar): Add check for USE_GTK and external tool bar.
8788 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
8789 (redisplay_internal): Add check for USE_GTK and popup_activated.
8790 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
8791 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
8792 (display_menu_bar): Add check for USE_GTK
8793
8794 * lisp.h: Declare Vx_resource_name extern.
8795
a64387ee 8796 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
048addec
JD
8797 for USE_GTK.
8798 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
8799
8800 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
8801 (FRAME_EXTERNAL_TOOL_BAR): New macro.
8802 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
8803
8804 * fileio.c (Fread_file_name): Add check for USE_GTK.
8805
6bdb309a
SM
8806 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
8807 Add check for USE_GTK.
048addec
JD
8808
8809 * config.in: Added HAVE_GTK
8810
8811 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
8812
88132003-01-18 Stefan Monnier <monnier@cs.yale.edu>
8814
8815 * charset.h (Funibyte_char_to_multibyte): Export.
8816
88172003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8818
8819 * xmenu.c (mouse_position_for_popup): New function.
8820 (Fx_popup_menu): Call mouse_position_for_popup for X and
8821 mouse_position_hook for others.
8822
88232003-01-17 Kim F. Storm <storm@cua.dk>
8824
8825 * editfns.c (Finsert): Mention `string-make-multibyte' and
8826 `string-as-multibyte' in doc string.
8827
88282003-01-17 Kenichi Handa <handa@m17n.org>
8829
8830 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
3c02a6f5 8831
048addec
JD
8832 * editfns.c (Fformat): Convert an unibyte char argument that is
8833 formatted by "%c" to multibyte if the total result must be a
8834 multibyte string.
cd7df9c0 8835
048addec 88362003-01-16 Kim F. Storm <storm@cua.dk>
cd7df9c0 8837
048addec
JD
8838 * process.c (set-process-filter): Document unibyte/multibyte-ness
8839 of string argument.
56210ecd 8840
048addec 88412003-01-16 Kenichi Handa <handa@m17n.org>
56210ecd 8842
048addec 8843 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
56210ecd 8844
048addec
JD
8845 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
8846 (re_search_2): Likewise.
6df8b9fe 8847
048addec 88482003-01-15 Kenichi Handa <handa@m17n.org>
6df8b9fe 8849
048addec
JD
8850 * xdisp.c (message_dolog): Fix bug of the case that *Message*
8851 buffer is unibyte.
292ddc31 8852
048addec 88532003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
292ddc31 8854
048addec 8855 * fns.c (Fsubstring): Clarify doc string.
292ddc31 8856
048addec
JD
8857 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
8858 (Fprevious_char_property_change)
8859 (Fnext_single_char_property_change)
8860 (Fprevious_single_char_property_change, Fnext_property_change)
8861 (Fnext_single_property_change, Fprevious_property_change)
8862 (Fprevious_single_property_change, Fadd_text_properties)
8863 (Fput_text_property, Fset_text_properties)
8864 (Fremove_text_properties, Fremove_list_of_text_properties)
8865 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
63e4e4c6 8866
048addec 88672003-01-14 Kim F. Storm <storm@cua.dk>
63e4e4c6 8868
048addec
JD
8869 * process.h (struct Lisp_Process): New member plist replaces old
8870 member private_vars. All uses changed.
63e4e4c6 8871
048addec 8872 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
6bdb309a 8873 (QCplist): Rename from QCvars. Change all uses.
048addec 8874 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
6bdb309a 8875 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
048addec 8876 (syms_of_process): Intern, staticpro, defsubr these.
6bdb309a 8877 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
7ed16567 8878
048addec 88792003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
7ed16567 8880
6bdb309a 8881 * m/delta.h: Remove (obsolete).
e833850f 8882
048addec 88832003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
e833850f 8884
048addec
JD
8885 * fileio.c (Fdelete_directory, Fdelete_file): Document the
8886 behaviour in front of symlinks.
8887 (Fdelete_file): Raise an error on directories.
817cb127 8888
048addec 88892003-01-13 Dave Love <fx@gnu.org>
817cb127 8890
048addec 8891 * fns.c (Freverse): Use QUIT.
3e8cf2ea 8892
048addec 88932003-01-13 Richard M. Stallman <rms@gnu.org>
3e8cf2ea 8894
048addec
JD
8895 * minibuf.c (minibuffer_completion_contents):
8896 Error if point is inside prompt.
3e8cf2ea 8897
048addec
JD
8898 * keyboard.c (command_loop_1): Don't redisplay directly
8899 if there's a post-command-hook.
3e8cf2ea 8900
048addec
JD
8901 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
8902 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
2c10f029 8903
048addec 89042003-01-12 Kim F. Storm <storm@cua.dk>
94e8ffca 8905
048addec 8906 * process.h (struct Lisp_Process): New member private_vars.
94e8ffca 8907
048addec
JD
8908 * process.c (QCvars): New variable.
8909 (syms_of_process): Intern and staticpro it.
8910 (Fset_process_contact): Removed function.
8911 (Fprocess_variable, Fset_process_variable): New functions.
8912 (syms_of_process): Defsubr them.
8913 (Fstart_process): Initialize private_vars plist to nil.
8914 (Fmake_network_process): New arg :vars to setup the private
8915 variables for new network process.
8916 (server_accept_connection): Copy server's private variables to
8917 client process.
2c10f029 8918
048addec
JD
8919 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
8920 crashes). Code rewritten and simplified. Now directly aligns the
8921 pointer and recalculates pure_bytes_used, rather than aligning the
8922 size and adjusting the pointer.
b8a76c6c 8923
048addec 89242003-01-11 Kim F. Storm <storm@cua.dk>
b8a76c6c 8925
048addec
JD
8926 * process.c (Fset_process_contact): New function.
8927 (syms_of_process): defsubr it.
8928 (make-network-process): Update doc.
3a8d0899 8929
048addec 89302003-01-10 Andreas Schwab <schwab@suse.de>
3a8d0899 8931
048addec
JD
8932 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
8933 Reported by Berthold Gunreben <b.gunreben@web.de>.
4abc7470 8934
048addec 89352003-01-10 Dave Love <fx@gnu.org>
4abc7470 8936
048addec 8937 * composite.c (syms_of_composite): Make composition_hash_table weak.
b809d662 8938
048addec 89392003-01-09 Kim F. Storm <storm@cua.dk>
b809d662 8940
048addec
JD
8941 * process.c (Fmake_network_process): Convert new port number
8942 to host byte order for `:service t' case. From Mario Lang.
bf338245 8943
048addec 89442003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
bf338245 8945
048addec
JD
8946 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
8947 instead of XtAppProcessEvent.
bf338245 8948
048addec
JD
8949 * xterm.c (handle_one_xevent): New function.
8950 (x_dispatch_event): New function.
8951 (XTread_socket): Call handle_one_xevent.
bf338245 8952
048addec 8953 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
e833850f 8954
048addec
JD
8955 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
8956 call XQueryPointer to get coordinates.
8957 (popup_get_selection): Do not set popup_activated_flag to zero,
8958 let popup_deactivate_callback do that. Needed for Motif.
8959 Call x_dispatch_event instead of XtDispatchEvent.
8960 (xmenu_show): Calculate root coordinate from frame top/left position.
c4af2bce 8961
048addec 89622003-01-08 Kim F. Storm <storm@cua.dk>
c4af2bce 8963
6bdb309a 8964 * process.c (server_accept_connection): Fix recording of new
048addec
JD
8965 connection's local address in :local property of contact info.
8966 (Fmake_network_process): Record local network address for new
8967 client processes in :local property of contact info.
6bdb309a 8968 (format-network-address): Add arg OMIT-PORT. Change callers.
00e3ab56 8969
048addec 89702003-01-07 Dave Love <fx@gnu.org>
00e3ab56 8971
048addec 8972 * Makefile.in (fns.o): Depend on coding.h.
f387e1fd 8973
048addec 89742003-01-07 Markus Rost <rost@math.ohio-state.edu>
f387e1fd 8975
048addec 8976 * minibuf.c (Fread_variable): Doc fix.
f387e1fd 8977
048addec
JD
8978 * eval.c (Fuser_variable_p): Doc change. For custom variables,
8979 use the same test as for custom-variable-p.
8c6d74c6 8980
048addec 89812003-01-05 Richard M. Stallman <rms@gnu.org>
e833850f 8982
048addec
JD
8983 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
8984 Count LAST_LINE_MISFIT in scroll margin for end of window.
8985 Move label too_near_end before setting SCROLL_MARGIN_POS.
8986 Set LAST_LINE_MISFIT before jumping there.
8c6d74c6 8987
048addec
JD
8988 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
8989 scroll_conservatively case. If scrolling that much doesn't change
8990 STARTP, move it down one line.
e833850f 8991
048addec
JD
8992 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
8993 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
8c6d74c6 8994
048addec
JD
8995 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
8996 selected frame.
8c6d74c6 8997
048addec
JD
8998 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
8999 (syms_of_keymap): staticpro them.
9000 (Fapropos_internal): Initialize them and clear them out.
9001 Don't GCPRO them.
8c6d74c6 9002
048addec
JD
9003 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
9004 Doc fixes.
8c6d74c6 9005
048addec
JD
9006 * lisp.h: New misc type Lisp_Save_Value.
9007 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
9008 (XSAVE_VALUE): New macro.
9009 (struct Lisp_Save_Value): New data type.
9010 (union Lisp_Misc): Add u_save_value alternative.
9011 (make_save_value): Declared.
8c6d74c6 9012
048addec 9013 * alloc.c (make_save_value): New function.
8c6d74c6 9014
048addec
JD
9015 * xterm.c (x_catch_errors): Save dpy using make_save_value.
9016 (x_catch_errors_unwind): Call XSync.
8c6d74c6 9017
048addec 90182003-01-01 Richard M. Stallman <rms@gnu.org>
8c6d74c6 9019
048addec 9020 * window.c (window_scroll_pixel_based): Partially undo last change.
8c6d74c6 9021
048addec
JD
9022 * keyboard.c (command_loop_1): Call adjust_point_for_property
9023 in direct action cases for Qforward_char and Qbackward_char.
9024 Set already_adjusted so it won't be done twice.
8c6d74c6 9025
b6189c3b 90262002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk>
8c6d74c6 9027
048addec
JD
9028 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
9029 type definition of size_t.
8c609cff 9030
048addec 90312003-01-02 Steven Tamm <steventamm@mac.com>
8c609cff 9032
048addec
JD
9033 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
9034 distinguish Carbon GUI builds from X11 builds on darwin.
b37113a1 9035
048addec 90362002-12-30 Steven Tamm <steventamm@mac.com>
b37113a1 9037
048addec
JD
9038 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
9039 to default to t.
fa634a5e 9040
048addec 90412002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
fa634a5e 9042
048addec 9043 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
ce0669d4 9044
048addec 90452002-12-28 Steven Tamm <steventamm@mac.com>
ce0669d4 9046
048addec
JD
9047 * Makefile.in (macosx-bundle): Fixes to Mac OS X/Carbon port to
9048 allow building in a different directory than source. Uses some
9049 GNU Make extensions, but there is no other make on Mac OS X.
2308af15 9050
048addec 90512002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
2308af15 9052
048addec
JD
9053 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
9054 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
9055 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
9056 (Fstring_to_number): Mention the returned value in the doc strings.
2155ecf3 9057
048addec 90582002-12-23 Richard M. Stallman <rms@gnu.org>
2155ecf3 9059
048addec
JD
9060 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
9061 <scroll-down-aggressively>: Doc fix.
2155ecf3 9062
048addec
JD
9063 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
9064 string as pane name, if there is one.
9065 (set_frame_menubar): Save menu_items_n_panes from each call to
9066 parse_single_submenu and use it when calling digest_single_submenu.
2155ecf3 9067
048addec
JD
9068 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
9069 Don't try to make last line fully visible if it is past end of window.
61f1d295 9070
048addec 90712002-12-22 Steven Tamm <steventamm@mac.com>
61f1d295 9072
048addec
JD
9073 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
9074 (mac_menu_show): Add support for hierarchical popup menus.
9075 (add_menu_item): Remove indentation support.
9076 (fill_submenu, fill_menu): Create hierarchical menus
9077 instead of using indentation.
0b17a217 9078
048addec 90792002-12-22 Richard M. Stallman <rms@gnu.org>
0b17a217 9080
048addec
JD
9081 * xdisp.c (try_cursor_movement): Don't call try_window here.
9082 (redisplay_window): Never redisplay minibuffer when inactive.
0b17a217 9083
048addec 9084 * window.c (select_window_1): Undo 9/21 change.
402e4f8b 9085
048addec 90862002-12-22 Steven Tamm <steventamm@mac.com>
402e4f8b 9087
048addec
JD
9088 * macterm.c (XTread_socket): Call KeyTranslate for control and
9089 meta to deal correctly shifted non-alpha characters, like C-S-5
9090 being treated like C-%. Does not look for shift key to deal
9091 with masking off control-key with mac-reverse-ctrl-meta.
f02cac82 9092
048addec 90932002-12-21 Richard M. Stallman <rms@gnu.org>
f02cac82 9094
048addec
JD
9095 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
9096 If it is non-nil, run timers. Use an unwind-protect to requeue
9097 the events that were read ahead.
9098 (popup_get_selection_unwind): New subroutine.
9099 (popup_get_selection_queue): File-scope variable now holds that queue.
9100 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
9101 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
9102 Use an unwind-protect to pop down the dialog box.
9103 (xdialog_show_unwind): New subroutine implements that.
f02cac82 9104
048addec
JD
9105 * xdisp.c (row_containing_pos): Change exit test using last_y.
9106 (try_window_id): Abort if row_containing_pos returns null.
f02cac82 9107
048addec
JD
9108 * lread.c (load_error_handler): New function.
9109 (Fload): Handle errors in Fsubstitute_in_file_name.
9110 Don't expect Fsignal to return.
f02cac82 9111
048addec
JD
9112 * eval.c: Errors and throws work right with interrupt blocking.
9113 (struct catchtag): New elt interrupt_input_blocked.
9114 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
9115 (internal_catch, Fcondition_case, internal_condition_case)
9116 (internal_condition_case_1, internal_condition_case_2): Save it.
9117 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
f02cac82 9118
048addec 9119 * editfns.c (Fformat): Add parens.
f02cac82 9120
048addec
JD
9121 * dired.c (file_name_completion): Fix that change.
9122 Delete special quit-handling code; just use QUIT.
f02cac82 9123
b6189c3b 91242002-12-21 Tak Ota <Takaaki.Ota@am.sony.com>
f02cac82 9125
048addec
JD
9126 * dired.c (file_name_completion): Close directory on error
9127 just as in directory_files_internal.
1a590729 9128
048addec 91292002-12-19 David Kastrup <David.Kastrup@t-online.de>
1a590729 9130
048addec
JD
9131 * window.c (Fset_window_configuration): Set old_point to correct
9132 value when new_current_buffer == current_buffer.
f02cac82 9133
048addec 91342002-12-17 Ben Key <bkey1@tampabay.rr.com>
2308af15 9135
048addec
JD
9136 Revisited my earlier fix for the following entry in etc/PROBLEMS:
9137 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
9138 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
9785d95b 9139
048addec
JD
9140 These changes were in part based upon suggestions made by Peter
9141 'Luna' Runestig [peter@runestig.com].
9785d95b 9142
048addec
JD
9143 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token,
9144 g_b_init_get_token_information, g_b_init_lookup_account_sid,
6bdb309a 9145 g_b_init_get_sid_identifier_authority ): Add several static
048addec 9146 global variables.
9785d95b 9147
048addec
JD
9148 * w32.c (globals_of_w32): New function. Used to initialize those
9149 global variables that must always be initialized on startup even
9150 when the global variable initialized is non zero. Its primary
9151 purpose at this time is to set the global variables
9152 g_b_init_is_windows_9x, g_b_init_open_process_token,
9153 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
9154 g_b_init_get_sid_identifier_authority to 0 on startup.
9155 Called from main.
9785d95b 9156
048addec
JD
9157 * w32.c (is_windows_9x): Perform initialization only if
9158 g_b_init_is_windows_9x is equal to 0. On initialization set
9159 g_b_init_is_windows_9x equal to 1.
2308af15 9160
048addec
JD
9161 * w32.c (open_process_token): Perform initialization only if
9162 g_b_init_open_process_token is equal to 0. On initialization set
9163 g_b_init_open_process_token equal to 1.
2308af15 9164
048addec
JD
9165 * w32.c (get_token_information): Perform initialization only if
9166 g_b_init_get_token_information is equal to 0. On initialization
9167 set g_b_init_get_token_information equal to 1.
9785d95b 9168
048addec
JD
9169 * w32.c (lookup_account_sid): Perform initialization only if
9170 g_b_init_lookup_account_sid is equal to 0. On initialization
9171 set g_b_init_lookup_account_sid equal to 1.
9785d95b 9172
048addec
JD
9173 * w32.c (get_sid_identifier_authority): Perform initialization
9174 only if g_b_init_get_sid_identifier_authority is equal to 0.
9175 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
9785d95b 9176
f63fd14e 9177 * w32fns.c (globals_of_w32fns): New function. Used to initialize
048addec
JD
9178 those global variables that must always be initialized on startup
9179 even when the global variable initialized is non zero.
9180 Its primary purpose at this time is to initialize the global variable
9181 track_mouse_event_fn.
9785d95b 9182
a64387ee 9183 * w32fns.c (w32_wnd_proc): Remove initialization of
048addec 9184 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
9785d95b 9185
048addec 9186 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
9785d95b 9187
f63fd14e 9188 * w32menu.c (globals_of_w32menu): New function. Used to
048addec
JD
9189 initialize those global variables that must always be initialized
9190 on startup even when the global variable initialized is non zero.
9191 Its primary purpose at this time is to initialize the global
9192 variables get_menu_item_info and set_menu_item_info.
9785d95b 9193
048addec
JD
9194 * w32menu.c (initialize_frame_menubar): Remove initialization of
9195 get_menu_item_info and set_menu_item_info.
9785d95b 9196
048addec 9197 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
9785d95b 9198
048addec
JD
9199 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
9200 Declare them.
9785d95b 9201
048addec
JD
9202 * emacs.c (main): Call globals_of_w32 prior to calling
9203 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
9204 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
9205 is defined.
9785d95b 9206
048addec
JD
9207 * w32term.c (x_update_window_begin): Fix Windows API error
9208 detected by BoundsChecker. Test to determine if
9209 w32_system_caret_hwnd is NULL prior to attempting to use
9210 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
2308af15 9211
048addec
JD
9212 * w32term.c (x_update_window_end): Fix Windows API error
9213 detected by BoundsChecker. Test to determine if
9214 w32_system_caret_hwnd is NULL prior to attempting to use
9215 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
b6da19ef 9216
048addec 92172002-12-17 Kenichi Handa <handa@m17n.org>
b6da19ef 9218
048addec
JD
9219 * coding.c (coding_system_require_warning): New variable.
9220 (syms_of_coding): DEFVAR it.
b6da19ef 9221
048addec 9222 * coding.h (coding_system_require_warning): Extern it.
b6da19ef 9223
048addec
JD
9224 * fileio.c (choose_write_coding_system): Even if
9225 Vcoding_system_for_write is non-nil, if
9226 coding_system_require_warning is nonzero, call
9227 Vselect_safe_coding_system_function.
bfcf6dbe 9228
048addec 92292002-12-17 Markus Rost <rost@math.ohio-state.edu>
bfcf6dbe 9230
048addec
JD
9231 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
9232 (lisp): Add font-core.
2c568af5 9233
048addec 92342002-12-13 Stefan Monnier <monnier@cs.yale.edu>
2c568af5 9235
048addec
JD
9236 * textprop.c (text_read_only): New arg `propval'.
9237 (get_char_property_and_overlay): Remove unused var `next_overlay'.
9238 (verify_interval_modification): Use text_read_only's new arg.
b8c6225c 9239
048addec 92402002-12-13 Kenichi Handa <handa@m17n.org>
b8c6225c 9241
048addec 9242 * coding.c (Funencodable_char_position): Set pend correctly.
706ddb8f 9243
048addec 92442002-12-12 Jason Rumney <jasonr@gnu.org>
706ddb8f 9245
048addec
JD
9246 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
9247 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
9248 Be more careful about when help_events are generated.
96720f09 9249
048addec 92502002-12-12 Steven Tamm <steventamm@mac.com>
96720f09 9251
048addec
JD
9252 * macterm.c (mac_check_for_quit_char): Correctly set the
9253 modifiers of the event to 0.
9254 * mac.c (sys_select): Duplicate rfds before calling select to
9255 ensure that rfds survive the while loop.
e5ae1c49 9256
048addec 92572002-12-11 Kim F. Storm <storm@cua.dk>
e5ae1c49 9258
048addec
JD
9259 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
9260 row_containing_pos returned NULL.
2eb46b2d 9261
048addec 92622002-12-10 Steven Tamm <steventamm@mac.com>
2eb46b2d 9263
6bdb309a 9264 * mac.c (sys_read): Fix sys_read to not call select if IO is
048addec 9265 non-blocking.
6bdb309a 9266 (sys_select): Fix sys_select to not use a timeout larger than
048addec 9267 the one given.
b11f1d8a 9268
048addec 92692002-12-10 Juanma Barranquero <lektu@terra.es>
b11f1d8a 9270
048addec 9271 * editfns.c (Fformat): Use alloca, not _alloca.
d8528226 9272
048addec 92732002-12-09 Richard M. Stallman <rms@gnu.org>
d8528226 9274
048addec
JD
9275 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
9276 as the last thing.
a4ac5b17 9277
048addec 92782002-12-09 Dave Love <fx@gnu.org>
a4ac5b17 9279
048addec 9280 * s/sol2-8.h: Removed. (Not necessary.)
ac42d7b9 9281
048addec 92822002-12-09 Matthew Swift <swift@alum.mit.edu>
ac42d7b9 9283
048addec
JD
9284 * editfns.c (Fformat): Handle precision in string conversion
9285 specifiers like libc functions do (ie, print at most that many
9286 characters).
85cce843 9287
048addec 92882002-12-08 Richard M. Stallman <rms@gnu.org>
85cce843 9289
048addec
JD
9290 * xdisp.c (row_containing_pos): Check more carefully
9291 whether charpos is really in the row before returning it.
0d4d26a7 9292
048addec 92932002-12-07 Steven Tamm <steventamm@mac.com>
0d4d26a7 9294
048addec 9295 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
b11f1d8a 9296
048addec
JD
9297 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
9298 each stack frame. This may change as it could be time consuming.
0d4d26a7 9299
048addec
JD
9300 * macterm.c (mac_check_for_quit_char, quit_char_comp)
9301 (init_quit_char_handler, mac_determine_quit_char_modifiers)
6bdb309a 9302 (mac_initialize): Add code to check for pressing of quit_char
048addec 9303 in the OS event queue.
b11f1d8a 9304
048addec
JD
9305 * mac.c (sys_select): Call mac_check_for_quit_char every second
9306 while blocking on select.
0d4d26a7 9307
048addec
JD
9308 * mac.c (sys_read): Use sys_select to test for input first
9309 before calling read, to allow C-g to break.
9252f7bc 9310
048addec 93112002-12-07 Richard M. Stallman <rms@gnu.org>
9252f7bc 9312
048addec 9313 * minibuf.c (Fcompleting_read): Doc fix.
9252f7bc 9314
048addec 9315 * lread.c (syms_of_lread) <load-history>: Doc fix.
9252f7bc 9316
048addec 9317 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
9252f7bc 9318
048addec
JD
9319 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
9320 autoload.
9252f7bc 9321
048addec 9322 * data.c (Fdefalias): Record in load-history redefining an autoload.
9252f7bc 9323
048addec 9324 * alloca.c: Undo ifdef change accidentally made on 12-04.
bfa261c0 9325
048addec 93262002-12-06 Francesco Potorti` <pot@gnu.org>
bfa261c0 9327
048addec 9328 * xfns.c (png_load): Avoid double gamma correction for PNG images.
c5992177 9329
048addec 93302002-12-04 Richard M. Stallman <rms@gnu.org>
c5992177 9331
048addec 9332 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 9333
048addec 9334 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 9335
048addec 9336 * alloca.c: Don't use #error.
02d588e2 9337
048addec 93382002-12-03 Dave Love <fx@gnu.org>
02d588e2 9339
048addec
JD
9340 * buffer.c (Qucs_set_table_for_input): New.
9341 (Fget_buffer_create): Use it.
9342 (Qset_buffer_major_mode_hook): Deleted.
9343 (Fset_buffer_major_mode): Revert previous change.
9344 (init_buffer_once): Intern ucs-set-table-for-input.
9345 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
9346 Add &Qucs_set_table_for_input.
451e2697 9347
048addec 93482002-12-03 Andreas Schwab <schwab@suse.de>
451e2697 9349
048addec
JD
9350 * callint.c (Fcall_interactively): Use next_event only if less
9351 than key_count.
72742a99 9352
048addec 93532002-12-02 Andrew Choi <akochoi@shaw.ca>
72742a99 9354
048addec
JD
9355 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
9356 names to 255 characters.
72742a99 9357
048addec
JD
9358 * macterm.c (XTread_socket): If all frames have been collapsed,
9359 expand the first one before handling drag-and-drop events.
72742a99 9360
048addec
JD
9361 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
9362 which is detected by autoconf.
40e6ff95 9363
048addec 93642002-12-01 Steven Tamm <steventamm@mac.com>
40e6ff95 9365
048addec
JD
9366 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
9367 offset in two hints table to allow prebinding to be redone and
9368 allow the executable to be stripped.
c02138c6 9369
048addec 93702002-11-29 Dave Love <fx@gnu.org>
c02138c6 9371
048addec
JD
9372 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
9373 already provided.
0e47bbf7 9374
048addec 93752002-11-29 Richard M. Stallman <rms@gnu.org>
0e47bbf7 9376
048addec
JD
9377 * xdisp.c (start_display): Check more intelligently for
9378 whether the line is continued.
9379 (move_it_vertically_backward): Clear it->continuation_lines_width.
44129dcb 9380
048addec 93812002-11-28 Dave Love <fx@gnu.org>
44129dcb 9382
048addec
JD
9383 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
9384 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
f707342d 9385
048addec 93862002-11-27 Steven Tamm <steventamm@mac.com>
f707342d 9387
048addec
JD
9388 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
9389 more descriptive error output from lread.c:Fload upon most require
9390 cycles during boostrapping.
1637fd2c 9391
048addec 93922002-11-27 Jason Rumney <jasonr@gnu.org>
1637fd2c 9393
048addec
JD
9394 * fileio.c (Finsert_file_contents): Give a more appropriate error
9395 for files bigger than 2Gb when off_t is 32 bit.
1637fd2c 9396
048addec
JD
9397 * dired.c (Ffile_attributes): Don't return negative file sizes for
9398 files bigger than 2Gb when off_t is 32 bit.
540c2788 9399
048addec 94002002-11-27 Dave Love <fx@gnu.org>
6b2fd6ea 9401
048addec 9402 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
6b2fd6ea 9403
048addec
JD
9404 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
9405 Test GETPGRP_VOID instead.
9406 [BSD_TERMIOS]: Remove definitions (never used).
6b2fd6ea 9407
048addec
JD
9408 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
9409 Don't define.
9410 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
540c2788 9411
048addec 9412 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
8cc03716 9413
048addec 94142002-11-25 Jason Rumney <jasonr@gnu.org>
8cc03716 9415
048addec
JD
9416 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
9417 supported.
4042a81a 9418
048addec 94192002-11-25 Dave Love <fx@gnu.org>
4042a81a 9420
048addec 9421 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
4042a81a 9422
048addec 9423 * Makefile.in (TEMACS_LDFLAGS): Update last change.
be4ee72f 9424
048addec 94252002-11-25 Andreas Schwab <schwab@suse.de>
be4ee72f 9426
048addec 9427 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
82122254 9428
048addec 94292002-11-24 Steven Tamm <steventamm@mac.com>
82122254 9430
048addec
JD
9431 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
9432 determine the size of pointers alloced in unexed space instead
9433 of using possibly invalid emacs_zone pointers. This fixes the
9434 binary incompatibility problems caused by updates to libSystem.B.
c1ee53bc 9435
048addec 94362002-11-24 Richard M. Stallman <rms@gnu.org>
c1ee53bc 9437
048addec 9438 * search.c (Fstring_match): Doc fix.
c1ee53bc 9439
048addec
JD
9440 * callint.c (Fcall_interactively): If a command fails because
9441 `*' detects a read-only buffer, but RECORD_FLAG is set,
9442 record it anyway if the args don't actually do tty input.
5598c32e 9443
048addec 94442002-11-22 Dave Love <fx@gnu.org>
5598c32e 9445
048addec 9446 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
5598c32e 9447
048addec
JD
9448 * keyboard.c (interrupt_signal): Provide forward declaration.
9449 (kbd_buffer_store_event): Don't declare interrupt_signal.
5598c32e 9450
048addec 9451 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
97b14e22 9452
048addec 94532002-11-21 Richard M. Stallman <rms@gnu.org>
97b14e22 9454
048addec
JD
9455 * eval.c (interactive_p): Skip any number of bytecode
9456 and special form frames, in any order.
516eea8e 9457
048addec 94582002-11-20 Jason Rumney <jasonr@gnu.org>
516eea8e 9459
048addec
JD
9460 * w32fns.c (convert_mono_to_color_image): New function.
9461 (xbm_load, xbm_load_image): Use it when foreground or background
9462 is explicitly set.
04dbfa08 9463
048addec 94642002-11-19 Dave Love <fx@gnu.org>
04dbfa08 9465
048addec 9466 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
b4aebae3 9467
048addec 94682002-11-18 Jason Rumney <jasonr@gnu.org>
b4aebae3 9469
048addec
JD
9470 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
9471 (XPutPixel): Swap blue and red.
9472 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
9473 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
9474 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
9475 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
1998560a 9476
048addec 94772002-11-18 Dave Love <fx@gnu.org>
d824beee 9478
048addec 9479 * m/orion105.h (HAVE_ALLOCA): Don't define.
d824beee 9480
048addec 9481 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
d824beee 9482
048addec 9483 * m/intel386.h: Don't include alloca.h or define alloca.
d824beee 9484
048addec
JD
9485 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
9486 malloc, realloc, calloc.
d824beee 9487
048addec
JD
9488 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
9489 (bcmp): Don't define.
d824beee 9490
048addec 9491 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
d824beee 9492
048addec 9493 * m/amdahl.h: Don't define LIB_STANDARD.
d824beee 9494
048addec 9495 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
d824beee 9496
048addec 9497 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
d824beee 9498
048addec
JD
9499 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
9500 Don't include alloca.h.
d824beee 9501
048addec 9502 * s/aix3-2.h (HAVE_FSYNC): Don't define.
1998560a 9503
048addec 9504 * regex.c (_GNU_SOURCE): Don't define.
1998560a 9505
048addec 9506 * process.c (_GNU_SOURCE): Don't define.
1998560a 9507
048addec 9508 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
8704a6ab 9509
048addec 95102002-11-18 Markus Rost <rost@math.ohio-state.edu>
8704a6ab 9511
048addec 9512 * s/sol2-8.h: Include sol2-6.h.
6ae2cd57 9513
048addec 95142002-11-18 Miles Bader <miles@gnu.org>
6ae2cd57 9515
048addec
JD
9516 * dispextern.h (struct face): Add `overstrike' field.
9517 * xterm.c (x_draw_glyph_string_foreground)
9518 (x_draw_composite_glyph_string_foreground): Implement overstriking.
9519 * xfaces.c (load_face_font): Set `face->overstrike' based on
9520 result from choose_face_font.
9521 (best_matching_font, choose_face_font): Add `needs_overstrike'
9522 argument, and use it to return whether overstriking is desirable
9523 for this face/font combo.
9524 (set_font_frame_param: Pass new argument to choose_face_font.
6ae2cd57 9525
048addec 95262002-11-17 Ben Key <BKey1@tampabay.rr.com>
3582b6a3 9527
048addec
JD
9528 This change is my fix for the following entry in etc/PROBLEMS:
9529 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
9530 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
f60ae425 9531
048addec
JD
9532 * w32.c: Added wrapper functions around the win32 API functions
9533 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
9534 GetSidIdentifierAuthority. These wrapper functions serve two
9535 purposes:
9536 1. They ensure that the wrapped function can never be called
9537 when Emacs is running on an operating system on which they are
9538 not supported (Microsoft Windows 95 / 98 / ME).
9539 2. They call the wrapped functions via function pointers rather
9540 than calling them directly. This avoids taking advantage of the
9541 undocumented fact that although these functions are not supported
9542 in the 9x branch of Microsoft Windows, the functions do exist in
9543 the version of advapi32.dll that is found in the 9x branch of
9544 Microsoft Windows.
f60ae425 9545
6bdb309a 9546 * w32.c (init_user_info): Replace the calls to the win32 API
048addec
JD
9547 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
9548 and GetSidIdentifierAuthority with calls to the newly added
9549 wrapper functions.
f60ae425 9550
048addec
JD
9551 * w32.h: Added extern declarations for the following functions:
9552 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
9553 syms_of_w32menu, and void syms_of_fontset.
f60ae425 9554
6bdb309a 9555 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
048addec
JD
9556 function pointer track_mouse_event_fn in the handler for the
9557 WM_SETFOCUS message.
3582b6a3 9558
6bdb309a 9559 * w32menu.c (initialize_frame_menubar): Add code to
048addec
JD
9560 reinitialize the function pointers set_menu_item_info and
9561 get_menu_item_info.
f60ae425 9562
048addec 95632002-11-17 Ben Key <BKey1@tampabay.rr.com>
f60ae425 9564
048addec
JD
9565 * sound.c: Added a partial implementation of play-sound-internal
9566 for Microsoft Windows. Added various #ifdef / #else / #endif
9567 code blocks to separate the code that will compile under
9568 Microsoft Windows from the code that is specific to Gnu/Linux.
9569 Moved several blocks of code around to make this separation of code
9570 into Windows compatible and Gnu/Linux compatible code blocks easier.
f60ae425 9571
048addec 9572 * makefile.w32-in: Include sound.c and link with WinMM.lib.
a0f0878d 9573
048addec
JD
9574 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
9575 added support for play-sound-internal under Windows would be
9576 included in the build of Emacs.
517f42a0 9577
048addec 95782002-11-16 Jason Rumney <jasonr@gnu.org>
517f42a0 9579
048addec 9580 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
517f42a0 9581
048addec 9582 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
a0f0878d 9583
048addec 95842002-11-15 Stefan Monnier <monnier@cs.yale.edu>
a0f0878d 9585
048addec
JD
9586 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
9587 (adjust_point_for_property): Move out of display and invisible even if
9588 we were already inside before (in case a property was added while
9589 we weren't looking). Be more careful when handling invisible props.
9590 Skip invisible text as if it really wasn't there at all.
aab83f91 9591
048addec 95922002-11-15 Jason Rumney <jasonr@gnu.org>
aab83f91 9593
048addec
JD
9594 * w32term.c (x_draw_image_foreground)
9595 (w32_draw_image_foreground_1): Use standard copy and invert
9596 operations to draw images.
aab83f91 9597
048addec
JD
9598 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
9599 depth of 1.
9600 (xbm_read_bitmap_data): Invert bits as xbm is read in.
9601 (XPutPixel): Don't invert bits here.
a4478a76 9602
048addec 96032002-11-15 Jason Rumney <jasonr@gnu.org>
a4478a76 9604
048addec
JD
9605 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
9606 (w32_draw_image_foreground_1): Handle image masks.
9607 (x_draw_image_glyph_string): Don't BitBlt transparently.
a4478a76 9608
048addec
JD
9609 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
9610 (x_from_xcolors): Adjust RGB values for W32.
9611 (image_background, image_background_transparent)
9612 (postprocess_image, x_to_xcolors, x_disable_image)
9613 (x_build_heuristic_mask): Adapt for W32 and enable.
9614 (x_create_x_image_and_pixmap): Mark images with palettes as such.
9615 (xbm_load): Remove unused variable.
03670a65 9616
048addec 96172002-11-14 Richard M. Stallman <rms@gnu.org>
03670a65 9618
048addec 9619 * buffer.c (syms_of_buffer): Doc fix.
59daa29a 9620
048addec 96212002-11-14 Dave Love <fx@gnu.org>
59daa29a 9622
048addec 9623 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
59daa29a 9624
048addec
JD
9625 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
9626 * xmenu.c (unuse_menu_items, digest_single_submenu):
9627 * xfns.c (x_put_x_image):
9628 * xdisp.c (message2_nolog, set_message):
9629 * undo.c (record_point):
9630 * terminfo.c (tparam):
9631 * syntax.c (scan_sexps_forward):
9632 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
9633 * composite.c (update_compositions):
9634 * cm.c (calccost, cmgoto):
9635 * charset.c (c_string_width): Declare all args (per C99).
59daa29a 9636
048addec 9637 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
59daa29a 9638
048addec
JD
9639 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
9640 Don't declare.
59daa29a 9641
048addec 9642 * emacs.c (main) [!VMS]: Avoid third arg.
59daa29a 9643
048addec
JD
9644 * fns.c (Fcopy_sequence): Doc fix.
9645 (Fmap_char_table): Cast `call2'.
3947677c 9646
048addec
JD
96472002-11-14 Francesco Potorti` <pot@gnu.org>
9648
9649 * s/sol2-8.h: New file.
9650
96512002-11-14 Kim F. Storm <storm@cua.dk>
9652
9653 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
9654 dependency on `risky-local-variable' and the :propertize form.
9655
96562002-11-12 Stefan Monnier <monnier@cs.yale.edu>
9657
9658 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
9659
9660 * syntax.c (scan_sexps_forward): Undo last patch.
9661 Use a more obvious fix: check eob before updating the syntax table.
9662
96632002-11-09 Stefan Monnier <monnier@cs.yale.edu>
9664
9665 * syntax.c (scan_sexps_forward): Update syntax table before reading
9666 a char rather than after so we don't update the table past eob.
9667
96682002-11-09 Dave Love <fx@gnu.org>
9669
9670 * buffer.c (Fset_buffer_major_mode): Fix last change.
9671
9672 * regex.c (regexec): Fix pmatch declaration.
9673
9674 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
9675
9676 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
9677 to self-inserting characters.
9678 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
9679
9680 * coding.c (Vtranslation_table_for_input): New.
9681 (syms_of_coding): DEFVAR it.
9682
96832002-11-08 Juanma Barranquero <lektu@terra.es>
9684
9685 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
9686 window.
9687
96882002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9689
6bdb309a 9690 * process.c (Fformat_network_address): Remove unused locals p,
048addec
JD
9691 cp, and i.
9692
96932002-11-06 Dave Love <fx@gnu.org>
9694
9695 * buffer.c (Qset_buffer_major_mode_hook): New.
9696 (Fset_buffer_major_mode): Use it.
9697
96982002-11-06 Richard M. Stallman <rms@gnu.org>
9699
9700 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
9701 and stop_polling.
9702
9703 * process.c (wait_reading_process_input):
9704 Test POLLING_PROBLEM_IN_SELECT, not hpux.
9705 Avoid initialization for auto Lisp_Object var.
9706
9707 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
9708
9709 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
9710
97112002-11-05 Richard M. Stallman <rms@gnu.org>
9712
9713 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
9714
9715 * callint.c (Fcall_interactively): New local filter_specs.
9716 (Fcall_interactively): Check for progn as well as let.
9717 Add a gcpro.
9718 (Qprogn): New variable.
9719 (syms_of_callint): Staticpro and init Qprogn.
9720
97212002-11-04 John Paul Wallington <jpw@shootybangbang.com>
9722
9723 * lread.c (Feval_buffer): Doc fix.
9724
97252002-11-04 Dave Love <fx@gnu.org>
9726
9727 * keyboard.c (read_char): Always translate iff
9728 Vkeyboard_translate_table is a char table and c is valid.
9729
9730 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
9731 and fix C types.
9732
97332002-11-03 Stefan Monnier <monnier@cs.yale.edu>
9734
9735 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
9736
9737 * editfns.c (get_pos_property): Don't hardcode Qfield.
9738
9739 * keyboard.c (adjust_point_for_property): Handle `display' prop on
9740 overlays. Also handle `invisible' prop.
9741
97422002-11-02 Stefan Monnier <monnier@cs.yale.edu>
9743
9744 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
9745 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
9746
97472002-11-01 Andreas Schwab <schwab@suse.de>
9748
9749 * editfns.c (Fmessage): Revert last change to properly handle %%.
9750
97512002-11-01 Stefan Monnier <monnier@cs.yale.edu>
9752
9753 * xmenu.c (unuse_menu_items): New fun.
9754 (menu_items_inuse): New var.
9755 (syms_of_xmenu): Initialize it.
9756 (init_menu_items): Use it to detect re-entrance.
9757 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
9758 (Fx_popup_menu): Remove spurious XSETFRAME.
9759
9760 * editfns.c (find_field): Make an exception for nil fields.
9761
97622002-11-01 Dave Love <fx@gnu.org>
9763
9764 * m/gec63.h: Deleted.
9765
97662002-10-31 Dave Love <fx@gnu.org>
9767
9768 * xterm.c (XTread_socket): Fix last change.
9769 (xaw_scroll_callback): Cast call_data to long to avoid warning.
9770
97712002-10-31 Stefan Monnier <monnier@cs.yale.edu>
9772
9773 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
9774
97752002-10-30 Stefan Monnier <monnier@cs.yale.edu>
9776
9777 * editfns.c (overlays_around, get_pos_property): New funs.
9778 (find_field): Use them.
9779 Also be careful not to modify POS before its last use.
9780 (Fmessage): Don't Fformat if there's nothing to format.
9781
97822002-10-30 Dave Love <fx@gnu.org>
9783
9784 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
9785 [HAVE_PTY_H]; Include pty.h.
9786
9787 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
9788
9789 * xterm.c (Qeql): Declare.
9790 (Vx_keysym_table): New.
9791 (syms_of_xterm): Initialize it.
9792 (XTread_socket): Use it. Deal with ASCII keysyms.
9793 (XSetIMValues) [HAVE_X11R6]: Prototype.
9794
9795 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
9796 (lispy_kana_keys): Comment out.
9797 (make_lispy_event) [XK_kana_A]: Comment out.
9798 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
9799 Fix sprintf call.
9800
9801 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
9802 regexp.h change).
9803 (TERMINFO, LIBS_TERMCAP): Define.
9804
9805 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
9806 (bcmp): Define conditional on HAVE_BCMP.
9807 (NO_SIOCTL_H): Don't define.
9808 (TIOCSIGSEND): Don't make conditional on IRIX6.
9809
9810 * s/sol2-5.h: Don't include strings.h.
9811 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
9812
9813 * s/irix6-0.h (IRIX6): Don't define.
9814 (bcopy, bcmp, bzero): Don't undef.
9815
9816 * s/irix6-5.h: Don't include strings.h.
9817 (IRIX6): Don't define.
9818 (bcopy, bcmp, bzero): Don't undef.
9819
9820 * syntax.c (Fforward_comment): Doc fix.
9821
98222002-10-29 Kim F. Storm <storm@cua.dk>
9823
9824 * process.c (Fsignal_process): Allow PROCESS to be specified by
9825 name in addition to pid (as integer or string).
9826
98272002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
9828
9829 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
9830 environments.
9831
98322002-10-27 Kim F. Storm <storm@cua.dk>
9833
9834 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
9835
9836 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
9837
9838 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
9839
9840 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
9841
98422002-10-26 Richard M. Stallman <rms@gnu.org>
9843
9844 * editfns.c (Fformat): Detect invalid format letters for floats.
9845
98462002-10-25 Kenichi Handa <handa@m17n.org>
9847
9848 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
9849 (x_set_title): Likewise.
9850
98512002-10-25 Juanma Barranquero <lektu@terra.es>
9852
9853 * macgui.h:
9854 * w32gui.h: Remove definition of XColor.
9855
9856 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
9857
98582002-10-24 Kim F. Storm <storm@cua.dk>
9859
9860 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
9861 Callers changed (supply dummy arg).
9862
9863 * lisp.h (get_window_cursor_type): Update prototype.
9864
9865 * w32term.c (x_display_and_set_cursor): Get active_cursor from
9866 get_window_cursor_type to track system caret.
9867
98682002-10-24 Kim F. Storm <storm@cua.dk>
9869
9870 * process.c (Fformat_network_address): New function.
9871 (syms_of_process): Defsubr it.
9872 (list_processes_1): Use it to format :local/:remote address if
f9711de4 9873 service/host is not set; before Emacs would crash in that case.
048addec
JD
9874 (Fmake_network_process): Don't use Ffind_operation_coding_system
9875 to setup coding system if host or service is not set.
9876
98772002-10-23 Juanma Barranquero <lektu@terra.es>
9878
9879 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
9880
9881 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
9882 COLORREF.
9883
9884 * macgui.h:
9885 * w32gui.h: Add definition of XColor.
9886
9887 * macfns.c:
9888 * w32fns.c:
9889 * xfaces.c: Remove definition of XColor.
9890
98912002-10-22 Stefan Monnier <monnier@cs.yale.edu>
9892
9893 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
9894
9895 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
9896 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
9897 window if it is dedicated.
9898 (Fshrink_window): Add preserve_before as was done for enlarge_window.
9899 (Vspecial_display_function): Update docstring.
9900
9901 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
9902 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
9903 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
9904
99052002-10-21 Stefan Monnier <monnier@cs.yale.edu>
9906
9907 * casefiddle.c (casify_region): Don't treat a prefix char as part
9908 of a word when at the beginning.
9909
99102002-10-17 Juanma Barranquero <lektu@terra.es>
9911
9912 * lread.c (syms_of_lread): Fix typos.
9913
99142002-10-17 Dave Love <fx@gnu.org>
9915
9916 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
9917
99182002-10-16 Richard M. Stallman <rms@gnu.org>
9919
9920 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
9921
99222002-10-14 Juanma Barranquero <lektu@terra.es>
9923
9924 * w16select.c (syms_of_win16select): Fix docstring for
9925 `selection-coding-system'.
9926
9927 * w32select.c (syms_of_w32select): Likewise.
9928
99292002-10-14 Stefan Monnier <monnier@cs.yale.edu>
9930
9931 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
9932 a backslash-quoted char.
9933 (scan_lists, scan_sexps_forward): Pacify the compiler.
9934
99352002-10-13 Richard M. Stallman <rms@gnu.org>
9936
9937 * window.c (window_scroll): Set immediate_quit.
9938
9939 * print.c (print): When backquote form is the car of a list,
9940 output in old style. Use old_backquote_output to output all
9941 comma forms inside it in old style too.
9942
9943 * buffer.h (struct buffer): Move `undo_list' down below `name'.
9944
99452002-10-11 Markus Rost <rost@math.ohio-state.edu>
9946
9947 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
9948 batch mode).
9949
9950 * lread.c (Fload): Doc fix (load-suffixes).
9951
99522002-10-10 Steven Tamm <steventamm@mac.com>
9953
9954 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
9955 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
9956 Also switch the default to Qnil from Qt.
9957
99582002-10-08 Kenichi Handa <handa@m17n.org>
9959
9960 * coding.c (code_convert_region): When we need more GAP for
9961 conversion, pay attention to the case that coding->produced is not
9962 greater than coding->consumed.
9963
99642002-10-07 Richard M. Stallman <rms@gnu.org>
9965
9966 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
9967
99682002-10-06 Andrew Choi <akochoi@shaw.ca>
9969
9970 * macmenu.c (mac_menu_show): Add j to count menu items; match
9971 menu_item_selection to it to find selected item.
9972
99732002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9974
9975 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
9976 cases. The correct fix is to pass ReparentNotify to Xt.
9977 The shell widget interprets ConfigureNotify differently depending
9978 on if it has been reparented or not.
9979
99802002-10-05 Markus Rost <rost@math.ohio-state.edu>
9981
9982 * editfns.c (Fformat_time_string): Doc fix.
9983
99842002-10-05 John Paul Wallington <jpw@shootybangbang.com>
9985
9986 * fns.c (Flength): Doc fix.
9987
99882002-10-04 Stefan Monnier <monnier@cs.yale.edu>
9989
9990 * keyboard.c (keyremap): New struct.
9991 (read_key_sequence): Use it: globally replace keytran_foo with
9992 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
9993 keytran_next and fkey_next to just `next'.
9994
99952002-10-04 Steven Tamm <steventamm@mac.com>
9996
9997 * macterm.c (keycode_to_xkeysym_table): Change return to be
9998 treated like an X keysym.
9999
100002002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10001
10002 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
10003 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
10004 This is to also handle x/y changes that occur because of a resize.
10005
100062002-10-02 John Paul Wallington <jpw@shootybangbang.com>
10007
10008 * frame.c (Vdelete_frame_functions): New variable.
10009 (syms_of_frame): Initialize and defvar it.
10010 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
10011 it when frame's `tooltip' parameter is non-nil.
10012
10013 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
10014
10015 * w32fns.c (x_create_tip_frame): Likewise.
10016
10017 * macfns.c (x_create_tip_frame): Likewise.
10018
100192002-09-30 Kenichi Handa <handa@m17n.org>
10020
10021 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
10022 -1 before calling ccl_driver.
10023
10024 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
10025 Only when it is non-nil, handle composition sequence.
10026 (setup_coding_system) <0>: Don't force composition handling.
10027
10028 * Makefile.in (lisp, shortlisp): Add utf-16.elc
10029
100302002-09-29 Richard M. Stallman <rms@gnu.org>
10031
10032 * search.c (Freplace_match): Adjust match data for the substitution
10033 just made in the buffer.
10034
10035 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
10036 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
10037
100382002-09-27 Richard M. Stallman <rms@gnu.org>
10039
10040 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
10041 (read_char): Use them. Do all exits thru the end of the function.
10042
100432002-09-27 Kenichi Handa <handa@etl.go.jp>
10044
10045 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
10046 is nil.
10047
100482002-09-26 Richard M. Stallman <rms@gnu.org>
10049
10050 * regex.h (__restrict_arr): Don't define if already defined.
10051
10052 * coding.c (run_pre_post_conversion_on_str):
10053 Save and restore Vdeactivate_mark.
10054
100552002-09-26 John Paul Wallington <jpw@shootybangbang.com>
10056
10057 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
10058
100592002-09-26 Kenichi Handa <handa@etl.go.jp>
10060
10061 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
10062 nonzero, try face's family at first. Otherwise try FAMILY at first.
10063 (choose_face_font): If C is a single byte char or latin-1, call
10064 try_font_list with PREFER_FACE_FAMILY 1.
10065
100662002-09-21 Richard M. Stallman <rms@gnu.org>
10067
10068 * window.c (select_window_1): Don't select frame.
10069 Set frame's selected window only when frame itself is selected.
10070 (Fselect_window): Doc fix.
10071
100722002-09-18 Kim F. Storm <storm@cua.dk>
10073
10074 * process.c (make-network-process): Doc fix (there is no
10075 network-server-log-function hook).
10076
100772002-09-18 Richard M. Stallman <rms@gnu.org>
10078
10079 * print.c (print): Clear out the unused parts of Vprint_number_table.
10080 (syms_of_print): Doc fix for `print-number-table'.
10081
10082 * unexelf.c (unexec): Undo previous change.
10083
100842002-09-17 Andreas Schwab <schwab@suse.de>
10085
10086 * m/alpha.h [LINUX]: Don't define DATA_START.
10087
100882002-09-16 Dave Love <fx@gnu.org>
10089
10090 * unexelf.c (unexec): Deal with .got, reinstating change from
10091 25-08-1999.
10092
100932002-09-13 Richard M. Stallman <rms@gnu.org>
10094
10095 * s/sol2-6.h (UNEXEC): Comment out definition.
10096
10097 * unexsol.c (unexec): Don't downcase first letter of error msg.
10098
10099 * xfaces.c (Fcolor_supported_p): Just one arg is required.
10100
101012002-09-12 Markus Rost <rost@math.ohio-state.edu>
10102
10103 * unexsol.c: Include buffer.h, charset.h, coding.h.
10104
101052002-09-11 Richard M. Stallman <rms@gnu.org>
10106
10107 * unexsol.c: Don't use report_file_error; do it by hand
10108 using dlerror.
10109
10110 * process.c (wait_reading_process_input, both versions):
10111 Before calling turn_on_atimers, call stop_polling.
10112
10113 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
10114
10115 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
10116 we go to too_near_end, call clear_glyph_matrix.
10117 (redisplay_window): After make_cursor_line_fully_visible,
10118 call clear_glyph_matrix and bypass `goto done'.
10119
10120 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
10121 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
10122
101232002-09-10 Richard M. Stallman <rms@gnu.org>
10124
10125 * fileio.c (Fdo_auto_save): Catch error making directory.
10126 Only call push_message if we need to.
10127 At the same time, make an unwind-protect to pop it.
10128 Rename local message_p to old_message_p.
10129 (do_auto_save_make_dir, do_auto_save_eh): New functions.
10130 (do_auto_save_unwind): Don't call pop_message.
10131
10132 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
10133
10134 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
10135
10136 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
10137
10138 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
10139
101402002-09-10 Stefan Monnier <monnier@cs.yale.edu>
10141
10142 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
10143 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
10144 (re_match_2_internal): Be more careful with infinite loops.
10145
101462002-09-10 Kim F. Storm <storm@cua.dk>
10147
10148 * macros.c (end_kbd_macro): New function.
10149 (Fend_kbd_macro): Use it.
10150
10151 * macros.h (end_kbd_macro): Declare extern.
10152
10153 * keyboard.c (Fdiscard_input): If defining keyboard macro,
10154 end and save it instead of discarding it.
10155
101562002-09-09 Markus Rost <rost@math.ohio-state.edu>
10157
10158 * s/sol2-6.h: Fix typo. Add comment.
10159
101602002-09-09 Richard M. Stallman <rms@gnu.org>
10161
10162 * regex.c (regnum_t): Use signed int, not unsigned int.
10163
10164 * s/sol2-6.h: New file.
10165
10166 * s/sol2-5.h (UNEXEC): Definition deleted.
10167
101682002-09-08 Kim F. Storm <storm@cua.dk>
10169
10170 * macros.c (executing_macro_index): Change type to EMACS_INT.
10171 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
10172
10173 * macros.h (executing_macro_index): Change type to EMACS_INT.
10174
101752002-09-06 Richard M. Stallman <rms@gnu.org>
10176
10177 * casetab.c (set_case_table): Make canon table point to eqv table.
10178
101792002-09-06 Juanma Barranquero <lektu@terra.es>
10180
10181 * coding.c (syms_of_coding): Fix spacing.
10182
10183 * composite.c (Fcompose_region_internal)
10184 (Fcompose_string_internal): Likewise.
10185
10186 * data.c (Flsh): Likewise.
10187
10188 * fontset.c (Fset_fontset_font): Likewise.
10189
10190 * macfns.c (Fx_server_max_request_size): Likewise.
10191
10192 * w16select.c (syms_of_win16select): Likewise.
10193
10194 * w32select.c (syms_of_w32select): Likewise.
10195
10196 * xselect.c (syms_of_xselect): Likewise.
10197
101982002-09-05 Richard M. Stallman <rms@gnu.org>
10199
10200 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
10201 call EXTEND_RANGE_TABLE and return a proper value.
10202 (set_image_of_range): Don't call set_image_of_range_1
10203 if no TRANSLATE or if range includes all of Latin-1.
10204 Only call it for the Latin-1 part of the range.
10205 For other cases, make two separate ranges,
10206 one for the original specified characters and one for
10207 their case-conversions.
10208
102092002-09-04 Richard M. Stallman <rms@gnu.org>
10210
10211 * s/sol2-5.h (UNEXEC): Use unexsol.o.
10212
10213 * window.c (displayed_window_lines): Correct for one-off bug
10214 in HEIGHT on non-window displays.
10215
10216 * regex.c (set_image_of_range_1): New function.
10217 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
10218 Return a value to indicate running out of memory.
10219 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
10220 (extend_range_table_work_area): New subroutine.
10221 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
10222 Different calling conventions, and used from set_image_of_range{,_1}.
10223 (IMMEDIATE_QUIT_CHECK): Definitions moved.
10224
102252002-09-04 Juanma Barranquero <lektu@terra.es>
10226
10227 * makefile.w32-in: All dependencies updated.
10228
102292002-09-01 Richard M. Stallman <rms@gnu.org>
10230
10231 * unexsol.c: New file.
10232
10233 * xfns.c (Qbox): Declare external, don't define.
10234
10235 * xdisp.c (redisplay_window) <force-start case>:
10236 If point is on semi-visible last line, reposition
10237 it at previous line.
10238
10239 * alloc.c (display_malloc_warning): Use display-warning.
10240 (malloc_warning_1): Function deleted.
10241
10242 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
10243
10244 * lread.c (read1): Handle #! by skipping the line.
10245
102462002-08-31 Richard M. Stallman <rms@gnu.org>
10247
10248 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
10249 Don't include LDFLAGS.
10250 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
10251
102522002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
10253
10254 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
10255 member of x_display_info unless we compile for some window system.
10256
102572002-08-31 Kim F. Storm <storm@cua.dk>
10258
10259 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
10260 (get_window_cursor_type): Don't use them.
10261 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
10262
102632002-08-30 Kenichi Handa <handa@etl.go.jp>
10264
10265 * xdisp.c (get_next_display_element): Fix previous change.
10266
102672002-08-30 Andrew Choi <akochoi@shaw.ca>
10268
10269 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
10270 (expose_window): Use it to fix the display of overlapping
10271 rows (merge code from xterm.c).
10272
10273 * macfns.c (Qbox): Add extern declaration.
10274
102752002-08-30 Juanma Barranquero <lektu@terra.es>
10276
10277 * w32fns.c (Qbox): Make extern.
10278 (syms_of_w32fns): Remove initialization of Qbox.
10279
102802002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
10281
10282 * xfns.c (Fx_open_connection): Fix error message.
10283
102842002-08-30 Kim F. Storm <storm@cua.dk>
10285
10286 The following changes consolidates the handling of the cursor
10287 type in xdisp.c, moving duplicate code and functionality from
10288 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
10289
10290 * frame.h (enum text_cursor_kinds): Consolidated here.
10291 Added DEFAULT_CURSOR value.
10292 (struct frame) <desired_cursor, cursor_width>
10293 <blink_off_cursor, blink_off_cursor_width>: New fields.
10294 Consolidated from output_x, output_w32 and output_mac structs.
10295 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
10296 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
10297
10298 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
10299 Variables consolidated here.
10300 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
10301 (Vcursor_in_non_selected_windows): Renamed from
10302 cursor_in_non_selected_windows and changed to Lisp_Object.
10303 (syms_of_xdisp): Define and staticpro new and moved variables.
10304 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
10305 consolidated here. Recognize Qhollow setting.
10306 (set_frame_cursor_types): New function to set frame cursor types
10307 based on the frame parameters.
10308 (get_window_cursor_type): New function to calculate new cursor
10309 type and width for the specified window. Based on duplicated
10310 code consolidated here.
10311 Enhancements: cursor-in-non-selected-windows may be a cursor type,
10312 check buffer-local alternate-cursor-type and blink-cursor-alist
10313 before using built-in blink off methods.
10314
10315 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
10316
10317 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
10318 (get_specified_cursor_type, get_window_cursor_type)
10319 (set_frame_cursor_types): Added prototypes.
10320
10321 * macfns.c (x_specified_cursor_type): Removed.
10322 (x_set_cursor_type): Use set_frame_cursor_types.
10323 (Qbar, Qbox): Removed.
10324 (syms_of_macfns): Don't intern or staticpro them.
10325
10326 * macterm.c (x_specified_cursor_type): Remove prototype.
10327 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
10328 (x_display_and_set_cursor): Use get_window_cursor_type.
10329 Remove unused local variables cursor_non_selected, active_cursor.
10330 Redraw cursor if hbar cursor width changes.
10331 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
10332
10333 * macterm.h (enum text_cursor_kinds): Removed.
10334 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
10335 <blink_off_cursor, blink_off_cursor_width>: Members removed.
10336 (FRAME_DESIRED_CURSOR): Macro removed.
10337
10338 * w32fns.c (Vblink_cursor_alist): Removed.
10339 (Qbar, Qhbar, Qbox, Qhollow): Removed.
10340 (syms_of_w32fns): Don't intern, staticpro, or define them.
10341 (x_specified_cursor_type): Removed.
10342 (x_set_cursor_type): Use set_frame_cursor_types.
10343
10344 * w32term.c (x_specified_cursor_type): Remove prototype.
10345 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
10346 (x_display_and_set_cursor): Use get_window_cursor_type.
10347 Remove unused local variables cursor_off_state.
10348 Redraw cursor if hbar cursor width changes.
10349 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
10350
10351 * w32term.h (enum text_cursor_kinds): Removed.
10352 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
10353 <blink_off_cursor, blink_off_cursor_width>: Members removed.
10354 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
10355 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
10356 (struct w32_display_info) <x_highlight_frame>: Renamed member from
10357 w32_highlight_frame.
10358
10359 * xfns.c (Vblink_cursor_alist): Removed.
10360 (Qbar, Qhbar, Qbox, Qhollow): Removed.
10361 (syms_of_xfns): Don't intern, staticpro, or define them.
10362 (x_specified_cursor_type): Removed.
10363 (x_set_cursor_type): Use set_frame_cursor_types.
10364
10365 * xterm.c (x_specified_cursor_type): Remove prototype.
10366 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
10367 (x_display_and_set_cursor): Use get_window_cursor_type.
10368 Remove unused local variables cursor_off_state.
10369 Redraw cursor if hbar cursor width changes.
10370
10371 * xterm.h (enum text_cursor_kinds): Removed.
10372 (struct output_x) <current_cursor, desired_cursor, cursor_width>
10373 <blink_off_cursor, blink_off_cursor_width>: Members removed.
10374 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
10375 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
10376 (x_specified_cursor_type): Remove prototype.
10377
103782002-08-28 Richard M. Stallman <rms@gnu.org>
10379
10380 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
10381 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
10382 (Vblink_cursor_alist): New variable.
10383 (syms_of_w32fns): Initialize and defvar it.
10384 (x_specified_cursor_type): Recognize Qbox for filled box.
10385 Exceptions are hollow boxes.
10386 (Qbox, Qhollow): New variables.
10387 (syms_of_w32fns): Initialize and staticpro them.
10388
10389 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
10390 New macros.
10391 (struct w32_output): New fields blink_off_cursor,
10392 blink_off_cursor_width.
10393 (FRAME_CURSOR_WIDTH): New macro.
10394
10395 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
10396 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
10397
10398 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
10399 for bar cursor.
10400
10401 * w32term.c (expose_overlaps): New function.
10402 (expose_window): Use it to fix the display of overlapping rows.
10403
104042002-08-28 Simon Josefsson <jas@extundo.com>
10405
10406 * xfns.c (Fx_open_connection): Improve help when X connection
10407 fails, xhost is insecure and xauth is better.
10408
104092002-08-28 Juanma Barranquero <lektu@terra.es>
10410
10411 * makefile.w32-in: Add missing dependencies on w32term.h and
10412 composite.h.
10413
10414 * emacs.c (USAGE1): Add missing newline.
10415
104162002-08-27 Andrew Choi <akochoi@shaw.ca>
10417
10418 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
10419
104202002-08-27 Richard M. Stallman <rms@gnu.org>
10421
10422 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
10423 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
10424 (Vblink_cursor_alist): New variable.
10425 (syms_of_xfns): Initialize and defvar it.
10426 (x_specified_cursor_type): Recognize Qbox for filled box.
10427 Exceptions are hollow boxes.
10428 (Qbox, Qhollow): New variables.
10429 (syms_of_xfns): Initialize and staticpro them.
10430
10431 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
10432 New macros.
10433 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
10434
10435 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
10436 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
10437
10438 * emacs.c (main): Handle --script.
10439 (USAGE1): Mention --script.
10440 (standard_args): Define sort order for --script.
10441
104422002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
10443
10444 * xdisp.c (redisplay_updating_p): Variable removed.
10445 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
10446 New variables.
10447 (init_iterator): Don't free realized faces if
10448 inhibit_free_realized_faces is set.
10449 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
10450 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
10451 initialize Qinhibit_free_realized_faces.
10452
10453 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
10454 when iterator is adding glyphs to a glyph matrix.
10455
104562002-08-27 Kenichi Handa <handa@etl.go.jp>
10457
10458 * xdisp.c (get_next_display_element): In unibyte case, don't use
10459 octal form for such eight-bit characters that can be converted to
10460 multibyte char.
10461
104622002-08-26 Kim F. Storm <storm@cua.dk>
10463
b6189c3b
KS
10464 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize
10465 foreground and background colors. From Joe Buehler.
048addec
JD
10466
104672002-08-26 Miles Bader <miles@gnu.org>
10468
10469 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
10470
104712002-08-25 Andrew Choi <akochoi@shaw.ca>
10472
10473 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
10474 defined instead of MAC_OSX.
10475
10476 * s/darwin.h (select): Define select to sys_select only if
10477 HAVE_CARBON is defined.
10478 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
10479 (DONT_REOPEN_PTY): #def it.
10480
10481 * macterm.c (XTread_socket): Remove code to call
10482 SendEventToEventTarget for keys with command modifiers when
10483 mac_command_key_is_meta is nil.
10484
104852002-08-24 Andreas Schwab <schwab@suse.de>
10486
10487 * eval.c (Fdefvar): Fix last change.
10488
104892002-08-23 Richard M. Stallman <rms@gnu.org>
10490
10491 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
10492 Record variables in load history as (defvar . VAR).
10493 (Fdefvar): Don't record in load history if no initial value.
10494 (Qdefvar): New variable.
10495 (syms_of_eval): Init and staticpro it.
10496
10497 * lread.c (syms_of_lread): Doc fix.
10498 (build_load_history): Use Fmember to see if a definition
10499 is already in the Vload_history element.
10500
10501 * process.c (Fstart_process): Remove /: from program name.
10502
10503 * emacs.c (decode_env_path): Don't add /: if file name handler
10504 has a `safe-magic' property.
10505
10506 * callproc.c (Fcall_process): Remove /: from program name.
10507
105082002-08-23 Stefan Monnier <monnier@cs.yale.edu>
10509
10510 * regex.c (PATFETCH): Remove the translating fetch.
10511 (PATFETCH_RAW): Rename to PATFETCH.
10512 (set_image_of_range): New fun.
10513 (SET_RANGE_TABLE_WORK_AREA): Use it.
10514 (regex_compile): Don't translate the pattern chars so eagerly.
10515 Only do it when inserting an `exactn' bytecode or when handling
10516 a char-range.
10517 (mutually_exclusive_p): Avoid empty statement.
10518
105192002-08-22 Kim F. Storm <storm@cua.dk>
10520
10521 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
10522 end up on a partially visible line; this reverts a specific part
10523 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
10524 display error which has been reported several times now.
10525 However it introduces the problem that changes was supposed to fix.
10526 See my comments in the source if you want to debug this further.
10527
105282002-08-20 Kenichi Handa <handa@etl.go.jp>
10529
10530 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
10531
105322002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
10533
10534 * msdos.c (croak): Add `void' to definition.
10535
c1380aa6 10536 * sysdep.c (request_sigio, unrequest_sigio) [MSDOS]:
048addec
JD
10537 Don't define them, they are defined in msdos.c.
10538
10539 * mem-limits.h [MSDOS]: Declare etext.
10540
10541 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
10542 `const' since CORRECT_DIR_SEPS modifies its target.
10543
105442002-08-19 Kim F. Storm <storm@cua.dk>
10545
2fb0ce67 10546 * keyboard.c (Fclear_this_command_keys): Add optional arg
048addec
JD
10547 KEEP-RECORD to avoid clearing lossage when we just want to clear
10548 the current key sequence (kmacro needs this).
10549
105502002-08-19 Kenichi Handa <handa@localhost>
10551
10552 * composite.c (run_composition_function): Call FUNC if it is fboundp.
10553
10554 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
10555 cons, return Qnil.
10556
105572002-08-17 Richard M. Stallman <rms@gnu.org>
10558
10559 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
10560
10561 * sysdep.c [!VMS]: Include sys/files.h.
10562
10563 * editfns.c (save_restriction_restore): Defend from unchained marker.
10564
10565 * buffer.c (overlays_at): Handle extending vec uniformly.
10566 (overlays_in): Handle extending vec from length 0 as in overlays_at.
10567
105682002-08-15 Andrew Choi <akochoi@shaw.ca>
10569
10570 * mac.c (init_mac_osx_environment): New function.
10571
10572 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
10573
105742002-08-14 Kim F. Storm <storm@cua.dk>
10575
10576 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
10577 executing macro before appending to it (when used from Lisp).
10578 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
10579 which is called prior to each iteration of macro (for kmacro.el).
10580 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
10581
10582 * lisp.h (Fexecute_kbd_macro): Update prototype.
10583
10584 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
10585
105862002-08-14 Kenichi Handa <handa@etl.go.jp>
10587
10588 * xselect.c (QUTF8_STRING): New variable.
10589 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
10590 (x_atom_to_symbol): Likewise.
10591 (x_get_local_selection): New argument local_request. If it is
10592 nonzero, call handler_fn with the second arg nil.
10593 (x_handle_selection_request): Call x_get_local_selection with
10594 local_request 0.
10595 (lisp_data_to_selection_data): Don't encode the string here.
10596 (Fx_get_selection_internal): Call x_get_local_selection with
10597 local_request 1.
10598 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
10599
10600 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
10601
10602 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
10603
106042002-08-13 Richard M. Stallman <rms@gnu.org>
10605
10606 * minibuf.c (Fminibufferp): New function.
10607 (syms_of_minibuf): Defsubr it.
10608 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
10609
106102002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
10611
10612 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
10613
106142002-08-12 Richard M. Stallman <rms@gnu.org>
10615
10616 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
10617 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
10618 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
10619 already.
10620
10621 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
10622
106232002-08-11 Andrew Choi <akochoi@shaw.ca>
10624
10625 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
10626 (Vmac_pass_command_to_system): New variable.
10627 (Vmac_pass_control_to_system): New variable.
10628 (do_mouse_moved): Check wp with is_emacs_window.
10629 (XTread_socket): Check window_ptr with is_emacs_window.
10630 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
10631 events back to Mac Toolbox for processing, depending on values of
10632 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
10633 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
10634 Vmac_pass_control_to_system.
10635
106362002-08-10 Kenichi Handa <handa@etl.go.jp>
10637
10638 * coding.c (unencodable_char_position): New function.
10639 (Funencodable_char_position): New function.
10640 (syms_of_coding): Defsubr Funencodable_char_position.
10641
106422002-08-10 Andrew Choi <akochoi@shaw.ca>
10643
10644 * mac.c (sys_select) [MAC_OSX]: New function.
10645
10646 * macterm.c (MakeMeTheFrontProcess): New function.
10647 (mac_initialize): Call MakeMeTheFrontProcess.
10648
10649 * s/darwin.h: Define select to sys_select.
10650
106512002-08-09 Richard M. Stallman <rms@gnu.org>
10652
10653 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
10654
106552002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
10656
10657 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
10658 end of the buffer.
10659
106602002-08-08 Ken Raeburn <raeburn@mit.edu>
10661
10662 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
10663
10664 * puresize.h (BASE_PURESIZE): Increase to 910000.
10665
106662002-08-08 Kenichi Handa <handa@etl.go.jp>
10667
10668 * coding.c (Ffind_operation_coding_system): For write-region, if
10669 VISIT is a filename, make it the target.
10670
106712002-08-07 Richard M. Stallman <rms@gnu.org>
10672
10673 * alloc.c (mark_object): Detect long lists for debugging.
10674 (mark_object_loop_halt): New variable.
10675
10676 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
10677
10678 * data.c (Fmake_variable_frame_local): Doc fix.
10679
106802002-08-01 David Ponce <david@dponce.com>
10681
10682 * w32menu.c (local_heap, local_alloc, local_free): New macros.
10683 (malloc_widget_value, free_widget_value)
10684 (w32_free_submenu_strings): Use them.
10685
10686 (push_submenu_start, push_submenu_end, push_left_right_boundary)
10687 (push_menu_pane, push_menu_item, single_keymap_panes)
10688 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
10689 (single_submenu, set_frame_menubar)
10690 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
10691
10692 (Fx_popup_menu): Don't show pop up menu until preceding one is
10693 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
10694
10695 * w32menu.c: Changes adapted from xmenu.c
10696 (set_frame_menubar): First parse all submenus,
10697 then make widget_value trees from them.
10698 Don't allocate any widget_value objects
10699 until we are done with the parsing.
10700 (parse_single_submenu): New function.
10701 (digest_single_submenu): New function.
10702 (single_submenu): Function deleted, replaced by those two.
10703
107042002-08-04 Andrew Choi <akochoi@shaw.ca>
10705
10706 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
10707 returns a valid window pointer before proceeding for keyDown and
10708 autoKey events.
10709
107102002-08-03 Andrew Choi <akochoi@shaw.ca>
10711
10712 * macterm.c (USE_CARBON_EVENTS): New macro.
10713 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
10714 (x_iconify_frame): Call CollapseWindow.
10715 (Vmac_reverse_ctrl_meta): New variable.
10716 (Vmac_wheel_button_is_mouse_2): New variable.
10717 (init_mac_drag_n_drop): New function.
10718 (mac_do_receive_drag): New function.
10719 (mac_handle_service_event): New function.
10720 (init_service_handler): New function.
10721 (mac_to_emacs_modifiers): New function.
10722 (mac_event_to_emacs_modifiers): New function.
10723 (mac_get_mouse_btn): New function.
10724 (mac_convert_event_ref): New function.
10725 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
10726 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
10727 mac_get_mouse_btn.
10728 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
10729
10730 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
10731 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
10732 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
10733 TOOL_BAR_EVENT for MAC_OS as well.
10734 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
10735 as for WINDOWS_NT.
10736 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
10737
10738 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
10739
107402002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
10741
10742 * xdisp.c (forward_to_next_line_start): Fix a condition that
10743 lead to a newline being skipped.
10744
107452002-08-02 Andrew Choi <akochoi@shaw.ca>
10746
10747 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
10748
107492002-08-01 Richard M. Stallman <rms@gnu.org>
10750
10751 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
10752
107532002-07-31 Andrew Choi <akochoi@shaw.ca>
10754
10755 * macfns.c: #undef init_process before #define-ing it.
10756
10757 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
10758 HAVE_CARBON is defined.
10759
107602002-07-31 Richard M. Stallman <rms@gnu.org>
10761
10762 * xmenu.c (set_frame_menubar): First parse all submenus,
10763 then make widget_value trees from them.
10764 Don't allocate any widget_value objects
10765 until we are done with the parsing.
10766 (parse_single_submenu): New function.
10767 (digest_single_submenu): New function.
10768 (single_submenu): Function deleted, replaced by those two.
10769
107702002-07-30 Juanma Barranquero <lektu@terra.es>
10771
10772 * w32proc.c (syms_of_ntproc): Fix docstring of
10773 `w32-get-true-file-attributes'.
10774
107752002-07-28 Richard M. Stallman <rms@gnu.org>
10776
10777 * s/hpux8.h (HPUX8): Define this before including hpux.h.
10778 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
10779
10780 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
10781
10782 * keyboard.c (make_lispy_event):
10783 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
10784 Explicitly clear up_modifier in event->modifiers.
10785
107862002-07-27 Richard M. Stallman <rms@gnu.org>
10787
10788 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
10789
10790 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
10791 for bar cursor.
10792
107932002-07-26 Kenichi Handa <handa@etl.go.jp>
10794
10795 * coding.c (detect_coding_iso2022): While checking a byte sequence
10796 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
10797 it in the normal loop.
10798
107992002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
10800
10801 * xterm.c (expose_overlaps): New function.
10802 (expose_window): Use it to fix the display of overlapping rows.
10803
10804 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
10805
108062002-07-23 Ken Raeburn <raeburn@gnu.org>
10807
10808 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
10809 since it only depends on XUINT.
10810
10811 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
10812 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
10813 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
10814 Macros deleted.
3947677c 10815
77d1daf2
AS
10816 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
10817 its value over other approaches.
10818 * sysdep.c (start_of_data): Don't define the function if a macro
10819 form has been defined.
8a8e19a3 10820
048addec
JD
108212002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
10822
10823 * xdisp.c (redisplay_updating_p): New variable.
10824 (init_iterator): Don't free realized faces when
10825 redisplay_updating_p is set.
10826 (redisplay_internal): Set redisplay_updating_p while updating
10827 the display.
10828
108292002-07-23 Richard M. Stallman <rms@gnu.org>
10830
10831 * editfns.c (Fmessage): Treat "" like nil.
10832
108332002-07-23 Kenichi Handa <handa@etl.go.jp>
10834
10835 * xdisp.c (face_before_or_after_it_pos):
10836 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
10837
108382002-07-22 Juanma Barranquero <lektu@terra.es>
10839
10840 * callproc.c (init_callproc) [DOS_NT]:
10841 Initialize Vshared_game_score_directory to nil.
10842 (syms_of_callproc) [DOS_NT]: Likewise.
10843
108442002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
10845
10846 * xdisp.c (display_line): Replace an abort with xassert.
10847
108482002-07-21 Richard M. Stallman <rms@gnu.org>
10849
10850 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
10851 and END_UNCHANGED when setting buffer_unchanged_p.
10852 Use current_matrix_up_to_date_p to decide whether to use
10853 try_cursor_movement.
10854
10855 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
10856
10857 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
10858
10859 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
10860 Set to nil if dir does not exist.
10861 (syms_of_callproc): Init unconditionally and simply.
10862
10863 * buffer.c (Fbuffer_list): Doc fix.
10864
108652002-07-21 Ken Raeburn <raeburn@gnu.org>
10866
10867 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
10868
10869 * buffer.c (mmap_realloc): When shrinking, make sure number of
10870 pages to unmap is rounded towards zero.
10871
10872 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
10873 (XSETINT): Deleted.
10874
10875 * m/att3b.h (XINT): Don't define.
10876 (VALBITS, VALMASK, XTYPE): Deleted.
10877 (DATA_SEG_BITS): Define.
10878 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
10879 ARRAY_MARK_FLAG): Deleted.
10880 (DATA_SEG_BITS): Define.
10881 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
10882 (DATA_SEG_BITS): Define.
10883
108842002-07-20 Richard M. Stallman <rms@gnu.org>
10885
10886 * print.c (print_error_message): New args CONTEXT and CALLER.
10887 Calls changed.
10888
10889 * lisp.h (print_error_message): Declare new args.
10890
10891 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
10892 and CONTEXT to print_error_message, don't print them here.
10893 For a Quit, don't use Vsignaling_function.
10894 Call message_log_maybe_newline.
10895
10896 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
10897
108982002-07-20 Kim F. Storm <storm@cua.dk>
10899
10900 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
10901
109022002-07-19 Ken Raeburn <raeburn@gnu.org>
10903
10904 * bytecode.c (struct byte_stack): Pointers into byte string now
10905 point to const.
10906 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
10907 const.
10908 * charset.h (BCOPY_SHORT): Source pointer now points to const.
10909 * coding.c (encode_eol, detect_coding, detect_eol):
10910 (decode_coding, encode_coding, detect_coding_system):
10911 Source strings now treated as const.
10912 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
10913 modify Lisp string contents.
10914 * coding.h (decode_coding, encode_coding, detect_coding,
10915 detect_eol): Declarations updated.
10916 * composite.c (compose_chars_in_text): Treat Lisp string contents
10917 as const.
10918 * dispnew.c (safe_bcopy): Source pointer now points to const.
10919 * lisp.h (STRING_COPYIN): New macro.
10920 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
10921 (internal_with_output_to_temp_buffer): Declarations updated.
10922 * print.c (temp_output_buffer_setup):
10923 (internal_with_output_to_temp_buffer): Buffer name argument is now
10924 pointer to const.
10925 * sound.c (struct sound_device): Function pointer field "write"
10926 buffer argument now points to const.
10927 (vox_write): Buffer argument points to const.
10928 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
10929 contents as const.
10930 * sysdep.c (emacs_write): Buffer pointer now const.
10931 * term.c (encode_terminal_code): Buffer pointer now const.
10932 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
10933 (x_face_list_fonts, x_update_menu_appearance):
10934 (hash_string_case_insensitive): Treat Lisp string contents as const.
10935
109362002-07-19 Juanma Barranquero <lektu@terra.es>
10937
048addec
JD
10938 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
10939
10940 * fileio.c (syms_of_fileio): Likewise.
c62aec78
JB
10941 (Ffile_name_as_directory): Fix argument name in docstring.
10942 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
048addec
JD
10943
109442002-07-18 Richard M. Stallman <rms@gnu.org>
10945
10946 * data.c (Fdefalias): Doc fix.
10947
109482002-07-17 Dave Love <fx@gnu.org>
10949
10950 * intervals.h (text_property_stickiness): Use P_.
10951
10952 * ccl.c: Remove `emacs' conditionals.
10953 (ccl_backtrace_table): Fix size spec.
10954 (ccl_driver): Fix type errors.
10955
109562002-07-16 Ken Raeburn <raeburn@gnu.org>
10957
10958 * alloc.c (xstrdup, make_string, make_unibyte_string)
10959 (make_multibyte_string, build_string): String pointer args now
10960 point to const.
10961 * charset.c (find_charset_in_text, c_string_width):
10962 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
10963 * fileio.c (report_file_error):
10964 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
10965 (count_combining_before, count_combining_after, insert_1_both):
10966 (insert, insert_and_inherit, insert_string):
10967 (insert_before_markers, insert_before_markers_and_inherit):
10968 * lread.c (intern, oblookup, hash_string):
10969 * minibuf.c (temp_echo_area_glyphs):
10970 * search.c (fast_c_string_match_ignore_case):
10971 * sysdep.c (emacs_open, set_file_times):
10972 * xfaces.c (xstricmp):
10973 * xdisp.c (store_frame_title, string_char_and_length):
10974 (message_dolog, message2, message2_nolog, set_message): Likewise.
10975 (set_message_1): Cast message string argument to const pointer.
10976 * editfns.c (general_insert_function): Insertion function now
10977 takes pointer to const for input data.
10978 * charset.h (find_charset_in_text, c_string_width):
10979 (parse_str_as_multibyte): Declarations updated.
10980 * dispextern.h (xstricmp): Declaration updated.
10981 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
10982 (count_size_as_multibyte, count_combining_before):
10983 (count_combining_after, insert_1, insert_1_both, message_dolog):
10984 (insert, insert_and_inherit, insert_before_markers)
10985 (insert_before_markers_and_inherit, set_message, message2):
10986 (message2_dolog, build_string, make_string, make_unibyte_string):
10987 (make_multibyte_string, intern, oblookup, report_file_error):
10988 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
10989 (emacs_open, xstrdup): Declarations updated.
10990 * systime.h (set_file_times): Declaration updated.
10991
10992 * charset.c (find_charset_in_text, lisp_string_width): Use const
10993 for pointer to lisp string data.
10994 * charset.h (FETCH_STRING_CHAR_ADVANCE):
10995 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
10996 * coding.c (Ffind_coding_systems_region_interval):
10997 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
10998 (Fmake_directory_internal, Fdelete_directory):
10999 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
11000 * fontset.c (font_family_registry, fs_query_fontset):
11001 (list_fontsets):
11002 * frame.c (Fframe_parameter):
11003 * keyboard.c (cmd_error_internal):
11004 * keymap.c (Fdescribe_buffer_bindings):
11005 * lread.c (complete_filename_p, openp):
11006 * minibuf.c (Fminibuffer_complete_word):
11007 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
11008 (face_before_or_after_it_pos, next_element_from_string):
11009 (get_overlay_arrow_glyph_row, display_mode_element):
11010 (decode_mode_spec_coding):
11011 * xterm.c (same_x_server): Likewise.
11012
11013 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
11014 settings of non-existent fields.
11015
11016 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
11017 copy a lisp value.
11018
11019 * lread.c (Fintern_soft): Use string macros instead of
11020 Lisp_String fields.
11021 * keyboard.c (echo_char, parse_modifiers_uncached):
11022 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
11023 * textprop.c (validate_interval_range, interval_of): Likewise.
11024
11025 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
11026
11027 * charset.h (FETCH_STRING_CHAR_ADVANCE)
11028 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
11029 XSTRING()->size_byte.
11030
11031 * lisp.h (SDATA, SREF): Produce rvalue.
11032 (SSET): New macro.
11033 * alloc.c (make_event_array): Use SSET for storing into a string.
11034 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
11035 a string.
11036 * casefiddle.c (casify_object): Use SSET.
11037 * charset.h (FETCH_STRING_CHAR_ADVANCE)
11038 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
11039 address of string contents.
11040 * data.c (Faref): Use SDATA.
11041 (Faset): Use SDATA, SSET.
11042 * dired.c (directory_files_internal): Use SSET.
11043 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
11044 (Fread_file_name): Use SREF, SSET.
11045 * fns.c (concat): Use SSET.
11046 (concat, Fdelete): Use SDATA.
11047 * insdel.c (insert_from_string_1): Use SDATA.
11048 * keyboard.c (Fevent_convert_list): Use SREF.
11049 * lread.c (Fload): Use SDATA, SSET.
11050 * macfns.c (validate_x_resource_name): Use SSET.
11051 * process.c (status_message): Use SSET.
11052 * search.c (wordify): Use SDATA.
11053 (Freplace_match): Use SREF.
11054 * w32fns.c (validate_x_resource_name): Use SSET.
11055 * xfns.c (validate_x_resource_name): Use SSET.
11056 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
11057
110582002-07-16 Richard M. Stallman <rms@gnu.org>
11059
11060 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
11061
11062 * xdisp.c (reconsider_clip_changes):
11063 Don't test prevent_redisplay_optimizations_p.
11064 (redisplay_internal): Test prevent_redisplay_optimizations_p
11065 along with clip_changed in some cases.
11066 (try_window_id): Likewise.
11067 (redisplay_window): New local var buffer_unchanged_p.
11068
11069 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
11070
11071 * process.c (create_process): Test USG_SUBTTY_WORKS.
11072 (process_send_signal): Clean up handling of GID.
11073 Detect errors in ioctls meant to set GID.
11074
11075 * window.c (temp_output_buffer_show):
11076 Don't set prevent_redisplay_optimizations_p.
11077
110782002-07-15 Juanma Barranquero <lektu@terra.es>
11079
11080 * eval.c (Fdefvaralias): Add docstring argument.
11081
110822002-07-15 Ken Raeburn <raeburn@gnu.org>
11083
11084 * lisp.h (STRING_INTERVALS): Produce rvalue.
11085 (STRING_SET_INTERVALS): New macro.
11086 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
11087 * fns.c (Fstring_as_multibyte): Likewise.
11088 * intervals.c (balance_possible_root_interval, delete_interval)
11089 (create_root_interval, copy_intervals_to_string): Likewise.
11090 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
11091 instead of 0.
11092
110932002-07-14 Ken Raeburn <raeburn@gnu.org>
11094
11095 * lisp.h (STRING_SET_CHARS): New macro.
11096 (SCHARS, SBYTES): Produce rvalues.
11097 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
11098 * fns.c (concat): Likewise.
11099 * lread.c (read_vector): Likewise.
11100
11101 * lisp.h (SMBP): Deleted. All uses changed to STRING_MULTIBYTE.
11102 (STRING_SET_UNIBYTE): New macro.
11103 (SET_STRING_BYTES): Deleted. Callers (all of which supplied a
11104 length of -1) changed to use STRING_SET_UNIBYTE.
11105 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
11106 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
11107 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
11108 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
11109 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
11110 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
11111 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
11112 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
11113 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
11114 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
11115 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
11116 STRING_BYTES or indirection changed to SCHARS, SBYTES,
11117 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
11118 unchanged for now.
11119
111202002-07-13 Kim F. Storm <storm@cua.dk>
11121
11122 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
11123
111242002-07-12 Richard M. Stallman <rms@gnu.org>
11125
11126 * fileio.c (Fwrite_region): Doc fix.
11127
11128 * print.c (print_error_message): Don't handle Vsignaling_function here.
11129
11130 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
11131 (command_loop_1): Avoid certain actions after memory-full error.
11132
11133 * eval.c (Fsignal): Don't call cancel_hourglass.
11134 For a memory-full error, don't call Vsignal_hook_function
11135 and don't set Vsignaling_function.
11136
11137 * process.c (process_send_signal): Add abort call.
11138
111392002-07-11 Markus Rost <rost@math.ohio-state.edu>
11140
11141 * keymap.c (Fkey_binding): Fix typo.
11142
111432002-07-11 Richard M. Stallman <rms@gnu.org>
11144
11145 * alloc.c (Vmemory_full): New variable.
11146 (Vmemory_signal_data): Renamed from memory_signal_data.
11147 Uses changed.
11148 (syms_of_alloc): Defvar them.
11149 (memory_full, buffer_memory_full): Set Vmemory_full.
11150
11151 * lisp.h (Vmemory_full): Add declaration.
11152 (current_column, indented_beyond_p): Change declaration.
11153
11154 * indent.c (last_known_column): Declare as double, not float.
11155 (current_column, current_column_1, string_display_width)
11156 (position_indentation): Return `double'.
11157 (indented_beyond_p): Arg `column' is `double'. Callers changed.
11158
11159 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
11160 (back_to_previous_visible_line_start)
11161 (reseat_at_next_visible_line_start, next_element_from_buffer):
11162 Use `double', not `float', when calling indented_beyond_p.
11163
11164 * s/hpux11.h (BROKEN_SA_RESTART): Defined.
11165
11166 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
11167
111682002-07-11 Juanma Barranquero <lektu@terra.es>
11169
11170 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
f9711de4
JB
11171 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
11172 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
11173 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
11174 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
11175 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
048addec
JD
11176
111772002-07-10 Juanma Barranquero <lektu@terra.es>
11178
d814862a
JB
11179 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE.
11180 All callers changed.
048addec
JD
11181
111822002-07-09 Stefan Monnier <monnier@cs.yale.edu>
11183
11184 * data.c (Fdefalias): Add an optional `docstring' argument.
11185 (set_internal, Fsetq_default): Use XCAR/XCDR.
11186
11187 * composite.c (HASH_VALUE, HASH_KEY):
11188 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
11189
111902002-07-09 Kenichi Handa <handa@etl.go.jp>
11191
11192 * callproc.c (Fcall_process): Fix previous change.
11193
111942002-07-07 Stefan Monnier <monnier@cs.yale.edu>
11195
11196 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
11197 Add support for hash-tables.
11198 (Ftry_completion): Return t even if the string appears multiple times.
11199
11200 * fns.c (Fnconc): Use XCDR.
11201 (Fprovide): Use CONSP and XCDR.
11202 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
11203 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
11204 (Fmake_hash_table): Accept `:size nil'.
11205 (Fmakehash): Delete: moved to subr.el.
11206 (syms_of_fns): Don't defsubr makehash.
11207
11208 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
11209 (HASH_TABLE_SIZE): Move from fns.c.
11210
112112002-07-07 Richard M. Stallman <rms@gnu.org>
11212
11213 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
11214 Instead just return 0 when there is something to be done.
11215 (try_scrolling): If make_cursor_line_fully_visible returns 0,
11216 retry scrolling as if cursor were off the bottom.
11217 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
11218 return CURSOR_MOVEMENT_MUST_SCROLL.
11219 (redisplay_window): If make_cursor_line_fully_visible returns 0,
11220 go to try_to_scroll.
11221
11222 * buffer.c (Fbuffer_local_value): Store current value into its binding
11223 so we get the up-to-date value for the binding that is loaded.
11224
11225 * eval.c (Fdefmacro): Doc fix.
11226
112272002-07-05 Dave Love <fx@gnu.org>
11228
11229 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
11230 correctly.
11231
11232 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
11233 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
11234 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
11235 CCL_LookupCharConstTbl.
11236 (syms_of_ccl): Defvar translation-hash-table-vector.
11237
112382002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11239
11240 * xdisp.c: Remove unused variable `face'.
11241
112422002-07-04 Juanma Barranquero <lektu@terra.es>
11243
11244 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
11245 obsolescence information.
11246
112472002-07-03 Andrew Choi <akochoi@shaw.ca>
11248
11249 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
11250 pattern. Search cache first.
11251 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
11252 for Japanese font.
11253 (XLoadQueryFont): Use it.
11254
112552002-07-02 Richard M. Stallman <rms@gnu.org>
11256
11257 * keymap.c (Fdefine_key): Doc fix.
11258
11259 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
11260
112612002-07-02 Juanma Barranquero <lektu@terra.es>
11262
11263 * keymap.c (syms_of_keymap): Fix typo.
11264
112652002-07-01 Andrew Choi <akochoi@shaw.ca>
11266
11267 * s/darwin.h: Define POSIX_SIGNALS.
11268
11269 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
11270 and FSRefMakePath to convert FSSpec returned with Apple Event to
11271 Posix pathname.
11272 (mac_initialize) [TARGET_API_MAC_CARBON]:
11273 Call init_required_apple_events and disable the `Quit' menu item
11274 provided automatically by the Carbon Toolbox.
11275
112762002-07-01 Dave Love <fx@gnu.org>
11277
11278 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
11279 for K&R.
11280
11281 * xterm.c: Fix prototype for K&R.
11282
11283 * term.c (costs_set): Declare static, non-initialized for pcc.
11284
112852002-07-01 Richard M. Stallman <rms@gnu.org>
11286
11287 * keyboard.c (timer_last_idleness_start_time): New variable.
11288 (timer_start_idle): Set that.
11289 (read_key_sequence): Use that to reset timer_idleness_start_time
11290 to previous value.
11291
11292 * window.c (Frecenter): With arg, set optional_new_start.
11293
11294 * xdisp.c (redisplay_internal): Make optional_new_start really work.
11295
11296 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
11297 buffer for completion.
11298
112992002-06-29 Ken Raeburn <raeburn@gnu.org>
11300
11301 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
11302
113032002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11304
11305 * keyboard.c (readable_filtered_events): New function that filters
11306 FOCUS_IN_EVENT depending on parameter.
11307 (readable_events): Calls readable_filtered_events, not filtering
11308 FOCUS_IN_EVENT.
11309 (get_filtered_input_pending): New function, filtering parameter passed
11310 to readable_filtered_events.
11311 (get_input_pending): Calls get_filtered_input_pending, not filtering
11312 FOCUS_IN_EVENT.
11313 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
11314 FOCUS_IN_EVENT.
11315
11316 * xterm.h (struct x_output): Add focus_state.
11317
11318 * xterm.c (x_focus_changed): New function.
11319 (x_detect_focus_change): New function.
11320 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
11321 EnterNotify and LeaveNotify to track X focus changes.
11322
113232002-06-28 Andreas Schwab <schwab@suse.de>
11324
11325 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
11326
113272002-06-27 Kim F. Storm <storm@cua.dk>
11328
11329 * xdisp.c: (mode_line_string_list, mode_line_string_face)
11330 (mode_line_string_face_prop): New variables.
11331 (store_mode_line_string): New function.
11332 (display_mode_element): Use store_mode_line_string to
11333 add mode-line string elements to mode_line_string_list
11334 when mode_line_string_list is non-nil.
11335 (Fformat_mode_line): Now returns propertized string by
11336 default. New arg NO-PROPS to ignore properties.
11337 (decode_mode_spec): Only add two dashes for %- in propertized
11338 mode-line string.
11339 (syms_of_xdisp): Init and staticpro mode_line_string_list.
11340
113412002-06-27 Stefan Monnier <monnier@cs.yale.edu>
11342
11343 * minibuf.c (minibuffer_completion_contents): Add return type.
11344
113452002-06-27 Juanma Barranquero <lektu@terra.es>
11346
11347 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
11348
113492002-06-26 Juanma Barranquero <lektu@terra.es>
11350
11351 * fileio.c (read_file_name_cleanup): Add missing return.
11352
113532002-06-26 Richard M. Stallman <rms@gnu.org>
11354
11355 * window.c (Frecenter): Don't set force_start flag.
11356
11357 * minibuf.c (do_completion, Fminibuffer_complete_word)
11358 (Fminibuffer_completion_help): Complete just the text before point.
11359 (minibuffer_completion_contents): New function.
11360
11361 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
11362
11363 * frame.c (frames_bury_buffer): Function deleted.
11364
113652002-06-25 Miles Bader <miles@gnu.org>
11366
11367 * callint.c (Fcall_interactively): When checking to see if doprnt hit
11368 the end of callint_message, allow for a terminating '\0'.
11369
113702002-06-24 Juanma Barranquero <lektu@terra.es>
11371
11372 * w32select.c: Include composite.h
11373
11374 * w16select.c: Likewise.
11375
113762002-06-24 Kenichi Handa <handa@etl.go.jp>
11377
11378 * callproc.c (Fcall_process): If code detection is necessary,
11379 call detect_coding directly here.
11380
11381 * coding.c (detect_eol): Preserve coding->cmp_data.
11382
11383 * w16select.c (Fw16_get_clipboard_data):
11384 * w32fns.c (w32_to_x_font):
11385 * w32select.c (Fw32_get_clipboard_data):
11386 * xselect.c (selection_data_to_lisp_data):
11387 * xterm.c (XTread_socket): Disable composition handling.
11388
113892002-06-24 Stefan Monnier <monnier@cs.yale.edu>
11390
11391 * print.c (temp_output_buffer_setup): Kill all local variables.
11392
113932002-06-22 Stefan Monnier <monnier@cs.yale.edu>
11394
11395 * lread.c (Fread): Remove redundant and imprecise declaration.
11396
11397 * xfns.c (check_x_display_info): Use check_x_frame.
11398
11399 * .gdbinit (xprintsym): Use the new `xname' field.
11400 (xsymbol): Use it.
11401
114022002-06-22 Jason Rumney <jasonr@gnu.org>
11403
11404 * w32fns.c (file_dialog_callback): New function.
11405 (Fx_file_dialog): Allow selecting directories as well as files.
11406
114072002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11408
11409 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
f63fd14e 11410 OpenBSD. Add support for mipseb-*-netbsd* machines.
048addec
JD
11411
114122002-06-17 Andrew Choi <akochoi@shaw.ca>
11413
11414 * macterm.c (mac_scroll_area): Set foreground and backcolor to
11415 black and white before scrolling. Restore frame background and
11416 foreground color after scrolling.
11417 (do_window_update): Call XClearWindow before calling expose_frame.
11418 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
11419 FRAME_FOREGROUND_PIXEL of frame.
11420
11421 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
11422 test Mac command key as <ALT> key.
11423
114242002-06-17 Stefan Monnier <monnier@cs.yale.edu>
11425
11426 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
11427
11428 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
11429 Lookup keys in function-key-map immediately so that key-translation-map
11430 can be applied earlier.
11431 Remove function_key_possible and key_translation_possible, replaced
11432 by checking `keytran_start < t'.
11433
11434 * .gdbinit (xsymbol): Use the new `xname' field.
11435
114362002-06-17 Andrew Choi <akochoi@shaw.ca>
11437
11438 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
11439 test Mac command key as <ALT> key.
11440
11441 * mac.c (do_applescript): Call initialize_applescript if necessary
11442 when first called. Dispose of result_desc only when there is no error.
11443 (Fdo_applescript): Use %d format specifier instead of %ld.
11444
114452002-06-16 Andrew Choi <akochoi@shaw.ca>
11446
11447 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
11448 of FrontWindow for cases keyDown and autoKey.
11449
11450 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
11451 Vdefault_fontset to Monaco with mac-roman coding.
11452
11453 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
11454 init_process before and after inclusion of Carbon/Carbon.h, resp.
11455
11456 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
11457 cursor_gc.
11458 (add_font_name_table_entry): New function.
11459 (init_font_name_table): Use add_font_name_table_entry; add italic,
11460 bold, and bold-italic entries for truetype fonts.
11461
11462 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
11463 for Mac too.
11464 (try_font_list) [MAC_OS]: If no font matches given registry, try
11465 fonts with any registry matching face_family.
11466 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
11467
11468 * s/darwin.h: If autoconf detects the Ncurses library, define
11469 LIBS_TERMCAP to -lncurses to use it.
11470
114712002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
11472
11473 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
11474
114752002-06-15 Richard M. Stallman <rms@gnu.org>
11476
11477 * window.c (Fset_window_configuration): Explicitly preserve
11478 the point value that new_current_buffer had at the start.
11479
114802002-06-14 Juanma Barranquero <lektu@terra.es>
11481
11482 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
11483 Fix typos.
11484
114852002-06-14 Kim F. Storm <storm@cua.dk>
11486
11487 * insdel.c (insert_1_both, insert_from_string_1)
11488 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
11489 insert happened in the end_unchanged region. Otherwise, the
11490 redisplay may be confused and duplicate the last line in the
11491 buffer [seen after save-buffer when require-final-newline==t].
11492
114932002-06-13 Jason Rumney <jasonr@gnu.org>
11494
11495 * w32.c (init_environment): Remove EMACSLOCKDIR.
11496 (stat): Swap _S_IFDIR and _S_IFREG.
11497
114982002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11499
11500 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
11501 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
11502 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
11503 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
11504 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
11505 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
11506 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
11507 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
11508 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
11509 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
11510 SELECTION_REQUEST_EVENT, selection_clear_event to
11511 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
11512 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
11513 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
11514 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
11515 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
11516 no_event to NO_EVENT.
11517
115182002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11519
11520 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
11521
115222002-06-12 Stefan Monnier <monnier@cs.yale.edu>
11523
11524 * intervals.c (textget): Don't forget to `return'.
11525 (lookup_char_property): Use XCAR/XCDR.
11526
115272002-06-12 Juanma Barranquero <lektu@terra.es>
11528
11529 * xdisp.c (Fformat_mode_line): Fix typo.
11530
115312002-06-12 Kim F. Storm <storm@cua.dk>
11532
11533 * xdisp.c (Fformat_mode_line): New function.
11534 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
11535 (store_frame_title_char, store_frame_title): Use unconditionally.
11536 (init_xdisp): Defsubr Fformat_mode_line.
11537 Initialize frame_title_buf etc. unconditionally.
11538
115392002-06-11 Stefan Monnier <monnier@cs.yale.edu>
11540
11541 * keyboard.c (read_key_sequence):
11542 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
11543 things through those maps after downcasing events.
11544 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
11545 applies after function-key-map.
11546 Make sure that keytran can be done in the middle in the sequence.
11547 Be careful not to throw away events past the one we downcase.
11548
11549 * lread.c (read_integer): Remove unused var `tem'.
11550 (read1): Fix int/Lisp_Object mixup.
11551
11552 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
11553
115542002-06-11 Richard M. Stallman <rms@gnu.org>
11555
11556 * keyboard.c (readable_events): Ignore any number of
11557 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
11558
115592002-06-09 Miles Bader <miles@gnu.org>
11560
11561 * xfaces.c (Ftty_supports_face_attributes_p): New function.
11562 (parse_rgb_list, tty_lookup_color): New functions.
11563 (tty_defined_color): Use `tty_lookup_color' to do all the work.
11564 (color_distance, Fcolor_distance): New functions.
11565 (TTY_SAME_COLOR_THRESHOLD): New macro.
11566 (Qtty_color_standard_values): New variable.
11567 (syms_of_xfaces): Initialize new vars & functions.
11568
115692002-06-08 Colin Walters <walters@verbum.org>
11570
11571 * textprop.c (Vchar_property_alias_alist): New variable.
11572 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
11573
11574 * intervals.c (lookup_char_property): New function for looking up
11575 overlay and text properties, created from textget.
11576 (textget): Use it.
11577
11578 * intervals.h (lookup_char_property): Declare.
11579 (Vchar_property_alias_alist): Declare.
11580
11581 * buffer.c (Foverlay_get): Use lookup_char_property.
11582
115832002-06-07 Sam Steingold <sds@gnu.org>
11584
11585 * xselect.c (lisp_data_to_selection_data): Fix last change:
11586 *data_ret is not a Lisp string, while unibyte_string is.
11587
115882002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
11589
11590 * xselect.c (lisp_data_to_selection_data): Fix last change:
11591 set size_ret.
11592
115932002-06-07 Andreas Schwab <schwab@suse.de>
11594
11595 * m/amdx86-64.h: New file.
11596
115972002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
11598
11599 * fns.c (Fstring_make_unibyte): Doc fix.
11600
11601 * xselect.c (lisp_data_to_selection_data): If the requested type
11602 is STRING, call string_make_unibyte to encode the selected text
11603 as a string.
11604
11605 * window.c (Fset_window_hscroll): Doc fix.
11606
116072002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11608
11609 * fileio.c (choose_write_coding_system):
11610 Call select-safe-coding-system properly.
11611
116122002-06-03 Richard M. Stallman <rms@gnu.org>
11613
11614 * xdisp.c (message_with_string): Error if STRING is not a string.
11615
11616 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
11617
11618 * fileio.c (choose_write_coding_system): Pass FILE arg to
11619 Vselect_safe_coding_system_function.
11620
116212002-06-03 Ken Raeburn <raeburn@gnu.org>
11622
11623 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
11624
116252002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
11626
11627 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
11628 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
11629 * keymap.c (describe_command): Likewise.
11630 * minibuf.c (read_minibuf): Likewise.
11631
11632 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
11633 Cast `current_column' return value to int.
11634 (back_to_previous_visible_line_start)
11635 (reseat_at_next_visible_line_start, next_element_from_buffer):
11636 Cast `indented_beyond_p' 3rd arg to float.
11637
11638 * indent.c (last_known_column): Now a float.
11639 (current_column_1, position_indentation, current_column)
11640 (string_display_width): Return float.
11641 (Fcurrent_column): Cast `current_column' return value to int.
11642 (Fcurrent_indentation): Cast `position_indentation' retval to int.
11643 (indented_beyond_p): Third arg now a float.
11644 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
11645
11646 * lisp.h (current_column): Now returns float.
11647 (indented_beyond_p): 3rd arg now a float.
11648
116492002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
11650
11651 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
11652 is Qcompound_text_with_extensions.
11653
11654 * xselect.c (lisp_data_to_selection_data): Always set selection
11655 type as string if x_encode_text returns streingp non-NULL.
11656
11657 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
11658
116592002-05-30 Richard M. Stallman <rms@gnu.org>
11660
11661 * window.c (Fset_window_configuration): Correct the handling
11662 of point in current buffer, to work with multiple windows.
11663
116642002-05-29 Colin Walters <walters@verbum.org>
11665
11666 * lread.c (Fread_from_string): Don't depend on order of evaluation
11667 for C function parameters.
11668
116692002-05-28 Richard M. Stallman <rms@gnu.org>
11670
11671 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
11672 way for blinked-off state and for a nonselected window.
11673
11674 * window.c (window_scroll_pixel_based): Don't call Fbolp;
11675 instead, see if the new start pos is at beginning of line.
11676
11677 * fileio.c (Fwrite_region): If START is a string, don't
11678 make any annotations.
11679
11680 * eval.c (syms_of_eval): Doc fix.
11681
116822002-05-28 Colin Walters <walters@debian.org>
11683
11684 * emacs.c (USAGE1): Add --no-splash.
11685 (standard_args): Ditto.
11686
116872002-05-28 Colin Walters <walters@gnu.org>
11688
11689 * lread.c (readchar_count): New variable.
11690 (readchar): Increment it.
11691 (unreadchar): Decrement it.
11692 (read_multibyte): Decrement it.
11693 (Vread_with_symbol_positions): New variable.
11694 (Vread_symbol_positions_list): New variable.
11695 (read_internal_start): New function, created from Fread and
11696 Fread_from_string. Handle Vread_symbol_positions_list and
11697 Vread_with_symbol_positions.
11698 (readevalloop, Fread, Fread_from_string): Use it.
11699 (read1): Use readchar_count to add symbol positions to
11700 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
11701 (syms_of_lread): DEFVAR_LISP and initialize them.
11702
11703 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
11704 (substitute_object_recurse, substitute_object_in_subtree)
11705 (substitute_in_interval): Prototype.
11706 (read_multibyte): Return c if it's less than zero.
11707
117082002-05-28 Kim F. Storm <storm@cua.dk>
11709
11710 * fileio.c (Fread_file_name_internal): Added brute-force
11711 speed up for using predicate file-directory-p.
11712
117132002-05-28 Kim F. Storm <storm@cua.dk>
11714
11715 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
11716 New variables.
11717 (syms_of_fileio): DEFVAR_LISP them.
11718 (read_file_name_cleanup): New unwind function.
11719 (Fread_file_name_internal): Only return completions satifying
11720 Vread_file_name_predicate. Temporarily unwind protect and rebind
11721 default-directory while checking completions against the predicate.
11722 (Fread_file_name): Added PREDICATE argument. Specbind it to
11723 Vread_file_name_predicate during completion.
11724 Call Vread_file_name_function to read the file name if non-nil.
11725
11726 * lisp.h (Fread_file_name): Now has 6 args.
11727
11728 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
11729 predicate for Fread_file_name when reading directory name.
11730 Supply Qnil for predicate in other calls to Fread_file_name.
11731
117322002-05-26 Miles Bader <miles@gnu.org>
11733
11734 * term.c (tty_capable_p): New function.
11735 * dispextern.h (tty_capable_p): New function declaration.
11736 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
11737 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
11738
117392002-05-23 Stefan Monnier <monnier@cs.yale.edu>
11740
11741 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
11742 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
11743 (Vwrite_region_annotate_functions): Docstring fix.
11744
117452002-05-23 Kim F. Storm <storm@cua.dk>
11746
11747 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
11748 phys_cursor's hpos is overwritten. This is still not completely
11749 correct, as it doesn't really make sense to use hpos at all to
11750 get the cursor glyph (as that is relative to the width of the
11751 characters on the line, which may have changed during the update).
11752
117532002-05-22 Jason Rumney <jasonr@gnu.org>
11754
11755 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
11756 Lisp_Object.
11757 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
11758 Use modified enumfont_t struct.
11759
11760 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
11761
11762 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
11763 Handle the `hbar' cursor type.
11764 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
11765
11766 * w32fns.c (Qhbar): New variable.
11767 (x_specified_cursor_type): Use it.
11768
117692002-05-21 Ken Raeburn <raeburn@gnu.org>
11770
11771 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
11772 now, when the address is needed.
11773
117742002-05-21 Colin Walters <walters@gnu.org>
11775
11776 * Makefile.in (shortlisp): Add font-core.el.
11777
117782002-05-20 Richard M. Stallman <rms@gnu.org>
11779
11780 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
11781
11782 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
11783 equivalent key bindings here.
11784
117852002-05-20 Ken Raeburn <raeburn@gnu.org>
11786
11787 Change symbol structure to contain a lisp object for the symbol
11788 name:
11789 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
11790 object field named "xname".
11791 (SYMBOL_NAME): New macro.
11792 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
11793 name field.
11794 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
11795 (mark_object, gc_sweep): Use symbol xname field and XSTRING
11796 instead of name field.
11797 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
11798 SYMBOL_NAME instead of XSYMBOL and name field.
11799 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
11800 instead of XSYMBOL and name field.
11801 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
11802 and SYMBOL_NAME instead of XSYMBOL and name field.
11803 * coding.c (Fread_coding_system, code_convert_region1)
11804 (code_convert_string1, code_convert_string_norecord)
11805 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
11806 XSYMBOL and name field.
11807 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
11808 (Fmake_variable_buffer_local, Fmake_local_variable)
11809 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
11810 of XSYMBOL and name field.
11811 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
11812 XSYMBOL and name field.
11813 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
11814 instead of XSYMBOL and name field.
11815 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
11816 XSYMBOL and name field.
11817 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
11818 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
11819 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
11820 instead of XSYMBOL and name field.
11821 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
11822 (parse_modifiers, apply_modifiers, Fevent_convert_list)
11823 (parse_solitary_modifier, Fexecute_extended_command):
11824 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
11825 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
11826 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
11827 of XSYMBOL and name field.
11828 (describe_command, describe_translation): Use SYMBOL_NAME and
11829 assignment instead of XSYMBOL and name field and XSETSTRING.
11830 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
11831 instead of XSYMBOL and name field.
11832 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
11833 name field and XSETSTRING.
11834 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
11835 of XSYMBOL and name field.
11836 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
11837 assignment instead of XSYMBOL and name field and XSETSTRING.
11838 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
11839 XSTRING instead of XSYMBOL and name field.
11840 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
11841 and XSTRING instead of XSYMBOL and name field.
11842 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
11843 and XSTRING instead of XSYMBOL and name field.
11844 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
11845 XSTRING instead of XSYMBOL and name field.
11846 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
11847 of XSYMBOL and name field.
11848 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
11849 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
11850
118512002-05-19 Ken Raeburn <raeburn@gnu.org>
11852
11853 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
11854 and XCDR real rvalues in most configurations.
11855
11856 * buffer.c (fix_overlays_in_range, fix_overlays_before):
11857 Don't take the address of the cdr part of a cons cell; instead, track
11858 the parent cell and call XSETCDR, or set the variable for the head
11859 of the list if we haven't started down the list yet.
11860
118612002-05-19 Richard M. Stallman <rms@gnu.org>
11862
11863 * doc.c (reread_doc_file): Don't ask for confirmation.
11864
118652002-05-18 Jason Rumney <jasonr@gnu.org>
11866
11867 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
11868 (xbm_load_image): Use it.
11869 (xbm_load): Ditto.
11870 (xbm_read_bitmap_data): Reverted to xfns.c version.
11871 From David Ponce <david@dponce.com>.
11872
118732002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
11874
11875 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
11876 2.02 and later.
11877
118782002-05-16 Juanma Barranquero <lektu@terra.es>
11879
11880 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
11881
118822002-05-15 Stefan Monnier <monnier@cs.yale.edu>
11883
11884 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
11885 meaningful test.
11886 (read_char_minibuf_menu_prompt): Fix typo.
11887
118882002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
11889
11890 * eval.c (Fcommandp): Doc fix.
11891
118922002-05-13 Stefan Monnier <monnier@cs.yale.edu>
11893
11894 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
11895 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
11896 (Fset_keymap_parent): Gcpro a bit more.
11897 (access_keymap): Gcpro around meta_map call and around the main loop.
11898 (get_keyelt): Gcpro when following indirect references.
11899 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
11900 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
11901 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
11902 Remove useless ad-hoc remap code.
11903
119042002-05-13 Richard M. Stallman <rms@gnu.org>
11905
11906 * search.c (search_buffer): Give up boyer moore search if inverse
11907 translation change charset_base.
11908
119092002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
11910
11911 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
11912 characters is carried over from the previous block of text, adjust
11913 coding->produced to account for the extra character.
11914
119152002-05-11 Andreas Schwab <schwab@suse.de>
11916
11917 * coding.c (intersection): Keep the elements of the returned list
11918 in the same order as in the first list.
11919
119202002-05-11 Kim F. Storm <storm@cua.dk>
11921
11922 * keymap.c (current_minor_maps): Fixed resizing of cmm_maps;
11923 only update cmm_size if realloc actually succeeds.
11924 Testing with initial size of 2 elements revealed that using
11925 realloc on GNU/Linux would cause a random trap in xmalloc
11926 later on, so I rewrote the code to use malloc/bcopy/free instead
11927 of realloc.
11928
119292002-05-10 Jason Rumney <jasonr@gnu.org>
11930
11931 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
11932
119332002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
11934
11935 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
11936 parens, to ensure correct evaluation order.
11937
119382002-05-10 Kim F. Storm <storm@cua.dk>
11939
11940 * keymap.c (Vemulation_mode_map_alists): New variable.
11941 (syms_of_keymap): DEFVAR_LISP it.
11942 (current_minor_maps): Process keymap alists in that list before
11943 minor-mode-overriding-map-alist and minor-mode-map-alist.
11944
119452002-05-09 Richard M. Stallman <rms@gnu.org>
11946
11947 * search.c (Freplace_match): Doc fix.
11948
119492002-05-09 Kim F. Storm <storm@cua.dk>
11950
11951 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
11952 Enlarge cursor rectangle drawn around image with non-zero relief.
11953
11954 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
11955 Enlarge cursor rectangle drawn around image with non-zero relief.
11956
11957 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
11958 Enlarge cursor rectangle drawn around image with non-zero relief.
11959
119602002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
11961
11962 * xselect.c (lisp_data_to_selection_data): Don't set selection
11963 type if comes from the Lisp object's car. If the selection
11964 contains a pure ASCII text, always return QSTRING as its type.
11965
119662002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11967
11968 * mac.c (mac-cut-function): Doc fix.
11969
119702002-05-05 Richard M. Stallman <rms@gnu.org>
11971
11972 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
11973
119742002-05-04 Jason Rumney <jasonr@gnu.org>
11975
11976 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
11977 for event-click-count.
11978
11979 * process.c (init_process): Only add server subfeature if we can
11980 use non-blocking I/O.
11981
119822002-05-04 Andrew Choi <akochoi@shaw.ca>
11983
11984 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
11985 repeatedly.
11986
119872002-05-03 Jason Rumney <jasonr@gnu.org>
11988
11989 * process.c (Fmake_network_process): Only support server sockets
11990 when we can make them non-blocking.
11991
11992 * s/ms-w32.h (HAVE_SELECT): Define.
11993
11994 * w32.h (FILE_NDELAY): New flag.
11995
11996 * w32.c (sys_getpeername, fcntl): New functions.
11997 (_sys_read_ahead): Temporarily block on non-blocking sockets.
11998
11999 * w32proc.c: include sys/file.h.
12000
120012002-05-03 Colin Walters <walters@verbum.org>
12002
12003 * callproc.c (Vgame_score_directory): Renamed to
12004 Vshared_game_score_directory.
12005
120062002-04-30 Richard M. Stallman <rms@gnu.org>
12007
12008 * s/gnu.h [emacs]: Include stdio.h.
12009 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
12010
12011 * eval.c (do_autoload): Error if called while preparing to dump.
12012
12013 * fns.c (Frequire): Error if need to load while preparing to dump.
12014
120152002-04-28 Colin Walters <walters@verbum.org>
12016
12017 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
12018 Default to "~/.emacs.d/games".
12019
120202002-04-29 Stefan Monnier <monnier@cs.yale.edu>
12021
12022 * lread.c (openp): Change arg exec_only to predicate.
12023 (build_load_history): Use XCAR/XCDR.
12024 (Flocate_file_internal): New fun.
12025 (syms_of_lread): Defsubr it.
12026 (Fload): Update call to openp.
12027
12028 * lisp.h (openp): Update prototype.
12029
12030 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
12031 * w32proc.c (sys_spawnve):
12032 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
12033 * w32.c (check_windows_init_file):
12034 * sound.c (Fplay_sound_internal):
12035 * process.c (Fstart_process):
12036 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
12037 * mac.c (run_mac_command):
12038 * emacs.c (init_cmdargs):
12039 * callproc.c (Fcall_process): Update call to openp.
12040
12041 * textprop.c (remove_properties): Don't use XCAR without CONSP.
12042
12043 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
12044
120452002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12046
12047 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
12048 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
12049
120502002-04-28 Richard M. Stallman <rms@gnu.org>
12051
12052 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
12053
12054 * eval.c (Fcommandp): New arg for_call_interactively.
12055 * lisp.h (Fcommandp): Declare new arg.
12056
120572002-04-28 Jason Rumney <jasonr@gnu.org>
12058
12059 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
12060
12061 * w32.c (stat, fstat): Use file index information to generate
12062 inodes for directories where available.
12063
120642002-04-26 Andrew Choi <akochoi@shaw.ca>
12065
12066 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
12067 [HAVE_CARBON]: Include Mac object files.
12068
12069 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
12070 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
12071 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
12072 MAC_OSX, and MAC_OS instead of macintosh.
12073
12074 * editfns.c [MAC_OS8]: Include stdio.h.
12075
12076 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
12077
12078 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
12079 Apple Monaco.
12080
12081 * process.c: Declare QCfamily and QCfilter as extern.
12082 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
12083 calling select.
12084
12085 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
12086
12087 * tparam.c [MAC_OSX]: Don't define BC and UP.
12088
12089 * config.in [HAVE_CARBON]: Add.
12090
12091 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
12092 Move here from mac/src and mac/inc.
12093
12094 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
12095
120962002-04-26 Gerd Moellmann <gerd@gnu.org>
12097
12098 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
12099 Compute phys_cursor_width from the x position returned
12100 by x_draw_glyhs, which is cheaper.
12101 (x_display_and_set_cursor): Compute the buffer-local value
12102 of `cursor-in-non-selected-windows' only when needed.
12103
121042002-04-25 Gerd Moellmann <gerd@gnu.org>
12105
12106 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
12107 cursor on a stretch glyph has a width that depends on
12108 x_stretch_cursor_p.
12109
121102002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12111
12112 * abbrev.c (abbrev-start-location): Doc fix.
12113
12114 * indent.c (Fvertical_motion): Fix last change.
12115
121162002-04-25 Gerd Moellmann <gerd@gnu.org>
12117
12118 * indent.c (Fvertical_motion): Move to the start of the line
12119 containing PT before moving up or down.
12120
121212002-04-24 Gerd Moellmann <gerd@gnu.org>
12122
12123 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
12124 case of writing a whole row, more or less analogous to the case of
12125 writing only parts of a row.
12126
12127 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
12128 0 for NO_CURSOR.
12129
12130 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
12131
121322002-04-23 Colin Walters <walters@verbum.org>
12133
12134 * buffer.c (syms_of_buffer): Doc fix.
12135
121362002-04-23 Gerd Moellmann <gerd@gnu.org>
12137
12138 * xterm.c (notice_overwritten_cursor): Handle the special case
12139 of the cursor being in the first blank non-text line at the
12140 end of a window.
12141
12142 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
12143 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
12144 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
12145 bar cursors only, to make phys_cursor_width contain what its name
12146 suggests.
12147 (notice_overwritten_cursor): Consider the cursor image erased if
12148 the output area intersects the cursor image in y-direction.
12149
121502002-04-23 Simon Marshall <simon@gnu.org>
12151
12152 * xfns.c (x_set_mouse_color): Change default for cross_cursor
12153 to XC_hand2.
12154
121552002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12156
12157 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
12158
121592002-04-22 Kim F. Storm <storm@cua.dk>
12160
12161 * textprop.c (remove_properties): Fixed trap for malformed plist.
12162
121632002-04-22 Richard M. Stallman <rms@gnu.org>
12164
12165 * cmds.c (Fend_of_line): Handle intangible text in mid line.
12166
12167 * window.c (make_window): Initialize height_fixed_p,
12168 last_cursor_off_p, and p->cursor_off_p slots.
12169
121702002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12171
12172 * fns.c (use-dialog-box): Doc fix.
12173
121742002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12175
12176 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
12177 variables `row', `i' and `area'.
12178 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
12179 toolkit library.
12180
121812002-04-19 Stefan Monnier <monnier@cs.yale.edu>
12182
12183 * xfaces.c (clear_font_table): Don't free the default font of
12184 a frame even if it's on another display.
12185 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
12186 that could be Qt.
12187
121882002-04-19 Juanma Barranquero <lektu@terra.es>
12189
12190 * indent.c (Fmove_to_column): Remove unused local variable
12191 `next_boundary_byte'.
12192 (current_column_1): Likewise.
12193
121942002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
12195
12196 * msdos.c (Qhbar): New variable.
12197 (syms_of_msdos): Intern and staticpro it.
12198 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
12199 cursor type.
12200
122012002-04-19 Dave Lambert <dlambert@acm.org>
12202
12203 Theses change implement an underscore-like (`hbar') cursor.
12204
12205 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
12206
12207 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
12208 Handle the `hbar' cursor type.
12209 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
12210
12211 * xfns.c (Qhbar): New variable.
12212 (syms_of_xfns): Intern and staticpro it.
12213 (x_specified_cursor_type): Handle `hbar' cursor.
12214
12215 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
12216 not defined.
12217
122182002-04-18 Richard M. Stallman <rms@gnu.org>
12219
12220 * textprop.c (remove_properties): New arg LIST allows scanning
12221 either a list or a plist.
12222 (interval_has_some_properties_list): New function, like
12223 interval_has_some_properties using list instead of plist.
12224 All callers changed.
12225 (Fremove_list_of_text_properties): New function.
12226 (syms_of_textprop): Defsubr it.
12227
122282002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
12229
12230 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
12231
122322002-04-17 Juanma Barranquero <lektu@terra.es>
12233
12234 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
12235
122362002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
12237
12238 * window.c (coordinates_in_window): Don't report on margin area
12239 if its width is zero.
12240
122412002-04-16 Jason Rumney <jasonr@gnu.org>
12242
12243 * w32fns.c (Fx_file_dialog): Decode file name before using.
12244
12245 * w32term.c (construct_drag_n_drop): Likewise.
12246
122472002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
12248
12249 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
12250 store load-history in pure space.
12251
12252 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
12253
122542002-04-16 Stefan Monnier <monnier@cs.yale.edu>
12255
12256 * xterm.c (Qlatin_1, Qutf_8): New vars.
12257 (syms_of_xterm): Initialize them.
12258 (XTread_socket): Eliminate incorrect optimization that tried to avoid
12259 decoding the output of X*LookupString.
12260 Always use latin-1 to decode the output of XLookupString.
12261 Try Xutf8LookupString if XmbLookupString failed.
12262
12263 * region-cache.c (new_region_cache): Use BEG.
12264
122652002-04-16 Gerd Moellmann <gerd@gnu.org>
12266
12267 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
12268 configuration files.
12269 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
12270 returns 0.
12271
122722002-04-15 Andreas Schwab <schwab@suse.de>
12273
12274 * config.in: Regenerated using autoheader.
12275
12276 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
12277 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
12278 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
12279 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
12280 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
12281 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
12282 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
12283 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
12284 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
12285 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
12286 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
12287 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
12288 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
12289 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
12290 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
12291 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
12292 STACK_DIRECTION, now set by autoconf.
12293
122942002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12295
12296 * dispnew.c (marginal_area_string): Sort arguments.
12297
12298 * dispextern.h (marginal_area_string): Add prototype.
12299
123002002-04-13 Richard M. Stallman <rms@gnu.org>
12301
12302 * fileio.c (Finsert_file_contents):
12303 Don't call temp_output_buffer_setup--do just part, by hand.
12304
12305 * coding.c (run_pre_post_conversion_on_str):
12306 Don't call temp_output_buffer_setup--do just part, by hand.
12307
12308 * keyboard.c (command_loop_1): Don't call start_hourglass
12309 or cancel_hourglass when executing a macro.
12310
12311 * marker.c (count_markers): New function.
12312
12313 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
12314 grow without limit. Move recently used elements to the front.
12315
123162002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
12317
12318 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
12319
123202002-04-12 Gerd Moellmann <gerd@gnu.org>
12321
12322 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
12323 rows marginal areas.
12324 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
12325 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
12326
12327 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
12328
123292002-04-12 Dave Love <fx@gnu.org>
12330
12331 * dispnew.c (marginal_area_string): New.
12332
12333 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
12334 (Qleft_margin, Qright_margin): Declare.
12335 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
12336
12337 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
12338 note_mode_line_highlight and extended.
12339
12340 * keyboard.c (Qleft_margin, Qright_margin): Declare.
12341 (make_lispy_event): Deal with mouse events in margins.
12342
123432002-04-12 Stefan Monnier <monnier@cs.yale.edu>
12344
12345 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
12346
12347 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
12348 than deactivating the mark if tmm is set to `lambda'.
12349 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
12350 Use a single event for HELP_EVENT.
12351 (Fexecute_extended_command): Save last_point_position.
12352
123532002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12354
12355 * lisp.h (Fpropertize): Add prototype.
12356
12357 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
12358
123592002-04-10 Colin Walters <walters@verbum.org>
12360
12361 * config.in: Add HAVE_SHARED_GAME_DIR.
12362
12363 * callproc.c: (Vgame_score_directory): New variable.
12364 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
12365
123662002-04-10 Richard M. Stallman <rms@gnu.org>
12367
12368 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
12369
123702002-04-09 Stefan Monnier <monnier@cs.yale.edu>
12371
12372 * minibuf.c (read_minibuf): Use empty_string.
12373 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
12374 Short-circuit the search as soon as it "failed".
12375 (Fall_completions): Allow lambda forms and lists of strings for alist.
12376 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
12377 when require_match is nil.
12378 (Ftest_completion): Rename from `test_completion' and export to elisp.
12379 Call the predicate also when alist is a list.
12380 Obey Vcompletion_regexp_list.
12381 (do_completion, Fminibuffer_complete_and_exit): Use it.
12382 (Fassoc_string): Rename from `assoc_for_completion'.
12383 Allow list of strings as well and export to elisp.
12384
123852002-04-08 Stefan Monnier <monnier@cs.yale.edu>
12386
12387 * puresize.h (BASE_PURESIZE): Increase to 900KB.
12388
123892002-04-08 Juanma Barranquero <lektu@terra.es>
12390
12391 * w32.c (sys_accept): Don't hide variable `s'.
12392
123932002-04-05 Gerd Moellmann <gerd@gnu.org>
12394
12395 * callint.c (Fcall_interactively): Use INTEGERP instead of
12396 NUMBERP for checking Vhistory_length.
12397
123982002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12399
12400 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
12401 Doc fix to reflect it.
12402
124032002-04-04 Richard M. Stallman <rms@gnu.org>
12404
12405 * xdisp.c (display_mode_element): New arg RISKY.
12406 Disregard text props found or specified within a variable
12407 that isn't marked risky-local-variable.
12408 (Qrisky_local_variable): New variable.
12409 (syms_of_xdisp): Init and staticpro it.
12410
124112002-04-04 Stefan Monnier <monnier@cs.yale.edu>
12412
12413 * undo.c (record_point): New fun.
12414 (record_delete, record_insert): Use it.
12415
124162002-04-03 Juanma Barranquero <lektu@terra.es>
12417
12418 * doc.c (Fdocumentation): Add missing parentheses.
12419 (Fdocumentation_property): Likewise.
12420
124212002-04-03 Stefan Monnier <monnier@cs.yale.edu>
12422
12423 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
12424 data is 0, just return nil.
12425
124262002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
12427
12428 * msdos.c (syms_of_msdos): Fix last change with
12429 mouse_autoselect_window.
12430
124312002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12432
12433 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
12434 mouse_autoselect_window.
12435
124362002-04-02 Stefan Monnier <monnier@cs.yale.edu>
12437
12438 * keyboard.c (make_lispy_event): Handle unknown keysyms together
12439 with system-specific keysyms. Use it also for unknown function keys.
12440
12441 * doc.c (reread_doc_file): Return whether reload was attempted.
12442 (Fdocumentation, Fdocumentation_property): Don't try to reload
12443 if the doc is 0 and only ask once.
12444
12445 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
12446
124472002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
12448
12449 * keyboard.c (read_char): If the event was Qselect_window,
12450 restore timer_idleness_start_time to its previous value.
12451
12452 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
12453
124542002-04-01 Stefan Monnier <monnier@cs.yale.edu>
12455
12456 * region-cache.c (new_region_cache): Use BEG.
12457
12458 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
12459 Use BEG and BEG_BYTE.
12460
12461 * doc.c (get_doc_string): Return nil if the location is wrong.
12462 (reread_doc_file): New fun.
12463 (Fdocumentation, Fdocumentation_property):
12464 Call it if get_doc_string fails.
12465 (Fsnarf_documentation): Make it work for a dumped Emacs.
12466
12467 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
12468 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
12469
12470 * charset.c (Fstring): Allow 0 arguments.
12471
12472 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
12473
12474 * process.c (DATAGRAM_CONN_P, list_processes_1)
12475 (Fprocess_datagram_address, Fset_process_datagram_address)
12476 (Fset_network_process_options, server_accept_connection):
12477 Fix some int/Lisp_Object confusions (thank you union types).
12478
124792002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12480
12481 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
12482
12483 * w32term.c: Likewise.
12484 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
12485
12486 * keyboard.c (Qselect_window): New symbol.
12487 (head_table): Use it.
12488 (keys_of_keyboard): Bound select-window event to handle-select-window.
12489 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
12490
12491 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
12492 (last_window): New variable.
12493 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
12494 (note_mouse_movement): Remove reimplemented code in #if 0.
12495 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
12496 Emacs windows.
12497
12498 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
12499
125002002-03-31 Gerd Moellmann <gerd@gnu.org>
12501
12502 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
12503 Callers changed.
12504
125052002-03-30 Richard M. Stallman <rms@gnu.org>
12506
12507 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
12508 loop whenever it stops making progress.
12509
12510 * widget.c (set_frame_size): Don't call change_frame_size.
12511
125122002-03-30 Gerd Moellmann <gerd@gnu.org>
12513
12514 * dispnew.c (direct_output_for_insert):
12515 Call mark_window_display_accurate.
12516
125172002-03-29 Jason Rumney <jasonr@gnu.org>
12518
12519 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
12520
125212002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
12522
12523 * Makefile.in (lread.o): Depend on coding.h.
12524
12525 * lread.c (openp, Fload): Encode the file name before passing it
12526 to `stat', `access', and `emacs_open'.
12527 (openp): GCPRO the encoded file name. Don't recompute Lisp
12528 strings unnecessarily.
12529
125302002-03-29 Kim F. Storm <storm@cua.dk>
12531
12532 * fns.c (Flax_plist_put): Doc fix.
12533
125342002-03-28 Miles Bader <miles@gnu.org>
12535
12536 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
12537
125382002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12539
12540 * process.c (set-network-process-options): Add usage.
12541 (make-network-process): Doc fix.
12542
125432002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
12544
12545 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
12546
125472002-03-26 Richard M. Stallman <rms@gnu.org>
12548
12549 * fns.c (Fsubstring_no_properties): New function.
12550 (Flax_plist_get, Flax_plist_put): New functions.
12551 (syms_of_fns): defsubr them.
12552
12553 * xdisp.c (update_menu_bar): Test only update_mode_lines;
12554 don't test or alter w->update_mode_line.
12555
12556 * window.c (Fdisplay_buffer): Doc fix.
12557
125582002-03-24 Richard M. Stallman <rms@gnu.org>
12559
12560 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
12561
125622002-03-24 Gerd Moellmann <gerd@gnu.org>
12563
12564 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
12565 (Fdefmacro): Handle `(declare ...)'.
12566 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
12567 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
12568
125692002-03-24 Jason Rumney <jasonr@gnu.org>
12570
12571 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
12572 (xbm_file_p): Add prototypes.
12573 (xbm_format, xbm_image_p): Sync with xfns.c.
12574 (reflect_byte): New function.
12575 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
12576 (xbm_load_image): Create bitmaps with a depth of 1.
12577 (init_xfns): Enable XBM images.
12578
125792002-03-23 Jason Rumney <jasonr@gnu.org>
12580
12581 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
12582 correctly. Do not pass up_modifier to keyboard buffer.
12583
12584 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
12585
125862002-03-22 Stefan Monnier <monnier@cs.yale.edu>
12587
12588 * Makefile.in (bootstrapclean): New target.
12589 (bootstrap-temacs, bootstrap-doc): Remove.
12590 (bootstrap-emacs): Use a bog-standard `temacs'.
12591 Don't bother to build a DOC file.
12592
12593 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
12594
12595 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
12596 in temacs even if !CANNOT_DUMP.
12597 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
12598
12599 * alloc.c (check_pure_size): Only output a warning.
12600
126012002-03-22 Jason Rumney <jasonr@gnu.org>
12602
12603 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
12604 supported.
12605
12606 * w32term.c (zv_bits): Declare as short, for word alignment.
12607 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
12608 (syms_of_w32term): Define x-use-underline-position-properties.
12609
12610 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
12611 (clear_image_cache): Block input, fix logic, clear matrices in
12612 all frames that share this cache.
12613
126142002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
12615
12616 * emacs.c (main): Update the Copyright year in the blurb printed
12617 by "emacs --version".
12618
12619 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
12620
12621 * xterm.c (XTread_socket): If XK_ISO_Lock and
12622 XK_ISO_Last_Group_Lock are defined, handle keysyms between
12623 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
12624
126252002-03-21 Kim F. Storm <storm@cua.dk>
12626
12627 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
12628 menu-bar bindings in keymap and local-map properties _are_ used.
12629 But try keymap property first in accordance with 2002-01-03 patch.
12630 Added comment describing why this is not always reliable.
12631 (tool_bar_items): Ditto for tool-bar.
12632
126332002-03-21 Jason Rumney <jasonr@gnu.org>
12634
12635 * w32fns.c (x_clear_image_1): Disable color table code.
12636
126372002-03-21 Kim F. Storm <storm@cua.dk>
12638
12639 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
12640 removed the wrong version of the DEFUN macro; fixed it.
12641
12642 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
12643 Fmember rather than Fmemq).
12644 (Fprovide): Check that subfeatures is a list.
12645
12646 * process.c (QCfeature, QCdatagram): Removed variables.
12647 (QCtype, Qdatagram): New variables.
12648 (network_process_featurep): Removed function.
12649 (Fmake_network_process): Removed :feature check.
12650 Use :type 'datagram instead of :datagram t to create a datagram
12651 socket. This allows us to add other connection types (e.g. raw
12652 sockets) later in a consistent manner.
12653 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
12654 supported subfeatures for feature make-network-process.
12655 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
12656 Intern and staticpro QCtype and Qdatagram.
12657 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
12658
12659 * xfns.c: (QCtype): Remove duplicate declaration and
12660 initialization (is now declared in process.c).
12661
12662 * w32fns.c: (QCtype): Remove duplicate declaration and
12663 initialization (is now declared in process.c).
12664
126652002-03-21 Richard M. Stallman <rms@gnu.org>
12666
12667 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
12668 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
12669 when jumping to `fail' to avoid undoing reg changes in the
12670 last iteration of the loop.
12671 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
12672
12673 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
12674 Depend on process.h.
12675
126762002-03-20 Jason Rumney <jasonr@gnu.org>
12677
12678 Most of the following changes are still conditional on HAVE_IMAGES
12679 which is not set by default on Windows.
12680
12681 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
12682
12683 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
12684 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
12685 (four_corners_best, x_clear_image_1, x_clear_image)
12686 (x_alloc_image_color, postprocess_image)
12687 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
12688 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
12689 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
12690
12691 * w32gui.h (struct XImage): Define.
12692
12693 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
12694 extract mouse co-ordinates.
12695
126962002-03-20 Jason Rumney <jasonr@gnu.org>
12697
12698 * w32.c (init_winsock): Dynamically load new server and UDP
12699 socket functions.
12700 (socket_to_fd): New function.
12701 (sys_socket): Use it.
12702 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
12703 (sys_recvfrom, sys_sendto): New wrapper functions.
12704
12705 * process.c (QCfamily, QCfilter): Remove duplicate declaration
12706 and initialization.
12707
12708 * makefile.w32-in (LIBS): Remove $(WSOCK32).
12709
127102002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
12711
12712 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
12713 Don't use "sun" as a variable, it's a predefined constant on Sun
12714 machines.
12715
127162002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12717
12718 * bytecode.c (Fbyte_code): Revert last change.
12719
127202002-03-19 Kim F. Storm <storm@cua.dk>
12721
12722 * makefile.w32-in (LIBS): Add $(WSOCK32).
12723 From David Ponce <dponce@voila.fr>.
12724
127252002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12726
12727 * process.c (wait_reading_process_input): Move variables `pname'
12728 and `pnamelen' down where they are used.
12729
12730 * bytecode.c (Fbyte_code): Discard unused computed value to
12731 prevent gcc warning.
12732
12733 * lisp.h (Fplist_member): Add prototype.
12734
127352002-03-18 Kim F. Storm <storm@cua.dk>
12736
12737 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
12738 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
12739
12740 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
12741 Remove explicit GNU_LINUX settings for datagram support.
12742
127432002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12744
12745 * process.c (Fmake_network_process): Remove unused variable `sa'.
12746 Doc fix. Add usage:.
12747 (set_socket_options): Remove unused variables `optnum' and `opttype'.
12748
127492002-03-17 Richard M. Stallman <rms@gnu.org>
12750
12751 * xdisp.c (cursor_type_changed): New variable.
12752 (redisplay_internal): Redisplay all windows if cursor_type_changed.
12753 Clear it when clearing windows_or_buffers_changed.
12754 (try_cursor_movement, redisplay_window, try_window_id)
12755 (try_window_reusing_current_matrix): Test cursor_type_changed
12756 along with windows_or_buffers_changed.
12757
12758 * window.h (cursor_type_changed): New variable.
12759
12760 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
12761 not update_mode_lines, and always set it to 1.
12762
12763 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
12764 if no frames needed redrawing.
12765
127662002-03-17 Kim F. Storm <storm@cua.dk>
12767
12768 The following changes add support for network server processes,
12769 datagram connections, and local (unix) sockets.
12770
12771 * process.h (struct Lisp_Process): New member log.
12772 Doc fix: Member command used to indicate stopped network process.
12773 Doc fix: Member childp contains plist for network process.
12774 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
12775
12776 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
12777 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
12778 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
12779 New variables.
12780 (NETCONN1_P): New macro.
12781 (DATAGRAM_SOCKETS): New conditional symbol.
12782 (datagram_address): New array.
12783 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
12784 (status_message): Use concat3.
12785 (Fprocess_status): Add `listen' status to doc string. Return `stop'
12786 for a stopped network process.
12787 (Fset_process_buffer): Update contact plist for network process.
12788 (Fset_process_filter): Ditto. Don't enable input for stopped
12789 network processes. Server must listen, even if filter is t.
12790 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
12791 New functions.
12792 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
12793 (Fprocess_contact): Added KEY argument. Handle datagrams.
12794 (list_processes_1): Optionally show only processes with the query
12795 on exit flag set. Dynamically adjust column widths. Omit tty
12796 column if not needed. Report stopped network processes.
12797 Identify server and datagram network processes.
12798 (Flist_processes): New optional arg `query-only'.
12799 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
12800 (conv_lisp_to_sockaddr, set_socket_options)
12801 (network_process_featurep, unwind_request_sigio): New helper functions.
12802 (Fprocess_datagram_address, Fset_process_datagram_address):
12803 (Fset_network_process_options): New lisp functions.
12804 (Fopen_network_stream): Removed. Now defined in simple.el.
12805 (Fmake_network_process): New lisp function. Code is based on previous
12806 Fopen_network_stream, but heavily reworked with new property list based
12807 argument list, support for datagrams, server processes, and local
12808 sockets in addition to old client-only functionality.
12809 (server_accept_connection): New function.
12810 (wait_reading_process_input): Use it to handle incoming connects.
12811 Do not enable input on a new connection if process is stopped.
f63fd14e 12812 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
048addec
JD
12813 (send_process): Handle datagram sockets.
12814 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
12815 network process is indicated by setting command field to t .
12816 (Fprocess_send_eof): No-op if datagram connection.
12817 (Fstatus_notify): Don't read input for a stream server socket or a
12818 stopped network process.
12819 (init_process): Initialize datagram_address array.
12820 (syms_of_process): Intern and staticpro new variables, defsubr new
12821 functions.
12822
128232002-03-16 Jason Rumney <jasonr@gnu.org>
12824
12825 * w32fns.c (w32_to_all_x_charsets): Return correct type in
12826 startup case.
12827
128282002-03-16 Richard M. Stallman <rms@gnu.org>
12829
12830 * xdisp.c (redisplay_internal, redisplay_windows):
12831 Use list_of_error to call internal_condition_case_1.
12832 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
12833 so as to catch all errors with no possibility of debugger redisplay.
12834 (list_of_error): New variable.
12835 (syms_of_xdisp): Init and staticpro it.
12836
12837 * print.c (print_object): Delete `\ ' from printed rep of frame.
12838
128392002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
12840
12841 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
12842 until its implementation is fixed.
12843
128442002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12845
12846 * xfns.c (png_load): Remove unused variable `gamma_str'.
12847
128482002-03-14 Richard M. Stallman <rms@gnu.org>
12849
12850 * xfns.c (x_real_positions): Handle failure in XQueryTree.
12851
128522002-03-14 Miles Bader <miles@gnu.org>
12853
12854 * intervals.c (adjust_for_invis_intang): New function.
12855 (set_point_both): Use `adjust_for_invis_intang' to do most of the
12856 work for dealing with invisible+intangible regions. Do so before
12857 and after both forward and backward movements, to handle both
12858 front-sticky and rear-sticky cases.
12859 * textprop.c (text_property_stickiness): Function moved here from
12860 `editfns.c'.
12861 * intervals.h (text_property_stickiness): New declaration.
12862 * editfns.c (char_property_eq): Function removed.
12863 (text_property_stickiness): Function moved to `textprop.c'.
12864
128652002-03-13 Jason Rumney <jasonr@gnu.org>
12866
12867 * config.in: Add STRFTIME_NO_POSIX2.
12868
12869 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
12870 and %OX when underlying strftime does not.
12871
128722002-03-13 Stefan Monnier <monnier@cs.yale.edu>
12873
12874 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
12875 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
12876 line) to avoid annoying flicker.
12877 (xm_scroll_callback): Get rid of the now unnecessary kludge.
12878 (XTread_socket): Mark it static.
12879
12880 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
12881
128822002-03-13 Kim F. Storm <storm@cua.dk>
12883
12884 * puresize.h (BASE_PURESIZE): Increase to 775000.
12885
128862002-03-12 Juanma Barranquero <lektu@terra.es>
12887
12888 * editfns.c (syms_of_editfns): Fix typo.
12889
128902002-03-12 Gerd Moellmann <gerd@gnu.org>
12891
12892 * xsmfns.c: Include stdio.h because termhooks.h needs it.
12893 Include termopt.h for interrupt_input.
12894
128952002-03-11 Andreas Schwab <schwab@suse.de>
12896
12897 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
12898
128992002-03-11 Gerd Moellmann <gerd@gnu.org>
12900
12901 * xterm.c (note_mouse_movement): Put code for
12902 x_autoselect_window_p in #if 0.
12903
12904 * lread.c (Fload): Don't assume that message_with_string uses the
12905 string it is given like a C string.
12906
129072002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12908
12909 * xterm.h (x_session_check_input, x_session_initialize): Declared.
12910
12911 * xterm.c: (XTread_socket): Add call to x_session_check_input and
12912 x_session_have_connection.
12913 (x_initialize): Add call to x_session_initialize.
12914
12915 * termhooks.h (enum event_kind): Add save_session_event.
12916
12917 * keyboard.c: Add Emacs event save_session_event.
12918
12919 * emacs.c (main): Add call to syms_of_xsmfns.
12920
12921 * lisp.h: Declare syms_of_xsmfns as extern.
12922
12923 * config.in: Add HAVE_X_SM.
12924
12925 * Makefile.in (LIBXT): Add -lSM -lICE
12926 if HAVE_X_SM and not USE_X_TOOLKIT.
12927 (XOBJ): New file xsmfns.c added.
12928
12929 * xsmfns.c: New file for X session management.
12930
129312002-03-09 Jason Rumney <jasonr@gnu.org>
12932
12933 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
12934 read-only when setting modified time.
12935
129362002-03-08 Gerd Moellmann <gerd@gnu.org>
12937
12938 * xdisp.c (move_it_vertically_backward): At the end of the function,
12939 when moving forward by lines, treat terminal frames specially.
12940
12941 * keyboard.c (echo_char): Make sure to add a separator between
12942 keys even if echo_dash hasn't been called.
12943
12944 * xdisp.c: Use new string macros.
12945 (update_echo_area): Pass number of bytes to message3 instead of
12946 number of chars.
12947 (set_message_1): Don't access a string's size_byte directly.
12948 (decode_mode_spec_coding): Use number of bytes of eoltype string
12949 instead number of chars.
12950
12951 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
12952
129532002-03-08 Juanma Barranquero <lektu@terra.es>
12954
12955 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
12956 24-bit.
12957
129582002-03-06 Jason Rumney <jasonr@gnu.org>
12959
12960 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
12961
129622002-03-06 Gerd Moellmann <gerd@gnu.org>
12963
12964 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
12965 (cancel_echoing, echo_length, echo_truncate): Changed to
12966 work with new kboard definition.
12967 (echo_now): Use message3_nolog instead of message2_nolog.
12968
12969 * alloc.c (mark_kboards): Mark echo_string.
12970
12971 * keyboard.h (ECHOBUFSIZE): Removed.
12972 (struct kboard): Member echoptr removed, member echobuf renamed
12973 to echo_string.
12974
12975 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
12976 message3 instead of message2 to display the message using STRING's
12977 text properties.
12978
129792002-03-05 Andreas Schwab <schwab@suse.de>
12980
12981 * xdisp.c (hscroll_margin): Change to EMACS_INT.
12982
129832002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
12984
12985 * frame.c (default-frame-alist): Explain that setting it doesn't
12986 affect existing frames.
12987
129882002-03-05 Stefan Monnier <monnier@cs.yale.edu>
12989
12990 * indent.c (skip_invisible): Fix my brain fart.
12991
12992 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
12993
129942002-03-04 Stefan Monnier <monnier@cs.yale.edu>
12995
12996 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
12997 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
12998 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
12999 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
13000 and variables to use EMACS_INT instead of just int.
13001
13002 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
13003
130042002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
13005
13006 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
13007 environment, pass it down with corrected value.
13008
130092002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13010
13011 * lread.c (read_filtered_event): Do not call start_hourglass
13012 before returning.
13013
130142002-03-04 Juanma Barranquero <lektu@terra.es>
13015
13016 * w32term.c (x_display_and_set_cursor): Fix typo.
13017
130182002-03-03 Richard M. Stallman <rms@gnu.org>
13019
13020 * fileio.c (Fmake_temp_name): Doc fix.
13021
130222002-03-03 Gary Wong <gtw@gnu.org>
13023
13024 * termcap.c [!emacs]: Replace ospeed for building standalone
13025 libtermcap, for binary compatibility.
13026
13027 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
13028
130292002-03-03 Richard M. Stallman <rms@gnu.org>
13030
13031 * xrdb.c (file_p): Rename arg `path' to `filename'.
13032
13033 * abbrev.c (Fexpand_abbrev): Increment plist as use count
13034 only if it is an integer.
13035
13036 * xfns.c (png_load): Set screen_gamma based on f->gamma.
13037 If png_get_sRGB gives an answer, call png_set_gamma
13038 using the default image gamma value.
13039
13040 * lread.c (read1): When reading from a file, default string to
13041 multibyte only if it has some multibyte characters.
13042
13043 * print.c (print_object): Output multibyte chars 128...255
13044 using \x even if ! print_escape_multibyte.
13045
13046 * xdisp.c (display_mode_element): Move the places where
13047 bytepos, charpos, this, and lisp_string are set.
13048 Use lisp_string to set bytepos.
13049
13050 * xdisp.c (redisplay_internal):
13051 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
13052
13053 * xdisp.c (display_mode_element): Merge properties specified with
13054 :propertize onto those that come with the string.
13055
130562002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
13057
13058 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
13059 automatic-hscrolling. Users changed.
13060 <hscroll-margin>: Renamed from automatic-hscroll-margin.
13061 Users changed.
13062 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
13063
130642002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
13065
13066 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
13067
130682002-03-02 Kim F. Storm <storm@cua.dk>
13069
13070 * window.c (Fminibuffer_selected_window): New function.
13071 (syms_of_window): Defsubr it.
13072
130732002-03-01 Kim F. Storm <storm@cua.dk>
13074
13075 * window.h (struct window): New member phys_cursor_width.
13076
13077 * window.c (make_window, replace_window): Init phys_cursor_width.
13078
13079 * xterm.c (x_display_and_set_cursor): Blink box cursor using
13080 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
13081
13082 * w32term.c (x_display_and_set_cursor): Blink box cursor using
13083 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
13084
13085 * lisp.h (GCPRO6): New macro.
13086
13087 * process.c (Fopen_network_stream): Use GCPRO6.
13088
130892002-03-01 Kim F. Storm <storm@cua.dk>
13090
13091 * process.c (Qconnect, Qfailed): New variables.
13092 (syms_of_process): Intern and staticpro them.
13093 (Fprocess_status): Document connect and failed return values.
13094 [NON_BLOCKING_CONNECT]: New conditional.
13095 (connect_wait_mask, num_pending_connects): New variables.
13096 (status_message): Convert Qfailed status.
13097 (Fopen_network_stream): Added support for non-blocking connect.
13098 New optional args: filter, sentinel, non_blocking. Doc updated.
13099 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
13100 (deactivate_process): Handle pending non-blocking connect.
13101 (wait_reading_process_input): Poll for status of non-blocking
13102 connects. Exec sentinel directly when connect succeeds.
13103 (status_notify): Don't read process output if not yet connected.
13104
131052002-02-28 Kim F. Storm <storm@cua.dk>
13106
13107 * window.c: (minibuf_selected_window): Renamed from
13108 Vminibuf_selected_window. Users changed.
13109 (syms_of_window): Staticpro it.
13110
131112002-02-26 Kim F. Storm <storm@cua.dk>
13112
13113 The following changes add a new Vminibuf_selected_window variable
13114 which is similar to Vminibuf_scroll_window, but which is only set
13115 on entry to the minibuffer (from a non-minibuffer window):
13116
13117 * window.c: (Vminibuf_selected_window): New variable.
13118 (struct save_window_data): New member minibuf_selected_window.
13119 (Fset_window_configuration): Restore Vminibuf_selected_window.
13120 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
13121 Set minibuf_scroll_window member to nil if minibuf_level is 0.
13122 (compare_window_configurations): Compare minibuf_selected_window.
13123
13124 * window.h: (Vminibuf_selected_window): Declare extern.
13125
13126 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
13127 entry to minibuffer or on entry from a non-minibuffer window.
13128
13129 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
13130 Vminibuf_selected_window instead of Vminibuf_scroll_window.
13131
13132 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
13133 instead of Vminibuf_scroll_window when deciding in which window
13134 the region should be highlighted. Consequently, the region remains
13135 highlighteded even when a completion buffer is also displayed.
13136
131372002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
13138
13139 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
13140
13141 * xselect.c (Qcompound_text_with_extensions): Renamed from
13142 Qcompound_text_no_extensions.
13143 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
13144
131452002-02-26 Juanma Barranquero <lektu@terra.es>
13146
13147 * w32proc.c (syms_of_ntproc): Doc fix.
13148
131492002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13150
13151 * intervals.h: Include "dispextern.h" unconditionally.
13152
131532002-02-24 Jason Rumney <jasonr@gnu.org>
13154
13155 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
13156 and disp-table.elc.
13157 (lisp): Add emacs-lisp/backquote.elc.
13158
131592002-02-24 Kim F. Storm <storm@cua.dk>
13160
13161 * keymap.c (Flookup_key): Fixed problem in 2001-12-28 patch:
13162 The validation of the event type was too strict as it didn't
13163 allow string events; buffer names are used in bindings for
13164 menu-bar-select-buffer (see `menu-bar-update-buffers').
13165
131662002-02-23 Kim F. Storm <storm@cua.dk>
13167
13168 The following changes rework my patch of 2002-02-06 which
13169 added command remapping by entering the commands directly into
13170 the keymaps. Now, command remapping uses an explicit `remap'
13171 prefix in the keymaps, i.e. [remap COMMAND].
13172
13173 * keymap.c (Qremap, remap_command_vector): New variables.
13174 (is_command_symbol): Removed function.
13175 (Fdefine_key): No longer accept a symbol for KEY.
13176 Added validation of [remap COMMAND] argument for KEY.
13177 The DEF is no longer required to be a symbol when remapping a command.
13178 (Fremap_command): New function to remap command through keymaps.
13179 (Flookup_key): Perform command remapping initiated by
13180 Fremap_command directly for speed.
13181 (Fkey_binding): Use Fremap_command for command remapping.
13182 (where_is_internal): Handle new command remapping representation.
13183 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
13184 staticpro them. Defsubr Fremap_command.
13185
13186 * keymap.h (Fremap_command): Declare extern.
13187 (is_command_symbol): Remove extern.
13188
13189 * keyboard.c (command_loop_1): Use Fremap_command for command
13190 remapping; now try command remapping for all symbols.
13191
131922002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
13193
13194 * coding.h (run_pre_post_conversion_on_str): Add prototype.
13195
131962002-02-23 Jason Rumney <jasonr@gnu.org>
13197
13198 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
13199 on the string before encoding it.
13200 (Fw32_get_clipboard_data): Run post-read-conversion on the string
13201 after decoding it.
13202
13203 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
13204
132052002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13206
13207 * w32term.c (enter_timestamp): Remove unused static variable to
13208 prevent warning.
13209
13210 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
13211
132122002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
13213
13214 * w16select.c (Fw16_get_clipboard_data): Fix last change.
13215
13216 * xselect.c (selection_data_to_lisp_data): Fix last change.
13217
132182002-02-22 Jason Rumney <jasonr@gnu.org>
13219
13220 * w32term.h (struct w32_output): New member menu_command_in_progress.
13221
13222 * w32menu.c (menubar_selection_callback): Free the menu and
13223 clear the menu_command_in_progress flag.
13224
13225 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
13226 (menu_free_timer): New variable.
13227 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
13228 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
13229 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
13230 menu command is in progress.
13231 <WM_COMMAND>: Set the menu_command_in_progress flag.
13232 Kill any menu_free_timer that is running.
13233
13234 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
13235 Call ExtTextOutA rather than ExtTextOut.
13236
132372002-02-22 Eli Zaretskii <eliz@gnu.org>
13238
13239 * puresize.h (BASE_PURESIZE): Increase to 755000.
13240
132412002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
13242
13243 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
13244 on the string before encoding it.
13245 (Fw16_get_clipboard_data): Run post-read-conversion on the string
13246 after decoding it.
13247
132482002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
13249
13250 Support for ICCCM Extended Segments in X selections:
13251
13252 * xselect.c <Qcompound_text_no_extensions>: New variable.
13253 (syms_of_xselect): Intern and staticpro it.
13254 (selection_data_to_lisp_data): Run post-read-conversion on decoded
13255 selection text.
13256 (lisp_data_to_selection_data): If next-selection-coding-system is
13257 compound-text-no-extensions, set the type of selection to be
13258 compound-text.
13259
13260 * xterm.h (x_encode_text): Update prototype.
13261
13262 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
13263 callers changed. If SELECTIONP is non-zero, run the
13264 pre-write-conversion function before encoding the selection text.
13265
132662002-02-21 Kim F. Storm <storm@cua.dk>
13267
13268 * frame.c (syms_of_frame): Change mouse-highlight default to t.
13269
13270 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
13271 Correct composing of language-change event.
13272
132732002-02-20 Kim F. Storm <storm@cua.dk>
13274
13275 * keyboard.c (menu_bar_items): Don't include keymap or local-map
13276 bindings at PT when building menu (the menu is not updated often
13277 enough for this to work reliable).
13278 (tool_bar_items): Likewise.
13279 (current_active_maps): Removed unused (and buggy) function.
13280
132812002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13282
13283 * xfns.c (gif_load): Use correct width and height for GIF images.
13284
132852002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
13286
13287 * floatfns.c (Fatan): Accept an optional second arg and call
13288 atan2 if passed 2 args.
13289
132902002-02-18 Jason Rumney <jasonr@gnu.org>
13291
13292 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
13293
132942002-02-17 Jason Rumney <jasonr@gnu.org>
13295
13296 * w32term.c (x_autoselect_window_p): New variable.
13297 (syms_of_w32term): DEFVAR_BOOL and initialize it.
13298 (note_mouse_movement): Use it.
13299
13300 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
13301
13302 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
13303
13304 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
13305 New variables.
13306 (syms_of_w32fns): Intern and staticpro them.
13307 (x_frame_parms) <"fullscreen">: New parameter.
13308 (x_fullscreen_move, x_set_fullscreen): New functions.
13309 (x_set_frame_parameters): Support Qfullscreen.
13310 (x_real_positions): Save x/y_pixels_diff frame params.
13311 (x_figure_window_size): Support full-screen frames.
13312 (Fx_create_frame): Default the fullscreen parameter.
13313
13314 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
13315 (x_fullscreen_adjust): New functions.
13316 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
13317 fullscreen. Call x_check_fullscreen_move, and set the
13318 want_fullscreen member of output_data.w32
13319 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
13320
13321 * w32term.h: New enum for FULLSCREEN_* constants.
13322 (struct w32_output): New members want_fullscreen, x_pixels_diff,
13323 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
13324 (x-fullscreen-adjust): New prototype.
13325
133262002-02-17 Kim F. Storm <storm@cua.dk>
13327
13328 * frame.c: (Vmouse_highlight): New variable.
13329 (syms_of_frame): DEFVAR_LISP it.
13330
13331 * frame.h: (Vmouse_highlight): Declare extern.
8a8e19a3 13332
048addec 13333 * xterm.h (struct x_display_info): Add mouse_face_hidden.
8a8e19a3 13334
048addec
JD
13335 * xterm.c (disable_mouse_highlight): Removed variable.
13336 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
13337 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
13338 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
13339 and on after keyboard input.
13340 (x_term_init): Initialize mouse_face_hidden.
8a8e19a3 13341
048addec 13342 * msdos.h (struct display_info): Add mouse_face_hidden.
8a8e19a3 13343
048addec
JD
13344 * msdos.c (disable_mouse_highlight): Removed variable.
13345 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
13346 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
13347 (internal_terminal_init): Initialize mouse_face_hidden.
13348 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
13349 and on after keyboard input.
4f1b1854 13350
048addec 13351 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
4f1b1854 13352
048addec
JD
13353 * w32term.c (disable_mouse_highlight): Removed variable.
13354 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
13355 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
13356 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
13357 and on after keyboard input.
13358 (w32_initialize_display_info): Initialize mouse_face_hidden.
4f1b1854 13359
048addec 133602002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
4f1b1854 13361
048addec
JD
13362 * msdos.c (last_mouse_window): New variable.
13363 (dos_rawgetc): Fix last change--if the mouse is in the same window
13364 as recorded in last_mouse_window, don't select this window.
5cb6905d 13365
048addec 13366 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
5cb6905d 13367
048addec
JD
13368 * msdos.c (x_autoselect_window_p): New variable.
13369 (syms_of_msdos): Defvar it.
13370 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
13371 which the last mouse movement occured, unless it is already selected.
437dfb9f 13372
048addec
JD
13373 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
13374 New variables.
13375 (syms_of_xdisp): DEVFAR them.
13376 (hscroll_window_tree): Use automatic_hscroll_margin and
13377 Vautomatic_hscroll_step to compute the amount of window scrolling.
437dfb9f 13378
048addec 133792002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9f696a00 13380
048addec
JD
13381 * xterm.c (x-autoselect-window): New variable.
13382 (note_mouse_movement): Use it.
9f696a00 13383
048addec 13384 * keyboard.c: Do not include "systime.h" twice.
d57966d7 13385
048addec 133862002-02-15 Andreas Schwab <schwab@suse.de>
d57966d7 13387
bfa02563 13388 * puresize.h (PURESIZE_RATIO): Increase to 9/5.
d57966d7 13389
048addec 13390 * alloc.c (NSTATICS): Increase to 1280.
74779f52 13391
048addec 133922002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
74779f52 13393
048addec 13394 * alloc.c (NSTATICS): Bump to 1026.
a474d59c 13395
048addec
JD
13396 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
13397 (Vx_super_keysym): New variables.
13398 (syms_of_xterm): DEFVAR_LISP them.
13399 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
13400 variables to determine which keys to use for the various modifiers.
a474d59c 13401
048addec 134022002-02-13 Kim F. Storm <storm@cua.dk>
fbb70ad9 13403
048addec
JD
13404 * window.c: (Vmode_line_in_non_selected_windows): Removed.
13405 (mode_line_in_non_selected_windows): New variable.
13406 (syms_of_window): DEFVAR_BOOL it.
fbb70ad9 13407
048addec
JD
13408 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
13409 Use mode_line_in_non_selected_windows.
13410 (mode_line_in_non_selected_windows): Declare extern.
13411 (Vmode_line_in_non_selected_windows): Removed extern.
2d10309f 13412
048addec 134132002-02-13 Richard M. Stallman <rms@gnu.org>
2d10309f 13414
048addec
JD
13415 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
13416 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
13417 (Fclear_this_command_keys): Doc fixes.
2d10309f 13418
048addec
JD
13419 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
13420 (update_face_from_frame_parameter): Increment face_change_count
13421 and windows_or_buffers_changed to force redisplay using changed faces.
7f2cddf3 13422
048addec
JD
13423 * xdisp.c (QCpropertize): New variable.
13424 (mode_line_proptrans_alist): New variable.
13425 (display_mode_element): New arg PROPS; all calls changed.
13426 Implement this, for strings.
13427 Handle literal output of strings by sharing the
13428 main-line code for strings, using local var `literal'.
13429 Handle :propertize feature.
13430 (syms_of_xdisp): Initialze and staticpro QCpropertize and
13431 mode_line_proptrans_alist.
0b1e6b54 13432
048addec 134332002-02-11 Kim F. Storm <storm@cua.dk>
7f2cddf3 13434
048addec
JD
13435 * window.c: (Vmode_line_in_non_selected_windows): New variable.
13436 (syms_of_window): DEFVAR_LISP it.
7f2cddf3 13437
048addec
JD
13438 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
13439 (CURRENT_MODE_LINE_FACE_ID): Use it.
13440 (Vmode_line_in_non_selected_windows): Declare extern.
e17144de 13441
048addec
JD
13442 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
13443 to get mode line face.
e17144de 13444
048addec 134452002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 13446
048addec
JD
13447 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
13448 variables; cus-start.el doesn't need them anymore.
44368f8f 13449
048addec 134502002-02-09 Kim F. Storm <storm@cua.dk>
f884b6f4 13451
048addec
JD
13452 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
13453 reduction. This fixes a display problem where stray newlines were
13454 inserted in the window (corrected by C-l). Clarified code (IMHO).
6637c996 13455
048addec 134562002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 13457
048addec 13458 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
6637c996 13459
048addec 13460 * xdisp.c (display_mode_lines): Fix last change.
453c5510 13461
048addec 134622002-02-09 Jason Rumney <jasonr@gnu.org>
453c5510 13463
048addec
JD
13464 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
13465 match each other.
13466 (w32_load_system_font): Prevent Cleartype fonts from loading.
13467 (Fx_show_tip): Ensure tip frames are above other topmost windows.
d1d070e3 13468
048addec 134692002-02-09 Kim F. Storm <storm@cua.dk>
d1d070e3 13470
048addec
JD
13471 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
13472 (CURRENT_MODE_LINE_HEIGHT): Use it.
13473 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 13474
048addec
JD
13475 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
13476 (pos_visible_p, handle_face_prop): Likewise.
13477 (display_mode_lines): Likewise, but for the real selected window.
13478 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 13479
048addec
JD
13480 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
13481 in non-selected windows.
13482 (realize_basic_faces): Realize it.
13483 (syms_of_term): Intern and staticpro it.
308dd672 13484
048addec 134852002-02-08 Kim F. Storm <storm@cua.dk>
edde72f6 13486
048addec
JD
13487 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
13488 Changed mail addresses to emacs-devel@gnu.org.
308dd672 13489
048addec 134902002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
3c1e6b46 13491
048addec
JD
13492 * fileio.c (Fsubstitute_in_file_name): If the file name includes
13493 ~user, and there's no such user, don't discard everything before ~user.
03950b5b 13494
048addec 13495 * floatfns.c (Fround): Doc fix.
3c1e6b46 13496
048addec 134972002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c1e11810 13498
048addec 13499 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
c1e11810 13500
048addec 135012002-02-07 Stefan Monnier <monnier@cs.yale.edu>
1996baee 13502
048addec 13503 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
1996baee 13504
048addec 135052002-02-07 Kim F. Storm <storm@cua.dk>
0065bb74 13506
048addec
JD
13507 * keymap.c (where_is_internal): Only check whether definition is
13508 remapped if it fulfills is_command_symbol.
0065bb74 13509
048addec 135102002-02-07 Andreas Schwab <schwab@suse.de>
0065bb74 13511
048addec 13512 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
b5cb6072 13513
048addec 13514 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
b5cb6072 13515
048addec 135162002-02-06 Kim F. Storm <storm@cua.dk>
15fff01d 13517
048addec
JD
13518 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
13519 defining command remapping. Doc updated.
13520 (Flookup_key): Remap command through keymap if KEY is a symbol.
13521 (is_command_symbol): New function.
13522 (Fkey_binding): Use it. New optional argument NO-REMAP.
13523 Doc updated. Callers changed. Perform command remapping via
13524 recursive call unless that arg is non-nil.
13525 (where_is_internal): New argument no_remap. Callers changed.
13526 Call recursively to find original key bindings for a remapped
13527 comand unless that arg is non-nil.
13528 (Fwhere_is_internal): New optional argument NO-REMAP.
13529 Doc updated. Callers changed. Pass arg to where_is_internal.
0065bb74 13530
048addec
JD
13531 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
13532 (is_command_symbol): Added prototype.
0d8466cc 13533
048addec
JD
13534 * keyboard.c (Vthis_original_command): New variable.
13535 (syms_of_keyboard): DEFVAR_LISP it.
13536 (command_loop_1): Set it, and perform command remapping.
15fff01d 13537
048addec 135382002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2fae9111 13539
048addec 13540 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
2d6c1fc0 13541
048addec 135422002-02-06 Jason Rumney <jasonr@gnu.org>
07025a55 13543
048addec 13544 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
07025a55 13545
048addec 135462002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
07025a55 13547
048addec 13548 * charset.c (get_charset_id): Use if-else instead of ?:.
3a232704 13549
048addec 135502002-02-06 Richard M. Stallman <rms@gnu.org>
539e92ad 13551
048addec 13552 * filelock.c (S_ISLNK): Define if not defined.
3a232704 13553
048addec 135542002-02-03 Richard M. Stallman <rms@gnu.org>
0cb8bb48 13555
048addec 13556 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
539e92ad 13557
048addec
JD
13558 * lread.c (read1): Redesign strategy for force_multibyte and
13559 force_singlebyte. Now is_multibyte records whether read_buffer
13560 is multibyte. Encountering any multibyte character makes it so.
4e02881b 13561
048addec 135622002-02-02 Stefan Monnier <monnier@cs.yale.edu>
4e02881b 13563
048addec
JD
13564 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
13565 with the same sequence, map that sequence to f10 rather than f0.
1ab964d7 13566
048addec 135672002-02-03 Andreas Schwab <schwab@suse.de>
1ab964d7 13568
048addec
JD
13569 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
13570 latter never being defined on GNU/Linux.
749f499f 13571
048addec 135722002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
749f499f 13573
048addec
JD
13574 * xfaces.c (realize_default_face): Don't set the weight and slant of
13575 the default face to Qnormal, unless these attributes are unspecified.
b5d9aaba 13576
048addec 135772002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3a232704 13578
048addec
JD
13579 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
13580 Call cancel_hourglass unconditionally.
d0fd26dd 13581
048addec
JD
13582 * eval.c (Fsignal): Remove duplicated declaration of
13583 the variable `display_hourglass_p'.
b4c45162 13584
048addec 135852002-01-31 Richard M. Stallman <rms@gnu.org>
d0fd26dd 13586
048addec 13587 * editfns.c (region_limit): Nicer error message.
c95eaa61 13588
048addec
JD
13589 * coding.c (decode_composition_emacs_mule):
13590 Give up if NCOMPONENT gets too large to index `component'.
c95eaa61 13591
048addec
JD
13592 * callint.c (check_mark): New arg to specify clearer error message.
13593 Callers changed.
c95eaa61 13594
048addec 135952002-01-27 Richard M. Stallman <rms@gnu.org>
c95eaa61 13596
048addec 13597 * minibuf.c (Fcompleting_read): Doc fix.
c95eaa61 13598
048addec 135992002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c95eaa61 13600
048addec
JD
13601 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
13602 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
13603 Fix doc-strings.
c95eaa61 13604
048addec 136052002-01-26 Richard M. Stallman <rms@gnu.org>
c95eaa61 13606
048addec 13607 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
c95eaa61 13608
048addec
JD
13609 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
13610 and scroll_up_aggressively.
c95eaa61 13611
048addec 136122002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
31877e0a 13613
048addec 13614 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
31877e0a 13615
048addec 136162002-01-25 Stefan Monnier <monnier@cs.yale.edu>
e2c3786a 13617
048addec
JD
13618 * textprop.c (Fnext_property_change, Fnext_single_property_change)
13619 (Fprevious_property_change, Fprevious_single_property_change):
13620 Stay within the narrowed-buffer boundaries.
e2c3786a 13621
048addec 136222002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
c513fc03 13623
048addec
JD
13624 * term.c (Ftty_display_color_cells): New function.
13625 (syms_of_term): Defsubr it.
13626 (Ftty_display_color_cells, Ftty_display_color_p): Change the
13627 argument name to DISPLAY. Doc fix.
bf794306 13628
048addec
JD
13629 * dispextern.h: Add prototype for set_tty_color_mode and
13630 tty_setup_colors.
bf794306 13631
048addec 136322002-01-24 Jason Rumney <jasonr@gnu.org>
bf794306 13633
048addec
JD
13634 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
13635 If region left to draw is not what was expected, mark the frame as
13636 garbaged.
62582985 13637
048addec
JD
13638 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
13639 Combine the regions returned by BeginPaint and GetUpdateRect.
c513fc03 13640
048addec 136412002-01-23 Jason Rumney <jasonr@gnu.org>
3509a04c 13642
048addec
JD
13643 * w32term.c (x_update_window_begin): Only hide caret if
13644 w32_use_visible_system_caret is set.
13645 (x_update_window_end): Only show caret if
13646 w32_use_visible_system_caret is set.
13647 (syms_of_w32term): Handle SystemParametersInfo call failing.
3509a04c 13648
048addec 13649 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
3509a04c 13650
048addec 136512002-01-22 Richard M. Stallman <rms@gnu.org>
3509a04c 13652
048addec
JD
13653 * unexelf.c (unexec): Define n so as to cause compilation error
13654 for the code where people have often written n instead of nn.
1e9a6186 13655
048addec 13656 * .gdbinit (hookpost-run): Defined.
1e9a6186 13657
048addec 136582002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e4e34e31 13659
048addec 13660 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
e4e34e31 13661
048addec 136622002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4521d1fc 13663
048addec
JD
13664 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
13665 if fullscreen is being set.
7c75be36 13666
048addec 136672002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4521d1fc 13668
048addec
JD
13669 * minibuf.c (Fminibuffer_contents)
13670 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
13671 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
4521d1fc 13672
048addec 136732002-01-21 Richard M. Stallman <rms@gnu.org>
4521d1fc 13674
048addec 13675 * window.c (check_frame_size): Fix minimum height calculation.
93dec019 13676
048addec 136772002-01-20 Ken Raeburn <raeburn@gnu.org>
93dec019 13678
048addec
JD
13679 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
13680 height before comparison.
13681 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
905cc05a 13682
048addec 136832002-01-20 Jason Rumney <jasonr@gnu.org>
2ed06289 13684
048addec
JD
13685 * w32term.c (w32_system_caret_width): Remove.
13686 (w32_use_visible_system_caret): New user flag.
13687 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
13688 Windows reports a screen reader running.
13689 (x_update_window_begin): Hide the system caret.
13690 (x_update_window_end): Show the system caret.
13691 (x_display_and_set_cursor): Don't draw a cursor when
13692 w32_use_visible_system_caret is set. Do not adjust width.
0e79d667 13693
048addec
JD
13694 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
13695 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
13696 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
13697 the user requests it. Use system default width when creating.
13698 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
0e79d667 13699
048addec
JD
13700 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
13701 New window messages.
905cc05a 13702
048addec 137032002-01-20 Richard M. Stallman <rms@gnu.org>
82a7ab23 13704
048addec 13705 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
d75bec6a 13706
048addec 137072002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
52dcb476 13708
048addec 13709 * doprnt.c (doprnt1): Fix typos in error call.
82a7ab23 13710
048addec 137112002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
82a7ab23 13712
048addec 13713 * unexelf.c (unexec) [__sgi]: Support the .got sections.
82a7ab23 13714
048addec 137152002-01-20 Jason Rumney <jasonr@gnu.org>
4d0fa4f3 13716
048addec
JD
13717 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
13718 that Windows returns. If a double check fails, try to guess how
13719 ExtTextOut is going to act.
4d0fa4f3 13720
048addec
JD
13721 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
13722 in place of stricmp.
13723 (w32_list_synthesized_fonts): Removed.
13724 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
13725 (struct enumfont_t): New element; list.
13726 (enum_font_cb2): List all style and charset variations of a font.
13727 (Fw32_select_font): New optional argument; include_proportional.
13728 Exclude vertical fonts. Exclude proportional fonts unless
13729 include_proportional is non-nil.
13730 (w32_enable_synthesized_fonts): Change to a boolean.
13731 (Fw32_send_sys_command): Doc fix.
493faf20 13732
048addec 137332002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
493faf20 13734
048addec
JD
13735 * dispnew.c (update_frame): Move the variable `tem' to the block
13736 where it is used.
4971e491 13737
048addec 137382002-01-19 Jason Rumney <jasonr@gnu.org>
4971e491 13739
048addec
JD
13740 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
13741 call to face-set-after-frame-default.
4971e491 13742
048addec 137432002-01-18 Richard M. Stallman <rms@gnu.org>
d911a0fa 13744
048addec
JD
13745 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
13746 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
d911a0fa 13747
048addec 137482002-01-17 Richard M. Stallman <rms@gnu.org>
d911a0fa 13749
048addec
JD
13750 * window.c (enlarge_window): When exceeding size of parent,
13751 directly delete all the siblings instead of trying to resize it.
201c831a 13752
048addec 137532002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
201c831a 13754
048addec 13755 * term.c (set_tty_color_mode): Remove unused variable `tem'.
201c831a 13756
048addec 137572002-01-16 Henrik Enberg <henrik@enberg.org>
34e39c95 13758
048addec 13759 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
34e39c95 13760
048addec 137612002-01-16 Kim F. Storm <storm@cua.dk>
d77fbc16 13762
048addec
JD
13763 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
13764 is invisible. This can happen if cursor is on top line of a
13765 window, and we switch to a buffer with a header line.
d77fbc16 13766
048addec 13767 * w32term.c (x_erase_phys_cursor): Ditto.
61e3b944 13768
048addec 137692002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
61e3b944 13770
048addec
JD
13771 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
13772 `dont_resize' only when used.
61e3b944 13773
048addec 13774 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
70da46c3 13775
048addec 137762002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
70da46c3 13777
048addec
JD
13778 * xdisp.c (display_mode_element): When computing charpos, depend
13779 on multibyteness of elt, not the text in field.
8af01033 13780
048addec 137812002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8af01033 13782
048addec
JD
13783 * buffer.c (Fkill_all_local_variables):
13784 Increment `update_mode_lines' only once.
7363986a 13785
048addec 137862002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7363986a 13787
048addec
JD
13788 * lisp.h (adjust_after_replace_noundo)
13789 (Fupdate_coding_systems_internal): Add prototypes.
d9e6c4b1 13790
048addec 13791 * sound.c (Fplay_sound): Initialize header_size also for :data case.
d20fc48a 13792
048addec 137932002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
d9e6c4b1 13794
048addec
JD
13795 Support for the --color command-line argument and tty-color-mode
13796 frame parameter:
f1a85b89 13797
048addec
JD
13798 * term.c (tty_default_color_capabilities, tty_setup_colors)
13799 (set_tty_color_mode): New functions.
13800 (term_init): Call tty_default_color_capabilities.
13801 (Qtty_color_mode_alist): New variable.
13802 (syms_of_term): Intern and staticpro it.
f1a85b89 13803
048addec
JD
13804 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
13805 frames.
13806 (do_switch_frame): For termcap frames, switch the tty
13807 color mode as specified by the frame's parameters.
13808 (Qtty_color_mode): New variable.
13809 (syms_of_frame): Intern and staticpro it.
3a62677f 13810
048addec
JD
13811 * emacs.c (USAGE2): Add the --color option.
13812 (standard_args): Ditto.
72244db2 13813
048addec
JD
138142002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13815
13816 * xterm.h (struct x_output): New members want_fullscreen,
13817 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
13818 y_pixels_outer_diff.
13819 New enum for FULLSCREEN_* constants.
13820 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
13821 is NULL.
13822 (x_fullscreen_adjust): Add prototype.
3a62677f 13823
048addec
JD
13824 * emacs.c (USAGE2): Add the new full-screen arguments.
13825 (standard_args): Ditto.
3a62677f 13826
048addec
JD
13827 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
13828 New variables.
13829 (syms_of_xfns): Intern and staticpro them.
13830 (x_frame_parms) <"fullscreen">: New parameter.
13831 (x_fullscreen_move, x_set_fullscreen): New functions.
13832 (x_set_frame_parameters): Support for Qfullscreen.
13833 (x_real_positions): More accurate computation of the frame position.
13834 (x_figure_window_size): Support full-screen frames.
13835 (Fx_create_frame): Default the fullscreen parameter.
3a62677f 13836
048addec
JD
13837 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
13838 (XTread_socket) <Expose>: Call x_check_fullscreen.
13839 <ConfigureNotify>: Don't resize to fullscreen.
13840 Call x_check_fullscreen_move, and set the want_fullscreen member of
13841 output_data.x.
3a62677f 13842
048addec 138432002-01-13 Jason Rumney <jasonr@gnu.org>
9d113d9d 13844
048addec
JD
13845 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
13846 for mice with more than 3 buttons.
b8523839 13847
048addec
JD
13848 * w32term.c (parse_button): New parameter xbutton. Callers changed.
13849 (w32_read_socket): Handle new "XBUTTON" messages.
9464dea4 13850
048addec
JD
13851 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
13852 (syms_of_w32fns): DEFVAR_BOOL it.
13853 (w32_wnd_proc): Handle new "XBUTTON" messages.
9d113d9d 13854
048addec 138552002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
70ec1377 13856
048addec 13857 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
70ec1377 13858
048addec 138592002-01-13 Andreas Schwab <schwab@suse.de>
92f7dd37 13860
048addec 13861 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
92f7dd37 13862
048addec 138632002-01-12 Andreas Schwab <schwab@suse.de>
c93674bb 13864
048addec
JD
13865 * .gdbinit (xbuffer): Remove address operator since data is now a
13866 pointer.
c93674bb 13867
048addec 138682002-01-11 Richard M. Stallman <rms@gnu.org>
59b59892 13869
048addec 13870 * insdel.c (adjust_after_replace_noundo): New function.
59b59892 13871
048addec 13872 * coding.c (code_convert_region): Don't copy old text if undo disabled.
c6ea2775 13873
048addec 138742002-01-09 Jason Rumney <jasonr@gnu.org>
c6ea2775 13875
048addec
JD
13876 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
13877 when checking for multiple frames.
91175673 13878
048addec 138792002-01-08 Richard M. Stallman <rms@gnu.org>
91175673 13880
048addec
JD
13881 * window.c (delete_window): Rewrite the code for changing the
13882 selected window to handle the case where WINDOW is not a leaf.
91175673 13883
048addec 138842002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
e0fead5d 13885
048addec
JD
13886 * process.c (send_process): Set src_multibyte to 1 after the call
13887 top setup_coding_system, not before the call.
e0fead5d 13888
048addec 138892002-01-07 Jason Rumney <jasonr@gnu.org>
e0fead5d 13890
048addec
JD
13891 * xmenu.c (set_frame_menubar, xmenu_show):
13892 (xdialog_show): Initialize wv->help to Qnil.
c186cdb3 13893
048addec
JD
13894 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
13895 (w32_dialog_show): Initialize wv->help to Qnil.
c186cdb3 13896
048addec 138972002-01-06 Jason Rumney <jasonr@gnu.org>
c186cdb3 13898
048addec 13899 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
c186cdb3 13900
048addec 13901 * w32menu.c (w32_menu_display_help): Revert last change.
58cfce98 13902
048addec 13903 * xmenu.c (menu_highlight_callback): Revert last change.
58cfce98 13904
048addec 139052002-01-06 Andreas Schwab <schwab@suse.de>
62854fe2 13906
048addec
JD
13907 * insdel.c (make_gap_larger): Make sure buffer size does not
13908 overflow range of int.
62854fe2 13909
048addec 139102002-01-05 Jason Rumney <jasonr@gnu.org>
656f46bb 13911
048addec
JD
13912 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
13913 OVERLAPS_P.
656f46bb 13914
048addec 13915 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
656f46bb 13916
048addec
JD
13917 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
13918 to the left or to the right of the pointer, put it against
13919 the left screen edge.
13920 (x_frame_parms): Add missing braces around initializer.
036e218d 13921
048addec
JD
13922 * w32term.c (x_setup_relief_colors): Don't compute an image's
13923 background color if it doesn't have a Pixmap.
13924 (notice_overwritten_cursor): Don't depend on
13925 output_cursor and updated_area. Compare pixel coordinates with
13926 window's cursor pixel coordinates.
13927 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
13928 Call notice_overwritten_cursor with new arg list.
13929 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
13930 unconditionally.
13931 (x_draw_image_relief): Use predefined macro instead of
13932 constant when the value of `tool_bar_button_relief' is negative.
036e218d 13933
048addec 13934 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
7ddb2c16 13935
048addec 139362002-01-04 Richard M. Stallman <rms@gnu.org>
7ddb2c16 13937
048addec 13938 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
ace9b298 13939
048addec 139402002-01-03 Richard M. Stallman <rms@gnu.org>
90647b07 13941
048addec
JD
13942 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
13943 (Fkey_binding): Try the `keymap' property map first.
13944 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
13945 minor mode bindings.
90647b07 13946
048addec 139472002-01-03 Kim F. Storm <storm@cua.dk>
ace9b298 13948
048addec 13949 * keyboard.c (read_key_sequence): Fixed cast of submaps arg to bcopy.
ace9b298 13950
048addec 139512002-01-02 Richard M. Stallman <rms@gnu.org>
ace9b298 13952
048addec
JD
13953 * keyboard.c (read_key_sequence): Handle the keymap property
13954 before minor mode maps.
9fbc32aa 13955
048addec
JD
13956 * editfns.c (Fformat): Update thissize from field_width
13957 based on the actual width, in the string case.
036e218d 13958
048addec 139592002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fbc32aa 13960
048addec
JD
13961 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
13962 when used as truth value to prevent gcc warnings.
9fbc32aa 13963
048addec
JD
13964 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
13965 * w32proc.c: Include <config.h>.
9fbc32aa 13966
048addec 139672002-01-01 Andreas Schwab <schwab@suse.de>
9fbc32aa 13968
048addec
JD
13969 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
13970 not EMACS_INT, to make them compatible with DEFVAR_INT.
13971 * lisp.h (max_specpdl_size): Adjust declaration.
9fbc32aa 13972
048addec 139732002-01-01 Richard M. Stallman <rms@gnu.org>
9fbc32aa 13974
048addec
JD
13975 * print.c (print_object): Test print_escape_nonascii only for
13976 unibyte strings.
13977 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
13978 when outputting to a multibyte buffer.
9fbc32aa 13979
048addec 139802001-12-29 Richard M. Stallman <rms@gnu.org>
9fbc32aa 13981
048addec
JD
13982 * print.c (print_object): In multibyte string, use hex escapes.
13983 Use octal only for unibyte strings.
13984 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
0142178a 13985
048addec
JD
13986 * lread.c (read_escape): New arg BYTEREP for reporting whether
13987 escape forces unibyte or multibyte.
13988 (read1): When reading a string, take note of that info.
0142178a 13989
048addec 139902001-12-29 Ken Raeburn <raeburn@gnu.org>
d4824a5d 13991
048addec
JD
13992 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
13993 comparison to test lisp value returned by Fget.
d4824a5d 13994
048addec 139952001-12-29 Richard M. Stallman <rms@gnu.org>
b1356234 13996
048addec 13997 * lisp.h (max_specpdl_size): Add declaration.
b1356234 13998
048addec 13999 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
3ce081f5 14000
048addec
JD
14001 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
14002 Handle modifier bits. Correct typo in error message.
99e380ee 14003
048addec 140042001-12-28 Richard M. Stallman <rms@gnu.org>
3ce081f5 14005
048addec
JD
14006 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
14007 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
14008 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
14009 Update calls to Fdefine_abbrev.
14010 (write_abbrev): Update for changed data format.
14011 Don't list "system" abbrevs.
14012 (Fexpand_abbrev): Update use count with new data format.
14013 (describe_abbrev): Update for changed data format.
14014 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
66458f32 14015
048addec 14016 * config.in (HAVE_MBSINIT): Add #undef.
66458f32 14017
048addec 14018 * strftime.c (mbsinit): Define as no-op if not available.
66458f32 14019
048addec
JD
14020 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
14021 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
59a86c99 14022
048addec
JD
14023 * keymap.c (Flookup_key): Error message if key has wrong data type.
14024 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
14025 (exclude_key): New variable.
59a86c99 14026
048addec 140272001-12-28 Gerd Moellmann <gerd@gnu.org>
eb77a5f4 14028
048addec
JD
14029 * xterm.c (x_setup_relief_colors): Don't compute an image's
14030 background color if it doesn't have a Pixmap.
eb77a5f4 14031
048addec
JD
14032 * xterm.c (notice_overwritten_cursor): Don't depend on
14033 output_cursor and updated_area. Compare pixel coordinates with
14034 window's cursor pixel coordinates.
14035 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
14036 Call notice_overwritten_cursor with new arg list.
14037 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
14038 unconditionally.
eb77a5f4 14039
048addec
JD
14040 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
14041 height of the cursor line to the amount to scroll.
eb77a5f4 14042
048addec 140432001-12-27 Richard M. Stallman <rms@gnu.org>
bb313871 14044
048addec
JD
14045 * intervals.c (set_point_both): The position after an invisible,
14046 intangible character is not an acceptable stopping point.
bb313871 14047
048addec 140482001-12-27 Ken Raeburn <raeburn@gnu.org>
55b43a63 14049
048addec
JD
14050 * window.c (enlarge_window): In new preserve_before code, convert
14051 CURBEG from lisp object to integer before doing arithmetic.
6052529b 14052
048addec 140532001-12-27 Richard M. Stallman <rms@gnu.org>
3ce081f5 14054
048addec 14055 * bytecode.c (Fbyte_code): Undo previous change.
3ce081f5 14056
048addec 140572001-12-26 Kim F. Storm <storm@cua.dk>
3ce081f5 14058
048addec
JD
14059 * keyboard.c (record_char): Ignore duplicate help-echo events only
14060 separated by mouse-movement. When tracking mouse, only record
14061 first and last mouse-movement event in same window.
14062 Don't record mouse-movement events in keyboard macros.
3ce081f5 14063
048addec 140642001-12-25 Richard M. Stallman <rms@gnu.org>
55b43a63 14065
048addec
JD
14066 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
14067 (Fenlarge_window): New arg PRESERVE_BEFORE.
111ed14e 14068
048addec
JD
14069 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
14070 instead of Fstring_as_unibyte.
9fabb2f5 14071
048addec 140722001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fabb2f5 14073
048addec 14074 The following changes remove mocklisp support:
9fabb2f5 14075
048addec 14076 * mocklisp.h, mocklisp.c: Files removed.
111ed14e 14077
048addec
JD
14078 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
14079 `Qmocklisp' and `Qmocklisp_arguments'.
14080 Remove prototype of syms_of_mocklisp.
2fa0eedf 14081
048addec 14082 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
d1420435 14083
048addec
JD
14084 * callint.c: Do not include mocklisp.h.
14085 (Fcall_interactively): Do not test for mocklisp case.
2fa0eedf 14086
048addec
JD
14087 * eval.c: Remove variables `Qmocklisp_arguments',
14088 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
14089 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
14090 Do not test for mocklisp case.
14091 (Fwhile): Remove unused variable `tem'.
14092 (syms_of_eval): Remove variable `moclisp-arguments'.
ebcbef4e 14093
048addec 14094 * data.c (wrong_type_argument): Remove mocklisp case.
5c131048 14095
048addec 14096 * doc.c (Fdocumentation): Remove mocklisp case.
5c131048 14097
048addec 14098 * emacs.c (main): Do not call syms_of_mocklisp.
5c131048 14099
048addec 141002001-12-21 Richard M. Stallman <rms@gnu.org>
96d276c3 14101
048addec
JD
14102 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
14103 to the left or to the right of the pointer, put it against
14104 the left screen edge.
6108b49c 14105
048addec 141062001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
96d276c3 14107
048addec
JD
14108 * Makefile.in (distclean): Remove .gdbinit if we are building
14109 outside the source tree.
5eea19a4 14110
048addec 141112001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
5eea19a4 14112
048addec 14113 * w32.c (emacs_root_dir): New function.
5eea19a4 14114
048addec 14115 * msdos.c (emacs_root_dir): New function.
5eea19a4 14116
048addec
JD
14117 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
14118 of the current drive as the fallback for default_directory.
438e57dd 14119
048addec
JD
14120 * dired.c (file_name_completion): Run the elements of
14121 completion-ignored-extensions through ENCODE_FILE.
438e57dd 14122
048addec
JD
14123 * lisp.h (scmp): Remove prototype, since it's now a static
14124 function private to dired.c.
c88e5347 14125
048addec 141262001-12-18 Richard M. Stallman <rms@gnu.org>
c88e5347 14127
048addec
JD
14128 * dired.c (scmp): Function moved from minibuf.c.
14129 Delete multibyte handling--used only on encoded strings.
59ce1461 14130
048addec 14131 * minibuf.c (scmp): Function moved to dired.c.
59ce1461 14132
048addec 14133 * fns.c (merge): Add QUIT call.
59ce1461 14134
048addec 141352001-12-18 Dave Love <fx@gnu.org>
8727d588 14136
048addec
JD
14137 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
14138 language/georgian.el.
8727d588 14139
048addec 141402001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
cc63037e 14141
048addec
JD
14142 * Makefile.in (lisp, shortlisp): Synchronize with changes to
14143 lisp/Makefile.in:DONTCOMPILE.
cc63037e 14144
048addec 141452001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
cc63037e 14146
048addec
JD
14147 * xdisp.c (window_box_height): Do not return negative values.
14148 From Gerd Moellmann <gerd@gnu.org>.
cc63037e 14149
048addec 14150 * keyboard.c (head_table): Add missing braces around initializer.
cc63037e 14151
048addec 14152 * term.c (keys): Likewise.
deece6f5 14153
048addec 14154 * xfns.c (x_frame_parms, visual_classes): Likewise.
deece6f5 14155
048addec 141562001-12-17 Sam Steingold <sds@gnu.org>
1b944d9c 14157
048addec
JD
14158 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
14159 patch (COMPOSING_P, not COMPOSING).
28ff4293 14160
048addec 141612001-12-17 Richard M. Stallman <rms@gnu.org>
a395ef6a 14162
048addec 14163 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
a395ef6a 14164
048addec
JD
14165 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
14166 before calling decode_coding.
9b46de40 14167
048addec 14168 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
9b46de40 14169
048addec
JD
14170 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
14171 instead of only for COMPOSITION_DISABLED.
9b46de40 14172
048addec 141732001-12-16 Richard M. Stallman <rms@gnu.org>
aff37336 14174
048addec 14175 * alloc.c (pure_alloc): After overflow, allocate just a small block.
aff37336 14176
048addec 14177 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
b9937f07 14178
048addec
JD
14179 * buffer.h (struct buffer): New field `display_error_modiff'.
14180 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
b9937f07 14181
048addec 14182 * window.c (Frecenter): Clear display_error_modiff field.
2cd23960 14183
048addec
JD
14184 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
14185 Call redisplay_window, but not if display_error_modiff field says no.
14186 (redisplay_window_error): New function.
14187 (displayed_buffer): New variable.
14188 (redisplay_internal, redisplay_windows): Call the new functions
14189 instead of redisplay_window directly.
2cd23960 14190
048addec 141912001-12-15 Richard M. Stallman <rms@gnu.org>
2cd23960 14192
048addec 14193 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
2cd23960 14194
048addec 141952001-12-14 Andrew Innes <andrewi@gnu.org>
a4184c1c 14196
048addec 14197 * makefile.w32-in (EMACSLOADPATH): Define.
f9711de4 14198 ($(EMACS)): Run `list-load-path-shadows' after dumping Emacs.
048addec 14199 (bootstrap-temacs): Remove dependency on bootstrap-clean.
a4184c1c 14200
048addec 142012001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
f6fa0866 14202
048addec
JD
14203 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
14204 parameter have a numeric value all the time.
f6fa0866 14205
048addec 14206 * w32fns.c (x_report_frame_params): Likewise.
f4ca4b00 14207
048addec 142082001-12-12 Richard M. Stallman <rms@gnu.org>
f4ca4b00 14209
048addec 14210 * fileio.c (Fwrite_region): Doc fix.
f4e25f94 14211
048addec
JD
14212 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
14213 (redisplay_internal): Call clear_image_cache only for window terminals.
f4e25f94 14214
048addec 142152001-12-12 Gerd Moellmann <gerd@gnu.org>
91c153e2 14216
048addec
JD
14217 * xdisp.c (move_it_vertically_backward): Change heuristic
14218 for the case that we didn't move far enough initially.
91c153e2 14219
048addec
JD
14220 * window.c (Frecenter): Simplify computation in the case of window
14221 system frames and ARG < 0; use window_box_height.
65b7d3e7 14222
048addec 142232001-12-11 Richard M. Stallman <rms@gnu.org>
65b7d3e7 14224
048addec
JD
14225 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
14226 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
6b5f6311 14227
048addec 142282001-12-11 Andrew Innes <andrewi@gnu.org>
6b5f6311 14229
048addec
JD
14230 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
14231 arg is negative.
be676094 14232
048addec 142332001-12-11 Richard M. Stallman <rms@gnu.org>
be676094 14234
048addec
JD
14235 * m/hp800.h: Split the __hpux conditional into the parts
14236 that are right for GNU/Linux too and the parts that are not.
14237 Use the former if GNU_LINUX.
14238 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
032a857d 14239
048addec 14240 * s/gnu-linux.h (GNU_LINUX): Defined.
032a857d 14241
048addec 142422001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
032a857d 14243
048addec
JD
14244 * macros.c, msdos.c, w16select.c: Change doc-string comments to
14245 `new style' [w/`doc:' keyword].
032a857d 14246
048addec 142472001-12-10 Jason Rumney <jasonr@gnu.org>
b6270150 14248
048addec
JD
14249 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
14250 before using.
b6270150 14251
048addec 142522001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
792e5cbd 14253
048addec
JD
14254 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
14255 keyword].
98cbb9fa 14256
048addec 142572001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
98cbb9fa 14258
048addec 14259 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
98cbb9fa 14260
048addec 14261 * s/hpux10.h (srand48): Don't undefine.
98cbb9fa 14262
048addec 142632001-12-09 Jason Rumney <jasonr@gnu.org>
792e5cbd 14264
048addec
JD
14265 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
14266 Add comment to explain where the struct came from.
14267 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
14268 (add_menu_item): Process pop-up menus first to avoid memory leak.
14269 (add_menu_item, w32_menu_display_help): Use `help' field as
14270 Lisp_Object.
14271 (w32_free_submenu_strings): Only free owner-drawn strings.
fa336b91 14272
048addec 142732001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
fa336b91 14274
048addec 14275 * COPYING: Moved back.
fa336b91 14276
048addec
JD
14277 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
14278 Add parentheses around && within ||.
077907d4 14279
048addec 14280 * indent.c (compute_motion): Likewise.
aa2af83a 14281
048addec 14282 * intervals.c (merge_properties_sticky): Likewise.
60a653f1 14283
048addec
JD
14284 * coding.c (setup_coding_system, shrink_encoding_region)
14285 (Fdecode_sjis_char): Likewise.
60a653f1 14286
048addec 142872001-12-07 Andreas Schwab <schwab@suse.de>
60a653f1 14288
048addec
JD
14289 * xdisp.c (display_mode_element): Don't read past end of string if
14290 it ends with '%'.
60a653f1 14291
048addec
JD
14292 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
14293 can hold.
60a653f1 14294
048addec
JD
14295 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
14296 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
14297 type changed to Lisp_Object.
14298 (syms_of_data): DEFVAR_LISP them.
60a653f1 14299
048addec 143002001-12-07 Richard M. Stallman <rms@gnu.org>
60a653f1 14301
048addec
JD
14302 * callproc.c (init_callproc): Set Vdata_directory based on the source
14303 location whenever Emacs was run uninstalled.
60a653f1 14304
048addec 143052001-12-06 Paul Eggert <eggert@twinsun.com>
60a653f1 14306
048addec
JD
14307 * config.in (HAVE_WORKING_VFORK): New #undefs.
14308 * process.c (create_process):
14309 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
14310 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
14311 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
14312 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
14313 * m/intel386.h (HAVE_VFORK): Likewise.
14314 * m/mips-siemens.h (HAVE_VFORK): Likewise.
14315 * m/mips.h (HAVE_VFORK): Likewise.
14316 * s/freebsd.h (vfork): Remove #define.
14317 * s/lynxos.h (HAVE_VFORK): Remove #undef.
14318 * s/usg5-4-2.h: Fix comment about vfork.
60a653f1 14319
048addec 143202001-12-06 Richard M. Stallman <rms@gnu.org>
60a653f1 14321
048addec
JD
14322 * s/hpux10.h (random): Add undef.
14323 (HAVE_RANDOM): Define it just once.
60a653f1 14324
048addec 143252001-12-06 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 14326
048addec 14327 * eval.c: Undo last change: the standard syntax is not wanted.
60a653f1 14328
048addec 143292001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 14330
048addec
JD
14331 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
14332 scroll bars of the frame before deleting the frame itself. If the
14333 frame has a widget, delete the frame with XtDestroyWidget, and do
14334 not call XDestroyWindow before that.
60a653f1 14335
048addec 143362001-12-06 Kim F. Storm <storm@cua.dk>
60a653f1 14337
048addec 14338 * xfns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 14339
048addec 14340 * w32fns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 14341
048addec 143422001-12-05 Andrew Innes <andrewi@gnu.org>
60a653f1 14343
048addec
JD
14344 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
14345 excessively large.
60a653f1 14346
048addec
JD
14347 * insdel.c (make_gap_larger): New function.
14348 (make_gap_smaller): New function.
14349 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
14350 Call make_gap_smaller if arg is negative.
60a653f1 14351
048addec 143522001-12-04 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 14353
048addec
JD
14354 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
14355 Pass a dummy argument when calling interrupt_signal.
14356 (parse_menu_item): Mark disabled items before checking for empty def.
14357 (read_char_minibuf_menu_prompt): Make safety more visible.
14358 (read_key_sequence): Add a `first_unbound' variable.
14359 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
14360 unbound prefix as soon as we can detect it.
60a653f1 14361
048addec
JD
14362 * doc.c (Fsnarf_documentation): Add prototype.
14363 (get_doc_string): Handle negative arguments.
14364 (Fdocumentation): Use AREF and ASIZE.
14365 Move the calls to get_doc_string to a single place.
14366 Don't confuse an interactive-spec for a docstring reference.
14367 (Fdocumentation_property): Take advantage of the fact that
14368 get_doc_string now ignores the sign of the docstring position.
60a653f1 14369
048addec 14370 * eval.c: Use standard syntax for usage in docstrings.
60a653f1 14371
048addec 143722001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 14373
a64387ee 14374 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
60a653f1 14375
048addec 143762001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 14377
048addec
JD
14378 * xterm.c (x_draw_image_relief): Use predefined macro instead of
14379 constant when the value of `tool_bar_button_relief' is negative.
60a653f1 14380
048addec 143812001-12-02 Richard M. Stallman <rms@gnu.org>
60a653f1 14382
048addec
JD
14383 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
14384 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
60a653f1 14385
048addec 14386 * fileio.c (read_non_regular): Delete Fsignal call.
60a653f1 14387
048addec 143882001-12-01 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 14389
048addec 14390 * lisp.h (run_hook_list_with_args): Undo last change.
60a653f1 14391
048addec 143922001-12-01 Gerd Moellmann <gerd@gnu.org>
60a653f1 14393
048addec 14394 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
60a653f1 14395
048addec 143962001-12-01 Jason Rumney <jasonr@gnu.org>
60a653f1 14397
f63fd14e 14398 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
60a653f1 14399
048addec
JD
14400 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
14401 [!WM_MOUSELEAVE]: Define.
60a653f1 14402
048addec
JD
14403 * w32menu.c (current_popup_menu, get_menu_item_info):
14404 (set_menu_item_info): New vars.
14405 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
14406 (w32_menu_show): Set current_popup_menu.
14407 (add_menu_item): Allocate new strings for owner-drawn menu items
14408 and help strings.
14409 Use owner-draw for disabled menu items again.
14410 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
14411 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
60a653f1 14412
048addec
JD
14413 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
14414 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
14415 <WM_EXITMENULOOP>: Free menu strings.
14416 <WM_MOUSELEAVE>: Stop tracking mouse.
14417 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
60a653f1 14418
048addec
JD
14419 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
14420 and mouse face.
60a653f1 14421
048addec 144222001-12-01 Kim F. Storm <storm@cua.dk>
60a653f1 14423
048addec
JD
14424 The following changes add left-fringe and right-fringe
14425 frame parameters to adjust fringe widths, or remove one or
14426 both fringes.
60a653f1 14427
048addec
JD
14428 * frame.h (struct frame): Remove trunc_area_pixel_width and
14429 trunc_area_cols fields.
14430 (Qleft_fringe, Qright_fringe): Declare.
14431 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
60a653f1 14432
048addec
JD
14433 * frame.c (Qleft_fringe, Qright_fringe): New vars.
14434 (syms_of_frame): Initialize them.
60a653f1 14435
048addec
JD
14436 * window.c (coordinates_in_window): Handle separate left and right
14437 fringe widths.
60a653f1 14438
048addec
JD
14439 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
14440 and fringe_cols fields.
14441 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
14442 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
14443 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
14444 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
14445 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
14446 (x_compute_fringe_widths): Add prototype.
60a653f1 14447
048addec
JD
14448 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
14449 fill fringe evenly with small dashes.
f63fd14e 14450 (x_draw_fringe_bitmap): Clear background if necessary. Align and
048addec
JD
14451 clip the new ZV bitmap to avoid jitter between rows.
14452 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
14453 background. Don't draw fringe bitmaps if fringe width is zero.
14454 (x_compute_fringe_widths): New function.
14455 (x_new_font, x_set_window_size_1): Use it.
60a653f1 14456
048addec
JD
14457 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
14458 (x_set_frame_parameters): Process `font' parameter before other
14459 parameters as fringe widths depend on it.
14460 (x_set_fringe_width): New function.
14461 (x_figure_window_size): Use x_compute_fringe_widths.
14462 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
14463 parameters.
60a653f1 14464
048addec
JD
14465 * widget.c (set_frame_size): Use x_compute_fringe_widths.
14466 (EmacsFrameSetCharSize): Ditto.
60a653f1 14467
048addec
JD
14468 * w32term.h: Merged changes from xterm.h.
14469 * w32term.c: Merged changes from xterm.c.
14470 * w32fns.c: Merged changes from xfns.c.
60a653f1 14471
048addec 144722001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 14473
048addec 14474 * COPYING: Removed.
60a653f1 14475
048addec 144762001-11-29 Dave Love <fx@gnu.org>
60a653f1 14477
048addec
JD
14478 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
14479 extra extra slot.
14480 (detect_coding_mask): Fix call of detect_coding_iso2022.
60a653f1 14481
048addec 144822001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 14483
048addec
JD
14484 * fileio.c (file-name-coding-system)
14485 (default-file-name-coding-system): Doc fix (links to referenced
14486 variables added).
60a653f1 14487
048addec 144882001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 14489
048addec
JD
14490 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
14491 Add dummy uses of gcproN variables.
60a653f1 14492
048addec
JD
14493 * category.c (describe_category, describe_category_1)
14494 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
14495 (syms_of_category): Don't defsubr Sdescribe_categories.
60a653f1 14496
048addec 144972001-11-28 Richard M. Stallman <rms@gnu.org>
60a653f1 14498
048addec 14499 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
60a653f1 14500
048addec
JD
14501 * Makefile.in (lispdir): New variable, referring to build dir.
14502 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
60a653f1 14503
048addec 145042001-11-28 Andrew Innes <andrewi@gnu.org>
60a653f1 14505
048addec
JD
14506 * w32menu.c (w32_menu_display_help): Actually add the new argument
14507 OWNER.
60a653f1 14508
048addec 145092001-11-28 Jason Rumney <jasonr@gnu.org>
60a653f1 14510
048addec
JD
14511 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
14512 menu items. From David Ponce <dponce@wanadoo.fr>.
14513 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
14514 conditionally.
f63fd14e 14515 (w32_menu_display_help): New argument OWNER. Rewritten to store a
048addec 14516 help event in the owner frame's keyboard buffer.
60a653f1 14517
048addec
JD
14518 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
14519 (Fx_show_tip): Don't subtract last width from row width.
14520
14521 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
14522 (w32_read_socket): Use EQ to compare frames.
60a653f1 14523
048addec 145242001-11-28 Gerd Moellmann <gerd@gnu.org>
60a653f1 14525
048addec
JD
14526 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
14527 OVERLAPS_P.
60a653f1 14528
048addec 145292001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 14530
048addec
JD
14531 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
14532 `gcpro3' and `gcpro4'.
60a653f1 14533
048addec 14534 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
60a653f1 14535
048addec 145362001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 14537
048addec 14538 * ccl.c: Use AREF and ASIZE.
60a653f1 14539
048addec 145402001-11-27 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 14541
048addec
JD
14542 * lisp.h (run_hook_list_with_args): Remove.
14543 (LIST_END_P): Fix call to wrong_type_argument.
14544 (make_fixnum_or_float): Use EMACS_INT rather than int.
60a653f1 14545
048addec 145462001-11-26 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 14547
048addec
JD
14548 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
14549 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
60a653f1 14550
048addec
JD
14551 * eval.c: Use AREF and ASIZE.
14552 (Ffetch_bytecode): Add the file name to the error message.
60a653f1 14553
048addec
JD
14554 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
14555 which match the end of the file-name.
14556 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
14557 is not a valid env var, but leave it as is instead.
60a653f1 14558
048addec
JD
14559 * keymap.c (access_keymap): Handle t bindings like nil bindings.
14560 Make nil bindings in char-tables transparent.
14561 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
60a653f1 14562
048addec 145632001-11-26 Richard M. Stallman <rms@gnu.org>
60a653f1 14564
048addec
JD
14565 * textprop.c (set_text_properties_1): Allow START, END in either order.
14566 Do nothing if range is empty.
60a653f1 14567
048addec 14568 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
60a653f1 14569
048addec
JD
14570 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
14571 (clean): Not here.
60a653f1 14572
048addec 145732001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 14574
048addec
JD
14575 * textprop.c (set_text_properties_1): Clearly mark that the
14576 interval should not be empty.
60a653f1 14577
048addec
JD
14578 * intervals.c (graft_intervals_into_buffer):
14579 Don't call set_text_properties_1 on an empty interval.
60a653f1 14580
048addec 145812001-11-25 Richard M. Stallman <rms@gnu.org>
60a653f1 14582
048addec 14583 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
60a653f1 14584
048addec
JD
14585 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
14586 don't lose the data in it.
60a653f1 14587
048addec 145882001-11-25 Juanma Barranquero <lektu@terra.es>
60a653f1 14589
048addec 14590 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
60a653f1 14591
c62aec78 14592 * buffer.c (Fkill_buffer): Likewise.
60a653f1 14593
c62aec78 14594 * print.c (temp_output_buffer_setup): Likewise.
60a653f1 14595
048addec 145962001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 14597
048addec 14598 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
60a653f1 14599
048addec 146002001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 14601
048addec
JD
14602 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
14603 Niemitalo <kon@iki.fi>.
60a653f1 14604
048addec 146052001-11-25 Jason Rumney <jasonr@gnu.org>
60a653f1 14606
048addec 14607 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
60a653f1 14608
048addec
JD
14609 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
14610 (Fx_show_tip): Block input during frame creation.
14611 (Fx_show_tip, Fx_hide_tip): Enable.
60a653f1 14612
048addec 146132001-11-24 Richard M. Stallman <rms@gnu.org>
60a653f1 14614
048addec
JD
14615 * lread.c (Fload): Detect recursive load error for more than 3
14616 nestings of the same file.
14617 (Vrecursive_load_depth_limit): Variable deleted.
14618 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
60a653f1 14619
048addec 146202001-11-24 Jason Rumney <jasonr@gnu.org>
60a653f1 14621
048addec
JD
14622 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
14623 mouse position if either left or top is not specified.
60a653f1 14624
048addec
JD
14625 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
14626 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
14627 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
14628 (my_create_tip_window): Assign tip_window.
14629 (x_create_tip_frame): Use same defaults as X.
14630 (compute_tip_xy): Remove unused variable. Use full screen width.
f63fd14e 14631 (Fx_show_tip): Do not double height. Call ShowWindow directly.
60a653f1 14632
048addec
JD
14633 * w32term.c (x_after_update_window_line): Doc fix.
14634 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
14635 frames.
14636 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
60a653f1 14637
048addec
JD
14638 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
14639 for all Windowed systems.
60a653f1 14640
048addec 146412001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 14642
048addec
JD
14643 * msdos.c (IT_clear_screen): If the frame's faces are not yet
14644 realized, use the initial screen colors to clear the screen.
60a653f1 14645
048addec 146462001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 14647
048addec
JD
14648 * textprop.c (Fset_text_properties): Remove unused variables
14649 `unchanged', `prev_changed', `s' and `len'.
60a653f1 14650
048addec
JD
14651 * search.c (Freplace_match): Remove unused variable `inslen'.
14652
14653 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
14654
146552001-11-22 Jason Rumney <jasonr@gnu.org>
14656
14657 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
14658 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
14659 (my_create_tip_window): New function.
14660 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
14661 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
14662
146632001-11-20 Jason Rumney <jasonr@gnu.org>
14664
14665 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
14666 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
14667
14668 * w32fns.c (Vw32_system_coding_system): Remove.
14669 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
14670
146712001-11-19 Stefan Monnier <monnier@cs.yale.edu>
14672
14673 * fileio.c (Fwrite_region): Move choose_write_coding_system to
14674 after build_annotations.
14675
14676 * syntax.c (describe_syntax): Add dummy arg.
14677 (describe_syntax_1): Update call to describe_vector.
14678
14679 * category.c (describe_category): Add dummy arg.
14680 (describe_category_1): Update call to describe_vector.
14681
14682 * keymap.c (Fdescribe_vector): Add `describer' parameter.
14683 (describe_command, describe_translation): Add dummy second param.
14684 (describe_map): Call elt_describer with two arguments.
14685 (describe_vector_princ): Add `fun' parameter.
14686 Call it instead of the hardcoded `princ'.
14687 (describe_vector): Add arg `args'.
14688 Pass it as a new second argument to elt_describer.
60a653f1 14689
048addec 14690 * keymap.h (describe_vector): Update prototype.
60a653f1 14691
048addec
JD
14692 * frame.c: Don't include keymap.h any more.
14693 (keys_of_frame): Remove.
60a653f1 14694
048addec 14695 * lisp.h (keys_of_frame): Remove declaration.
60a653f1 14696
048addec 14697 * emacs.c (main): Don't call `keys_of_frame' any more.
60a653f1 14698
048addec 146992001-11-14 Andreas Schwab <schwab@suse.de>
60a653f1 14700
048addec
JD
14701 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
14702 if defined, 0 otherwise.
14703 (MAP_FAILED): Define if not defined and use it to test mmap failure.
14704 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
60a653f1 14705
048addec 147062001-11-19 Richard M. Stallman <rms@gnu.org>
60a653f1 14707
048addec 14708 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
60a653f1 14709
048addec 147102001-11-18 Jason Rumney <jasonr@gnu.org>
60a653f1 14711
048addec
JD
14712 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
14713 (x_draw_bar_cursor): If the background color of the glyph under
14714 the cursor equals the frame's cursor color, use the glyph's
14715 foreground color for drawing the bar cursor.
14716 (x_after_update_window_line): Clear internal border in different
14717 circumstances.
14718 (w32_set_vertical_scroll_bar): Check for width and height > 0.
14719 (w32_draw_relief_rect): Correct relief by 1 pixel.
14720 (x_set_glyph_string_background_width):
14721 Set extends_to_end_of_line_p if the row's fill_line_p is set and
14722 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
14723 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
14724 if cursor_in_non_selected_windows is false.
14725 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
14726 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
14727 Notice if cursor gets overwritten.
14728 (notice_overwritten_cursor): Renamed from
14729 note_overwritten_text_cursor. Rewritten to take glyph widths
14730 into account, and to take X positions as parameters.
14731 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
14732 around call to x_draw_glyphs.
14733 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
14734 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
14735 color to use for image glyph reliefs.
14736 (x_draw_image_relief): Accept zero tool_bar_button_relief.
14737 (glyph_rect): Remove unused variable `area'.
60a653f1 14738
048addec
JD
14739 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
14740 some items.
14741 (x_set_internal_border_width): Set frame garbaged when window
14742 doesn't exist yet.
14743 (Fx_create_frame): Accept zero tool_bar_button_relief.
14744 (x_clear_image_1, four_corners_best, image_background)
14745 (image_background_transparent): New functions.
14746 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
14747 (gs_format): Add `:background' entry.
14748 (lookup_image): Set IMG's background color if specified.
14749 (pbm_load, xbm_load_image, png_load): Set IMG's background field
14750 when appropriate.
14751 (x_clear_image_1): Reset `background_valid' and
14752 `background_transparent_valid' fields.
14753 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
14754 calculating it here. Set IMG's background_transparent field.
14755 (enum xpm_keyword_index): Add XPM_BACKGROUND.
14756 (enum png_keyword_index): Add PNG_BACKGROUND.
14757 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
14758 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
14759 (enum gif_keyword_index): Add GIF_BACKGROUND.
14760 (enum gs_keyword_index): Add GS_BACKGROUND.
14761 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
14762 Pre-calculate image background color where necessary.
14763 (x_create_x_image_and_pixmap, xbm_load, gs_load):
14764 Use display info's n_cbits entry for screen depth.
14765 (Fx_show_tip): Remove unused variables `buffer', `top',
14766 `left', `max_width' and `max_height'.
60a653f1 14767
048addec 14768 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
60a653f1 14769
048addec 147702001-11-18 Gerd Moellmann <gerd@gnu.org>
60a653f1 14771
048addec 14772 * puresize.h (BASE_PURESIZE): Increase to 750000.
60a653f1 14773
048addec 147742001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 14775
048addec 14776 * frame.c (Fframe_live_p): Doc fix.
60a653f1 14777
048addec 147782001-11-18 Richard M. Stallman <rms@gnu.org>
60a653f1 14779
048addec
JD
14780 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
14781 (message_dolog_marker3): New static variables hold three markers.
14782 (syms_of_xdisp): Initialize and staticpro them.
14783 (message_dolog): Use message_dolog_marker1..3 instead of
14784 allocating markers each time. Unchain them when done.
60a653f1 14785
048addec 147862001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 14787
048addec 14788 * doc.c (Fsnarf_documentation): Doc fix.
60a653f1 14789
048addec 147902001-11-17 Andreas Schwab <schwab@suse.de>
60a653f1 14791
048addec 14792 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
60a653f1 14793
048addec 147942001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 14795
048addec 14796 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
60a653f1 14797
048addec 147982001-11-17 Jason Rumney <jasonr@gnu.org>
60a653f1 14799
048addec 14800 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
60a653f1 14801
048addec 148022001-11-17 Gerd Moellmann <gerd@gnu.org>
60a653f1 14803
048addec
JD
14804 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
14805 with invalid position.
60a653f1 14806
048addec 148072001-11-16 Richard M. Stallman <rms@gnu.org>
60a653f1 14808
048addec 14809 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
60a653f1 14810
048addec
JD
14811 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
14812 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
14813 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
60a653f1 14814
048addec 14815 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
60a653f1 14816
048addec 148172001-11-16 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 14818
048addec
JD
14819 * fileio.c (build_annotations): Split off the tail.
14820 (build_annotations_2): New fun. Extracted from build_annotations.
14821 (Fwrite_region): Split the call to build_annotations into two
14822 calls to build_annotations and build_annotations_2.
077907d4 14823
048addec 148242001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
1756e2fb 14825
048addec
JD
14826 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
14827 clear_waiting_for_input with argument.
1756e2fb 14828
048addec 14829 * xterm.h (x_update_cursor): Remove duplicated prototype.
06e8f738 14830
048addec 14831 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
06e8f738 14832
048addec 14833 * xterm.c (waiting_for_input): Remove unnecessary declaration.
fa336b91 14834
048addec 14835 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
fa336b91 14836
048addec 148372001-11-16 Stefan Monnier <monnier@cs.yale.edu>
fa336b91 14838
048addec
JD
14839 * fileio.c (choose_write_coding_system): New fun, extracted
14840 from Fwrite_region.
14841 (Fwrite_region): Use it.
fa336b91 14842
048addec
JD
14843 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
14844 (funcall_lambda, run_hook_with_args): Make static and add prototype.
14845 (ml_apply, find_handler_clause): Add prototype.
fa336b91 14846
048addec 148472001-11-16 Eli Zaretskii <eliz@gnu.org>
fa336b91 14848
048addec 14849 * config.in: Add #undef HAVE_COFF_H.
fa336b91 14850
048addec
JD
14851 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
14852 Required for ISC 4.1.
fa336b91 14853
048addec 148542001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
fa336b91 14855
048addec
JD
14856 * syswait.h: (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
14857 Andrew Wiseman <a.wiseman@btclick.com>.
fa336b91 14858
048addec 148592001-11-16 Kim F. Storm <storm@cua.dk>
fa336b91 14860
048addec
JD
14861 The following changes are made to clean up the various internal
14862 references to the fringes to actually use the term `fringe' for
14863 them. Previously, they were called `flags areas', `bitmap areas',
14864 `left/right side of windows', or implicitly as `flags' or
14865 `bitmaps':
fa336b91 14866
048addec 14867 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
f63fd14e 14868 Comments fixed. Use renamed symbols.
06e8f738 14869
f63fd14e 14870 * dispnew.c: Comment fix. Use renamed symbols.
06e8f738 14871
048addec
JD
14872 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
14873 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
14874 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
9ce647f4 14875
048addec 14876 * msdos.c: Comment fix.
9ce647f4 14877
048addec 14878 * w32fns.c: Use renamed symbols.
9b784ab8 14879
f63fd14e 14880 * w32term.c: Comment fixes. Use renamed symbols.
048addec
JD
14881 (fringe_bitmap_type): Renamed from bitmap_type.
14882 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
14883 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
14884 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
9f7e52b4 14885
f63fd14e 14886 * w32term.h: Comment fixes. Use renamed symbols.
048addec
JD
14887 (fringes_extra): Renamed from flags_areas_extra.
14888 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
14889 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
14890 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
14891 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
14892 (FRAME_X_LEFT_FRINGE_WIDTH):
14893 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
14894 (FRAME_X_RIGHT_FRINGE_WIDTH):
14895 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
9f7e52b4 14896
048addec 14897 * widget.c: Use renamed symbols.
9f7e52b4 14898
f63fd14e 14899 * window.c: Comment fixes. Use renamed symbols.
048addec 14900 (coordinates-in-window-p): Doc fix.
fa336b91 14901
f63fd14e 14902 * xdisp.c: Comment fixes. Use renamed symbols.
34e5d0af 14903
048addec 14904 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
9b784ab8 14905
048addec 14906 * xfns.c: Use renamed symbols.
89512fcd 14907
f63fd14e 14908 * xterm.c: Comment fixes. Use renamed symbols.
048addec
JD
14909 (fringe_bitmap_type): Renamed from bitmap_type.
14910 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
14911 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
14912 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
89512fcd 14913
f63fd14e 14914 * xterm.h: Comment fixes. Use renamed symbols.
048addec
JD
14915 (fringes_extra): Renamed from flags_areas_extra.
14916 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
14917 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
14918 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
14919 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
14920 (FRAME_X_LEFT_FRINGE_WIDTH):
14921 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
14922 (FRAME_X_RIGHT_FRINGE_WIDTH):
14923 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
14924
149252001-11-15 Jason Rumney <jasonr@gnu.org>
14926
14927 * w32menu.c (add-menu-item): Make help_echo and radio buttons
14928 work for most menu items. From David Ponce
14929 <david.ponce@wanadoo.fr>.
14930
149312001-11-15 Gerd Moellmann <gerd@gnu.org>
14932
14933 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
14934 Some x_set_* function expect to be called even if old and new
14935 value are equal.
14936
14937 * xdisp.c (build_desired_tool_bar_string): Accept zero
14938 tool_bar_button_relief.
14939
14940 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
14941
14942 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
14943
14944 * xterm.c (x_draw_bar_cursor): If the background color of the
14945 glyph under the cursor equals the frame's cursor color, use
14946 the glyph's foreground color for drawing the bar cursor.
14947
14948 * dispnew.c (direct_output_forward_char): Fix character/byte
14949 position comparison.
7d18891d 14950
048addec 149512001-11-15 Miles Bader <miles@gnu.org>
d2936d21 14952
048addec
JD
14953 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
14954 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
14955 Update arguments to find_field.
14956 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
14957 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
14958 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
14959 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
7d18891d 14960
048addec 149612001-11-14 Richard M. Stallman <rms@gnu.org>
7d18891d 14962
048addec 14963 * editfns.c (Fpropertize): Allow call with 1 arg.
7d18891d 14964
048addec
JD
14965 * dispextern.h (image_background, image_background_transparent):
14966 Conditionalize on HAVE_X_WINDOWS.
7d18891d 14967
048addec 149682001-11-13 Richard M. Stallman <rms@gnu.org>
7d18891d 14969
048addec 14970 * print.c (Fprin1_to_string): Doc fix.
7d18891d 14971
048addec 14972 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
7d18891d 14973
048addec 14974 * floatfns.c (Fceiling, Ffloor): Doc fixes.
7d18891d 14975
048addec 14976 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
7d18891d 14977
048addec 14978 * fileio.c (Ffile_accessible_directory_p): Doc fix.
7d18891d 14979
048addec 14980 * eval.c (syms_of_eval): Doc fix.
7d18891d 14981
048addec 14982 * coding.c (syms_of_coding): Doc fix.
7d18891d 14983
048addec 14984 * doc.c (Fsnarf_documentation): Doc fix.
7d18891d 14985
048addec 14986 * dispnew.c (syms_of_display): Doc fix.
9474c847 14987
048addec 14988 * category.c (Fget_unused_category): Doc fix.
9474c847 14989
048addec 14990 * buffer.c (syms_of_buffer): Doc fixes.
e3059a5d 14991
048addec 149922001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
e3059a5d 14993
048addec 14994 * print.c (prin1, print): Doc fix.
e3059a5d 14995
048addec 149962001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
b3700ae7 14997
048addec
JD
14998 * fontset.h: Remove declarations of variables
14999 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
b3700ae7 15000
048addec
JD
15001 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
15002 `Vclip_large_size_font'.
eae936e2 15003
048addec 150042001-11-13 Jason Rumney <jasonr@gnu.org>
4bb962be 15005
048addec 15006 * w32fns.c: Doc fix.
ddb67bdc 15007
048addec 150082001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3467c402 15009
048addec 15010 * xfaces.c (Fface_attributes_as_vector): Doc fix.
3467c402 15011
048addec 15012 * fns.c: Doc fix.
6e1b91d7 15013
048addec 15014 * emacs.c: Doc fix.
1c1d3d69 15015
048addec 15016 * coding.c: Doc fix.
1c1d3d69 15017
048addec
JD
15018 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
15019 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
15020 `new style' [w/`doc:' keyword].
b6f4c7ba 15021
048addec 150222001-11-12 Richard M. Stallman <rms@gnu.org>
b6f4c7ba 15023
048addec
JD
15024 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
15025 LeaveNotify events. Only FocusIn and FocusOut do that now.
15026 (x_display_and_set_cursor): Do display hollow cursors in active
15027 minibuffer windows when they are not selected.
b6f4c7ba 15028
048addec 150292001-11-12 Jason Rumney <jasonr@gnu.org>
a89f435d 15030
048addec 15031 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
f63fd14e
JB
15032 * w32term.c: Change doc-string comments to `new style'
15033 [w/`doc:' keyword]. Doc fixes.
a89f435d 15034
048addec
JD
15035 * w32fns.c: Don't define max.
15036 (Fx_open_connection): Only execute once.
a4cd0cd7 15037
048addec 150382001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
eafb659a 15039
048addec
JD
15040 * ccl.c: Change macros to use do-while block instead of if-else.
15041 Use braces to follow GNU Coding Standards.
eafb659a 15042
048addec 150432001-11-11 Richard M. Stallman <rms@gnu.org>
a4cd0cd7 15044
048addec 15045 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
a4cd0cd7 15046
048addec 15047 * lread.c (read_escape): Use end_of_file_error for reporting eof.
a4cd0cd7 15048
048addec
JD
15049 * insdel.c (replace_range): Use adjust_markers_for_replace
15050 instead of adjust_markers_for_delete and adjust_markers_for_insert.
a4cd0cd7 15051
048addec 15052 * intervals.h: Declare set_text_properties and set_text_properties_1.
a4cd0cd7 15053
048addec
JD
15054 * textprop.c (set_text_properties_1): New subroutine
15055 broken out of set_text_properties.
15056 (set_text_properties): Use set_text_properties_1.
91823618 15057
048addec
JD
15058 * intervals.c (graft_intervals_into_buffer):
15059 Use set_text_properties_1 to clear out properties.
91823618 15060
048addec
JD
15061 * search.c (Freplace_match): Use replace_range to insert
15062 and delete. Don't request property inheritance from
15063 surrounding text.
86928dfb 15064
048addec 150652001-11-10 Jason Rumney <jasonr@gnu.org>
86928dfb 15066
048addec 15067 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
f63fd14e 15068 vertical fonts. Allow them if face name is explicitly specified.
048addec 15069 Do not give up if we find a font that cannot be converted to an xlfd.
40ef1eda 15070
048addec 150712001-11-10 Gerd Moellmann <gerd@gnu.org>
ab8469eb 15072
048addec
JD
15073 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
15074 instead of malloc/free.
a78e0303 15075
048addec 150762001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
40ef1eda 15077
048addec
JD
15078 * xfaces.c (merge_face_vectors): Use braces to follow GNU
15079 Coding Standards.
15080 (Finternal_set_lisp_face_attribute): Likewise.
fabf4a91 15081
048addec 15082 * buffer.c (Fbury_buffer): Likewise.
0c99b139 15083
048addec 15084 * indent.c (current_column_1): Remove unused variable `prev_col'.
0c99b139 15085
048addec
JD
15086 * coding.c (encode_coding): Use precomputed value of `src'.
15087 (encode_coding): Remove unused variable `src_end'.
15088 (code_convert_region): Remove unused variables `count'.
830ddd77 15089
048addec 150902001-11-07 Jason Rumney <jasonr@gnu.org>
830ddd77 15091
048addec
JD
15092 * w32term.c (x_display_and_set_cursor): Do not move system caret
15093 if cursor_glyph is NULL.
55c6d645 15094
048addec 150952001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
55c6d645 15096
048addec 15097 * keymap.c (access_keymap): Fix compilation error.
5de38842 15098
048addec 150992001-11-07 Miles Bader <miles@gnu.org>
7a4564a4 15100
048addec 15101 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
5de38842 15102
048addec 151032001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4fa23df5 15104
048addec
JD
15105 * intervals.c (graft_intervals_into_buffer):
15106 Remove #ifdef'd-out code.
15107 (graft_intervals_into_buffer): Remove unused variable `middle'.
4fa23df5 15108
048addec
JD
15109 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
15110 code (eval-current-buffer).
15111 Change doc-string comments to `new style' [w/`doc:' keyword].
7a6a97d7 15112
048addec 151132001-11-06 Richard M. Stallman <rms@gnu.org>
c191d13c 15114
048addec 15115 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
7a6a97d7 15116
048addec 151172001-11-06 Stefan Monnier <monnier@cs.yale.edu>
44dc78e0 15118
048addec 15119 * lread.c (read1): Fix behavior with nested backquoting.
44dc78e0 15120
048addec
JD
15121 * keyboard.c (make_lispy_event): Check integerness and fix
15122 Lisp_Object/int mixup.
17893c65 15123
048addec 151242001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4d994a79 15125
048addec 15126 * fns.c (copy_hash_table): Remove unused variable `v'.
d5360cc7 15127
048addec
JD
15128 * fontset.c (fontset_font_pattern): Remove unused variable
15129 `family_registry'.
d5360cc7 15130
048addec 15131 * indent.c (current_column_1): Remove unused variable `prev_col'.
d5360cc7 15132
048addec 151332001-11-05 Richard M. Stallman <rms@gnu.org>
96238a5a 15134
048addec 15135 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
96238a5a 15136
048addec
JD
15137 * buffer.c (Fkill_buffer): Don't delete auto save file
15138 if buffer is modified.
d9d54213 15139
048addec 151402001-11-05 Andrew Innes <andrewi@gnu.org>
d9d54213 15141
048addec
JD
15142 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
15143 CHECK_NUMBER_CDR.
b116830b 15144
048addec 151452001-11-05 Richard M. Stallman <rms@gnu.org>
b116830b 15146
048addec 15147 * unexelf.c (unexec): Minor changes; clean up comments.
3297e2a1 15148
048addec 151492001-11-05 Sam Steingold <sds@gnu.org>
3297e2a1 15150
048addec 15151 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
6fb8339c 15152
048addec 151532001-11-05 Andreas Schwab <schwab@suse.de>
6fb8339c 15154
048addec 15155 * sound.c (sound_perror): Save errno from being clobbered.
7dd73b78 15156
048addec 151572001-11-05 Dale Hagglund <rdh@yottayotta.com>
7dd73b78 15158
048addec
JD
15159 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
15160 the program image directly.
982f6c7e 15161
048addec 151622001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d31053f9 15163
048addec 15164 * buffer.h (Fbuffer_local_value): Add prototype.
d31053f9 15165
048addec 151662001-11-04 Richard M. Stallman <rms@gnu.org>
d31053f9 15167
048addec
JD
15168 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
15169 and CHECK_BUFFER.
d31053f9 15170
048addec
JD
15171 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
15172 (record_char): Likewise.
d31053f9 15173
048addec
JD
15174 * keyboard.c (make_lispy_event): Don't insist a drag event must
15175 move to a different buffer position. Instead, check for moving at
15176 least double_click_fuzz.
982f6c7e 15177
048addec 15178 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
830047fd 15179
048addec 15180 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
b116830b 15181
048addec
JD
15182 * indent.c (current_column_1, Fmove_to_column): Separate the code
15183 for display-table glyphs from the code for buffer text, to fix
15184 bugs in the former.
830047fd 15185
048addec 151862001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
b116830b 15187
048addec
JD
15188 * buffer.c (Fbuffer_local_value): New function.
15189 (syms_of_buffer): Defsubr it.
2df5238c 15190
048addec
JD
15191 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
15192 value of `cursor-in-non-selected-windows'.
4e397688 15193
048addec
JD
15194 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
15195 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
15196 (syms_of_xdisp): Initialize it.
48b0f3ae 15197
048addec 151982001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2df5238c 15199
048addec 15200 * xfns.c (Fx_create_frame): Doc fix.
3ecaf7e5 15201
048addec
JD
15202 * coding.c: Change doc-string comments to `new style' [w/`doc:'
15203 keyword].
3ecaf7e5 15204
048addec
JD
15205 * eval.c (top_level_value, top_level_set): Remove commented and
15206 #ifdef'd-out code.
15207 (Fdefvar): Fix usage in doc-string.
3ecaf7e5 15208
048addec 152092001-11-03 Richard M. Stallman <rms@gnu.org>
3ecaf7e5 15210
048addec 15211 * xfns.c: Include unistd.h, if it exists.
8db2e33b 15212
048addec 15213 * editfns.c: Move the include of ctype.h after unistd.h.
8db2e33b 15214
048addec 15215 * gmalloc.c: Test BROKEN_PROTOTYPES.
aed29b97 15216
048addec 152172001-11-03 Ken Raeburn <raeburn@gnu.org>
aed29b97 15218
048addec
JD
15219 * lisp.h (CHECK_STRING_CAR): New macro.
15220 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
15221 treating XCAR and XCDR as lvalues.
15222 (openp): Use CHECK_STRING_CAR.
15223 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
aed29b97 15224
048addec 152252001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
6cb16f95 15226
048addec
JD
15227 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
15228 (SIGMASKTYPE): Define.
1b1acc13 15229
048addec 15230 * syssignal.h (sigunblock): Don't define if already defined.
020f9b38 15231
048addec 152322001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
020f9b38 15233
048addec
JD
15234 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
15235 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
15236 Fix typos in comments.
6cb16f95 15237
048addec
JD
15238 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
15239 and #ifdef'd-out code.
15240 Fix and reindent comments.
6cb16f95 15241
048addec 15242 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
6cb16f95 15243
048addec
JD
15244 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
15245 argument `i' in macros.
6cb16f95 15246
048addec
JD
15247 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
15248 `i' in macros.
7e9d3c2f 15249
048addec
JD
15250 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
15251 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
15252 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
15253 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
15254 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
15255 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
15256 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
15257 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
15258 in macros.
7e9d3c2f 15259
048addec
JD
15260 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
15261 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
15262 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
15263 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
15264 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
15265 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
15266 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
15267 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
15268 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
15269 (remove unused second argument).
7e9d3c2f 15270
048addec 152712001-11-02 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 15272
048addec
JD
15273 * syntax.c (describe_syntax): New wrapper.
15274 (Finternal_describe_syntax_value): Rename from describe_syntax.
15275 Don't insert space at front and \n at the end.
15276 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
e6bff182 15277
048addec
JD
15278 * regex.c (re_wctype): Try to fix some warnings.
15279 (regcomp, regexec): Don't forget the __restrict.
9ba48103 15280
048addec 152812001-11-02 Richard M. Stallman <rms@gnu.org>
9ba48103 15282
048addec 15283 * textprop.c (Fget_char_property): Doc fix.
9ba48103 15284
048addec 152852001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9ba48103 15286
048addec 15287 * process.c (Fstart_process): Add usage to doc-string.
c22e59e1 15288
048addec 15289 * data.c (Fsetq_default): Ditto.
c22e59e1 15290
048addec 15291 * callint.c (Finteractive): Ditto.
9271ed2c 15292
048addec 152932001-11-01 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 15294
048addec
JD
15295 * macros.c: Don't include keymap.h any more.
15296
152972001-11-01 Richard M. Stallman <rms@gnu.org>
15298
15299 * data.c (Fmake_local_variable): Doc fix.
15300
15301 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
15302 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
e6bff182 15303
048addec 15304 * keymap.c (Fdescribe_buffer_bindings): Print character property
9271ed2c
RS
15305 bindings along with or instead of the buffer local map.
15306 Make the overriding maps override what they should.
15307
f00691a3 153082001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8b8bd9c6
PJ
15309
15310 * window.c (grow_mini_window): Fix typo in comment.
15311
27188d11
GM
153122001-11-01 Gerd Moellmann <gerd@gnu.org>
15313
7b49b9d2
GM
15314 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
15315 (XTset_vertical_scroll_bar): Likewise.
15316
43f7c3ea
GM
15317 * xfns.c (x_build_heuristic_mask): Use four_corners_best
15318 instead of IMAGE_BACKGROUND.
c22e59e1 15319
b350c2e5
GM
15320 * xfns.c (four_corners_best): Reindent.
15321
c22e59e1 15322 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
27188d11
GM
15323 Handle :box so that it is possible to specify sexprs.
15324
bf00d461
EZ
153252001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
15326
15327 * s/hpux11.h: New file.
15328
f00691a3 153292001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e10df59 15330
2b209b97
PJ
15331 * emacs.c (USAGE1): Show command line option --no-window-system
15332 instead of --no-windows in usage.
15333 (standard_args): Rename --no-windows to --no-window-system.
15334 (bug_reporting_address): Follow Emacs coding conventions.
15335
9dbc9081
PJ
15336 * eval.c (Fcommandp): Doc fix.
15337 Change doc-string comments to `new style' [w/`doc:' keyword].
15338
4e10df59
PJ
15339 * frame.c (Fframe_live_p): Doc fix.
15340
15341 * buffer.c (selective-display-ellipses): Doc fix.
15342
dd387b25
GM
153432001-10-31 Gerd Moellmann <gerd@gnu.org>
15344
fe957e65
GM
15345 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
15346
dd387b25
GM
15347 * xfaces.c (realize_x_face): If C is not a single-byte character,
15348 set the face's colors_copied_bitwise_p instead of the defaulted_p
15349 members which have a different meaning.
15350 (free_face_colors): Do nothing for a face whose colors have been
15351 copied bitwise.
15352
c22e59e1 15353 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
dd387b25 15354
f00691a3 153552001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2e1280f8 15356
687784e8
PJ
15357 * marker.c, mocklisp.c: Change doc-string comments to `new style'
15358 [w/`doc:' keyword].
2e1280f8 15359
b9d9a9b9
GM
153602001-10-31 Gerd Moellmann <gerd@gnu.org>
15361
15362 * fns.c (require_unwind): Return Lisp_Object.
15363
f00691a3 153642001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
48400103 15365
fa1361cb
PJ
15366 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
15367 (last-input-char): Revert doc-string to be the same as the
15368 doc-string of `last-input-event'.
15369
6c465a15 15370 * xdisp.c: Fix typos in comments.
48400103 15371
eafa3196
GM
153722001-10-31 Gerd Moellmann <gerd@gnu.org>
15373
15374 * window.c (grow_mini_window): Handle case that the root
15375 window is already smaller than the nominal mininum height.
15376
747d3f2a
SM
153772001-10-30 Stefan Monnier <monnier@cs.yale.edu>
15378
bf9bb76f
SM
15379 * emacs.c (main): Don't call keys_of_macros any more.
15380
15381 * lisp.h (keys_of_macros): Remove.
15382
15383 * macros.c (keys_of_macros): Remove.
15384
747d3f2a
SM
15385 * xfaces.c (Fface_attribute_relative_p): Declare args.
15386
5e905a57
JR
153872001-10-30 Jason Rumney <jasonr@gnu.org>
15388
15389 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
15390 (enum_font_cb2): Ignore fonts with vertical orientation.
15391
3a426197
RS
153922001-10-30 Richard M. Stallman <rms@gnu.org>
15393
15394 * keyboard.c (Finput_pending_p): Doc fix.
15395
a742d646
GM
153962001-10-30 Gerd Moellmann <gerd@gnu.org>
15397
259cf6bc
GM
15398 * xterm.c (x_after_update_window_line): Don't run the code
15399 clearing in borders for rows whose visible height is 0.
15400
3f99f948
GM
15401 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
15402 resized_p flag is set. If not set, use the much less flickering
15403 method previously used.
15404
15405 * dispnew.c (change_frame_size_1): Set frame's resized_p.
15406
15407 * frame.h (struct frame) <resized_p>: New member.
15408
b4a3be43
GM
15409 * lread.c (to_multibyte): Ensure read_buffer is at least twice
15410 as large as the number of bytes to convert.
747d3f2a 15411
a742d646
GM
15412 * lread.c (to_multibyte): New function.
15413 (read1): Use it.
15414
cacbb9e9
EZ
154152001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
15416
15417 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
15418
99cb6b2f
GM
154192001-10-30 Gerd Moellmann <gerd@gnu.org>
15420
327f42ee 15421 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
747d3f2a
SM
15422 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
15423 if the row's fill_line_p is set and drawing the last glyph with
15424 DRAW_IMAGE_{RAISED,SUNKEN}.
327f42ee 15425
99cb6b2f
GM
15426 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
15427
8e8223e2
SM
154282001-10-29 Stefan Monnier <monnier@cs.yale.edu>
15429
15430 * xmenu.c: Include coding.h and charset.h.
15431 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
15432 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
15433 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
15434 Explicitly set wv->help. Use `TRUE' rather than `True'.
15435 (menu_help_callback): Use empty_string.
15436
15437 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
15438 (Fx_popup_dialog): Explicitly init f.
15439 (w32_menu_display_help): Use empty_string.
15440
4d083a8f
RS
154412001-10-29 Richard M. Stallman <rms@gnu.org>
15442
b2304472
RS
15443 * fns.c (Frequire): Detect recursive try to require the same
15444 feature 3 or more levels deep, and get error.
15445 (require_unwind): New subroutine.
15446 (require_nesting_list): New variable.
15447 (syms_of_fns): Init and staticpro it.
15448
4d083a8f
RS
15449 * print.c (print_object): Clarify indication of insertion type.
15450
2fe41216
EZ
154512001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
15452
90480000
EZ
15453 * coding.c (syms_of_coding): Document that locale-coding-system is
15454 used for decoding input on X.
15455
2fe41216
EZ
15456 * window.c (Fscroll_left, Fscroll_right): Doc fix.
15457
f00691a3 154582001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
74e79967
PJ
15459
15460 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
15461 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
15462
60ebcfe8
GM
154632001-10-29 Gerd Moellmann <gerd@gnu.org>
15464
9a7bdceb
GM
15465 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
15466 use NO_CURSOR if cursor_in_non_selected_windows is false.
15467
3f08fcd2
GM
15468 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
15469 the slant attribute if FRAME is t.
15470
0ccfdad2
GM
15471 * xfns.c (x_set_internal_border_width): Set frame garbaged
15472 when X window doesn't exist yet.
15473
ef253080
GM
15474 * xterm.c (x_after_update_window_line): Clear internal border
15475 in different circumstances.
b116830b 15476
60ebcfe8
GM
15477 * xterm.c (XTread_socket) <KeyPress>: Don't use
15478 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
15479 <handa@etl.go.jp>.
15480
73d25f9c
EZ
154812001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
15482
15483 * m/ibms390.h: New file. From Adam Thornton
15484 <athornton@sinenomine.net>.
15485
cac1daf0
GM
154862001-10-28 Gerd Moellmann <gerd@gnu.org>
15487
053b3256 15488 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
b116830b 15489
cac1daf0
GM
15490 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
15491 a loop counter.
15492
f00691a3 154932001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13b1a09c 15494
f9711de4 15495 * emacs.c: Use argv[0] instead of "emacs" when -t was specified.
186486eb 15496
4707d2d0
PJ
15497 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
15498 keyword].
15499 Fix typos in comments.
b116830b 15500
d883731c
PJ
15501 * emacs.c (bug_reporting_address): New function.
15502 Use it when displaying usage message.
15503
04012254
PJ
15504 * minibuf.c (read_minibuf): Remove unused external declaration of
15505 variable `Qread_only'.
15506
13b1a09c
PJ
15507 * keymap.c (access_keymap): Remove unused variable `charset'.
15508
5bbf4378
MB
155092001-10-28 Miles Bader <miles@gnu.org>
15510
15511 * xfaces.c (merge_face_heights): Handle TO being relative as well.
15512 Remove #ifdef'd-out code.
15513 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
15514 (syms_of_xfaces): Initialize them.
15515
1ce1e4ee
JR
155162001-10-27 Jason Rumney <jasonr@gnu.org>
15517
15518 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
15519 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
15520 position using the system caret.
15521
15522 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
15523 (w32_system_caret_height, w32_system_caret_x)
15524 (w32_system_caret_y): New variables for tracking system caret.
15525 (w32_initialize): Initialize them.
c2d53558 15526 (x_display_and_set_cursor): Make system caret follow the active cursor.
1ce1e4ee 15527
c2d53558
SM
15528 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
15529 New messages types.
1ce1e4ee
JR
15530
15531 * w32term.c (note_mouse_highlight): Clear old help_echo.
15532
f00691a3 155332001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e30ce42 15534
bb4600a4
PJ
15535 * xterm.c: Fix typo in a comment.
15536
7db35a48
PJ
15537 * emacs.c: Fix typos in comments.
15538 Remove unnecessary spaces.
15539 Change doc-string comments to `new style' [w/`doc:' keyword].
15540 (USAGE2): Fix typos in usage string.
15541
a7248e4f
PJ
15542 * xterm.c: Fix typo in a comment.
15543
4e30ce42
PJ
15544 * lisp.h: (gdb_lisp_params): Remove code in #if 0 which is now in
15545 emacs.c.
15546
62725a92
GM
155472001-10-27 Gerd Moellmann <gerd@gnu.org>
15548
798dbe1f 15549 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
c2d53558 15550 instead of 1/2 line_height in the heuristic for skipping
798dbe1f
GM
15551 farther backward when target_y was not reached.
15552
62725a92
GM
15553 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
15554 Display errno only if non-zero.
15555 (sound_warning): New function.
15556 (vox_configure): Don't treat failing to set sample rate as error.
15557 (various places): Improve error messages.
15558
d4e34d24
EZ
155592001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
15560
944e6f60
EZ
15561 * fileio.c (Faccess_file): Run the argument filename through
15562 Fexpand_file_name, before using it.
15563
d4e34d24
EZ
15564 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
15565 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
15566
38d2af0c
GM
155672001-10-26 Gerd Moellmann <gerd@gnu.org>
15568
da80a8d5
GM
15569 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
15570
38d2af0c
GM
15571 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
15572 Fix clearing in the case of scroll bars on the right.
c2d53558 15573
45de4a6f 155742001-10-26 Juanma Barranquero <lektu@terra.es>
56f508dd
EZ
15575
15576 * w32gui.h (XImage): Add a dummy typedef.
15577
fbd5ceb2
GM
155782001-10-26 Gerd Moellmann <gerd@gnu.org>
15579
c2d53558 15580 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
fbd5ceb2 15581
b23236fb
EZ
155822001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
15583
15584 * frame.c (Fframe_parameter): Fix last change.
15585
5d991fc4
EZ
15586 * fileio.c: Revert last change (which removed old commented-out
15587 version of expand-file-name). Add a comment that explains why
15588 this old version should not be removed.
15589
879eadc3
GM
155902001-10-25 Gerd Moellmann <gerd@gnu.org>
15591
75700ff2
GM
15592 * frame.c (Fframe_parameter): Fix a bug whereby some
15593 ``artificial'' frame parameters, like `minibuffer' were not
15594 obtained by calling Fframe_parameters.
15595
dfe92a6a
GM
15596 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
15597 cursor differently.
15598
879eadc3
GM
15599 * xdisp.c (move_it_vertically_backward): Compute line height
15600 differently. Add heuristic to try to be more compatible to 20.x.
15601
e1010ebe
SM
156022001-10-25 Stefan Monnier <monnier@cs.yale.edu>
15603
d73a471b
SM
15604 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
15605
d6da5a06
GM
15606 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
15607 boolean.
e1010ebe 15608
f66bd220
MB
156092001-10-25 Miles Bader <miles@gnu.org>
15610
15611 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
15612 BG is a pointer to a structure, not a structure.
15613 (gif_format, png_format): Add missing commas.
15614
d436d538
RS
156152001-10-24 Richard M. Stallman <rms@gnu.org>
15616
15617 * xfaces.c (Fface_attributes_as_vector): New function.
c2d53558 15618 (syms_of_xfaces): Defsubr it.
d436d538 15619
f00691a3 156202001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
075c507b
PJ
15621
15622 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
15623 variable `area'.
15624
f00691a3 156252001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d492b584 15626
c2d53558 15627 * search.c (scan_newline): Remove unused variable `selective_display'.
d492b584 15628
e2a57b34
MB
156292001-10-25 Miles Bader <miles@gnu.org>
15630
15631 * dispextern.h (struct image): Add `background',
15632 `background_valid', and `background_transparent' fields.
15633 (image_background, image_background_transparent): New declarations.
15634 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
15635 * xfns.c (image_background, image_background_transparent)
15636 (four_corners_best): New functions.
c2d53558 15637 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
e2a57b34
MB
15638 (gs_format): Add `:background' entry.
15639 (lookup_image): Set IMG's background color if specified.
15640 (pbm_load, xbm_load_image, png_load): Set IMG's background field
15641 when appropriate.
15642 (x_clear_image_1): Reset `background_valid' and
15643 `background_transparent_valid' fields.
15644 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
15645 calculating it here. Set IMG's background_transparent field.
15646 (enum xpm_keyword_index): Add XPM_BACKGROUND.
15647 (enum png_keyword_index): Add PNG_BACKGROUND.
15648 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
15649 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
15650 (enum gif_keyword_index): Add GIF_BACKGROUND.
15651 (enum gs_keyword_index): Add GS_BACKGROUND.
c2d53558 15652 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
e2a57b34
MB
15653 Pre-calculate image background color where necessary.
15654 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
15655 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
15656 color to use for image glyph reliefs.
15657
b547b6e8
GM
156582001-10-24 Gerd Moellmann <gerd@gnu.org>
15659
d9e3b8c6
GM
15660 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
15661 in full-width rows.
c2d53558 15662
b547b6e8
GM
15663 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
15664 Fix clearing of area not covered by scroll bar.
15665
f00691a3 156662001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2beb36f9
PJ
15667
15668 * xterm.c: (x_insert_glyphs): Remove unused variables `real_end'
15669 and `real_start'.
c2d53558 15670 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
2beb36f9
PJ
15671 (glyph_rect): Remove unused variable `area'.
15672
76cb5e06
GM
156732001-10-24 Gerd Moellmann <gerd@gnu.org>
15674
bdbdebff 15675 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
c2d53558
SM
15676
15677 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
15678 (row_containing_pos): Take additional argument DY.
15679 Treat rows ending in middle of char differently.
62e33982
GM
15680 (display_line): Handle tabs on window systems differently.
15681
15682 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
15683 with additional argument.
15684
15685 * dispextern.h (row_containing_pos): Adjust prototype.
15686
76cb5e06
GM
15687 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
15688 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
15689 (try_window_id, try_window_reusing_current_matrix)
15690 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
6c465a15 15691 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
76cb5e06 15692
f00691a3 156932001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
996fee11 15694
c9e60620
PJ
15695 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
15696 gnuemacs).
15697 (HAVE_BOXES): Fix typo in comment.
15698 (push_menu_pane): Fix typo in comment.
15699
3b552d56
PJ
15700 * xdisp.c: (display_prop_string_p): Remove unused local declaration
15701 of `Qwhen'.
15702 (single_display_prop_string_p): Remove unused local declarations
15703 of `Qwhen' and `Qmargin'.
15704 (string_buffer_position): Remove unused variable `around'.
15705 (store_frame_title): Remove unused variable `width'.
15706
15c565ac
PJ
15707 * window.c: Don't define max.
15708 (coordinates_in_window): Remove unused variable `uy'.
15709
a8818eb9
PJ
15710 * widget.c: Don't define max.
15711
996fee11
PJ
15712 * process.c: Don't define max.
15713 (create_process): Remove unused variable `buffer'.
15714
496e1a5b
GM
157152001-10-23 Gerd Moellmann <gerd@gnu.org>
15716
c2d53558 15717 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
496e1a5b 15718
5905ae8b
EZ
157192001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
15720
15721 * xfaces.c (Finternal_set_lisp_face_attribute)
15722 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
15723 frame is on a windowed display.
15724
24db49fb
GM
157252001-10-23 Gerd Moellmann <gerd@gnu.org>
15726
c2d53558
SM
15727 * dispnew.c (sync_window_with_frame_matrix_rows):
15728 Fix handling of windows which aren't full-width, fix handling
c51488cd
GM
15729 of marginal areas.
15730
c2d53558 15731 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
24db49fb 15732
f0487f05
EZ
157332001-10-23 Andreas Schwab <schwab@suse.de>
15734
15735 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
15736 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
15737
f0a48a01
GM
157382001-10-23 Gerd Moellmann <gerd@gnu.org>
15739
c2d53558 15740 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
f0a48a01
GM
15741 REAL_END. Notice if cursor gets overwritten.
15742 (notice_overwritten_cursor): Take X positions as parameters.
15743 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
15744 around call to x_draw_glyphs.
15745
f00691a3 157462001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
a50a10a0 15747
fc11dff0
PJ
15748 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
15749 instead of C) and usage.
a50a10a0 15750
fc11dff0
PJ
15751 * editfns.c (char-to-string): Fix argument names (use CHAR instead
15752 of C) and usage.
a50a10a0
PJ
15753
15754 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
15755 `left', `max_width' and `max_height'.
15756
8738febd
GM
157572001-10-23 Gerd Moellmann <gerd@gnu.org>
15758
15759 * xdisp.c (display_line): For a tab continued to the next line,
15760 set row's ends_in_middle_of_char_p.
15761
653c329b
GM
157622001-10-22 Gerd Moellmann <gerd@gnu.org>
15763
15764 * xdisp.c (display_line): Fix computation of continuation lines
15765 width for TABs.
15766
f00691a3 157672001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
f958c5ac 15768
7ba51063
PJ
15769 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
15770 `Qlaplace'.
15771
f958c5ac
PJ
15772 * fileio.c: Remove unused code.
15773
eb360291
MB
157742001-10-22 Miles Bader <miles@gnu.org>
15775
15776 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
15777 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
15778 Remove `DOC_STRINGS_IN_COMMENTS' cases.
15779
98515cf0
JR
157802001-10-21 Jason Rumney <jasonr@gnu.org>
15781
15782 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
15783
93026d88
EZ
157842001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
15785
15786 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
15787 (Finsert_string): Avoid the multi-line string literals warning.
15788
c9a95b79
MB
157892001-10-22 Miles Bader <miles@gnu.org>
15790
15791 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
15792 (Fdocumentation): Don't use it.
15793 (syms_of_doc): Don't initialize it.
15794
15795 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
15796 * print.c (Fwith_output_to_temp_buffer): Likewise.
15797 * window.c (Fsave_window_excursion): Likewise.
c2d53558 15798 * editfns.c (Fsave_excursion, Fsave_current_buffer)
c9a95b79 15799 (Fsave_restriction): Likewise.
c2d53558
SM
15800 * eval.c (Frun_hooks, Frun_hook_with_args)
15801 (Frun_hook_with_args_until_failure)
15802 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
15803 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
15804 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
c9a95b79
MB
15805 (Funwind_protect, Fcondition_case): Likewise.
15806 * coding.c (Ffind_operation_coding_system): Likewise.
15807 * keyboard.c (Ftrack_mouse): Likewise.
15808
a3b10252
MB
158092001-10-21 Miles Bader <miles@gnu.org>
15810
c2d53558 15811 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
a3b10252
MB
15812 (Fmake_hash_table): Add usage: string to doc string.
15813 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
c2d53558 15814 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
a3b10252
MB
15815 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
15816 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
15817 (Fml_prefix_argument_loop): Likewise.
15818
f00691a3 158192001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c6f73eec 15820
c2d53558 15821 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
888ebd13 15822
c6f73eec
PJ
15823 * sysdep.c (init_sys_modes): Change doc-string comments to `new
15824 style' [w/`doc:' keyword].
15825
15826 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
15827 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
15828 comments to `new style' [w/`doc:' keyword].
15829
3cf3436e
JR
158302001-10-21 Jason Rumney <jasonr@gnu.org>
15831
15832 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
15833
c169b8f1
JR
15834 * w32term.c (remember_mouse_glyph): New function.
15835 (w32_mouse_position): Use it.
15836 (note_mouse_movement): If the mouse moved off the glyph, remember
15837 its new position.
c2d53558 15838
4fdd691b
JR
15839 * w32term.h (struct w32_output): Correct spelling of x_compatible.
15840 (w32_display_info): Add mouse_face_overlay.
15841
c169b8f1
JR
15842 * w32term.c (notice_overwritten_cursor): Renamed from
15843 note_overwritten_text_cursor. Rewritten to take glyph widths into
15844 account.
15845 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
15846 (fast_find_string_pos): New function.
15847 (fast_find_position): Return the correct vpos. Add parameter
15848 STOP. In the final row, stop before glyphs having STOP as object.
15849 Don't consider glyphs that are not from a buffer.
15850 (fast_find_position) [0]: Add a presumably more correct version
15851 for after 21.1.
15852 (expose_window_tree, expose_frame): Don't compute intersections here.
15853 (expose_window): Do it here instead.
15854 (expose_window_tree, expose_window, expose_line): Return 1 when
15855 overwriting mouse-face.
15856 (expose_window): If W is the window currently being updated, mark
15857 the frame garbaged.
15858 (expose_frame): If mouse-face was overwritten, redo it.
15859 (x_use_underline_position_properties): New variable.
15860 (syms_of_xterm): DEFVAR_BOOL it.
15861 (x_draw_glyph_string): Add comment to use it in future.
15862 (x_draw_glyph_string): Restore clipping after drawing box.
15863 Fix a computation of the underline position.
15864 (w32_get_glyph_string_clip_rect): Minor cleanup.
15865 (x_fill_stretch_glyph_string): Remove an assertion.
15866 (x_produce_glyphs): Don't convert multibyte characters
15867 to unibyte characters in unibyte buffers.
15868 (cursor_in_mouse_face_p): New function.
15869 (x_draw_stretch_glyph_string): Use it to choose a different GC
15870 when drawing a cursor within highlighted text. Don't draw
15871 background again if it has already been drawn.
15872 (x_draw_glyph_string_box): Don't draw a full-width
15873 box just because the glyph row's full_width_p flag is set.
15874 (x_draw_glyphs): Fix computation of rightmost x for
15875 full-width rows.
15876 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
15877 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
f63fd14e 15878 change bottom shadow accordingly. Some cleanup.
c169b8f1
JR
15879 (x_update_window_end): Handle overwritten mouse face
15880 also for tool bar windows.
15881 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
15882 DRAW is DRAW_IMAGE_RAISED.
15883 (clear_mouse_face): Return 1 if text with mouse face was
2c568af5
SM
15884 actually redrawn. Make the function static.
15885 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
c169b8f1
JR
15886 optimize away highlighting if we pass over that same overlay again.
15887 (note_mouse_highlight): Call mouse_face_overlay_overlaps
15888 to detect a case where we have to highlight a different region
15889 despite not having left the currently highlighted region.
15890 Set mouse_face_overlay in the x_display_info. Avoid changing the
15891 mouse pointer shape when show_mouse_face has already done it, or
15892 there is no need. Handle mouse-face and help-echo in strings.
15893 (glyph_rect): New function.
15894 (w32_mouse_position): Use it to raise the threshold for mouse
15895 movement event generation.
15896 (w32_initialize_display_info): Initialize the x_display_info's
15897 mouse_face_overlay.
15898 (w32_set_vertical_scroll_bar): Don't clear a zero height
15899 or width area.
15900 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
15901 a widget to zero height.
15902
3cf3436e 15903 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
4fdd691b 15904 Protect unibyte strings created by replacing their multibyte
3cf3436e
JR
15905 equivalents in menu_items.
15906 (w32_menu_show): Don't overwrite an item's name with its key
15907 description in case the description is a multibyte string.
15908 (single_submenu): Some cleanup.
15909
15910 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
15911 (postprocess_image): New function.
15912 (lookup_image): Call it for all image types except PostScript.
15913 (x_kill_gs_process): Call postprocess_image.
15914 (tiff_error_handler, tiff_warning_handler): New functions.
15915 (tiff_load): Install them as handlers.
15916 (x_kill_gs_process): Recognize if someone has cleared the image
15917 cache under us.
15918 (valid_image_p): Protect better against invalid image
15919 specifications. Previous code could signal an error.
15920 (Fx_hide_tip, Fshow_tip): Doc fix.
15921 (Fv_max_tooltip_size): New variable.
15922 (syns_of_xfns): DEFVAR_LISP it.
15923 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
f63fd14e 15924 window buffer to *tip* right after creating the frame. Set frame's
3cf3436e
JR
15925 window_width. Use a maximum tooltip size specified by
15926 Vx_max_tooltip_size, if that has valid contents.
15927 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
15928 Make sure the tooltip is completely visible.
15929 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
15930 (Fx_create_frame): Adjust the frame's height for presence
15931 of the tool bar before calling x_figure_window_size.
15932 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
15933 when the window gets smaller.
15934 (x_set_foreground_color): Set frame's cursor_pixel.
15935 (x_set_foreground_color, x_set_background_color): Cleaned up.
15936 (x_set_font): Handle case of x_new_fontset returning the same name
15937 as before, although there was a change in fontsets.
15938
386ca361
MB
159392001-10-21 Miles Bader <miles@gnu.org>
15940
c2d53558 15941 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
386ca361
MB
15942 (Flogxor): Add usage: string to doc string.
15943 * charset.c (Fstring): Likewise.
15944 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
15945 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
15946
f00691a3 159472001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14ff1ee0 15948
03be2694
PJ
15949 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
15950
15951 * alloc.c: Reindent DEFUNs with doc: keywords.
15952
15953 * abbrev.c (Finsert_abbrev_table_description): Reindent.
15954
14ff1ee0
PJ
15955 * frame.c: Change doc-string comments to `new style' [w/`doc:'
15956 keyword].
15957
2f147815 15958See ChangeLog.9 for earlier changes.
6922b018
KH
15959
15960;; Local Variables:
49b3bd82 15961;; coding: iso-2022-7bit
6922b018 15962;; End:
2a34a036 15963
2f147815 15964 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
2a34a036
GM
15965 Copying and distribution of this file, with or without modification,
15966 are permitted provided the copyright notice and this notice are preserved.
ab5796a9
MB
15967
15968;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4