* help-fns.el (help-C-file-name): File name must be in build-files
[bpt/emacs.git] / src / ChangeLog
CommitLineData
d87a9ab8
JD
12004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2
3 * doc.c: New variable Vbuild_files.
4 (Fsnarf_documentation): If Vbuild_files is nil, populate it with
5 file names from buildobh.lst. Only attach docstrings from files
6 that are in Vbuild_files.
7 (syms_of_doc): Defvar Vbuild_files.
8
9 * Makefile.in (SOME_MACHINE_OBJECTS): Add fringe.o, image.o
10 and w32*.o.
11 (temacs${EXEEXT}): Generate buildobj.lst when temacs is linked.
12 (mostlyclean): rm buildobj.lst
13
14 * makefile.w32-in ($(TEMACS)): Generate buildobj.lst when temacs
15 is linked.
16
b6709e77
KS
172004-11-09 Kim F. Storm <storm@cua.dk>
18
19 * fringe.c (update_window_fringes): Update fringe bitmaps if
20 cur and row ends_at_zv_p differs. If bitmaps of a row is updated,
21 also update previous row to get rid of misc. artifacts.
22
bae9677d
KS
232004-11-08 Kim F. Storm <storm@cua.dk>
24
25 * xdisp.c (fast_find_position): Fix start pos if header line present.
b7127aa8 26 (note_mouse_highlight): Clear mouse face if we move out of text area.
bae9677d 27
3f8ea68c
EZ
282004-11-08 Eli Zaretskii <eliz@gnu.org>
29
30 * editfns.c: Move #include "systime.h" before <sys/resource.h>.
31 Don't include <sys/time.h> explicitly.
32 Include <stdio.h> unconditionally, not just on MacOS.
33
a653f812
KH
342004-11-08 Kenichi Handa <handa@m17n.org>
35
36 * fontset.c (fontset_pattern_regexp): Cancel my previous change;
37 don't pay attention to '\' before '*'.
38 (fontset_pattern_regexp): Change the meaning of the second arg.
39 (Fnew_fontset): Call fs_query_fontset, not Fquery_fontset.
40 (check_fontset_name): Try NAME as literal at first, and if it
41 failes, try NAME as pattern.
42
c37caf9d
JD
432004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
44
45 * emacs.c (Fdump_emacs): Only output warning on GNU/Linux.
46
b72915a7
AS
472004-11-07 Andreas Schwab <schwab@suse.de>
48
49 * lisp.h: Declare Fmsdos_downcase_filename.
50 * dired.c: Don't declare Fmsdos_downcase_filename.
51 * fileio.c: Likewise.
52
238a44a8
JD
532004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
54
55 * dosfns.c (Fdos_memget, Fdos_memput): Use integer variable offs in
56 comparisons with integers instead of Lisp_Object address.
57 (Fmsdos_set_keyboard): Declare argument allkeys.
58
59 * msdos.c (IT_set_frame_parameters): Use EQ, not ==, for Lisp_Object:s.
60
61 * dired.c: extern declare Fmsdos_downcase_filename on MSDOS to avoid
62 int/Lisp_Object mixup.
63
64 * fileio.c: Ditto.
65
31141c13
ST
662004-11-06 Steven Tamm <steventamm@mac.com>
67
68 * editfns.c: Need to include sys/time.h before resource.h on darwin.
69
f28c1bd9
RS
702004-11-06 Richard M. Stallman <rms@gnu.org>
71
72 * callint.c (Fcall_interactively): Avoid reusing EVENT for other data.
73
74 * xfaces.c (merge_named_face): GCPRO the face_name in the
75 named_merge_point struct that we make.
76 (merge_face_heights): Eliminate GCPRO arg. All callers changed.
77
78 * keyboard.c (command_loop_1): Change Vtransient_mark_mode
79 before deciding whether to inactivate mark.
80
59dede22
EZ
812004-11-06 Lars Brinkhoff <lars@nocrew.org>
82
83 * config.in: Regenerate (add HAVE_GETRUSAGE).
6159c232
EZ
84 * editfns.c (Fget_internal_run_time): New function.
85 (syms_of_data): Defsubr it.
86 * fns.c (sxhash): As far as possible, merge calculation of
87 hash code for symbols and strings.
59dede22 88
27540e81
EZ
892004-11-06 Eli Zaretskii <eliz@gnu.org>
90
91 * frame.c (syms_of_frame): Fix the example in the doc string.
92
df470e3b
JD
932004-11-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
94
95 * eval.c (Feval): Remove check for INPUT_BLOCKED_P.
96
97 * xmenu.c (popup_get_selection, create_and_show_popup_menu)
98 (create_and_show_dialog): Revert change from 2004-10-31.
bae9677d 99
4cc8522c
LT
1002004-11-05 Luc Teirlinck <teirllm@auburn.edu>
101
102 * macros.c (syms_of_macros) <defining-kbd-macro>: Doc fix.
103
d4a42098
KS
1042004-11-05 Kim F. Storm <storm@cua.dk>
105
a8490886
KS
106 * print.c (print_object): Print Lisp_Misc_Save_Value objects.
107
d4a42098
KS
108 * fileio.c (Ffile_modes): Doc fix.
109 (auto_save_1): Check for Ffile_modes nil value.
110
36a2b04c
KS
1112004-11-05 Kim F. Storm <storm@cua.dk>
112
113 * xselect.c (struct selection_event_queue, selection_queue)
114 (x_queue_selection_requests, x_queue_event)
115 (x_start_queuing_selection_requests)
116 (x_stop_queuing_selection_requests): Add new queue for selection
117 input events to replace previous XEvent queue in xterm.c.
118 (queue_selection_requests_unwind): Adapt to new queue.
119 (x_reply_selection_request): Adapt to new queue. Unexpect
120 wait_object in case of x errors (memory leak).
121 (x_handle_selection_request, x_handle_selection_clear): Make static.
122 (x_handle_selection_event): New function. May queue selection events.
123 (wait_for_property_change_unwind): Use save_value instead of cons.
124 Clear property_change_reply_object.
125 (wait_for_property_change): Abort if already waiting.
126 Use save_value instead of cons for unwind data.
127 (x_handle_property_notify): Skip events already arrived, but don't
128 free them, as "arrived" field is checked by wait_for_property_change,
129 and it will be freed by unwind or explicit unexpect_property_change.
130 (x_get_foreign_selection): Add to new queue.
131 (receive_incremental_selection): Don't unexpect wait_object when done
132 as it has already been freed by previous wait_for_property_change.
133
134 * xterm.h (x_start_queuing_selection_requests)
135 (x_stop_queuing_selection_requests, x_handle_selection_request)
136 (x_handle_selection_clear): Remove prototypes.
137 (x_handle_selection_event): Add prototype.
138
139 * xterm.c (handle_one_xevent): Don't queue X selection events
140 here, it may be too late if we start queuing after we have already
141 stored some selection events into the kbd buffer.
142 (struct selection_event_queue, queue, x_queue_selection_requests)
143 (x_queue_event, x_unqueue_events, x_start_queuing_selection_requests)
144 (x_stop_queuing_selection_requests): Remove/move to xselect.c.
145 (x_catch_errors_unwind): Block input around final XSync.
146
147 * keyboard.h (kbd_buffer_unget_event): Add prototype.
148
149 * keyboard.c (kbd_buffer_store_event_hold): Remove obsolete code.
150 (kbd_buffer_unget_event): New function.
151 (kbd_buffer_get_event, swallow_events): Combine SELECTION events
152 and use x_handle_selection_event.
153 (mark_kboards): Don't mark x and y of SELECTION_CLEAR_EVENT.
154
9c3ad9e1
JD
1552004-11-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
156
157 * xselect.c (TRACE3): New debug macro.
158 (x_reply_selection_request): Use it.
159 (receive_incremental_selection): In call to TRACE0, the name of
160 a symbol is in xname.
161
a33b89de
KS
1622004-11-05 Kim F. Storm <storm@cua.dk>
163
164 * fontset.c (fontset_pattern_regexp): Use unsigned char.
165
a872928c
JD
1662004-11-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
167
88208bb8
JD
168 * fileio.c (Fnext_read_file_uses_dialog_p): New function.
169
0a4f23f3
JD
170 * gtkutil.h: Declare use_old_gtk_file_dialog.
171
172 * gtkutil.c: Make use_old_gtk_file_dialog non-static.
173 (xg_initialize): Moved DEFVAR_BOOL for use_old_gtk_file_dialog ...
174 * xfns.c (syms_of_xfns): ... to here.
175
a872928c
JD
176 * gtkutil.c (xg_get_file_with_chooser): Expand DEFAULT_FILENAME if
177 it doesn't start with /.
178
b912921c
KH
1792004-11-04 Kenichi Handa <handa@m17n.org>
180
181 * fontset.c (fontset_pattern_regexp): If '*' is preceded by '\',
182 treat it as a literal character.
183
c524d9a6
KS
1842004-11-03 Kim F. Storm <storm@cua.dk>
185
186 * .gdbinit (ppt): New function.
187
8cfd0f36
JD
1882004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
189
a11e1dce
JD
190 * xterm.c (x_window_to_scroll_bar): Only call
191 xg_get_scroll_id_for_window if toolkit scroll bars are used.
192
8cfd0f36
JD
193 * gtkutil.c (xg_get_file_with_chooser): Use GTK_STOCK_OK instead
194 of save.
195
a93563fd
AS
1962004-11-02 Andreas Schwab <schwab@suse.de>
197
198 * window.c (Fscroll_right): Fix last change.
199
2b2d59d8
KS
2002004-11-02 Kim F. Storm <storm@cua.dk>
201
202 * Makefile.in (callproc.o): Depend on blockinput.h atimer.h systime.h.
203
2042004-11-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
205
206 * callproc.c (Fcall_process): Block input around vfork.
207
ca28104d
KS
2082004-11-02 Kim F. Storm <storm@cua.dk>
209
210 * eval.c (Fcalled_interactively_p): Rename from Fcall_interactive_p.
211 (syms_of_eval): Defsubr it.
212
29bb7127
RS
2132004-11-02 Richard M. Stallman <rms@gnu.org>
214
215 * insdel.c (replace_range_2): New function.
216
217 * casefiddle.c (casify_region): Handle changes in byte-length
218 using replace_range_2.
219
220 * emacs.c (USAGE3): Delete --horizontal-scroll-bars, -hb.
221
b6189c3b 222 * xdisp.c (back_to_previous_visible_line_start):
29bb7127
RS
223 Subtract 1 from pos when checking previous newline for invisibility.
224
225 * window.c (window_scroll_pixel_based): Update preserve_y
226 for header line if any.
227 (Fscroll_left, Fscroll_right): Don't call interactive_p;
228 use a new second argument instead.
229
230 * eval.c (Fcall_interactive_p): New function.
231 (interactive_p): Don't test INTERACTIVE here.
232 (Finteractive_p): Doc fix.
233
234 * eval.c (Feval): Abort if INPUT_BLOCKED_P.
235
b6189c3b 2362004-11-02 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
a3fe4aaf
JR
237
238 * w32fns.c (w32_font_match): Use fast_string_match_ignore_case for
b6189c3b 239 comparing font names.
a3fe4aaf 240
2a00cdb4
JD
2412004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
242
f9d64bb3
JD
243 * fileio.c (Fread_file_name): Pass Qt as fifth parameter to
244 Fx_file_dialog if only directories should be read.
245
246 * lisp.h: Fx_file_dialog takes 5 parameters.
247
248 * xfns.c (Fx_file_dialog): Both Motif and GTK version: Add
249 parameter only_dir_p.
250 In Motif version, don't put DEFAULT_FILENAME in filter part of the
251 dialog, just text field part. Do not add DEFAULT_FILENAME
252 to list of files if it isn't there.
253 In GTK version, pass only_dir_p parameter to xg_get_file_name.
254
255 * macfns.c (Fx_file_dialog): Add parameter only_dir_p. Check
256 only_dir_p instead of comparing prompt to "Dired". When using
257 a save dialog, add option kNavDontConfirmReplacement, change title
258 to "Enter name", change text for save button to "Ok".
259
260 * w32fns.c (Fx_file_dialog): Add parameter only_dir_p. Check
261 only_dir_p instead of comparing prompt to "Dired".
262
263 * gtkutil.c (xg_get_file_with_chooser)
264 (xg_get_file_with_selection): New functions, only defined ifdef
265 HAVE_GTK_FILE_CHOOSER_DIALOG_NEW and HAVE_GTK_FILE_SELECTION_NEW
266 respectively.
267 (xg_get_file_name): Add parameter only_dir_p.
268 Call xg_get_file_with_chooser or xg_get_file_with_selection
269 depending on HAVE_GTK_FILE* and the value of use_old_gtk_file_dialog.
270 (xg_initialize): New DEFVAR_BOOL use_old_gtk_file_dialog.
271
272 * gtkutil.h (xg_get_file_name): Add parameter only_dir_p.
273
2a00cdb4
JD
274 * config.in: Rebuild (added HAVE_GTK_FILE_*).
275
f6749d5d
KS
2762004-11-01 Kim F. Storm <storm@cua.dk>
277
278 * process.c (connect_wait_mask, num_pending_connects): Only
279 declare and use them if NON_BLOCKING_CONNECT is defined.
bad49fc7 280 (init_process): Initialize them if NON_BLOCKING_CONNECT defined.
f6749d5d
KS
281 (IF_NON_BLOCKING_CONNECT): New helper macro.
282 (wait_reading_process_output): Only declare and use local vars
283 Connecting and check_connect when NON_BLOCKING_CONNECT is defined.
f6749d5d 284
1a99fe1a
JR
2852004-11-01 Andy Petrusenco <Igrek@star-sw.com> (tiny change)
286
287 * w32term.c (x_scroll_run): Delete region objects after use.
288
fcdb28b4
JD
2892004-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
290
495ef86b
JD
291 * xmenu.c: Add prototypes for forward function declarations.
292 (popup_get_selection): Remove parameter do_timers, remove call to
293 timer_check.
f6749d5d 294 (create_and_show_popup_menu, create_and_show_dialog): Remove
495ef86b
JD
295 parameter do_timers from call to popup_get_selection.
296
12e6566a
JD
297 * xdisp.c (update_tool_bar): Pass a copy of f->tool_bar_items to
298 tool_bar_items and assign the result to f->tool_bar_items if
299 not equal. Move BLOCK/UNBLOCK_INPUT from around call to
300 tool_bar_items to assignment of result.
301
fcdb28b4
JD
302 * atimer.c (alarm_signal_handler): Do not call set_alarm if
303 pending_atmers is non-zero.
304
1a1a0c4c
KS
3052004-10-31 Kim F. Storm <storm@cua.dk>
306
307 * dispnew.c (margin_glyphs_to_reserve): Don't use ncols_scale_factor.
308
a36f1680
JW
3092004-10-28 Will <will@glozer.net>
310
311 * macterm.c: allow user to assign key modifiers to the Mac Option
312 key via a 'mac-option-modifier' variable.
313
2d586478
SM
3142004-10-28 Stefan <monnier@iro.umontreal.ca>
315
316 * xselect.c (Vx_lost_selection_functions, Vx_sent_selection_functions):
317 Rename from Vx_lost_selection_hooks and Vx_sent_selection_hooks.
318 (x_handle_selection_request, x_handle_selection_clear)
319 (x_clear_frame_selections, syms_of_xselect): Adjust accordingly.
320
4f71c13f
RS
3212004-10-28 Richard M. Stallman <rms@gnu.org>
322
323 * w32fns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
324
325 * xfns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
326
068f3848
SM
3272004-10-27 Stefan Monnier <monnier@iro.umontreal.ca>
328
329 * syntax.c (scan_sexps_forward): Give precedence to a 2-char
330 comment-starter over a 1-char one.
331
4660a9e3
RS
3322004-10-27 Richard M. Stallman <rms@gnu.org>
333
334 * xdisp.c (get_next_display_element): In mode lines,
335 treat newline and tab like other control characters.
336
337 * editfns.c (Fmessage): Doc fix.
338
339 * indent.c (vmotion): When moving up, check the newline before.
340 Make prevline an int, not a Lisp_Object.
341
233f3db6
KS
3422004-10-27 Kim F. Storm <storm@cua.dk>
343
344 * editfns.c (Fformat): Allocate discarded table with SAFE_ALLOCA.
345 Only allocate info and discarded tables once.
346
347 * lisp.h (USE_SAFE_ALLOCA): Add and init sa_must_free integer.
348 (SAFE_ALLOCA, SAFE_ALLOCA_LISP): Increment it when malloc is used.
349 (SAFE_FREE): Test it to determine if we need to unwind to free.
350 Remove size arg. All users changed.
351 (SAFE_FREE_LISP) Remove. All users changed to use SAFE_FREE.
352
1442465d
JD
3532004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
354
355 * gtkutil.c: Put empty line between comment and function body.
068f3848
SM
356 (xg_destroy_widgets): Rename from remove_from_container.
357 Just destroy all widgets in list. Argument wcont removed.
1442465d
JD
358 (xg_update_menubar, xg_update_submenu): Call xg_destroy_widgets
359 instead of remove_from_container.
360 (xg_display_close, xg_create_tool_bar, update_frame_tool_bar)
361 (free_frame_tool_bar): Add comment.
362
363 * xfns.c (xic_create_xfontset): Check that FRAME_XIC_BASE_FONTNAME
364 is not NULL before strcmp.
365
c8636435
KS
3662004-10-26 Kim F. Storm <storm@cua.dk>
367
368 * callint.c (Fcall_interactively): Add 'U' code to get the
369 up-event discarded by a previous 'k' or 'K' argument.
370
5629f29b
DK
3712004-10-26 David Kastrup <dak@gnu.org>
372
373 * buffer.c (syms_of_buffer): Fix a few typos.
374
4f2f546e
JD
3752004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
376
377 * xsmfns.c: Put empty line between comment and function body.
378 Use two spaces before comment end.
379
fc1062f5
KH
3802004-10-25 Kenichi Handa <handa@m17n.org>
381
382 * fontset.c (fontset_pattern_regexp): Optimize for the case that
383 PATTERN is full XLFD.
384
be13f5e5
KH
3852004-10-24 Kenichi Handa <handa@m17n.org>
386
387 * regex.h (enum reg_errcode_t): New value REG_ERANGEX.
388
389 * regex.c (re_error_msgid): Add an entry for REG_ERANGEX.
390 (regex_compile): Return REG_ERANGEX if appropriate.
391
d0ee2ed3
KH
3922004-10-22 Kenichi Handa <handa@m17n.org>
393
394 * editfns.c (Ftranslate_region_internal): New function.
395 (syms_of_editfns): Defsubr it.
396
63ea8ea5
JD
3972004-10-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
398
399 * xfns.c (xic_create_xfontset): Initialize missing_list to NULL.
400
c27ed90a
JD
4012004-10-21 K\e,Aa\e(Broly L\e$,1 q\e(Brentey <lorentey@elte.hu>
402
068f3848
SM
403 * xterm.h (x_output): New member `xic_base_fontname'.
404 (FRAME_XIC_BASE_FONTNAME): New macro.
405 (xic_free_xfontset): Declare.
c27ed90a 406
068f3848
SM
407 * xfns.c (xic_create_xfontset): Share fontsets between frames
408 based on base_fontname.
409 (xic_free_xfontset): New function.
410 (free_frame_xic): Use it.
411 (xic_set_xfontset): Ditto.
c27ed90a 412
068f3848 413 * xterm.c (xim_destroy_callback): Ditto.
c27ed90a
JD
414
415
59508699
JR
4162004-10-20 B. Anyos <banyos@freemail.hu> (tiny change)
417
418 * w32term.c (x_draw_glyph_string): Use overline_color for overlines.
419
dede2792
JD
4202004-10-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
421
3aca2078
JD
422 * xterm.h (XSync): If USE_GTK, define XSync as process_all and then
423 XSync.
424
dede2792
JD
425 * emacs.c (my_heap_start, heap_bss_diff, MAX_HEAP_BSS_DIFF):
426 New variables and constant.
427 (main): Calculate heap_bss_diff. If we are dumping and the
428 heap_bss_diff is greater than MAX_HEAP_BSS_DIFF, set PER_LINUX32
429 and exec ourself again.
430 (Fdump_emacs): If heap_bss_diff is greater than MAX_HEAP_BSS_DIFF
431 print a warning.
432
433 * lastfile.c: Make my_endbss and my_endbss_static available on all
434 platforms.
435
436 * Makefile.in (RUN_TEMACS): Remove @SETARCH@.
437 * config.in (HAVE_PERSONALITY_LINUX32): Regenerate.
438
1dc5ba01
LT
4392004-10-19 Luc Teirlinck <teirllm@auburn.edu>
440
441 * data.c (Flocal_variable_if_set_p): Doc fix.
442
950090be
JR
4432004-10-19 Jason Rumney <jasonr@gnu.org>
444
445 * w32.c (init_environment): Set emacs_dir correctly when running
446 emacs from the build directory.
447
8550b998
RS
4482004-10-19 Richard M. Stallman <rms@gnu.org>
449
450 * editfns.c (Fdelete_and_extract_region):
451 If region is empty, return null string.
452
08dedea6
JD
4532004-10-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
454
1dc5ba01 455 * gtkutil.h (xg_update_scrollbar_pos): Remove arguments real_left
08dedea6 456 and canon_width.
068f3848 457 (xg_frame_cleared): Remove.
08dedea6 458
068f3848
SM
459 * gtkutil.c (xg_frame_cleared, xg_fixed_handle_expose)
460 (xg_find_top_left_in_fixed): Remove.
08dedea6
JD
461 (xg_create_scroll_bar): Put an event box widget between
462 the scroll bar widget and the edit widget.
463 (xg_show_scroll_bar): Show the parent widget (the event box).
464 (xg_remove_scroll_bar): Destroy parent (the event box) also.
465 (xg_update_scrollbar_pos): Remove arguments real_left and canon_width.
466 Move the parent (the event box) widget inside the fixed widget.
467 Move window clear to xterm.c.
468
068f3848 469 * gtkutil.h (xg_frame_cleared): Remove.
1dc5ba01 470
08dedea6 471 * xterm.c (x_clear_frame): Remove call to xg_frame_cleared
068f3848
SM
472 (x_scroll_bar_create, XTset_vertical_scroll_bar):
473 Remove arguments left and width to xg_update_scrollbar_pos.
08dedea6
JD
474 (XTset_vertical_scroll_bar): Do x_clear_area for USE_GTK also.
475
8550b998 4762004-10-19 Kenichi Handa <handa@m17n.org>
e3e55463
KS
477
478 * xdisp.c (display_mode_element): Fix display of wide chars.
e3e55463 479
84338890
JD
4802004-10-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
481
482 * gtkutil.c (xg_update_scrollbar_pos): Change XClearWindow to
483 gdk_window_clear and move gdk_window_process_all_updates after
484 clear so events are sent to the X server in correct order.
485
6e1b0d8c
KH
4862004-10-18 Kenichi Handa <handa@m17n.org>
487
488 * fontset.c (fs_load_font): Use fast_string_match_ignore_case for
489 comparing font names.
8550b998 490 (fs_query_fontset): Use fast_string_match for comparing fontset names.
6e1b0d8c
KH
491 (list_fontsets): Likewise.
492
493 * search.c (fast_string_match_ignore_case): New function.
494
495 * lisp.h (fast_string_match_ignore_case): Extern it.
496
345e75a8
KS
4972004-10-17 Kim F. Storm <storm@cua.dk>
498
499 * xdisp.c (overlay_arrow_at_row): Return overlay string rather
500 than bitmap if there is not left fringe.
501 (get_overlay_arrow_glyph_row): Also used on windows system.
502 (display_line): Display overlay string if no left fringe.
503
be13cbb7
JR
5042004-10-16 Jason Rumney <jasonr@gnu.org>
505
506 * w32fns.c (w32_font_match): Encode font name being matched.
507
c2e2ede7
RS
5082004-10-16 Richard M. Stallman <rms@gnu.org>
509
510 * window.c (Fspecial_display_p): Doc fix.
511
3584d95d
SM
5122004-10-15 Stefan <monnier@iro.umontreal.ca>
513
514 * doc.c (Fsubstitute_command_keys): Fix remap-handling.
515 Don't ignore menus, because where-is-internal already does it for us.
516
699a0392
KS
5172004-10-15 Kim F. Storm <storm@cua.dk>
518
b3c7a89b
KS
519 * xdisp.c (redisplay_window): Only update fringes and vertical
520 border on window frames.
699a0392 521
4e382b0f
AS
5222004-10-14 Andreas Schwab <schwab@suse.de>
523
524 * m/ia64.h (DATA_SEG_BITS): Don't define.
525
329a7be2
KS
5262004-10-14 Kim F. Storm <storm@cua.dk>
527
528 * xterm.h: Include Xutil.h after keysym.h to work around bug
dbb37962 529 in some X versions.
329a7be2 530
982241b1
SM
5312004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
532
533 * fns.c (map_char_table): Add missing gcpros.
534
9238467d
SM
5352004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
536
537 * keymap.c (get_keymap): An autoload form is not a keymap.
538
539 * textprop.c (syms_of_textprop): Make `syntax-table' nonsticky.
540
4440e3ca
KS
5412004-10-13 Kim F. Storm <storm@cua.dk>
542
7cfdabde
KS
543 * callproc.c (Fcall_process): Simplify handling of display arg.
544 Resume `display_on_the_fly' once a coding system is determined.
545
4440e3ca
KS
546 * xdisp.c (redisplay_preserve_echo_area): Fix last change.
547
1c8dec6a
KS
5482004-10-12 Kim F. Storm <storm@cua.dk>
549
550 * xdisp.c (redisplay_preserve_echo_area): Flush display in case
551 caller, such as call-process, is not going to poll for input.
552 (calc_line_height_property): Handle case where it->object is nil.
553
554 * xterm.c (x_redisplay_interface): Fix flush_display_optional.
555
170b174c
KH
5562004-10-12 Kenichi Handa <handa@m17n.org>
557
9238467d
SM
558 * xdisp.c (get_next_display_element):
559 If unibyte_display_via_language_environment is zero, display 8-bit
170b174c
KH
560 chars in octal in unibyte buffer.
561
b583964c
KS
5622004-10-12 Kim F. Storm <storm@cua.dk>
563
564 * doc.c (Fsubstitute_command_keys): Ignore remappings unless there
565 are no ordinary bindings.
566
29fabd8c
JD
5672004-10-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
568
9238467d 569 * xfns.c (syms_of_xfns): Defsubr x-file-dialog for GTK also.
29fabd8c 570
c3f4c690
ST
5712004-10-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
572
9238467d
SM
573 * macterm.c (x_raise_frame): Add BLOCK_INPUT around SelectWindow.
574 (x_lower_frame): Add BLOCK_INPUT around SendBehind.
c3f4c690 575 (make_mac_frame): Add BLOCK_INPUT around the making of a
9238467d
SM
576 terminal frame.
577 (mac_initialize): Add BLOCK_INPUT around carbon initialization.
578 * macgui.h (mktime): Use emacs_mktime.
c3f4c690
ST
579 * macfns.c (Fx_file_dialog): Add BLOCK_INPUT around more code.
580 Make a cancel file-open dialog be like C-g.
9238467d
SM
581 * mac.c (mktime): Use emacs_mktime.
582 (Fdo_applescript): Add BLOCK_INPUT around do_applescript.
583 (Fmac_paste_function): Add better error handling for carbon cut/paste.
c3f4c690 584
9688f9eb
KS
5852004-10-10 Kim F. Storm <storm@cua.dk>
586
587 * keyboard.c (timer_resume_idle): New function to resume idle
588 timer without resetting timers on the idle list.
589 (read_char): Use timer_resume_idle. Remove local var last_idle_start.
590 (timer_start_idle, timer_stop_idle): Declare static.
591 (read_key_sequence): Use timer_resume_idle instead of timer_start_idle.
592
593 * keyboard.h (timer_start_idle, timer_stop_idle): Remove prototypes.
594
f7f3a65f
ST
5952004-10-08 Steven Tamm <steventamm@mac.com>
596
9238467d 597 * config.in (HAVE_MALLOC_MALLOC_H): Regenerate.
f7f3a65f 598 * macterm.c (mac_check_for_quit_char): Remove warning for using
9238467d 599 NULL where 0 should be used.
f7f3a65f
ST
600 * unexmacosx.c: Use malloc/malloc.h on Tiger instead of
601 objc/malloc.h
9238467d 602 * mac.c: Include time.h for Tiger compatibility.
f7f3a65f 603
3c7d999a
KS
6042004-10-07 Kim F. Storm <storm@cua.dk>
605
606 * xdisp.c (redisplay_window): Fix flicker on vertical line between
607 windows. Update vertical line after drawing window fringes, but
608 only if actually drawing any bitmaps--or there is no fringe.
609
610 * xterm.c (x_update_window_end): Likewise.
611 * macterm.c (x_update_window_end): Likewise.
612 * w32term.c (x_update_window_end): Likewise.
613
614 * fringe.c (draw_window_fringes): Return value now indicates if
615 any fringe bitmaps were redrawn (or there are no fringes).
616
617 * dispextern.h (draw_window_fringes): Update prototype.
618
bf06c82f
ST
6192004-10-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
620
621 * macfns.c (mac_get_window_bounds): Add extern.
622 (x_real_positions): Use mac_get_window_bounds.
623
624 * macmenu.c (update_submenu_strings): Apply 2004-09-07 change for
625 xmenu.c (YAILOM).
3c7d999a 626
bf06c82f
ST
627 * macterm.c [!MAC_OSX]: Include Windows.h.
628 (front_emacs_window): Rename from mac_front_window. All uses
629 changed. Return the frontmost non-tooltip emacs window.
630 (mac_get_window_bounds): New function.
631 (x_calc_absolute_position): Use the difference of width and height
632 between the inner and outer window.
633 (x_set_offset): Specify window position by the coordinae of the
634 outer window. Adjust the position if the title bar is completely
635 outside the screen.
636 (app_is_suspended, app_sleep_time): Remove unused variables.
637 (do_app_resume, do_app_suspend): Remove their contents because
638 window-activate/deactivate events will do the job.
639 (do_zoom_window): Remove unused variables. Make compliant to the
640 standard way of zooming. Set f->left_pos and f->top_pos.
641 (XTread_socket): Don't use argument `expected'. Don't use
642 FrontWindow to determine the clicked window. Exclude unprocessed
643 mouseUp cases in the early stage. Add parentheses to fix operator
644 precedence.
645 (XTread_socket) [TARGET_API_MAC_CARBON]: Don't specify drag area.
646
647
4cbbf6b7 6482004-10-05 Jan Dj\e,Ad\e(Brv. <jan.h.d@swipnet.se>
d8b43276
JD
649
650 * config.in: Regenerate.
651
652 * Makefile.in (RUN_TEMACS): Check HAVE_RANDOM_HEAPSTART instead of
653 HAVE_EXECSHIELD.
654
b90ee8b5
JD
6552004-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
656
657 * xterm.c (x_find_modifier_meanings): Ignore any Super or Hyper for
658 a row if Alt or Meta has been found for that row. Also stop scanning
659 for Keysyms for that row.
660
904db1a2
KS
6612004-10-04 Kim F. Storm <storm@cua.dk>
662
0207b8ad
KS
663 * fringe.c (Ffringe_bitmaps_at_pos): Change return value from cons
664 to list. Include overlay arrow bitmap in return value.
665
25f7220c
KS
666 * xterm.c (XTset_vertical_scroll_bar): Improve handling of scroll
667 bars with fractional column width. If scroll bar separates two
668 windows, move it towards the window it belongs to. Only update
669 the padding area below the scroll bar widget when necessary,
670 i.e. when scroll bar widget is created, moved, or resized.
671
562020fe
KS
672 * xdisp.c (define_frame_cursor1): Do not change frame cursor
673 while tracking/dragging mouse.
674 (x_draw_vertical_border): Do not draw line if frame has scroll bars.
675
37e34af7
KS
676 * window.c (coordinates_in_window): Relax check for cursor
677 on vertial border between mode lines.
678 (Fset_window_fringes): Do not allow negative widths.
679 (Fset_window_scroll_bars): Likewise.
680
904db1a2
KS
681 * .gdbinit (pp): Shorthand for p ARG + pr.
682 (ff): New command: flush frame updates (X only).
683
38fe4f64
MA
6842004-10-03 Michael Albinus <michael.albinus@gmx.de>
685
686 * fileio.c (auto_save_1) Call Ffile_modes for remote files.
687
9de36315
KH
6882004-09-30 Kenichi Handa <handa@m17n.org>
689
07c381ad 690 * process.c (send_process): Free composition data.
9de36315 691
07c381ad 692 * fileio.c (Finsert_file_contents): Free composition data.
9de36315
KH
693
694 * coding.c (code_convert_region): Don't skip ASCIIs if there are
07c381ad
KH
695 compositions to encode.
696 (encode_coding_string): Likewise. Free composition data.
697
b6189c3b 6982004-09-30 Florian Weimer <fw@deneb.enyo.de>
07c381ad
KH
699
700 * coding.c (code_convert_region): Free composition data.
9de36315 701
f2a54fbc
KS
7022004-09-29 Kim F. Storm <storm@cua.dk>
703
dc5d6435
KS
704 * fringe.c: Remove limit on number of bitmaps.
705 (fringe_bitmaps, fringe_faces): Change to pointers.
706 (max_fringe_bitmaps): New var.
707 (Fdefine_fringe_bitmap): Expand fringe_bitmaps and fringe_faces.
708 (init_fringe): Allocate fringe_bitmaps and fringe_faces.
709
710 * dispextern.h (FRINGE_ID_BITS): Increase to 16 bits (64K bitmaps).
711 (struct glyph_row): Reorder fringe_bitmap related fields.
712 (struct it): Likewise.
713
714 * w32term.c (fringe_bmp): Change to pointer.
715 (max_fringe_bmp): New var.
716 (w32_define_fringe_bitmap): Expand fringe_bmp.
717 (w32_draw_fringe_bitmap): Check max_fringe_bmp.
718 (w32_destroy_fringe_bitmap): Likewise.
719
7202004-09-29 Kim F. Storm <storm@cua.dk>
721
722 * fringe.c: Simplify last change.
f2a54fbc
KS
723 (lookup_fringe_bitmap): New function.
724 (valid_fringe_bitmap_p, resolve_fringe_bitmap): Remove.
725 (Fdestroy_fringe_bitmap): Use lookup_fringe_bitmap.
726 Keep standard bitmaps in Vfringe_bitmaps.
727 (Fdefine_fringe_bitmap): Use lookup_fringe_bitmap.
728 (Fset_fringe_bitmap_face): Likewise.
729
730 * dispextern.h (lookup_fringe_bitmap): Add prototype.
731 (valid_fringe_bitmap_p): Remove prototype.
732
733 * xdisp.c (handle_single_display_prop): Use lookup_fringe_bitmap.
734
841a8bca
KS
7352004-09-29 Kim F. Storm <storm@cua.dk>
736
1f2da365
KS
737 * fringe.c (destroy_fringe_bitmap, init_fringe_bitmap)
738 (w32_init_fringe, w32_reset_fringes): Fix bootstrap (NULL rif).
739
841a8bca
KS
740 * dispextern.h (valid_fringe_bitmap_p): Fix prototype.
741
742 * fringe.c (Vfringe_bitmaps): New variable.
743 (syms_of_fringe): DEFVAR_LISP it.
744 (valid_fringe_bitmap_p): Rename from valid_fringe_bitmap_id_p.
745 Change arg to Lisp_Object and fail if not an integer.
746 (get_fringe_bitmap_name, resolve_fringe_bitmap)
747 (destroy_fringe_bitmap): New functions.
9238467d
SM
748 (Fdestroy_fringe_bitmap): Change arg to bitmap symbol.
749 Use destroy_fringe_bitmap. Remove symbol from Vfringe_bitmaps and
841a8bca
KS
750 clear its fringe property.
751 (init_fringe_bitmap): Use destroy_fringe_bitmap instead of
752 Fdestroy_fringe_bitmap.
753 (Fdefine_fringe_bitmap): Add BITMAP arg specifying new or existing
754 bitmap symbol; remove WHICH arg. Add symbol to Vfringe_bitmaps
755 and set fringe property. Signal error if no free slots.
756 (Fset_fringe_bitmap_face): Change arg to bitmap symbol.
757 (Ffringe_bitmaps_at_pos): Return bitmap symbols instead of numbers.
758
759 * xdisp.c (handle_single_display_prop): Fringe bitmaps are now
760 symbols with a fringe property.
761
4d965590
KS
7622004-09-27 Kim F. Storm <storm@cua.dk>
763
764 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>:
765 Doc fix. Format may now be a symbol or alist, not a cons.
766
767 * fringe.c (update_window_fringes): Handle new formats of
768 indicate-buffer-boundaries (symbol or alist). No longer
769 allow a simple cons.
770 (Ffringe_bitmaps_at_pos): Use nil value for no bitmap.
771
e888c2b3
JD
7722004-09-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
773
9238467d 774 * config.in: Rebuild.
e888c2b3 775
83f1cb94
JD
7762004-09-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
777
778 * config.in: Rebuild.
779
dd3b1d60 780 * Makefile.in: Run setarch i386 ./temacs if exec-shield is present.
83f1cb94 781
2c51754c
SM
7822004-09-18 Stefan Monnier <monnier@iro.umontreal.ca>
783
784 * xterm.c (x_term_init): Work around a bug in some X servers.
785
3df5f8aa
RS
7862004-09-18 Richard M. Stallman <rms@gnu.org>
787
557ca2c1
RS
788 * buffer.c (syms_of_buffer) <default-major-mode>: Doc fix.
789
3df5f8aa
RS
790 * xdisp.c (try_window_reusing_current_matrix):
791 Handle the case where we reach the old displayed text,
792 out of sync with the old line boundary.
793
9238467d 7942004-09-14 Stefan Monnier <monnier@iro.umontreal.ca>
4b70e2c9
SM
795
796 * fileio.c (Finsert_file_contents): Fix case of replacement in a
797 narrowed buffer.
798
bfa02563
KS
7992004-09-14 Kim F. Storm <storm@cua.dk>
800
a25fe164
KS
801 * puresize.h (PURESIZE_RATIO): Define based on BITS_PER_EMACS_INT.
802
bfa02563
KS
803 * xfaces.c (Qface_no_inherit): New var.
804 (syms_of_xfaces): Intern and staticpro it.
805 (Finternal_make_lisp_face, Finternal_set_lisp_face_attribute)
806 (Finternal_copy_lisp_face, update_face_from_frame_parameter):
807 Don't increment face_change_count when face has non-nil
808 face-no-inherit property.
809
126f9c02
SM
8102004-09-13 Stefan Monnier <monnier@iro.umontreal.ca>
811
892a8eb5
SM
812 * bytecode.c (BYTE_CODE_QUIT): Add missing AFTER_POTENTIAL_GC.
813 (Fbyte_code): Remove dead code after `wrong_type_argument'.
814
126f9c02 815 * alloc.c (Fgarbage_collect): Mark keyboards, gtk data, and specpdl
9238467d 816 before doing the mark_stack_check_gcpros since they're not on the stack.
126f9c02 817
c0ad3b38
KS
8182004-09-12 Kim F. Storm <storm@cua.dk>
819
820 * editfns.c (Fformat): Handle format strings with multiple text
821 properties. Reverse text property list from the format string,
822 so the positions are in increasing order.
823
844fc085
JD
8242004-09-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
825
826 * xselect.c (x_reply_selection_request): XSync and UNBLOCK before
827 x_uncatch_errors so that possible protocol errors are delivered.
828
b106731c
EZ
8292004-09-10 Eli Zaretskii <eliz@gnu.org>
830
21065c92
EZ
831 * Makefile.in (msdos.o): Depend on buffer.h, commands.h, and
832 blockinput.h.
833 (dosfns.o): Depend on blockinput.h, window.h, dispextern.h,
834 charset.h, and coding.h
9238467d 835 (w16select.o): Depend on buffer.h, charset.h, coding.h, and composite.h.
21065c92
EZ
836 (term.o): Depend on window.h and keymap.h.
837 (abbrev.o): Depend on syntax.h.
838 (callint.o): Depend on keymap.h.
839 (casefiddle.o): Depend on charset.h and keymap.h.
840 (category.o): Depend on keymap.h.
841 (coding.o): Depend on dispextern.h.
842 (cmds.o): Depend on keyboard.h and keymap.h.
843 (dispnew.o): Depend on indent.h and intervals.h.
844 (doc.o): Depend on keymap.h.
845 (editfns.o): Depend on frame.h.
846 (emacs.o): Depend on dispextern.h.
847 (fileio.o): Don't depend on ccl.h.
848 (filelock.o): Depend on charset.h and coding.h.
849 (frame.o): Depend on w32term.h and macterm.h.
850 (insdel.o): Depend on region-cache.h.
851 (keyboard.o): Depend on keymap.h, w32term.h, and macterm.h.
852 (minibuf.o): Depend on $(INTERVALS_SRC) and keymap.h.
853 (search.o): Depend on $(INTERVALS_SRC).
854 (syntax.o): Depend on keymap.h, regex.h, and $(INTERVALS_SRC).
855 (window.o): Depend on keymap.h, blockinput.h, $(INTERVALS_SRC),
856 xterm.h, w32term.h, and macterm.h.
857 (xdisp.o): Depend on keyboard.h, $(INTERVALS_SRC), xterm.h,
858 w32term.h, and macterm.h.
859 (xfaces.o): Depend on keyboard.h, $(INTERVALS_SRC),
860 region-cache.h, xterm.h, w32term.h, and macterm.h.
861 (bytecode.o): Depend on dispextern.h, frame.h, and xterm.h.
862 (data.o): Depend on frame.h.
863 (fns.o): Depend on keymap.h, xterm.h, and blockinput.h.
864 (print.o): Depend on termchar.h and $(INTERVALS_SRC).
865 (lread.o): Depend on $(INTERVALS_SRC), termhooks.h, and coding.h.
866 (intervals.o): Depend on keymap.h.
867
9238467d
SM
868 * msdos.c (msdos_set_cursor_shape, IT_display_cursor):
869 Add debugging print-out to termscript.
b106731c 870
64b7122d
RS
8712004-09-09 Richard M. Stallman <rms@gnu.org>
872
873 * xdisp.c (decode_mode_spec): Use current buffer for most purposes.
874
5670531e
RS
8752004-09-08 Richard M. Stallman <rms@gnu.org>
876
6cb4a892
RS
877 * window.c (Fset_window_buffer): Doc fix.
878
5670531e
RS
879 * xdisp.c (Fformat_mode_line): New arg BUFFER says which buffer to use.
880
7e388eb7
JL
8812004-09-08 Dan Nicolaescu <dann@ics.uci.edu>
882
883 * minibuf.c (history_delete_duplicates): New variable.
884 (read_minibuf): Use it.
885 (syms_of_minibuf): Create the corresponding lisp variable.
886
370e3587
KS
8872004-09-08 Kim F. Storm <storm@cua.dk>
888
889 * xdisp.c (set_cursor_from_row): Also look at 'cursor' property in
890 overlay just before point.
891
f844ba4e
LT
8922004-09-07 Luc Teirlinck <teirllm@auburn.edu>
893
894 * buffer.h (struct buffer): Add auto_save_file_format field.
9238467d
SM
895 * buffer.c (reset_buffer, init_buffer_once):
896 Handle auto_save_file_format field.
f844ba4e
LT
897 (syms_of_buffer): Add DEFVAR_PER_BUFFER for
898 `buffer-auto-save-file-format'.
f844ba4e
LT
899 * fileio.c: Delete declaration for removed Vauto_save_file_format.
900 (build_annotations): Adapt to replacement of
901 `auto-save-file-format' with the new buffer-local variable
902 `buffer-auto-save-file-format'.
903 (syms_of_fileio): Delete DEFVAR_LISP for auto-save-file-format.
904
f0f90717
JR
9052004-09-07 Jason Rumney <jasonr@gnu.org>
906
907 * w32term.h (AppendMenuW_Proc): Move declaration from w32menu.c.
908
9238467d
SM
909 * w32fns.c (w32_wnd_proc) [WM_MEASUREITEM, WM_DRAWITEM]:
910 Handle Unicode menu titles.
f0f90717 911
4e14f66c
KS
9122004-09-07 Kim F. Storm <storm@cua.dk>
913
914 * xdisp.c (set_cursor_from_row): Fix last change. Only use 'cursor'
915 property from text property or overlay strings at point.
916
9238467d 9172004-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
1806714a
SM
918
919 * xmenu.c (update_submenu_strings): YAILOM.
920 (set_frame_menubar): Make sure last_i is initialized.
921
1f06d367
JR
9222004-09-03 Jason Rumney <jasonr@gnu.org>
923
1806714a 924 * w32menu.c (_widget_value): Add lname and lkey.
1f06d367
JR
925 (digest_single_submenu): Set lname and lkey in widget_value
926 instead of name and key.
927 (update_submenu_strings): New function.
928 (set_frame_menubar): Remove call to inhibit_garbage_collection,
929 call update_submenu_strings.
930
931 * w32menu.c (globals_of_w32menu): Check for Unicode API.
932 (digest_single_submenu, w32_menu_show): Encode menu strings as
933 UTF-8 if Unicode API is available.
934 (utf8to16): New function.
935 (add_menu_item): Use it when calling Unicode API.
1806714a 936
46540080
KS
9372004-09-03 Kim F. Storm <storm@cua.dk>
938
939 * xdisp.c (set_cursor_from_row): Look for non-nil `cursor' property
940 in overlay or text-property strings; set cursor on corresponding
941 glyph rather than at end of the string.
942
9277ba61 9432004-09-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
46540080 944
9277ba61 945 * macfns.c (x_real_positions): Save the current window port and
1806714a
SM
946 set a new one before obtaining the global coordinate.
947 Use FRAME_MAC_WINDOW.
948 (x_set_name, x_set_title): Encode title to UTF8.
949 Use SetWindowTitleWithCFString.
9277ba61
ST
950 (Fx_server_version): Get correct OS version.
951
1806714a
SM
952 * macmenu.c (add_menu_item): Remove unused variable `i'.
953 Don't let separator items destroy refence constants of other menu items.
9277ba61
ST
954
955 * macterm.c (x_update_end): Move SetPortWindowPort to inside
956 BLOCK_INPUT.
957 (x_set_offset): Use FRAME_MAC_WINDOW.
958
959 * xdisp.c (note_mouse_highlight): Set the mouse pointer shape to
960 nontext_cursor if it is on a scroll bar.
961
962 * s/darwin.h (LIBS_CARBON): New define to specify libraries for
963 Carbon support.
1806714a
SM
964 (LD_SWITCH_SYSTEM_TEMACS): Don't link with unused libstdc++.
965 Use LIBS_CARBON.
9277ba61 966
b10daec7
JD
9672004-09-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
968
969 * xfns.c (x_set_name_internal): New function. Check if we shall call
970 xfree before ENCODE_UTF_8.
971 (x_set_name, x_set_title): Call x_set_name_internal.
972
f7e22385
JR
9732004-08-31 NAKAMURA Toshikazu <nr-tkz@nifty.com> (tiny change)
974
975 * w32fns.c (w32_load_font): If a BDF font is already loaded, do not
976 reload it.
977
2bf436c3
JD
9782004-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
979
1806714a 980 * macmenu.c (_widget_value): Add lname and lkey.
16ceacc2
JD
981 (single_submenu): Set lname and lkey in widget_value
982 instead of name and key.
983 (update_submenu_strings): New function.
984 (set_frame_menubar): Remove call to inhibit_garbage_collection,
985 call update_submenu_strings.
986
2bf436c3
JD
987 * xmenu.c (digest_single_submenu): Set lname and lkey in widget_value
988 instead of name and key.
989 (update_submenu_strings): New function.
990 (set_frame_menubar): Remove call to inhibit_garbage_collection,
ec867797 991 call update_submenu_strings.
2bf436c3
JD
992
993 * gtkutil.h (_widget_value): Added lname and lkey.
994
11715f92
ST
9952004-08-30 Steven Tamm <steventamm@mac.com>
996
997 * macmenu.c (mac_menu_show): Remove shadowing of menu variable
998 by using different names for inner loop variables.
999
5500be54
JD
10002004-08-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1001
059cd329
JD
1002 * xmenu.c (set_frame_menubar): Reintroduce inhibit_garbage_collection
1003 from 2002-07-15T00:01:34Z!raeburn@raeburn.org so that strings from ENCODE_UTF_8 isn't GC:ed before used.
1004
5500be54
JD
1005 * gtkutil.c (xg_create_frame_widgets): Compensate for tool bar when
1006 tool bar items is 0.
1007
383418e5
ST
10082004-08-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1009
1010 * macmenu.c (ENCODE_MENU_STRING): Added to handle multibyte
1011 strings in menu items.
1012 (single_submenu): Use ENCODE_MENU_STRING
1013 (mac_menu_show): Use ENCODE_MENU_STRING. Reset grabbed because
1014 button release isn't passed to event loop
1015 (add_menu_item): Use SetMenuItemWithCFString
1016
6eb3ee72
ST
10172004-08-26 Steven Tamm <steventamm@mac.com>
1018
1019 * fileio.c (Fread_file_name): Call x_file_dialog on carbon on
1020 tool-bar/menu click
1021 * macfns.c (Fx_file_dialog): Implemented using NavServices
1022
10b43ac3
JD
10232004-08-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1024
2728b5d0
JD
1025 * xterm.c (x_catch_errors_unwind): Do not XSync if display has closed.
1026
10b43ac3
JD
1027 * xfns.c (x_window_to_frame, x_any_window_to_frame)
1028 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
1029 (x_top_window_to_frame): Return 0 if wdesc is None.
1030
2ee3b79e
RS
10312004-08-22 Richard M. Stallman <rms@gnu.org>
1032
1033 * process.c (process_send_signal) [SIGNALS_VIA_CHARACTERS,
1034 HAVE_TERMIOS]: If there's no char for this signal, drop through
1035 and use system calls.
1036
1037 * bytecode.c (Fbyte_code) <unwind-protect>: Cannot GC.
1038
9a1ba2ea
KS
10392004-08-20 Kim F. Storm <storm@cua.dk>
1040
1041 * process.c (wait_reading_process_output): Rename from
1042 wait_reading_process_input. All uses changed.
1043 (wait_reading_process_output_1): Rename from
1044 wait_reading_process_input_1. All uses changed.
1045
1046 * dispnew.c (Fsleep_for): Remove obsolete code.
1047
295f3b30
KH
10482004-08-20 Kenichi Handa <handa@m17n.org>
1049
1050 * syntax.c (skip_chars): Fix for unibyte case.
1051
27615979
SM
10522004-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
1053
1054 * syntax.c (char_quoted): Mixup byte/char pos.
1055 (back_comment): Fixup globals in all cases.
1056
00267f94
JD
10572004-08-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1058
1059 * xfns.c (x_set_name, x_set_title): Encode title to UTF8 before
1060 passing it to gtk_window_set_title.
1061
2439909e
KS
10622004-08-19 Kim F. Storm <storm@cua.dk>
1063
6ba0f14c
KS
1064 * process.c (wait_reading_process_input): Clean up.
1065 Add wait_for_cell, wait_proc, and just_wait_proc args
1066 to avoid overloading `read_kbd' and `do_display' args.
1067 Change read_kbd arg to int. All callers changed.
1068
2439909e
KS
1069 * process.c (process_send_signal): Use CDISABLE.
1070
1071 * sysdep.c (child_setup_tty, init_sys_modes): Use CDISABLE.
1072
101c421e
KS
10732004-08-18 Kim F. Storm <storm@cua.dk>
1074
1075 * process.c (Faccept_process_output): Add arg JUST-THIS-ONE;
1076 forward to wait_reading_process_input via DO_DISPLAY arg.
1077 (wait_reading_process_input): If DO_DISPLAY < 0 for a process
1078 object, only process output from that process; also inhibit
1079 running timers if DO_DISPLAY==-2.
1080
c438dc33
KS
10812004-08-17 Kim F. Storm <storm@cua.dk>
1082
1083 * process.c (process_send_signal): Fix last change--use
1084 _POSIX_VDISABLE instead of CVDISABLE when available.
1085
8afc13c6
RS
10862004-08-16 Richard M. Stallman <rms@gnu.org>
1087
1088 * sysdep.c (child_setup_tty) [SIGNALS_VIA_CHARACTERS]:
1089 Set VQUIT and VINTR chars to the standard ones if they are unset.
1090 [AIX]: Don't do that here. And don't force VINTR to standard
1091 when SIGNALS_VIA_CHARACTERS.
1092
c438dc33 1093 * process.c (process_send_signal)
8afc13c6
RS
1094 [SIGNALS_VIA_CHARACTERS, HAVE_TERMIOS]: Clean up.
1095 Do nothing if the character is CVDISABLE.
1096
1097 * xfaces.c (merge_face_ref): Specifying `unspecified' is a no-op.
1098
c438dc33 1099 * intervals.c (move_if_not_intangible):
8afc13c6
RS
1100 Force POSITION to be between BEGV and ZV.
1101
6dad1714
JPW
11022004-08-14 John Paul Wallington <jpw@gnu.org>
1103
1104 * buffer.c (Frestore_buffer_modified_p): Doc fix.
1105
1106 * fileio.c (Fread_file_name): Doc fix.
1107
1108 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
1109
2bd77330
LT
11102004-08-09 Luc Teirlinck <teirllm@auburn.edu>
1111
1112 * keymap.c (Fmake_keymap, Fmap_keymap, Fwhere_is_internal): Doc fixes.
1113
c90e7e43
LT
11142004-08-08 Luc Teirlinck <teirllm@auburn.edu>
1115
1116 * keyboard.c: Declare Qdisabled_command_function instead of
8392e138 1117 Qdisabled_command_hook.
c90e7e43 1118 (Fcommand_execute): Use Qdisabled_command_function instead of
8392e138 1119 Qdisabled_command_hook.
c90e7e43
LT
1120 (syms_of_keyboard): Ditto.
1121
81909a1a
LT
11222004-08-07 Luc Teirlinck <teirllm@auburn.edu>
1123
1124 * keymap.c (Flocal_key_binding, Fglobal_key_binding)
1125 (syms_of_keymap) <key-translation-map>: Doc fixes.
1126
0cedd530
SM
11272004-08-07 Stefan Monnier <monnier@iro.umontreal.ca>
1128
1725a7c9
SM
1129 * window.c (window_list_1): YAILOM.
1130
0cedd530
SM
1131 * fileio.c (make_temp_name): Handle multibyte prefixes.
1132
2515a131
LT
11332004-08-06 Luc Teirlinck <teirllm@auburn.edu>
1134
1135 * keyboard.c (syms_of_keyboard) <overriding-terminal-local-map>:
1136 Doc fix.
1137
c8b20fb7
KH
11382004-08-03 Kenichi Handa <handa@m17n.org>
1139
1140 * coding.c (decode_coding_string): Adjust coding->consumed, and
1141 etc. with shrinked_bytes.
1142
fb8b092b
KS
11432004-08-03 Kim F. Storm <storm@cua.dk>
1144
1145 * indent.c (compute_motion): Fix check for full width window
1146 in non-window case. Do not count left truncation glyph on
1147 window systems.
1148
df133612
LT
11492004-08-02 Luc Teirlinck <teirllm@auburn.edu>
1150
1151 * data.c (Finteractive_form): Doc fix.
1152
0f7a93c1
KS
11532004-08-02 Kim F. Storm <storm@cua.dk>
1154
1155 * indent.c (compute_motion): Use actual window width if WIDTH is -1,
1156 properly accounting for continuation glyph on non-window systems.
1157 (Fcompute_motion): Use actual window width if WIDTH is nil, and
1158 actual window width/height if TOPOS is nil, properly accounting for
1159 continuation glyphs on non-window systems, and optional header lines.
1160 (vmotion): Let compute_motion calculate actual window width.
1161
1162 * window.c (window_scroll_line_based): Let compute_motion
1163 calculate actual window width.
1164
f491e1ed
KS
11652004-08-02 Kim F. Storm <storm@cua.dk>
1166
1167 * process.c (read_process_output): Use whole read buffer.
1168 Don't trigger adaptive read buffering on errors.
1169
83f64226
LT
11702004-07-31 Luc Teirlinck <teirllm@auburn.edu>
1171
1172 * keymap.c (Fset_keymap_parent, Fdefine_prefix_command): Doc fixes.
1173
1174 * keyboard.c (syms_of_keyboard) <disable-point-adjustment>: Doc fix.
1175
1176 * callint.c (Fcall_interactively): Doc fix.
1177
8afc13c6
RS
11782004-07-30 Richard M. Stallman <rms@gnu.org>
1179
1180 * abbrev.c (Fexpand_abbrev): Undo previous change.
1181
7c111482
KS
11822004-07-30 Kim F. Storm <storm@cua.dk>
1183
1184 * editfns.c (Fformat): Allocate extra (dummy) element in info.
1185
ee945d08
LT
11862004-07-28 Luc Teirlinck <teirllm@auburn.edu>
1187
1188 * eval.c (Fdefvar, Fdefconst): Doc fixes.
1189
3f911c94
KS
11902004-07-27 Kim F. Storm <storm@cua.dk>
1191
1192 * xdisp.c (move_it_in_display_line_to): Check BUFFER_POS_REACHED_P after
1193 we have ensured that the glyph fits on the current line (or returned
1194 MOVE_LINE_CONTINUED otherwise).
1195
f29ff8c7
KS
11962004-07-26 Kim F. Storm <storm@cua.dk>
1197
1198 * xdisp.c (move_it_in_display_line_to): If overflow-newline-into-fringe
1199 is enabled, return MOVE_LINE_CONTINUED rather than MOVE_POS_MATCH_OR_ZV
1200 if target position is at end of display line but char is not a newline.
1201
81159bb9
RS
12022004-07-25 Richard M. Stallman <rms@gnu.org>
1203
ab431b61
RS
1204 * window.c (coordinates_in_window): Return ON_SCROLL_BAR
1205 instead of ON_VERTICAL_BORDER, when on scroll bar.
1206 (Fcoordinates_in_window_p): Handle ON_SCROLL_BAR--return nil.
1207
1208 * dispextern.h (enum window_part): Add ON_SCROLL_BAR.
1209
f29ff8c7 1210 * window.c (Fcoordinates_in_window_p):
81159bb9
RS
1211 Take account of FRAME_INTERNAL_BORDER_WIDTH.
1212
1213 * alloc.c (check_cons_list): New function (contents commented out).
1214
fc820cc5
LT
12152004-07-24 Luc Teirlinck <teirllm@auburn.edu>
1216
1217 * xfaces.c (Fcolor_supported_p): Doc fix.
1218
1219 * frame.c (Fselect_frame, Fset_frame_selected_window)
1220 (Fframe_visible_p, Fraise_frame): Doc fixes.
1221
289978b5
LT
12222004-07-24 Richard M. Stallman <rms@gnu.org>
1223
7630911d
RS
1224 * keyboard.h (not_single_kboard_state): Declared.
1225
1226 * fileio.c (Fwrite_region): Doc fix.
1227
1228 * window.c (Fwindow_at): Take account of FRAME_INTERNAL_BORDER_WIDTH.
1229
1230 * abbrev.c (Fexpand_abbrev): Run Qpre_abbrev_expand_hook
1231 only when a real abbrev is present.
1232
289978b5
LT
1233 * xfns.c (x_icon_verify): New function.
1234 (Fx_create_frame): Use it.
1235
63cc10ae
KS
12362004-07-22 Barry Fishman <barry_fishman@att.net> (tiny change)
1237
1238 * s/gnu-linux.h: Use GC_MARK_STACK if __amd64__ is defined.
1239
36f826d4
KS
12402004-07-21 Kim F. Storm <storm@cua.dk>
1241
1242 * window.h (struct glyph_matrix): New members nrows_scale_factor
1243 and ncols_scale_factor.
1244
1245 * window.c (make_window): Initialize nrows_scale_factor and
1246 ncols_scale_factor members.
1247
1248 * dispnew.c (margin_glyphs_to_reserve): Apply ncols_scale_factor.
1249 (allocate_matrices_for_frame_redisplay): Fix left/right margin mix-up.
1250 (required_matrix_height): Apply nrows_scale_factor.
1251 (required_matrix_width): Apply ncols_scale_factor.
1252
1253 * xdisp.c (display_line): Increment nrows_scale_factor and set
1254 fonts_changed_p if past last allocated row.
1255 (append_glyph, append_composite_glyph, produce_image_glyph)
1256 (append_stretch_glyph): Increment ncols_scale_factor and set
1257 fonts_changed_p if current area is full.
1258
5fc1c546
JD
12592004-07-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1260
1261 * widget.c (EmacsFrameDestroy): Don't abort if normal_gc is 0.
1262
cb7516e5
LT
12632004-07-19 Luc Teirlinck <teirllm@auburn.edu>
1264
1265 * window.c (Fpos_visible_in_window_p, Fset_window_hscroll)
1266 (Fwindow_inside_pixel_edges, Fwindow_end, Fset_window_point)
1267 (Fset_window_start, Fscroll_up, Fscroll_down)
1268 (Fother_window_for_scrolling, Fscroll_other_window)
1269 (Fsave_window_excursion, Fset_window_vscroll)
1270 (syms_of_window) <window-size-fixed>: Doc fixes.
1271
b6189c3b 12722004-07-19 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
dda741ec
JR
1273
1274 * w32fns.c (Fx_file_dialog): Use ENCODE_FILE instead of
1275 ENCODE_SYSTEM for filenames.
1276
bfcf6608
ST
12772004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1278
1279 * mac.c (sys_select): Block input around call to
1280 ReceiveNextEvent to prevent breakage. Correctly handle
1281 blocking on event queue only by calling ReceiveNextEvent
1282 instead of select (since GUI events aren't on an fd).
1283 (sys_read): Remove function
1284 * sysdep.c: Remove redefine of read to sys_read if HAVE_CARBON
1285
e082ac9d
ST
12862004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1287
1288 * mac.c (sys_select): Redo sys_select to use alarm-based
cb7516e5 1289 polling instead of 1 sec timeouts (like solaris).
e082ac9d 1290
cb7516e5 1291 * macterm.c (x_make_frame_visible): Comment in polling on
e082ac9d
ST
1292 frame creation.
1293
1294 * keyboard.c: Undef SIGIO on Carbon
1295
1296 * atimer.c (alarm_signal_handler): Call alarm handlers after
1297 scheduling.
1298
1299 * eval.c (Feval): Remove quit_char test
1300
1301 * process.c (wait_reading_process_input): Remove clearing
1302 stdin for select call on process input.
1303
4b9da0fb
LT
13042004-07-18 Luc Teirlinck <teirllm@auburn.edu>
1305
1204e81c
LT
1306 * xdisp.c (syms_of_xdisp) <window-scroll-functions>: Correct
1307 capitalization error in docstring.
4b9da0fb 1308
26503ad2
JB
13092004-07-17 Juanma Barranquero <lektu@terra.es>
1310
1311 * keyboard.c (not_single_kboard_state): Do nothing unless
1312 MULTI_KBOARD is defined.
1313
3751eb00
RS
13142004-07-17 Richard M. Stallman <rms@gnu.org>
1315
1316 * window.c (coordinates_in_window): Inside the window but outside
1317 its box to the L or R, return ON_VERTICAL_BORDER.
1318 (window_list_1): Rotate the list to start with WINDOW.
1319
1320 * print.c (print_preprocess): Test for print_depth at limit
1321 before entering in being_printed.
1322
1323 * keyboard.c (not_single_kboard_state): New function.
1324 (stuff_buffered_input): Now no-op only if no SIGTSTP.
1325
1326 * frame.c (Fdelete_frame): If we're in single_bboard_state on
1327 this kboard, and we delete its last frame, go to any_kboard_state.
1328
1329 * buffer.c (syms_of_buffer) <transient-mark-mode>: Doc fix.
1330
b6189c3b 13312004-07-15 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
62eb6ca9
JR
1332
1333 * w32fns.c (Fx_file_dialog): Encode strings in system coding
1334 system before passing them to OS functions for display.
1335
0f6af254
DK
13362004-07-15 David Kastrup <dak@gnu.org>
1337
f9253326
KS
1338 * search.c (syms_of_search): Staticpro `saved_last_thing_searched'.
1339 Apparently fixes an abort condition.
0f6af254 1340
386c8f42
LT
13412004-07-14 Luc Teirlinck <teirllm@auburn.edu>
1342
1343 * fileio.c (Fvisited_file_modtime): Return a list of two integers,
1344 instead of a cons.
1345
366511da
MB
13462004-07-14 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
1347
1348 * keyboard.c (echo_dash): Do nothing if there already is a dash
1349 at the end of the echo string.
1350
f85409d3
KS
13512004-07-12 Kim F. Storm <storm@cua.dk>
1352
1353 * alloc.c (mark_object): Only look at Lisp_Misc_Save_Value
1354 if GC_MARK_STACK.
1355
0ba2e87b
LT
13562004-07-10 Luc Teirlinck <teirllm@auburn.edu>
1357
da38045d
LT
1358 * buffer.c (Fswitch_to_buffer, Fpop_to_buffer): Doc fixes.
1359
0ba2e87b
LT
1360 * window.c (Fwindow_buffer, Fother_window, Fget_lru_window)
1361 (Fget_largest_window, Fget_buffer_window, Fdelete_windows_on)
1362 (Freplace_buffer_in_windows, Fset_window_buffer)
1363 (Fselect-window, Fdisplay-buffer, Fsplit_window): Doc fixes.
1364 (syms_of_window): Expand docstring of `display-buffer-function'.
1365
5668fbb8
LT
13662004-07-09 Luc Teirlinck <teirllm@auburn.edu>
1367
1368 * editfns.c (Ffloat_time, Fformat_time_string, Fdecode_time)
1369 (Fcurrent_time_string, Fcurrent_time_zone): Mention in docstrings
1370 that time values of the type (HIGH . LOW) are considered obsolete.
1371
a085bf9d
LT
13722004-07-06 Luc Teirlinck <teirllm@auburn.edu>
1373
669de2fb
LT
1374 * keyboard.c (syms_of_keyboard): Fix `keyboard-translate-table'
1375 docstring.
1376
bac66325 1377 * fns.c (Fclear_string): Declare `len' before call to CHECK_STRING.
a085bf9d 1378
8e975df9
JPW
13792004-07-06 John Paul Wallington <jpw@gnu.org>
1380
1381 * eval.c (Fdefmacro): Signal an error if NAME is not a symbol.
1382
fa164e6a
JPW
1383 * fns.c (Fclear_string): Signal an error if STRING is not a string.
1384
2bac9bb1
JD
13852004-07-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1386
1387 * macterm.c (mac_initialize_display_info): Use CGGetActiveDisplayList
1388 instead of CGMainDisplayID (only in OSX 10.2 and later).
1389
316ef0dc
JPW
13902004-07-04 John Paul Wallington <jpw@gnu.org>
1391
1392 * fileio.c (read_file_name_completion_ignore_case): New variable.
1393 (syms_of_fileio): Declare and initialise it.
1394 (Fread_file_name): Bind `completion-ignore-case' to respect it.
1395
2a1a35c6
EZ
13962004-07-03 Eli Zaretskii <eliz@gnu.org>
1397
1398 * msdos.c (dos_rawgetc): Use make_number to produce Lisp objects
1399 for event.x and event.y.
1400
33a72331
KH
14012004-07-01 Kenichi Handa <handa@m17n.org>
1402
1403 * w32select.c (Fw32_set_clipboard_data): Update `nbytes' correctly
1404 after getting a new string by pre-write-conversion.
1405
9238467d 14062004-06-30 Stefan Monnier <monnier@iro.umontreal.ca>
07a6ab76
SM
1407
1408 * xterm.c (x_detect_focus_change): Remove unused var `nr_events'.
1409 (x_calc_absolute_position): Remove unused var `child'.
1410
1411 * xfaces.c (x_supports_face_attributes_p)
1412 (Fdisplay_supports_face_attributes_p): YAILOM.
1413 (tty_supports_face_attributes_p): Remove unused var `i'.
1414
1415 * syntax.c (skip_chars): Remove unused labels fwd_unibyte_ok and
1416 back_unibyte_ok.
1417
1418 * search.c (match_limit, Fmatch_data, Fset_match_data): YAILOM.
1419
1420 * fontset.c (Fset_fontset_font): Remove unused vars `family' and `registry'.
1421
1422 * Makefile.in (${etc}DOC): Fix file name of make-docfile.
1423
f96ec754
AS
14242004-06-30 Andreas Schwab <schwab@suse.de>
1425
1426 * image.c (CHECK_LIB_AVAILABLE): Add third parameter LIBRARIES.
1427 (Finit_image_library): Pass LIBRARIES through to
1428 CHECK_LIB_AVAILABLE. Declare parameters. Doc fix.
1429 (lookup_image_type): Pass Qnil as second argument to
1430 Finit_image_library.
1431
1432 * lisp.h: Declare Finit_image_library.
1433
59feca74 14342004-06-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
c8d09ad8 1435
31983645
AS
1436 * macterm.c (do_window_activate, do_window_deactivate): Remove.
1437 (XTread_socket): Send mouse button events to the toolbox
1438 dispatcher even when the mouse is grabbed. Don't process window
1439 activate events for non-Emacs windows. Replace function calls to
1440 do_window_activate and do_window_deactivate with their contents.
1441 Reset mouse grabbing status when a window is deactivated.
59feca74 1442
c61278bb
ST
14432004-06-29 Steven Tamm <steventamm@mac.com>
1444
1445 * macterm.c (mac_get_emulated_btn)
1446 (mac_event_to_emacs_modifiers): Fix emulated mouse button
1447 support to correctly mask out modifiers.
1448
c3762cbd
DK
14492004-06-29 David Kastrup <dak@gnu.org>
1450
1451 * search.c (Fset_match_data): Allow buffer before end of list
1452 which can happen if set-match-data is using a pre-consed list.
1453
c61278bb 14542004-06-28 Steven Tamm <steventamm@mac.com>
e439b925
ST
1455
1456 * macterm.c (XTread_socket): Correctly set the frame position
1457 after the window is moved.
1458
74cdfe05
JD
14592004-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1460
1461 * gtkutil.c (xg_get_image_for_pixmap): Call g_object_unref on
1462 gpix and gmask just before return to avoid memory leak.
03ecb80f
JD
1463 (xg_get_image_for_pixmap): Add workaround for monochrome displays
1464 so insensitive and activated icons look ok.
74cdfe05 1465
ef544dc8
JR
14662004-06-27 Jason Rumney <jasonr@gnu.org>
1467
1468 * w32fns.c (file_dialog_callback): Disable edit control if set
1469 to directories only on CDN_INITDONE message.
1470 (Fx_file_dialog): Default to directories only when prompt starts
1471 with "Dired".
1472
7b7990cc
KS
14732004-06-25 Kim F. Storm <storm@cua.dk>
1474
1475 * alloc.c (allocate_misc): Update total_free_markers.
1476 (free_misc): New function.
1477 (safe_alloca_unwind, free_marker): Use it.
1478
1479 * lisp.h (free_misc): Add prototype.
1480
1481 * fns.c (Fmapconcat, Fmapcar): Remove superfluous GCPROs.
1482
d8c379f8
RS
14832004-06-24 Richard M. Stallman <rms@gnu.org>
1484
1485 * emacs.c (Vsignal_USR1_hook, Vsignal_USR2_hook): Definitions deleted.
1486 (syms_of_emacs): Lisp variables deleted.
1487
559cdd07
DK
14882004-06-23 David Kastrup <dak@gnu.org>
1489
94939b84
DK
1490 * search.c (Freplace_match): Adjust the match-data more thoroughly
1491 when replacing strings in the buffer.
1492 (Fmatch_data): When INTEGERS is non-nil and the last match was in
1493 a buffer, add the buffer as last element to the match data.
1494 (Fset_match_data): If an additional element of the match-data is a
1495 buffer, restore it to last_thing_searched.
c8d09ad8 1496 (save_search_regs): Save last_thing_searched as part of the match data.
559cdd07
DK
1497 (restore_match_data): Restore it again.
1498
dce417e7
LT
14992004-06-23 Luc Teirlinck <teirllm@auburn.edu>
1500
1501 * keymap.c (Ftext_char_description): Doc fix.
1502 * doc.c (Fsnarf_documentation): Doc fix.
1503
ef54b2d0
KS
15042004-06-22 Kim F. Storm <storm@cua.dk>
1505
b5bc4d05
KS
1506 * fns.c (Fmapcar, Fmapconcat): GCPRO the args array.
1507
ef54b2d0
KS
1508 * lisp.h (struct Lisp_Save_Value): New member dogc.
1509 (SAFE_ALLOCA_LISP): Change second arg to number of elements.
1510 Set dogc member in Lisp_Save_Value object so it will be GC'ed.
1511 (SAFE_FREE_LISP): New macro.
1512
1513 * alloc.c (safe_alloca_unwind): Clear dogc and pointer members.
1514 (make_save_value): Init new dogc member.
1515 (mark_object): Mark Lisp_Save_Value pointer array if dogc is set.
1516
1517 * fns.c (Fmapconcat, Fmapcar): Use new SAFE_ALLOCA_LISP and
1518 SAFE_FREE_LISP macros.
1519
3d33d993
KS
15202004-06-22 Kim F. Storm <storm@cua.dk>
1521
1522 * lisp.h (SAFE_ALLOCA_LISP): New macro to allocate Lisp_Objects.
1523 Temporarily inhibits GC if memory is xmalloc'ed, as the Lisp_Objects
1524 in that memory area are unknown to GC. Add comments.
1525
1526 * fns.c (Fmapconcat, Fmapcar): Use SAFE_ALLOCA_LISP.
1527
5c917f98
KS
15282004-06-21 Kim F. Storm <storm@cua.dk>
1529
1530 * lisp.h (MAX_ALLOCA): Define here.
1531 (safe_alloca_unwind): Add prototype.
1532 (USE_SAFE_ALLOCA, SAFE_ALLOCA, SAFE_FREE): New macros.
1533
1534 * alloc.c (safe_alloca_unwind): New function.
1535
1536 * casefiddle.c (casify_object): Use SAFE_ALLOCA.
1537
1538 * charset.c (Fstring): Use SAFE_ALLOCA.
1539
1540 * coding.c (MAX_ALLOCA): Remove define.
1541
1542 * data.c (MAX_ALLOCA): Remove define.
1543 (Faset): Use SAFE_ALLOCA.
1544
1545 * editfns.c (Fformat, Ftranspose_regions): Use SAFE_ALLOCA.
1546
1547 * fns.c (string_make_multibyte, string_to_multibyte)
1548 (string_make_unibyte, Fmapconcat, Fmapcar): Use SAFE_ALLOCA.
1549 (MAX_ALLOCA): Remove define.
1550 (Fbase64_encode_region, Fbase64_encode_string)
1551 (Fbase64_decode_region, Fbase64_decode_string): Use SAFE_ALLOCA.
1552 (Fbase64_encode_region, Fbase64_encode_string): Fix potential
1553 memory leak if encoding fails.
1554
1555 * xdisp.c (add_to_log): Use SAFE_ALLOCA.
1556
9a09408e
EZ
15572004-06-21 Eli Zaretskii <eliz@gnu.org>
1558
1559 * print.c (Fwith_output_to_temp_buffer): Doc fix.
1560
376de739
RS
15612004-06-20 Richard M. Stallman <rms@gnu.org>
1562
1563 * xfaces.c (Finternal_copy_lisp_face): Small cleanup; doc fix.
1564
1565 * search.c (match_limit): Cleaner err msg when no match data available.
1566
1567 * window.c (syms_of_window): Doc fix.
1568
1569 * keyboard.c (command_loop_1): Handle values `only' and `identity'
1570 for Vtransient_mark_mode.
1571
1572 * buffer.c (syms_of_buffer): Doc fix.
1573
acd81db9
DK
15742004-06-21 David Kastrup <dak@gnu.org>
1575
1576 * minibuf.c (Ftry_completion, Fall_completions): Do lazy binding
1577 and unbinding of `case-fold-search' according to
1578 `completion-ignore-case' around calls of string-match and
1579 predicates, respectively. Should give satisfactory performance
1580 in all relevant cases.
1581
f303762d
JD
15822004-06-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1583
95911c74
JD
1584 * xterm.c (x_draw_image_foreground_1): Subtract slice.x/y from
1585 clip_x/y_origin.
1586
a6cb6b78
JD
1587 * fns.c (string_to_multibyte): Use xmalloc/xfree instead of alloca.
1588
f303762d
JD
1589 * macfns.c (Fx_display_color_cells): Do not limit return value to 256.
1590
1591 * macterm.c (mac_initialize_display_info): Initialize n_planes correctly
1592 on Mac OSX.
1593
bbdb2684
LT
15942004-06-16 Luc Teirlinck <teirllm@auburn.edu>
1595
1596 * buffer.c (syms_of_buffer): Clarify `fill-column' docstring.
1597
5ea48b1c
KS
15982004-06-16 Kim F. Storm <storm@cua.dk>
1599
1600 * dispextern.h (Vimage_types): Remove extern.
1601
803aac3e
MB
16022004-06-16 Miles Bader <miles@gnu.org>
1603
1604 * image.c (lookup_image_type): Initialize image type if necessary.
1605
cdc97764
KS
16062004-06-15 Kim F. Storm <storm@cua.dk>
1607
c4a5739c
KS
1608 * xdisp.c (try_cursor_movement): Exclude header line from scroll
1609 margin at top of window.
1610 (try_window_reusing_current_matrix): Calculate proper cursor position
1611 after scrolling up with non-zero scroll margin, as the old cursor
1612 position corresponds to value of PT before executing this command.
1613 (try_window_id): Consider scroll margin at bottom of window too;
1614 otherwise we fail to scroll when hl-line-mode is enabled.
1615
cdc97764
KS
1616 * syntax.c (skip_chars): Only recognize [:class:] when it has the
1617 proper format and class is a lower-case word.
1618
5b166323
JD
16192004-06-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1620
1621 * gtkutil.c (xg_get_image_for_pixmap): New function.
c8d09ad8 1622 (xg_get_gdk_pixmap_and_mask): Remove.
5b166323
JD
1623 (update_frame_tool_bar): Call xg_get_image_for_pixmap instead of
1624 xg_get_gdk_pixmap_and_mask.
cdc97764 1625
5b166323
JD
1626 * xterm.h (struct x_display_info): Typo in comment fixed.
1627
1ebd4f78
JB
16282004-06-14 Juanma Barranquero <lektu@terra.es>
1629
1630 * dispextern.h (Vimage_types): Make it conditional on
1631 HAVE_WINDOW_SYSTEM.
1632
1633 * image.c (Vimage_types): Move from xdisp.c.
1634 (Vimage_type_cache): New variable.
1635 (define_image_type): New argument indicating whether an image
1636 library was loaded; cache loaded status and return t on success,
1637 nil otherwise.
1638 (CACHE_IMAGE_TYPE, ADD_IMAGE_TYPE): New macros.
1639 (w32_delayed_load): New function to load an image library from a
1640 list of possible filenames.
1641 (init_xpm_functions, init_png_functions, init_jpeg_functions)
1642 (init_tiff_functions, init_gif_functions): Use `w32_delayed_load'.
c8d09ad8 1643 (CHECK_LIB_AVAILABLE): Call `define_image_library' with new argument.
1ebd4f78
JB
1644 (Finit_image_library): New function, extracted from `init_image'.
1645 Try to initialize an image library on demand and cache whether we
1646 were successful or not.
1647 (syms_of_image): Initialize `Vimage_types' and
1648 `Vimage_type_cache'. Add recognized image types to Vimage_types.
1649 Export `init-image-library'.
1650 (init_image): Remove initialization of all image types, except xbm
1651 and pbm.
1652
1653 * xdisp.c (Vimage_types): Delete (moved to image.c).
1654
904ee128
AS
16552004-06-14 Andreas Schwab <schwab@suse.de>
1656
1657 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
1658 Avoid calling specbind when completion-regexp-list is empty.
1659
092de21d
RS
16602004-06-13 Richard M. Stallman <rms@gnu.org>
1661
1662 * regex.h (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
1663 (re_wctype, re_iswctype, re_wctype_to_bit):
1664 Non-function definitions moved here from regex.c.
1ebd4f78 1665
092de21d
RS
1666 * regex.c (re_wctype, re_iswctype): Function defs longer static.
1667 (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
1668 (re_wctype, re_iswctype, re_wctype_to_bit):
1669 Non-function definitions moved to regex.h.
1670
1671 * window.c (Fselect_window): Doc fix.
1672
1673 * syntax.c: Include regex.h.
1674 (skip_chars): New arg HANDLE_ISO_CLASSES. Callers changed.
1675 If requested, make a list of classes, then check the scanned
1676 chars for membership in them.
1677 (in_classes): New function.
1678 Doc fix.
1679
1680 * keyboard.c (cmd_error): Don't call any_kboard_state
1681 if inside a recursive edit level.
1682
16832004-06-13 Lorentey K\e,Aa\e(Broly <lorentey@elte.hu>
1684
1685 * keyboard.c (command_loop): Call any_kboard_state before
1686 command_loop_2 when at top level.
1687
3ebc0939
AS
16882004-06-13 Andreas Schwab <schwab@suse.de>
1689
cea5d0d4
AS
1690 * print.c (print_object): Always use %ld for printing EMACS_INT.
1691
1692 * keyboard.c (cancel_hourglass_unwind): Return a value.
1693 (modify_event_symbol): Always use %ld for printing EMACS_INT.
1694 (Fexecute_extended_command): Likewise.
1695
1696 * syntax.h (SYNTAX_ENTRY_FOLLOW_PARENT): Rename local variable to
1697 avoid clashes.
1698 (SYNTAX): Likewise.
1699 (SYNTAX_WITH_FLAGS): Likewise.
1700 (SYNTAX_MATCH): Likewise.
1701
1702 * syntax.c (char_quoted): Avoid warning about undefined operation.
1703 (find_defun_start): Likewise.
1704 (scan_lists): Likewise.
1705 (INC_FROM): Likewise.
1706 (scan_sexps_forward): Likewise.
1707
be8c4ce4
AS
1708 * image.c: Include <ctype.h>.
1709
3ebc0939
AS
1710 * xfaces.c (face_attr_equal_p): Declare parameters.
1711
6fb41b5b
KH
17122004-06-13 Kenichi Handa <handa@m17n.org>
1713
1714 * ccl.c (CCL_READ_CHAR): If hit EOF, set REG to -1.
1715
fc3095ce
EZ
17162004-06-12 Matthew Mundell <matt@mundell.ukfsn.org>
1717
1718 * eval.c (Fdefun): Signal an error if NAME is not a symbol.
1719
66189a40
KH
17202004-06-12 Kenichi Handa <handa@m17n.org>
1721
1722 * ccl.c (CCL_CALL_FOR_MAP_INSTRUCTION): Save eof_ic in
1723 ccl_prog_stack_struct and update it.
1724 (CCL_INVALID_CMD): If CCL_DEBUG is defined, call ccl_debug_hook.
1725 (CCL_READ_CHAR): Get instruction counter from eof_ic, not from
1726 ccl->eof_ic on EOF.
1727 (ccl_debug_hook): New function.
1728 (struct ccl_prog_stack): New member eof_ic.
1729 (ccl_driver): Handle EOF in subrountine call correctly.
1730
17312004-06-11 Kenichi Handa <handa@m17n.org>
1732
1733 * coding.c (decode_coding_string): Check CODING_FINISH_INTERRUPT.
1734
1da71023
KS
17352004-06-11 Kim F. Storm <storm@cua.dk>
1736
1737 * emacs.c (shut_down_emacs): Inhibit redisplay during shutdown.
1738
e9efcef4
JB
17392004-06-11 Juanma Barranquero <lektu@terra.es>
1740
1741 * keyboard.c (Fposn_at_point): Doc fix.
1742
9b9ceb61
DK
17432004-06-11 David Kastrup <dak@gnu.org>
1744
1745 * search.c (match_limit): Don't flag an error if match-data
1746 exceeding the allocated search_regs.num_regs gets requested, just
1747 return Qnil.
1748
6e87ac8f
MB
17492004-06-08 Miles Bader <miles@gnu.org>
1750
1751 * xfaces.c (push_named_merge_point): Return 0 when a cycle is detected.
1752
0b0dea7b
JB
17532004-06-07 Juanma Barranquero <lektu@terra.es>
1754
1755 * editfns.c (Fuser_login_name, Ffloat_time, Fencode_time)
1756 (Fcurrent_time_string, Fcurrent_time_zone)
1757 (Finsert_buffer_substring, Ftranspose_regions): Doc fixes.
1758
a0a23346
MB
17592004-06-07 Miles Bader <miles@gnu.org>
1760
08384afd 1761 * xfaces.c (struct named_merge_point): New type.
a0a23346
MB
1762 (push_named_merge_point): New function.
1763 (merge_named_face): New function.
1764 (merge_face_ref, face_at_buffer_position, face_at_string_position):
1765 Use `merge_named_face'.
1766 (merge_face_inheritance): Function removed.
c8d09ad8 1767 (merge_face_ref): Rename from `merge_face_vector_with_property'.
a0a23346
MB
1768 Add new `err_msgs' and `named_merge_points' args. Return error
1769 status. Only print error messages if ERR_MSGS is true. Don't try to
1770 do :inherit attribute validation.
1771 (merge_face_heights): Handle `unspecified' in both directions.
1772 (merge_face_vectors): Rename `cycle_check' arg to `named_merge_points'.
1773 Call `merge_face_ref' instead of `merge_face_inheritance'.
1774 (Fdisplay_supports_face_attributes_p, Fface_attributes_as_vector)
1775 (compute_char_face, face_at_buffer_position)
1776 (face_at_string_position): Call `merge_face_ref' instead of
1777 `merge_face_vector_with_property'.
1778
12d5b185
KH
17792004-06-07 Kenichi Handa <handa@m17n.org>
1780
1781 * coding.c (find_safe_codings): Check NILP (safe_codings) only at
1782 the necessary places.
1783
2e2d7ee6
KS
17842004-06-07 Kim F. Storm <storm@cua.dk>
1785
1786 * process.c (Fdelete_process): Undo 2004-05-28 change.
1787 Instead, call status_notify also for network process.
1788 (status_message): Use process instead of status as arg.
1789 Give messages "deleted" or "connection broken by remote peer" for
1790 an exited network process.
1791 (status_notify): Change call to status_message.
1792 (read_process_output): Increase readmax to 4096. Do not increase
1793 buffer size for datagram channels (default is now large enough).
1794
fcf0d299
ST
17952004-06-06 Steven Tamm <tamm@Steven-Tamms-Computer.local>
1796
1797 * macfns.c (x_create_tip_frame): Fix Mac OS X 10.1 compilation
1798 problem due to newly defined variable.
1799
0722292b
MB
18002004-06-06 Miles Bader <miles@gnu.org>
1801
1802 * xfaces.c (Fdisplay_supports_face_attributes_p): Give up
1803 immediately if non-interactive or not initialized.
1804
ddfb8369
RS
18052004-06-05 Richard M. Stallman <rms@gnu.org>
1806
1807 * minibuf.c (Fcompleting_read): Doc fix.
1808
57015754
AS
18092004-06-05 Andreas Schwab <schwab@suse.de>
1810
1811 * macfns.c (x_create_tip_frame): Fix declaration after statement.
1812
23715ea6
JB
18132004-06-05 Juanma Barranquero <lektu@terra.es>
1814
1815 * keymap.c (Fdescribe_vector): Fix docstring.
1816 (Fkey_description, Fglobal_key_binding): Fix typo in docstring.
1817
8e330b22
MB
18182004-06-05 Miles Bader <miles@gnu.org>
1819
1820 * xfaces.c (tty_supports_face_attributes_p): Make sure the specified
1821 attributes have different values than the default face.
1822
9742a3a6
EZ
18232004-06-04 Eli Zaretskii <eliz@gnu.org>
1824
1825 * xfaces.c (x_supports_face_attributes_p): Make this function
1826 conditional on HAVE_WINDOW_SYSTEM.
c8d09ad8
SM
1827 (Fdisplay_supports_face_attributes_p) [HAVE_WINDOW_SYSTEM]:
1828 Don't call x_supports_face_attributes_p if it was not compiled in.
9742a3a6 1829
9717e36c
MB
18302004-06-04 Miles Bader <miles@gnu.org>
1831
1832 * xfaces.c (tty_supports_face_attributes_p): New function, mostly
1833 from Ftty_supports_face_attributes_p.
1834 (x_supports_face_attributes_p): New function.
1835 (Ftty_supports_face_attributes_p): Function deleted.
1836 (Fdisplay_supports_face_attributes_p): New function.
1837 (syms_of_xfaces): Initialize Sdisplay_supports_face_attributes_p.
f9711de4 1838 (face_attr_equal_p): New function.
9717e36c
MB
1839 (lface_equal_p): Use it.
1840
52deb19f
JB
18412004-06-03 Juanma Barranquero <lektu@terra.es>
1842
1843 * w32fns.c (Fx_display_grayscale_p, Fw32_send_sys_command)
1844 (Vw32_color_map): Fix typo in docstring.
1845 (Fx_create_frame, Fw32_find_bdf_fonts, Fx_show_tip)
1846 (Fw32_unregister_hot_key, Fw32_reconstruct_hot_key):
1847 Make argument names match their use in docstring.
1848
86d373e6
JB
18492004-06-02 Juanma Barranquero <lektu@terra.es>
1850
1851 Work around bugs/problems with MinGW builds of graphics libraries
1852 called from MSVC builds of Emacs.
1853
1854 * image.c (lookup_image): Make pointer to img static.
1855 (png_read_from_memory): Disable "global" optimization.
1856
2fb0ce67
SM
18572004-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
1858
c8d09ad8
SM
1859 * eval.c (Fcondition_case): Fix usage. Simplify.
1860
2fb0ce67
SM
1861 * mem-limits.h (EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true.
1862
50bf7673
ST
18632004-05-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1864
1865 * macfns.c: Don't include ccl.h.
1866 [MAC_OSX]: Don't include QuickTime/QuickTime.h.
86d373e6
JB
1867 [!MAC_OSX]: Don't include alloca.h, Windows.h, Gestalt.h, or
1868 TextUtils.h.
c8d09ad8 1869 (Fx_create_frame): Sync with xfns.c. Initialize cursor descriptors.
50bf7673
ST
1870 (Fx_display_mm_height, Fx_display_mm_width): Calculate length from
1871 display height/width.
1872 (compute_tip_xy, Vx_max_tooltip_size): Declare.
1873 (unwind_create_tip_frame, compute_tip_xy): New functions.
1874 (x_create_tip_frame, Fx_show_tip, Fx_hide_tip): Sync with xfns.c.
1875 (syms_of_macfns): Initialize Qcancel_timer, Vx_max_tooltip_size,
1876 and last_show_tip_args.
2fb0ce67 1877
50bf7673
ST
1878 * macgui.h [!MAC_OSX]: Include Gestalt.h.
1879 (Cursor, No_Cursor): New defines.
c8d09ad8 1880 [!TARGET_API_MAC_CARBON] (SetPortWindowPort): New compatibility macro.
50bf7673
ST
1881 [!TARGET_API_MAC_CARBON] (arrow_cursor): Declare.
1882
1883 * macmenu.c (mac_menu_show, mac_dialog): Use SetPortWindowPort.
1884
1885 * macterm.c: Don't include Gestalt.h.
1886 (enum mouse_tracking_type, mouse_tracking_in_progress): Remove.
1887 (XDrawLine, XClearArea, XClearWindow, mac_draw_bitmap)
1888 (mac_set_clip_rectangle, mac_reset_clipping, XCreatePixmap)
1889 (XFillRectangle, mac_draw_rectangle, mac_draw_string_common)
1890 (mac_copy_area, mac_copy_area_with_mask, x_update_end)
1891 (construct_mouse_click, XTmouse_position)
1892 (x_scroll_bar_report_motion, x_calc_absolute_position)
1893 (do_mouse_moved, do_zoom_window, mac_do_receive_drag)
1894 (XTread_socket, make_mac_frame): Use SetPortWindowPort.
1895 (note_mouse_movement): Clear the mouse face and reset the pointer
1896 shape when the pointer goes outside the frame without grabbing.
1897 (mac_front_window): New function.
1898 (mac_window_to_frame): New macro.
1899 (XTmouse_position, x_scroll_bar_report_motion, do_window_update)
1900 (do_window_activate, do_window_deactivate, do_app_resume)
1901 (do_app_suspend, do_mouse_moved, do_menu_choice, do_grow_window)
1902 (do_zoom_window, mac_do_receive_drag, XTread_socket)
1903 (mac_check_for_quit_char): Use mac_front_window and/or
1904 mac_window_to_frame.
1905 (x_scroll_bar_handle_click): Set `(PORTION . WHOLE)' part in a
1906 scroll-bar click event.
1907 (mac_define_frame_cursor): Change the pointer shape.
c8d09ad8 1908 (x_free_frame_resources): Reset tip_window to NULL when it is disposed.
50bf7673 1909 [!TARGET_API_MAC_CARBON] (arrow_cursor): New variable.
c8d09ad8 1910 [!TARGET_API_MAC_CARBON] (do_init_managers): Initialize arrow_cursor.
50bf7673
ST
1911 (do_window_update): Don't do anything if the updated window is the
1912 tooltip window.
1913 (do_mouse_moved): Handle mouse movement events here (previously in
1914 XTread_socket). Clear the mouse face if
1915 dpyinfo->mouse_face_hidden is set.
1916 (do_os_event, do_events): Remove (now in XTread_socket).
1917 (XTread_socket): Immediately return if interrupt_input_blocked.
c8d09ad8
SM
1918 Loop until all the events in the queue are processed.
1919 Rearrange codes for mouse grabbing. Add tooltip support. Include the
50bf7673
ST
1920 contents of do_os_event and do_events. Remove mouse movement
1921 handling (now in do_mouse_moved). Add the case where
1922 Vmouse_highlight has an integer value.
1923 (NewMacWindow): Remove.
1924 (make_mac_frame): Do what NewMacWindow previously did. Don't do
1925 excess initializations.
1926 (make_mac_terminal_frame): Previous initializations in
1927 make_mac_frame are moved here.
c8d09ad8
SM
1928 (mac_initialize_display_info):
1929 Initialize dpyinfo->mouse_face_overlay and dpyinfo->mouse_face_hidden.
50bf7673
ST
1930
1931 * xdisp.c [MAC_OS] (No_Cursor): Remove variable.
1932 (define_frame_cursor1): Don't treat HAVE_CARBON as a special case.
1933
08fd1251
RS
19342004-05-29 Richard M. Stallman <rms@gnu.org>
1935
1936 * lisp.h (truncate_undo_list): Update decl.
1937
1938 * alloc.c (undo_outer_limit): New variable.
1939 (syms_of_alloc): Defvar it.
1940 (Fgarbage_collect): Pass undo_outer_limit to truncate_undo_list.
1941
1942 * undo.c (truncate_undo_list): New arg LIMITSIZE.
1943
1944 * alloc.c (lisp_align_malloc): Check for base == 0
1945 regardless of HAVE_POSIX_MEMALIGN.
1946 Clean up HAVE_POSIX_MEMALIGN handling of `err'.
1947
227ef0ff
SM
19482004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
1949
1950 * alloc.c: Undo Kim's recent changes and fix the same bug differently.
1951 (marker_blocks_pending_free): Remove.
1952 (Fgarbage_collect): Sweep after cleaning up undo-lists.
1953 Mark the undo lists after claning them up.
1954 Don't free block in marker_blocks_pending_free.
1955 (mark_buffer): Don't mark undo_list.
1956 (gc_sweep): Sweep hash-tables and strings first.
1957 Do free marker blocks that are empty.
1958
034a6113
SM
19592004-05-28 Jim Blandy <jimb@redhat.com>
1960
1961 * regex.c (print_partial_compiled_pattern): Add missing 'break'
1962 after 'case wordend'. For symbeg and symend, print to stderr,
1963 like the other cases.
1964
33594a8d
NF
19652004-05-28 Noah Friedman <friedman@splode.com>
1966
1967 * process.c (Fdelete_process): Do not call remove_process.
1968
ce50a847
SM
19692004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
1970
1971 * alloc.c (struct backtrace): Remove.
1972 (Fgarbage_collect): Use the new mark_backtrace.
1973
1974 * eval.c (mark_backtrace): New function.
1975
1976 * minibuf.c (run_exit_minibuf_hook): New function.
1977 (read_minibuf_unwind): Don't run exit-minibuffer-hook any more.
1978 (read_minibuf): Use separate unwind handler to run exit-minibuf-hook.
1979
1e8dae36
KS
19802004-05-27 Kim F. Storm <storm@cua.dk>
1981
1982 * xdisp.c (back_to_previous_visible_line_start): Skip backwards
1983 over display properties, e.g. images, that replace buffer text.
1984
846faa3b
KS
19852004-05-25 Kim F. Storm <storm@cua.dk>
1986
1987 * alloc.c (marker_blocks_pending_free): New var.
1988 (gc_sweep): Store free marker blocks on that list.
1989 (Fgarbage_collect): Free them after undo-list cleanup.
1990
1991 * process.c (wait_reading_process_input): Check connect_wait_mask
1992 before actually accepting connection in case it has already been
1993 accepted due to recursion.
1994
b6189c3b 19952004-05-23 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
6239a668 1996
ce50a847
SM
1997 * coding.c (Fset_safe_terminal_coding_system_internal):
1998 Set suppress_error in safe_terminal_coding, not terminal_coding.
6239a668 1999
71d5a208
RS
20002004-05-22 Richard M. Stallman <rms@gnu.org>
2001
2002 * alloc.c (Fmake_string): Doc fix.
2003
2004 * buffer.c (clone_per_buffer_values): Copy the alist of local vars,
2005 and the alist pairs too.
2006
2007 * casefiddle.c (casify_object): Return OBJ unchanged if not real char.
2008
2009 * emacs.c (main): Update copyright year.
2010
2011 * fileio.c (Fread_file_name): Expand DIR if not absolute.
2012
2013 * insdel.c (del_range_2, replace_range): Don't write an anchor
2014 if the gap is empty.
2015
2016 * xdisp.c (try_scrolling): If scroll-up-aggressively or
2017 scroll-down-aggressively is small but positive, put point
2018 near the screen edge.
2019
f63fd14e
JB
20202004-05-22 Juanma Barranquero <lektu@terra.es>
2021
2022 * keymap.c (Fdefine_key): Doc fix.
2023
4d12067c
KS
20242004-05-22 Kim F. Storm <storm@cua.dk>
2025
2026 * alloc.c (struct backtrace): Add debug_on_exit member.
2027 (Fgarbage_collect): Clear out buffer undo_list markers after gc_sweep.
2028 Identify those markers as Lisp_Misc_Free objects. Clear car and cdr of
2029 the removed cons cells.
2030 (mark_object): Undo previous change - disallow Lisp_Misc_Free objects.
2031 (gc_sweep): Clear cons_blocks before sweeping strings, so we don't have
2032 any cons cells pointing to unallocated stings.
2033 Do not lisp_free any marker blocks, as there may still be pointers
2034 to them from buffer undo lists at this stage of GC.
2035
2036 * keyboard.c (struct backtrace): Add debug_on_exit member.
2037 (Fcommand_execute): Clear it.
2038
931285e2
LT
20392004-05-20 Luc Teirlinck <teirllm@auburn.edu>
2040
2041 * intervals.c (lookup_char_property): Do not prematurely return nil.
2042
669fa600
SM
20432004-05-19 Jim Blandy <jimb@redhat.com>
2044
2045 Add support for new '\_<' and '\_>' regexp operators, matching the
f63fd14e 2046 beginning and end of symbols.
4d12067c 2047
669fa600
SM
2048 * regex.c (enum syntaxcode): Add Ssymbol.
2049 (init_syntax_once): Set the syntax for '_' to Ssymbol, not Sword.
2050 (re_opcode_t): New opcodes `symbeg' and `symend'.
2051 (print_partial_compiled_pattern): Print the new opcodes properly.
2052 (regex_compile): Parse the new operators.
ce50a847 2053 (analyse_first): Skip sym(beg|end) (they match only the empty string).
669fa600
SM
2054 (mutually_exclusive_p): `symend' is mutually exclusive with \s_ and
2055 \sw; `symbeg' is mutually exclusive with \S_ and \Sw.
2056 (re_match_2_internal): Match symbeg and symend.
2057
2058 * search.c (trivial_regexp_p): \_ is no longer a trivial regexp.
2059
0d8c2e5c
KS
20602004-05-19 Kim F. Storm <storm@cua.dk>
2061
2062 * .gdbinit (xsymbol): Fix last change.
2063
669fa600
SM
20642004-05-18 Stefan Monnier <monnier@iro.umontreal.ca>
2065
2066 * .gdbinit (xprintstr): New fun.
2067 (xstring, xprintsym): Use it.
2068
2069 * w32proc.c (create_child): Use INTMASK.
2070
2071 * alloc.c (Fgarbage_collect): Do all the marking before flushing
2072 unmarked elements of the undo list.
2073
9a6a4c40
DP
20742004-05-18 David Ponce <david@dponce.com>
2075
2076 * print.c (print): Reset print_depth before to call print_object.
2077
f3c4ec74
JR
20782004-05-18 Jason Rumney <jasonr@gnu.org>
2079
2080 * w32console.c: Prefix RIF functions with w32con_ to avoid
2081 namespace clash with functions in term.c and w32term.c.
2082
2083 * w32menu.c (add_menu_item, w32_menu_display_help)
2084 [USE_LISP_UNION_TYPE]: Cast from Lisp_Object using i member.
2085
0d8c2e5c 2086 * w32term.h (display_x_get_resource, vga_stdcolor_name): Add prototype.
f3c4ec74 2087
6be49c3a
EZ
20882004-05-18 Eli Zaretskii <eliz@gnu.org>
2089
4d0b9a0a
EZ
2090 * lisp.h (DECL_ALIGN): Remove restriction on MS-DOS systems.
2091
6be49c3a
EZ
2092 * msdos.c (syms_of_msdos): Initialize dos-unsupported-char-glyph
2093 with make_number.
2094 (IT_write_glyphs): Extract glyph from dos-unsupported-char-glyph
2095 with XINT.
2096
0bc90bba
KS
20972004-05-18 Kim F. Storm <storm@cua.dk>
2098
89d19988
KS
2099 * blockinput.h (INPUT_BLOCKED_P): New macros.
2100
2101 * keyboard.c (Frecursive_edit): Return immediately if input blocked.
2102 (Ftop_level): Unblock input if blocked.
2103
0bc90bba
KS
2104 * buffer.h (GET_OVERLAYS_AT): New macro.
2105 * msdos.c (IT_note_mouse_highlight): Use it.
2106 * textprop.c (get_char_property_and_overlay): Use it.
2107 * xdisp.c (next_overlay_change, note_mouse_highlight): Use it.
2108 * xfaces.c (face_at_buffer_position): Use it.
2109
2110 * print.c (print_object): Increase buf size.
2111
653bd0f6
JR
21122004-05-17 Jason Rumney <jasonr@gnu.org>
2113
2114 * w32fns.c (Fw32_register_hot_key, Fw32_unregister_hot_key)
2115 (Fw32_toggle_lock_key) [USE_LISP_UNION_TYPE]: Cast from
2116 Lisp_Object using i member.
2117 (w32_quit_key): Rename from Vw32_quit_key, and make an int.
2118 (syms_of_w32fns, globals_of_w32fns): Use Lisp_Object and int
2119 consistently.
2120
2121 * w32proc.c (create_child): Use make_number instead of masking pid.
2122
2123 * w32fns.c (w32_color_map_lookup): Return a Lisp_Object.
2124 (x_to_w32_charset, w32_to_x_charset, w32_to_all_x_charsets):
2125 Use EQ to compare Lisp_Objects.
2126 (w32_parse_hot_key): Use int for lisp_modifiers consistently.
2127
2128 * w32term.c (w32_num_mouse_buttons): Rename from
2129 Vw32_num_mouse_buttons and make it an int.
2130
2131 * w32.c (init_environment): Use it.
2132
2133 * w32fns.c (w32_wnd_proc): Likewise.
2134
2135 * w32proc.c (w32_pipe_read_delay): Rename from
2136 Vw32_pipe_read_delay and make it an int.
2137
2138 * w32.c (_sys_read_ahead): Use it.
2139
2140 * lisp.h (egetenv) [USE_CRT_DLL]: Remove condition.
2141
2142 * w32proc.c (create_child) [USE_LSB_TAG]: Don't try to mask pid.
2143
2144 * w32inevt.c (w32_console_mouse_position, do_mouse_event)
2145 (key_event): Don't mix Lisp_Object and int.
2146
2147 * w32heap.c (init_heap) [USE_LSB_TAG]: Don't check heap location.
2148
2149 * keyboard.c (kbd_buffer_get_event): Don't use event->code and
2150 modifiers in language change event.
2151
54b53ba7
KS
21522004-05-17 Kim F. Storm <storm@cua.dk>
2153
2154 * alloc.c (mark_object): Ignore Lisp_Misc_Free objects.
2155 Such objects may be freed markers which still exist on an undo list.
2156
6e86a75d
JB
21572004-05-16 Juanma Barranquero <lektu@terra.es>
2158
2159 * data.c (Fset_default): Make argument names match their use in
2160 docstring.
2161
fc80da24
AS
21622004-05-15 Andreas Schwab <schwab@suse.de>
2163
2164 * emacs.c (gdb_array_mark_flag): Define.
2165 * .gdbinit: Mask off gdb_array_mark_flag from vector sizes.
2166
c1380aa6
EZ
21672004-05-15 Eli Zaretskii <eliz@gnu.org>
2168
2169 * lisp.h (DECL_ALIGN) [MSDOS]: Don't define DECL_ALIGN to use
2170 __attribute__((__aligned__)), so that USE_LSB_TAG would not become
2171 defined for the MS-DOS build.
2172
89458937
SM
21732004-05-14 Stefan Monnier <monnier@iro.umontreal.ca>
2174
2175 * w32fns.c (Fw32_define_rgb_color): Avoid XSET.
2176
08020f9a
KH
21772004-05-14 Kenichi Handa <handa@m17n.org>
2178
2179 * ccl.c (Fccl_execute_on_string): Fix setting elements of STATUS.
2180
a433994a
ST
21812004-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2182
2183 * lisp.h (Vx_resource_name, Vx_resource_class): Move from xfns.c
2184 section to frame.c section.
2185 (Fxw_display_color_p, Fx_file_dialog): Declare if
89458937 2186 HAVE_WINDOW_SYSTEM defined.
0d8c2e5c 2187
a433994a 2188 * macfns.c (Fx_create_frame): Fix int/Lisp_Object mixup.
0d8c2e5c 2189
a433994a 2190 * macmenu.c (set_frame_menubar): Use NILP to test a lisp value.
0d8c2e5c 2191
a433994a
ST
2192 * macterm.c (mac_get_emulated_btn, mac_event_to_emacs_modifiers)
2193 (mac_get_mouse_btn): Use NILP and EQ to test/compare lisp values.
2194 (XTread_socket): Fix int/Lisp_Object mixup.
2195 (mac_check_for_quit_char): Fix pointer/Lisp_Object mixup.
0d8c2e5c 2196
a433994a
ST
2197 * macterm.h (struct frame, struct face, struct image)
2198 (display_x_get_resource, Fx_display_color_p)
89458937
SM
2199 (Fx_display_grayscale_p, Fx_display_planes, x_free_gcs):
2200 Add prototypes.
a433994a 2201
b51a51b9
KS
22022004-05-14 Kim F. Storm <storm@cua.dk>
2203
2204 * process.c (wait_reading_process_input): Make reentrant.
2205 Make Available and Connecting non-static. Save and restore value
2206 of waiting_for_user_input_p.
2207
2bde1dd8
KS
22082004-05-13 Kim F. Storm <storm@cua.dk>
2209
2210 * keyboard.c (mark_kboards): Don't mark x and y members
2211 that are overloaded in selection request events.
2212
a267ab4d
SM
22132004-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
2214
2215 * lisp.h (USE_LSB_TAG): Make it the default when it is known to work.
2216
eb15ce9e
GM
22172004-05-13 Glenn Morris <gmorris@ast.cam.ac.uk>
2218
2219 * window.c (Fdisplay_buffer, Fsplit_window)
2220 (split-height-threshold): Doc fix.
2221
7fc92635
JB
22222004-05-13 Juanma Barranquero <lektu@terra.es>
2223
2224 * xfaces.c (Ftty_supports_face_attributes_p)
2225 (Finternal_copy_lisp_face): Fix typo in docstring.
2226 (Finternal_get_lisp_face_attribute): Fix docstring.
2227
1ec2a572
JD
22282004-05-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2229
2230 * xfns.c (syms_of_xfns): Provide x-toolkit also for GTK.
2231
ae9292e0
ST
22322004-05-11 Steven Tamm <steventamm@mac.com>
2233
2234 * macfns.c (Fx_create_frame): Default to using tool-bar by
2235 setting tool-bar-lines to 1 in default-frame-alist.
2236
22372004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
ea1aaa6f
ST
2238
2239 * image.c (xpm_scan, xpm_make_color_table_v, xpm_put_color_table_v)
2240 (xpm_get_color_table_v, xpm_make_color_table_h)
2241 (xpm_put_color_table_h, xpm_get_color_table_h)
2242 (xpm_str_to_color_key, xpm_load_image, xpm_load)
2243 (syms_of_image): Support XPM on Carbon Emacs. Does not
a267ab4d 2244 depend on libXpm, but only supports XPM version 3 without extensions.
ea1aaa6f 2245
fe97e8df
ST
22462004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2247
a267ab4d 2248 * macterm.c (x_flush, XTframe_up_to_date): Use FRAME_MAC_P
fe97e8df
ST
2249 instead of FRAME_X_P
2250
b47e779e
KS
22512004-05-11 Kim F. Storm <storm@cua.dk>
2252
2253 * process.c (read_process_output): Grow decoding_buf when needed;
2254 this could cause a crash in allocate_string and compact_small_strings.
2255
cdc9b845
EZ
22562004-04-29 Jim Blandy <jimb@redhat.com>
2257
2258 * regex.c (mutually_exclusive_p): In 'case wordbeg', compare op2
2259 against proper opcode.
2260
aa7094ba
JB
22612004-05-10 Juanma Barranquero <lektu@terra.es>
2262
2263 * process.c (Fstart_process): Fix docstring.
2264
2265 * charset.c (Fget_unused_iso_final_char): Fix typos in docstring.
2266 (Fchar_bytes, Fchar_width, Fstring_width, Fchar_direction)
2267 (Fsplit_char, Fchar_charset): Make argument names match their use
2268 in docstring.
2269
e109331a
RS
22702004-05-10 Richard M. Stallman <rms@gnu.org>
2271
2272 * print.c (print_preprocess): Use being_printed, loop_count and
2273 halftail to detect overdeep nesting and cyclic cdr chains.
2274
9a28b921
AS
22752004-05-10 Andreas Schwab <schwab@suse.de>
2276
2277 * lisp.h: Declare Fmake_symbolic_link.
2278
2279 * fileio.c (Frename_file): Remove extra argument in call to
2280 Fmake_symbolic_link.
2281
e2c02c1a
KS
22822004-05-10 Kim F. Storm <storm@cua.dk>
2283
2284 * xdisp.c (calc_line_height_property): Use string position when
2285 object is a string.
2286
cfe9d13e
KH
22872004-05-10 Kenichi Handa <handa@m17n.org>
2288
a57e8159
KH
2289 * print.c (temp_output_buffer_setup): Bind inhibit-read-only and
2290 inhibit-modification-hooks to t temporarily before calling
2291 Ferase_buffer.
2292
2293 * xfns.c (x_create_tip_frame): Bind inhibit-read-only and
2294 inhibit-modification-hooks to t temporarily before calling
2295 Ferase_buffer.
2296
2297 * w32fns.c (x_create_tip_frame): Bind inhibit-read-only and
2298 inhibit-modification-hooks to t temporarily before calling
2299 Ferase_buffer.
2300
cfe9d13e
KH
2301 * fns.c (count_combining): Delete it.
2302 (concat): Don't check combining bytes.
2303
ceb96489
JR
23042004-05-09 Jason Rumney <jasonr@gnu.org>
2305
2306 * w32fns.c (Vw32_ansi_code_page): New Lisp variable.
2307 (globals_of_w32fns): Set it.
2308
b6189c3b 23092004-05-09 Piet van Oostrum <piet@cs.uu.nl>
b1c661c7
JB
2310
2311 * data.c (Fquo): Simplify.
2312
28712a21
JB
23132004-05-08 Peter Whaite <emacs@whaite.ca> (tiny change)
2314
2315 * data.c (Fquo): If any argument is float, do the computation in
2316 floating point.
2317
0f0af7a8
JB
23182004-05-08 Juanma Barranquero <lektu@terra.es>
2319
88214ef6
JB
2320 * process.c (Fwaiting_for_user_input_p, Fmake_network_process)
2321 (Fset_process_query_on_exit_flag, Vprocess_adaptive_read_buffering):
2322 Fix spelling of Emacs on docstring.
2323 (Fset_process_coding_system, Fprocess_coding_system)
2324 (Fset_process_filter_multibyte, Fprocess_filter_multibyte_p):
2325 Make argument names match their use in docstring.
2326 (Fprocess_id, Fprocess_query_on_exit_flag, Finterrupt_process):
2327 Fix docstring.
2328
0f0af7a8
JB
2329 * editfns.c (Finsert_buffer_substring): Make argument names match their
2330 use in docstring.
2331
2332 * syntax.c (Fmodify_syntax_entry): Fix docstring.
2333
2a316a84
ST
23342004-05-07 Steven Tamm <steventamm@mac.com>
2335
2336 * macterm.c (mac_check_for_quit_char): Adding BLOCK_INPUT
2337 around call to ReceiveEvent to avoid certain crashes.
2338
23392004-05-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
0d8c2e5c 2340
2a316a84
ST
2341 * macterm.c (mac_draw_line_to_pixmap, XCreatePixmapFromBitmapData)
2342 (mac_fill_rectangle_to_pixmap, mac_draw_rectangle_to_pixmap)
2343 (mac_copy_area_to_pixmap, mac_copy_area_with_mask_to_pixmap):
2344 Save/restore the current graphics port and device handle when
2345 drawing into an offscreen graphics world.
2346
2347 * image.c [MAC_OS] (XPutPixel, XGetPixel, image_load_qt_1)
2348 (gif_load): Likewise.
2349
ab80314b
JB
23502004-05-07 Juanma Barranquero <lektu@terra.es>
2351
2352 * window.c (Fset_window_buffer): Fix docstring.
2353
70646bb5
TTN
23542004-05-06 Thien-Thi Nguyen <ttn@gnu.org>
2355
2356 * emacs.c (main) [VMS]: Fix var ref.
2357
b6189c3b 23582004-05-06 Romain Francoise <romain@orebokech.com>
b03a4fdd
JB
2359
2360 * data.c (Fsetq_default): Fix docstring.
2361
279d3293
JR
23622004-05-06 Jason Rumney <jasonr@gnu.org>
2363
2364 * image.c (Display) [HAVE_NTGUI]: Redefine while loading xpm.h
2365 to avoid name clash.
2366
f72b5416
JD
23672004-05-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2368
2369 * fileio.c (barf_or_query_if_file_exists): Use lstat.
2370 (Frename_file): Handle renaming of symlinks across file systems.
440c7d00 2371 (Frename_file): Put symlink handling inside #ifdef S_IFLNK.
f72b5416 2372
6ab66799
KS
23732004-05-04 Kim F. Storm <storm@cua.dk>
2374
2375 * xdisp.c (Qtotal): New var.
2376 (syms_of_xdisp): Intern and staticpro it.
2377 (calc_line_height_property): New arg total. Set it if
2378 line-spacing property has format (total . VALUE).
2379 (x_produce_glyphs): Ignore line-spacing if line-height is 0.
2380 Handle total line-spacing property.
2381
ab2d724b
JD
23822004-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2383
2384 * gtkutil.c (xg_update_scrollbar_pos): Call XClearWindow to clear
2385 "under" scroll bar when size/position changes.
2386
238add5e
JR
23872004-05-03 Jason Rumney <jasonr@gnu.org>
2388
2389 * makefile.nt: Remove.
2390
1644f4e4
EZ
23912004-05-02 Eli Zaretskii <eliz@gnu.org>
2392
a267ab4d
SM
2393 * syntax.h (SET_RAW_SYNTAX_ENTRY, SYNTAX_ENTRY_INT):
2394 Avoid compiler warnings.
05fdbeb8 2395
1644f4e4
EZ
2396 * Makefile.in (region-cache.o): Depend on config.h.
2397
b6189c3b 23982004-05-02 Romain Francoise <romain@orebokech.com>
6cbc951e
SM
2399
2400 * indent.c (compute_motion): Save vpos in prev_vpos when dealing
2401 with continuation lines, too.
2402
2b98b088
TTN
24032004-05-02 Thien-Thi Nguyen <ttn@gnu.org>
2404
2405 * syssignal.h (init_signals): Move decl outside `#ifdef POSIX_SIGNALS'.
2406
d9bf7950
SM
24072004-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
2408
2409 * xdisp.c (calc_line_height_property): YAILOM (yet another
2410 int/Lisp_Object mixup).
2411
affa509c
EZ
24122004-05-01 Eli Zaretskii <eliz@gnu.org>
2413
2414 * msdos.c (top-level): Add "#pragma pack(0)" after <dir.h>, to
2415 undo bad effect of pack(4) in some versions of system headers.
2416
07c07cfe
JR
24172004-05-01 Jason Rumney <jasonr@gnu.org>
2418
2419 * w32term.c (x_draw_hollow_cursor): Sync with xterm.c
2420
e71caa4e
KS
24212004-04-30 Kim F. Storm <storm@cua.dk>
2422
2423 * buffer.c (syms_of_buffer) <line-spacing>: Allow float value.
b2b55d03 2424 (syms_of_buffer) <cursor-type>: Doc fix.
e71caa4e
KS
2425
2426 * dispextern.h (struct it): Remove member use_default_face.
2427 Add members override_ascent, override_descent, override_boff.
2428
2429 * xdisp.c (init_iterator): Handle line-spacing float value.
2430 Initialize override_ascent member.
2431 (append_space_for_newline): Reset override_ascent.
2432 Remove use_default_face.
2433 (calc_line_height_property): New function to calculate value of
2434 line-height and line-spacing properties. Look at overlays, too.
2435 Set override_ascent, override_descent, override_boff members when
2436 using another face than the current face. Float values are now
2437 relative to the frame default font, by default; accept a cons
2438 of ratio and face name to specify value relative to a specific face.
2439 (x_produce_glyphs): Use calc_line_height_property.
2440 Use override_ascent etc. when set to handle different face heights.
2441 A negative line-spacing property value is interpreted as a total
2442 line height, rather than inter-line spacing.
2443 (note_mouse_highlight): Allocate room for 40 overlays initially.
2444
0fddae66
SM
24452004-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
2446
2447 * data.c (Fsubr_name): New fun.
2448 (syms_of_data): Defsubr it.
2449
712d23dc
KS
24502004-04-29 Kim F. Storm <storm@cua.dk>
2451
2452 * xdisp.c (null_glyph_slice): New var.
2453 (append_glyph, append_composite_glyph, append_stretch_glyph):
2454 Use it to initialize glyph slice.
2455
033ad8c6
SM
24562004-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
2457
2458 * xdisp.c (x_produce_glyphs): Fix the proverbial int/Lisp_Object mixup.
2459 (on_hot_spot_p): Make sure we always return a value.
2460 (Flookup_image_map): Remove unused var ix and iy.
2461 (note_mode_line_or_margin_highlight): Remove unused var `image'.
2462
93397360
EZ
24632004-04-27 Eli Zaretskii <eliz@gnu.org>
2464
2465 * msdos.c (init_environment): If one of the TMP... environment
2466 variables is set to a drive letter without a trailing slash,
2467 append a slash.
2468
0c54865e
EZ
24692004-04-27 Matthew Mundell <matt@mundell.ukfsn.org>
2470
2471 * editfns.c (lisp_time_argument): Provide externally.
2472
2473 * fileio.c (Fset_file_times): New function.
2474 (syms_of_fileio): Intern and staticpro it.
2475
d3b111bd
KS
24762004-04-27 Kim F. Storm <storm@cua.dk>
2477
07dc1231
KS
2478 * xdisp.c (x_produce_glyphs): Fix last change; handle newline in
2479 header line strings.
2480
360fe9d2
KS
2481 * dispextern.h (struct it): New member use_default_face.
2482
d3b111bd
KS
2483 * xdisp.c (Qline_height): New variable.
2484 (syms_of_xdisp): Intern and staticpro it.
2485 (append_space_for_newline): Partially undo 2004-04-25 change;
2486 add default_face_p arg, and restore callers.
2487 Clear it->use_default_face after use.
2488 (x_produce_glyphs): Set default font for ascii char if
2489 it->use_default_font is set. Change line-spacing property to set
2490 just extra line spacing. Handle new line-height property.
2491
0448588b
AS
24922004-04-26 Andreas Schwab <schwab@suse.de>
2493
2494 * print.c (print_object): Print non-ascii characters in bool
2495 vector representation as octal escapes.
2496
2497 * lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define.
2498 * print.c (print_object): Use it instead of BITS_PER_CHAR for
2499 bool vectors.
2500 * lread.c (read1): Likewise.
2501 * alloc.c (Fmake_bool_vector): Likewise.
2502 * data.c (Faref, Faset): Likewise.
2503 * fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray)
2504 (mapcar1): Likewise.
d3b111bd 2505
536d6baa
ST
25062004-04-26 Steven Tamm <tamm@Steven-Tamms-Computer.local>
2507
2508 * lread.c (init_lread): Fixing typo HAVE_CARBON test logic
2509
ae11577a
MB
25102004-04-26 Miles Bader <miles@gnu.org>
2511
2512 * lisp.h (CYCLE_CHECK): Macro moved from xfaces.c.
2513
e198ba87
JB
25142004-04-26 Juanma Barranquero <lektu@terra.es>
2515
2516 * buffer.c (Fpop_to_buffer): Fix docstring.
2517
f3d5f92d 25182004-04-26 Steven Tamm <steventamm@mac.com>
e198ba87 2519
f3d5f92d
ST
2520 * lread.c (init_lread): Don't display missing lisp directory
2521 warnings with Carbon Emacs because self-contained bundled Emacs
e198ba87 2522 may be built without correct installation path.
f3d5f92d 2523
03e35edc
KS
25242004-04-25 Kim F. Storm <storm@cua.dk>
2525
9ff3aa31
KS
2526 * macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
2527
2528 * xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
2529
03e35edc
KS
2530 * xdisp.c (append_space_for_newline): Rename from append_space.
2531 Remove DEFAULT_FACE_P arg; always use current face. Callers changed.
2532 (x_produce_glyphs): Handle line-spacing property on newline char.
2533 If value is t, adjust ascent and descent to fit current row height.
2534 If value is an integer or float, set extra_line_spacing to integer
2535 value, or to float value x current line height.
2536
f24814e0
KH
25372004-04-23 Kenichi Handa <handa@m17n.org>
2538
2539 * fontset.c (Finternal_char_font): If POSITION is nil, return
2540 font for displaying CH with the default face.
2541
d814862a
JB
25422004-04-23 Juanma Barranquero <lektu@terra.es>
2543
2544 * makefile.w32-in: Add "-*- makefile -*-" mode tag.
2545
063a45c5
SM
25462004-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
2547
2548 * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]:
2549 Don't make assumptions about the relative place of i and val.
2550 (EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well.
2551
ae7ab2d3
KS
25522004-04-21 Kim F. Storm <storm@cua.dk>
2553
2554 * dispextern.h (struct glyph_slice): New struct.
2555 (struct glyph): New member slice.
2556 (GLYPH_SLICE_EQUAL_P): New macro.
2557 (GLYPH_EQUAL_P): Use it.
2558 (struct glyph_string): New member slice.
2559 (struct it_slice): New struct.
2560 (struct it): New member slice, add member to stack too.
2561 New member constrain_row_ascent_descent_p.
2562 (image_ascent): Add prototype.
2563
2564 * dispnew.c (buffer_posn_from_coords): Return full image width
2565 and height even for image slices (posn is relative to full image).
2566 (marginal_area_string): Adjust x0,y0 for image slice.
2567
2568 * image.c (image_ascent): Add slice arg; calculate ascent for
2569 image slice (or full image).
2570
2571 * keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns.
2572 (syms_of_keyboard): Defsubr them.
2573
2574 * lisp.h (pos_visible_p): Fix prototype.
2575
c62aec78 2576 * macterm.c (x_draw_relief_rect): Add top_p and bot_p args.
ae7ab2d3
KS
2577 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
2578 (x_draw_image_foreground, x_draw_image_relief)
2579 (x_draw_image_foreground_1, x_draw_image_glyph_string):
2580 Draw sliced images.
2581
2582 * w32term.c (w32_draw_relief_rect): Add top_p and bot_p args.
2583 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
2584 (x_draw_image_foreground, x_draw_image_relief)
2585 (w32_draw_image_foreground_1, x_draw_image_glyph_string):
2586 Draw sliced images.
2587
2588 * w32term.h (image_ascent): Remove prototype.
2589
2590 * window.c (Fpos_visible_in_window_p): Return pixel position if
2591 PARTIALLY arg is non-nil. Simplify. Doc fix.
2592 (Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg
2593 to return/set vscroll in pixels.
2594
2595 * window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
2596
2597 * xdisp.c (Qslice): New variable.
2598 (syms_of_xdisp): Intern and staticpro it.
2599 (pos_visible_p): Return pixel position in new x and y args.
2600 (init_iterator): Reset it->slice info.
2601 (handle_display_prop): Parse (slice ...) property.
2602 (push_it, pop_it): Save/restore slice info.
2603 (make_cursor_line_fully_visible): Fix 2004-04-14 change. Do not
2604 force repositioning of tall row if window is vscrolled, as that
2605 would reset vscroll.
2606 (append_space): Set it->constrain_row_ascent_descent_p to avoid
2607 increasing row height if row is non-empty.
2608 (fill_image_glyph_string): Copy slice info.
2609 (take_vertical_position_into_account): Simplify.
2610 (produce_image_glyph): Handle iterator slice info, setup glyph
2611 slice info. Do not force minimum line height.
2612 (x_produce_glyphs): If it->constrain_row_ascent_descent_p is set,
2613 do not increase height (ascent/descent) of non-empty row when
2614 adding normal character glyph; instead reduce glyph ascent/descent
2615 appropriately; if row is higher than current glyph, adjust glyph
2616 descent/ascent to reposition glyph within the existing row.
2617 Likewise, when char is newline, only set ascent/descent if row is
2618 currently empty.
2619 (note_mouse_highlight): Handle hotspots with sliced image.
2620
2621 * xterm.c (x_draw_relief_rect): Add top_p and bot_p args.
2622 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
2623 (x_draw_image_foreground, x_draw_image_relief)
2624 (x_draw_image_foreground_1, x_draw_image_glyph_string):
2625 Draw sliced images.
2626
2627 * xterm.h (image_ascent): Remove prototype.
2628
d58f8753
SM
26292004-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
2630
2631 * keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup.
2632
4ce2719d
JPW
26332004-04-20 John Paul Wallington <jpw@gnu.org>
2634
2635 * fns.c (Fassoc, Feql): Fix indentation.
2636
d58f8753 2637 * fontset.c (regularize_fontname): Rename from regulalize_fontname.
4ce2719d 2638
95f8c3b9
JPW
26392004-04-19 John Paul Wallington <jpw@gnu.org>
2640
2641 * fns.c (Feql): New function.
d58f8753 2642 (syms_of_fns): Defsubr it.
95f8c3b9 2643
b7e85537
JR
26442004-04-18 Jason Rumney <jasonr@gnu.org>
2645
2646 * w32select.c (Fw32_set_clipboard_data): Get sequence number
2647 after closing the clipboard.
2648
5a72efd4
LT
26492004-04-16 Luc Teirlinck <teirllm@auburn.edu>
2650
2651 * buffer.c (Fbuffer_base_buffer): Doc fix.
2652
20dc8583
KS
26532004-04-17 Kim F. Storm <storm@cua.dk>
2654
60962ec4
KS
2655 * keymap.c (Fkey_description): Add optional PREFIX arg.
2656 Combine prefix with KEYS to make up the full key sequence to describe.
2657 Correlate meta_prefix_char and following (simple) key to describe
2658 as meta modifier. All callers changed.
2659 (describe_map): Rename arg `keys' to `prefix'. Remove local
2660 `elt_prefix' var. Use Fkey_description with prefix instead of
2661 elt_prefix combined with Fsingle_key_description.
2662 (describe_vector): Declare static. Replace arg `elt_prefix' with
2663 `prefix'. Add KEYMAP_P arg. Add local var `elt_prefix'; use it
2664 if !KEYMAP_P. Use Fkey_description with prefix instead of
2665 Fsingle_key_description.
2666
2667 * keymap.h (Fkey_description): Fix prototype.
2668 (describe_vector): Remove prototype.
2669
409368b9
KS
2670 * xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0.
2671
20dc8583
KS
2672 * image.c (PNG_BG_COLOR_SHIFT): Remove.
2673 (png_load): Fix calculation of transparent background color on X
2674 and W32 platforms.
2675
75c5501b
JB
26762004-04-16 Juanma Barranquero <lektu@terra.es>
2677
2678 * xdisp.c (try_scrolling): Make sure `scroll-conservatively' is
2679 not too large before computing how much to scroll.
2680
da879ae8
SM
26812004-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
2682
2683 * dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler.
2684
d01ca4a8
LT
26852004-04-14 Luc Teirlinck <teirllm@auburn.edu>
2686
2687 * fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime):
2688 Add hyperlink to Elisp manual to the docstring.
2689
572943b3
SM
26902004-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
2691
2692 * callint.c (fix_command): Use XDCR.
2693
5e30a0fb
NR
26942004-04-14 Nick Roberts <nick@nick.uklinux.net>
2695
2696 * window.c (Fget_lru_window): Doc fix.
2697
a27ddfaf
KS
26982004-04-14 Kim F. Storm <storm@cua.dk>
2699
2700 * editfns.c (Fformat): Fix allocation size of precision array.
2701
2702 * dispnew.c (update_window): Only set changed_p if
2703 scrolling_window actually did scroll.
2704 (scrolling_window): Only return 1 if we actually did scroll.
2705
2706 * xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor
2707 height to glyph height when cursor row is not fully visible.
2708 (make_cursor_line_fully_visible): Add FORCE_P arg to return
2709 failure in case row is higher than window. Callers changed.
2710 (try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd).
2711 Try to scroll partially visible, higher-than-window cursor row.
2712 (redisplay_window): Always try to scroll partially visible,
2713 higher-than-window cursor row - both initially and again with
2714 centering_position = 0.
2715 Clear desired matrix before retrying with centering_position = 0.
2716
da879ae8
SM
27172004-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
2718
2719 * syntax.c (scan_lists): Simplify backward string scan.
2720 Fix off-by-one boundary check for string and comment fences.
2721
5fc16e8e
SM
27222004-04-13 Joe Buehler <jbuehler@hekimian.com>
2723
2724 * sheap.c, unexcw.c: New files.
2725
c9aac8e6
LT
27262004-04-12 Luc Teirlinck <teirllm@auburn.edu>
2727
2728 * buffer.c (Fmake_indirect_buffer): Throw an error if the intended
2729 base buffer has been killed. Correct the error message if the
2730 base buffer does not exist.
2731
1e88a355
SM
27322004-04-12 Joe Buehler <jbuehler@hekimian.com>
2733
2734 * s/cygwin.h: Changes for Cygwin unexec() support, changes in
2735 Cygwin itself. Add support for Xaw3d scrollbars.
2736
2737 * puresize.h: Set up PURE_P() for Cygwin unexec() support.
2738
2739 * lastfile.c: Define my_endbss[] for Cygwin unexec() support.
2740
2741 * gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(),
2742 before Cygwin unexec.
2743
2744 * Makefile.in: Link changes for Cygwin unexec() support.
2745
8dbff9a0
AS
27462004-04-12 Andreas Schwab <schwab@suse.de>
2747
2748 * buffer.c (Fmake_indirect_buffer): Check that NAME is a string.
2749
54dffe35
LT
27502004-04-11 Luc Teirlinck <teirllm@auburn.edu>
2751
2752 * buffer.c (Fgenerate_new_buffer_name): Return NAME argument if
2753 IGNORE argument equals NAME. Doc fix.
2754
99a72bdf
MY
27552004-04-11 Masatake YAMATO <jet@gyve.org>
2756
1e88a355 2757 * buffer.c (fix_start_end_in_overlays): Make overlays
99a72bdf
MY
2758 empty if they are backwards.
2759
40899d7b
SM
27602004-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
2761
2762 * xfaces.c (face_color_supported_p): Fix compilation without X11.
2763
f8f853de
SM
27642004-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
2765
2766 * doc.c (Fsnarf_documentation): Ignore new file name entries.
2767
c953fe1b
KS
27682004-04-06 Kim F. Storm <storm@cua.dk>
2769
661e85c1
KS
2770 * msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden.
2771 (dos_rawgetc): Set mouse_face_hidden after clearing highlight.
2772
2773 * w32term.c (w32_read_socket): Set mouse_face_hidden after
2774 clearing highlight.
2775
2776 * xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden.
2777
2778 * xterm.c (handle_one_xevent): Set mouse_face_hidden after
2779 clearing highlight.
2780
c953fe1b
KS
2781 * indent.c (vmotion): Do not reserve one column for continuation
2782 marks on window frames.
2783
c1994268
EZ
27842004-04-04 Eli Zaretskii <eliz@gnu.org>
2785
2786 * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings
2787 from GCC.
2788
9f691b0d
SM
27892004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
2790
2791 * .gdbinit-union: Remove.
2792
2793 * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION.
2794 (xgetptr, xgetint, xgettype): New funs. Use them everywhere.
2795 ($nonvalbits): Remove.
2796 ($valmask): Set it by calling xreload to avoid redundancy.
2797
2798 * emacs.c (gdb_use_union, gdb_use_lsb): New vars.
2799 (gdb_emacs_intbits): Remove.
2800
7a8560d7
JD
28012004-03-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2802
9f691b0d 2803 * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes.
7a8560d7 2804
3c8111fc
KH
28052004-03-30 Kenichi Handa <handa@m17n.org>
2806
2807 * editfns.c (Fformat): Fix initialization of the array info.
2808
48a0bce4
KS
28092004-03-30 Kim F. Storm <storm@cua.dk>
2810
2811 * xterm.c (x_mouse_click_focus_ignore_position): New var.
2812 (syms_of_xterm): DEFVAR_BOOL it.
2813 (ignore_next_mouse_click_timeout): New var.
2814 (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify.
2815 Use it to filter mouse clicks following focus event.
2816
1cd0066c
KS
28172004-03-29 David Ponce <david@dponce.com>
2818
2819 * callint.c (Fcall_interactively): Fix last change.
2820
adb3b353
SM
28212004-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
2822
2823 * eval.c (Fcommandp): Simplify.
2824
2825 * data.c (Finteractive_form): Rename from Fsubr_interactive_form.
2826 Extend to handle all kinds of functions.
2827
2828 * lisp.h (Finteractive_form): Declare.
2829
2830 * callint.c (Fcall_interactively): Use it.
2831
6fc4c9c9
KS
28322004-03-26 Kim F. Storm <storm@cua.dk>
2833
2834 * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error
2835 to catch errors in calc_pixel_width_or_height during redisplay.
2836
abdb9b83
MY
28372004-03-26 Masatake YAMATO <jet@gyve.org>
2838
b17856dd 2839 * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range.
abdb9b83 2840
b17856dd 2841 * lisp.h (fix_start_end_in_overlays): Likewise.
abdb9b83 2842
b17856dd 2843 * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays.
abdb9b83 2844
b17856dd 2845 * editfns.c (Ftranspose_regions): Likewise.
abdb9b83 2846
e8a84b6c
JD
28472004-03-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2848
b17856dd 2849 * xterm.c (handle_one_xevent): Do not pass key press events to GTK.
e8a84b6c 2850
36a3fd05
RS
28512004-03-19 Richard M. Stallman <rms@gnu.org>
2852
2853 * s/sol2-6.h: Delete previous change.
2854
ab24c127
KS
28552004-03-19 Kim F. Storm <storm@cua.dk>
2856
2857 * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
2858 to_charpos corresponds to newline in right fringe. Use local
2859 BUFFER_POS_REACHED_P macro.
2860
992126de
JD
28612004-03-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2862
2863 * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
2864 to compile on non-window system.
2865
45dbfc84
KS
28662004-03-19 Kim F. Storm <storm@cua.dk>
2867
2868 * dispextern.h (calc_pixel_width_or_height): Add prototype.
2869
2870 * image.c (Qcenter): Move to xdisp.c.
2871
2872 * xdisp.c (Qcenter): Declare here.
adb3b353 2873 (syms_of_xdisp): Intern and staticpro it.
45dbfc84
KS
2874 (handle_single_display_prop): Allow space display property on all
2875 platforms.
2876 (display_mode_line): Set mode_line_p before displaying line.
2877 (calc_pixel_width_or_height): Declare extern. Add separate :align-to
2878 handling. Remove complex cases for fringes and scroll-bars.
2879 Add left, right, and center alignment positions. Add text (area)
2880 width/height. Return width or height for image specs.
2881 (produce_stretch_glyph): Improve handling of :align-to. Is now
2882 relative to left of text area by default, but other base offsets
2883 can be specified -- also for text lines.
2884
2885 * term.c (produce_glyphs): Handle IT_STRETCH.
2886 (produce_stretch_glyph): New function to handle space width and
2887 align-to display properties on non-window systems.
2888
37264101
SM
28892004-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
2890
2891 * fileio.c (Fread_file_name): Set completion-ignore-case for
2892 case-insensitive systems.
2893
73bc43da
MY
28942004-03-14 Masatake YAMATO <jet@gyve.org>
2895
2896 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
2897 when keymap and cursor are setup.
2898
9062aa89
ST
28992004-03-14 Steven Tamm <steventamm@mac.com>
2900
b17856dd 2901 * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o.
9062aa89 2902
e4b1b5ab
KS
29032004-03-14 Kim F. Storm <storm@cua.dk>
2904
2905 * dispextern.h (x_find_image_file): Add prototype.
2906
2907 * image.c (x_find_image_file): Make extern.
2908
2909 * xfns.c (x_find_image_file): Remove prototype.
2910
a6eeaa81 29112004-03-13 Eli Zaretskii <eliz@gnu.org>
5109b06a 2912
37264101 2913 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
5109b06a 2914
37264101 2915 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
5109b06a 2916
e69cfac2
RS
29172004-03-12 Richard M. Stallman <rms@gnu.org>
2918
2919 * fns.c (internal_equal): New arg PROPS controls comparing
2920 text properties. All callers changed.
2921 (Fequal_including_properties): New function.
2922 (syms_of_fns): defsubr it.
2923
45034953
KS
29242004-03-12 Kim F. Storm <storm@cua.dk>
2925
2926 Fix image support on MAC. From YAMAMOTO Mitsuharu.
37264101 2927
45034953
KS
2928 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
2929 (image_background, image_background_transparent): Fix prototypes.
2930
37264101 2931 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
45034953
KS
2932
2933 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
2934 (x_query_font, x_find_ccl_program, x_set_window_size)
2935 (x_make_frame_visible, mac_initialize, XCreatePixmap)
2936 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
2937 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
2938
2939 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
2940 (x_query_font, x_find_ccl_program, x_set_window_size)
2941 (x_make_frame_visible, mac_initialize, XCreatePixmap)
2942 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
2943 (mac_draw_line_to_pixmap): Add prototypes.
2944
29452004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2946
2947 * macterm.c (XTread_socket): Fix mouse click on tool bar.
2948
a12d3d87
KS
29492004-03-11 Kim F. Storm <storm@cua.dk>
2950
d3ab1cf1
KS
2951 * dispextern.h: Move image related prototypes from xfns.c section
2952 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
2953 HAVE_X_WINDOWS.
37264101 2954
37de9f51 2955 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
37264101 2956 Move gtkutil.o to new GTK_OBJ list.
a12d3d87
KS
2957 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
2958 (GTK_OBJ) [USE_GTK]: New declaration.
2959 (obj): Add $(GTK_OBJ) to list.
2960
5243c06a 29612004-03-11 Steven Tamm <steventamm@mac.com>
5109b06a 2962
5243c06a
ST
2963 * image.c [MAC_OSX]: Include sys/stat.h
2964
2965 * macfns.c (syms_of_macfns): Remove definitions of things now
2966 defined in image.c
2967
c0f97789
KS
29682004-03-11 Kim F. Storm <storm@cua.dk>
2969
2970 The following changes consolidates the identical/similar image
2971 support code previously found in xfns.c, w32fns.c, and macfns.c
2972 into a new file image.c.
2973
2974 * makefile.w32-in (OBJ1): Add image.o.
2975 ($(BLD)/image.$(O)): Add dependencies.
2976
2977 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
2978 (image.o): Add dependencies.
37264101 2979
c0f97789
KS
2980 * image.c: New file with consolidated image support code.
2981 (COLOR_TABLE_SUPPORT): New define to control whether
2982 color table support is available (X only).
2983 (Bitmap_Record): Common name for x_bitmap_record,
2984 w32_bitmap_record, and mac_bitmap_record.
2985 (XImagePtr): Common name for pointer to XImage or equivalent.
2986 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
2987 to XImagePtr on X+MAC, and to HDC on W32.
2988 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
2989 (NO_PIXMAP): Common name for "None" or equivalent.
2990 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
2991 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
2992 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
37264101
SM
2993 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
2994 Define with suitable equivalents on W32 and MAC for code sharing.
c0f97789
KS
2995 (XDrawLine): Define on MAC for code sharing.
2996 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
2997 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
2998 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
2999 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
3000 (x_reference_bitmap, x_create_bitmap_from_data)
3001 (x_create_bitmap_from_file, x_destroy_bitmap)
3002 (x_destroy_all_bitmaps, x_create_bitmap_mask)
3003 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
3004 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
3005 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
3006 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
3007 (define_image_type, lookup_image_type, valid_image_p)
3008 (image_error, enum image_value_type, struct image_keyword)
3009 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
3010 (make_image, free_image, prepare_image_for_display, image_ascent)
3011 (four_corners_best, image_background, image_background_transparent)
3012 (x_clear_image_1, x_clear_image, x_alloc_image_color)
3013 (make_image_cache, free_image_cache, clear_image_cache)
3014 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
3015 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
3016 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
3017 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
3018 (init_image_func_pointer, image_load_quartz2d)
3019 (struct ct_color, init_color_table, free_color_table)
3020 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
3021 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
3022 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
3023 (x_disable_image, x_build_heuristic_mask)
3024 (XBM support, XPM support, PBM support, PNG support, JPEG support)
3025 (TIFF support, GIF support, Ghostscript support): Consolidate image
3026 code from xfns.c, w32fns.c, and macfns.c.
3027 (syms_of_image): Consolidate image related symbol setup here.
3028 (init_image): Consolidate image related initializations here.
37264101 3029
c0f97789
KS
3030 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
3031 and init_image. Remove call to init_xfns.
3032
37264101
SM
3033 * macterm.h (struct mac_bitmap_record): Add file member.
3034 Not currently used, but simplifies code sharing.
c0f97789
KS
3035
3036 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
3037 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
3038 (x_reference_bitmap, x_create_bitmap_from_data)
3039 (x_create_bitmap_from_file, x_destroy_bitmap)
3040 (x_destroy_all_bitmaps, x_create_bitmap_mask)
3041 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
3042 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
3043 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
3044 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
3045 (define_image_type, lookup_image_type, valid_image_p)
3046 (image_error, enum image_value_type, struct image_keyword)
3047 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
3048 (make_image, free_image, prepare_image_for_display, image_ascent)
3049 (four_corners_best, image_background, image_background_transparent)
3050 (x_clear_image_1, x_clear_image, x_alloc_image_color)
3051 (make_image_cache, free_image_cache, clear_image_cache)
3052 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
3053 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
3054 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
3055 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
3056 (init_image_func_pointer, image_load_quartz2d)
3057 (struct ct_color, init_color_table, free_color_table)
3058 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
3059 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
3060 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
3061 (x_disable_image, x_build_heuristic_mask)
3062 (XBM support, XPM support, PBM support, PNG support, JPEG support)
3063 (TIFF support, GIF support, Ghostscript support): Merge with image
3064 code from xfns.c and macfns.c into image.c.
3065 (syms_of_xfns): Move image related symbols to image.c.
3066 (init_external_image_libraries, init_xfns): Remove; initialization
3067 moved to init_image in image.c.
3068
3069 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
3070 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
3071 (x_reference_bitmap, x_create_bitmap_from_data)
3072 (x_create_bitmap_from_file, x_destroy_bitmap)
3073 (x_destroy_all_bitmaps, x_create_bitmap_mask)
3074 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
3075 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
3076 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
3077 (define_image_type, lookup_image_type, valid_image_p)
3078 (image_error, enum image_value_type, struct image_keyword)
3079 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
3080 (make_image, free_image, prepare_image_for_display, image_ascent)
3081 (four_corners_best, image_background, image_background_transparent)
3082 (x_clear_image_1, x_clear_image, x_alloc_image_color)
3083 (make_image_cache, free_image_cache, clear_image_cache)
3084 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
3085 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
3086 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
3087 (struct ct_color, init_color_table, free_color_table)
3088 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
3089 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
3090 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
3091 (x_disable_image, x_build_heuristic_mask)
3092 (XBM support, XPM support, PBM support, PNG support, JPEG support)
3093 (TIFF support, GIF support, Ghostscript support): Merge with image
3094 code from xfns.c and macfns.c into image.c.
3095 (syms_of_xfns): Move image related symbols to image.c.
3096 (init_external_image_libraries, init_xfns): Remove; initialization
3097 moved to init_image in image.c.
3098
3099 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
3100 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
3101 (x_reference_bitmap, x_create_bitmap_from_data)
3102 (x_create_bitmap_from_file, x_destroy_bitmap)
3103 (x_destroy_all_bitmaps, x_create_bitmap_mask)
3104 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
3105 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
3106 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
3107 (define_image_type, lookup_image_type, valid_image_p)
3108 (image_error, enum image_value_type, struct image_keyword)
3109 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
3110 (make_image, free_image, prepare_image_for_display, image_ascent)
3111 (four_corners_best, image_background, image_background_transparent)
3112 (x_clear_image_1, x_clear_image, x_alloc_image_color)
3113 (make_image_cache, free_image_cache, clear_image_cache)
3114 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
3115 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
3116 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
3117 (struct ct_color, init_color_table, free_color_table)
3118 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
3119 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
3120 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
3121 (x_disable_image, x_build_heuristic_mask)
3122 (XBM support, XPM support, PBM support, PNG support, JPEG support)
3123 (TIFF support, GIF support, Ghostscript support): Merge with
3124 w32fns.c and macfns.c image code into image.c.
3125 (syms_of_xfns): Move image related symbols to image.c.
3126 (init_xfns): Remove; initialization moved to init_image in image.c.
3127
3128 * lisp.h (syms_of_image, init_image): Add protoypes.
3129 (init_xfns): Remove prototype.
3130
3131 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
3132 (x_reference_bitmap, x_create_bitmap_from_data)
3133 (x_create_bitmap_from_file, x_destroy_bitmap)
3134 (x_create_bitmap_mask): Move prototypes from dispextern.h.
3135 (gamma_correct) [MAC_OS]: Add prototype.
3136
3137 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
3138 (x_reference_bitmap, x_create_bitmap_from_data)
3139 (x_create_bitmap_from_file, x_destroy_bitmap)
3140 (x_create_bitmap_mask): Move prototypes to dispextern.h.
3141
6eced09c
KH
31422004-03-09 Kenichi Handa <handa@etlken2>
3143
3144 * coding.c (decode_coding_emacs_mule): Handle insufficent source
3145 correctly.
3146
9a7e95f3
RS
31472004-03-04 Richard M. Stallman <rms@gnu.org>
3148
04a6e76b
RS
3149 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
3150
9a7e95f3
RS
3151 * window.c (Fdisplay_buffer): Doc fix.
3152
3153 * buffer.c (Fpop_to_buffer): Doc fix.
3154
6c2488df
KS
31552004-03-03 Kim F. Storm <storm@cua.dk>
3156
3157 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
3158
d8d95bc7
SM
31592004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
3160
3161 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
3162
357589bf
RS
31632004-03-02 Richard M. Stallman <rms@gnu.org>
3164
3165 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
3166
409949b5
KH
31672004-03-02 Kenichi Handa <handa@m17n.org>
3168
3169 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
3170
d24bc50f
KS
31712004-03-02 Kim F. Storm <storm@cua.dk>
3172
3173 * window.h (struct window): New member overlay_arrow_bitmap.
3174
3175 * window.c (make_window): Initialize overlay_arrow_bitmap.
3176
3177 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
3178 implement and integrate multiple overlay arrows with redisplay.
3179 (syms_of_xdisp): DEFVAR_LISP and initialize it.
3180 (last_arrow_position, last_arrow_string): Replace by properties.
3181 (Qlast_arrow_position, Qlast_arrow_string)
3182 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
3183 (syms_of_xdisp): Intern and staticpro them.
3184 (overlay_arrow_string_or_property, update_overlay_arrows)
3185 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
3186 (overlay_arrow_at_row): New functions for multiple overlay arrows.
3187 (redisplay_internal): Use them instead of directly accessing
3188 Voverlay_arrow_position etc. for multiple overlay arrows.
3189 (mark_window_display_accurate): Use update_overlay_arrows.
3190 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
3191 (try_window_id): Use overlay_arrows_changed_p.
3192 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
3193 (display_line): Use overlay_arrow_at_row to check multiple
3194 overlay arrows, and get relevant overlay-arrow-string and
d8d95bc7 3195 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
d24bc50f
KS
3196 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
3197 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
3198
3199 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
3200 (update_window_fringes): Remove unused code.
3201
c1464661
JR
32022004-03-01 Jason Rumney <jasonr@gnu.org>
3203
3204 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
3205
a64387ee
JB
32062004-03-01 Juanma Barranquero <lektu@terra.es>
3207
3208 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
3209
3210 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
3211
334faa08
JD
32122004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3213
3214 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
3215 how many colors can be displayed.
3216
bb62616f
KH
32172004-03-01 Kenichi Handa <handa@m17n.org>
3218
3219 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
3220 correctly.
3221
0fd16104
KS
32222004-02-28 Kim F. Storm <storm@cua.dk>
3223
3224 * dispnew.c (update_window): Update header line also if there are
3225 no other changes in window (move code after set_cursor label).
3226
3227 * lisp.h (mark_window_display_accurate): Remove prototype.
3228
3229 * window.c (window_loop, Fforce_window_update): Force mode line
3230 updates by setting prevent_redisplay_optimizations_p and
3231 update_mode_lines.
3232
b59dd9c8
JD
32332004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3234
d8d95bc7 3235 * xfns.c (x_window): Fix indentation.
b59dd9c8
JD
3236
3237 * xterm.c (x_calc_absolute_position): Call x_real_positions
3238 to get WM window sizes and use those to calculate position.
d8d95bc7 3239 (x_set_offset): Remove code commented out.
b59dd9c8 3240
a874691c
MB
32412004-02-28 Miles Bader <miles@gnu.org>
3242
3243 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
3244
3e0c6482
KS
32452004-02-28 Kim F. Storm <storm@cua.dk>
3246
3247 * keyboard.c (kbd_buffer_store_event_hold): New function to store
3248 an event into kbd fifo, but with special handling of quit event;
3249 a quit event is saved for later, and further events are discarded
3250 until the saved quit event has been processed.
3251 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
3252 (gen_help_event): Store help event in kbd fifo.
3253 (NREAD_INPUT_EVENTS): Remove.
3254 (read_avail_input): Adapt to new read_socket_hook interface.
3255 Remove allocation and initialization of local input_event buffer,
3256 as read_socket_hook stores events directly in fifo. Allocate and
3257 initialize local hold_quit event to handle postponed quit event
3258 (and store it if set by kbd_buffer_store_event_hold).
3259
3260 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
3261 (gen_help_event): Fix prototype.
3262
a64387ee 3263 * macterm.c (XTread_socket): Remove bufp_r and
3e0c6482 3264 numcharsp args. Add hold_quit arg.
f63fd14e 3265 Rework to use just one, local, inev input_event. Store inev
3e0c6482
KS
3266 directly in fifo using kbd_buffer_store_event_hold.
3267
3268 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
3269 (read_input_waiting): Adapt to new read_socket_hook interface.
3270 Remove allocation and initialization of local input_event buffer,
3271 as read_socket_hook stores events directly in fifo. Allocate and
3272 initialize local hold_quit event to handle postponed quit event
3273 (and store it if set by kbd_buffer_store_event_hold).
3274
a64387ee 3275 * term.c (read_socket_hook): Fix arg list.
3e0c6482
KS
3276
3277 * termhooks.h (read_socket_hook): Fix prototype.
3278
3279 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
3280 numcharsp args. Add hold_quit arg.
f63fd14e 3281 Rework to use just one, local, inev input_event. Store inev
3e0c6482
KS
3282 directly in fifo using kbd_buffer_store_event_hold.
3283
3284 * w32inevt.h (w32_console_mouse_position): Fix prototype.
3285
3286 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
f63fd14e
JB
3287 Add hold_quit arg. Rework to use just one, local, inev
3288 input_event. Store inev directly in fifo using
3e0c6482
KS
3289 kbd_buffer_store_event_hold. Update count in one place.
3290 Postpone call to gen_help_event until inev is stored; use new
3291 local do_help for this.
3292 Remove local emacs_event in handing of ButtonPress event; just use
3293 inev instead (so no reason to copy it later).
3294
3295 * xsmfns.c (x_session_check_input): Remove numchars arg.
3296
d8d95bc7
SM
3297 * xterm.c (x_focus_changed, x_detect_focus_change):
3298 Remove numchars arg. Always store event into bufp arg.
3299 Return nothing. Callers changed accordingly.
3e0c6482
KS
3300 (glyph_rect): Simplify.
3301 (STORE_KEYSYM_FOR_DEBUG): New macro.
3302 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
3303 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
3304 (current_hold_quit) [USE_GTK]: Add.
3305 (event_handler_gdk): Adapt to new handle_one_xevent.
3306 (handle_one_xevent): Remove bufp_r and numcharsp args.
f63fd14e
JB
3307 Add hold_quit arg. Rework to use just one, local, inev
3308 input_event. Store inev directly in fifo using
3e0c6482
KS
3309 kbd_buffer_store_event_hold. Update count in one place.
3310 Postpone call to gen_help_event until inev is stored; use new
3311 local do_help for this.
3312 Simplify handling of keysyms (consolidate common code). Fix bug
3313 where count was updated with nchars instead of nbytes.
3314 Remove local emacs_event in handing of ButtonPress event; just use
3315 inev instead (so no reason to copy it later).
3316 Remove `out' label. Rename label `ret' to `done'; add various
3317 `goto done' to clarify code flow in deeply nested blocks.
3318 (x_dispatch_event): Simplify as handle_one_xevent now calls
3319 kbd_buffer_store_event itself.
f63fd14e 3320 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
3e0c6482
KS
3321 arg. Call handle_one_xevent with new arglist. Store event from
3322 x_session_check_input in fifo.
3323 [USE_GTK]: Setup current_hold_quit.
3324 Decrement handling_signal before unblocking input.
3325 (x_initialize) [USE_GTK]: Initialize current_count.
3326
3327 * xterm.h (x_session_check_input): Fix prototype.
3328
e3564461 33292004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
a64387ee 3330
d8d95bc7 3331 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
a64387ee 3332
e3564461
ST
3333 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
3334 macgui.h).
a64387ee 3335
e3564461 3336 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
a64387ee 3337
e3564461
ST
3338 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
3339 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
3340 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
3341 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
3342 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
3343 (Bitmap): Remove typedef.
3344 (Pixmap): Change int to GWorldPtr.
3345
d8d95bc7 3346 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
a64387ee 3347
d8d95bc7
SM
3348 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
3349 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
3350 New #define to extract 16-bit depth color components from unsigned
e3564461
ST
3351 long representation.
3352 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
3353 colors used for masks.
3354 (struct mac_display_info): Add color_p. Remove n_cbits.
a64387ee 3355
e3564461
ST
3356 * macfns.c: Include sys/types.h and sys/stat.h.
3357 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
3358 Include QuickTime/QuickTime.h.
3359 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
3360 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
3361 functions defined in macterm.c.
3362 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
3363 (ZPixmap): New #define for compatibility with xfns.c.
3364 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
3365 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
d8d95bc7
SM
3366 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
3367 New functions.
e3564461 3368 (four_corners_best, x_create_x_image_and_pixmap)
d8d95bc7
SM
3369 (x_destroy_x_image, unwind_create_frame, x_disable_image)
3370 (x_edge_detection, init_color_table, colors_in_color_table)
e3564461
ST
3371 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
3372 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
3373 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
3374 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
3375 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
3376 long mixup.
3377 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
3378 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
3379 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
3380 (x_set_cursor_type, Fxw_color_values, valid_image_p)
3381 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
3382 (x_alloc_image_color, clear_image_cache, lookup_image)
3383 (x_find_image_file, xbm_read_bitmap_file_data)
3384 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
3385 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
3386 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
3387 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
3388 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
d8d95bc7 3389 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
e3564461
ST
3390 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
3391 #if 0.
3392 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
3393 #if 0. Free white_relief.gc and black_relief.gc.
d8d95bc7
SM
3394 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
3395 New functions (from xfns.c).
e3564461
ST
3396 (Fx_create_frame): Record unwind_create_frame.
3397 (Fxw_display_color_p): Use dpyinfo->color_p.
3398 (Fx_display_grayscale_p, Fx_display_planes): Don't use
3399 dpyinfo->n_cbits.
3400 (Fx_display_color_cells): Use dpyinfo->n_planes;
3401 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
3402 (Qheuristic, cross_disabled_images, emboss_matrix)
3403 (laplace_matrix): New variables (from xfns.c).
3404 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
3405 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
3406 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
d8d95bc7
SM
3407 (image_background_transparent): New function (from xfns.c).
3408 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
3409 (image_load_quicktime): Add declaration.
3410 [MAC_OSX] (image_load_quartz2d): Likewise.
3411 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
3412 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
d8d95bc7 3413 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
e3564461
ST
3414 (xbm_load_image_from_file, x_laplace_read_row)
3415 (x_laplace_write_row, pbm_read_file): Remove functions.
3416 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
3417 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
3418 (colors_in_color_table): Sync with xfns.c (although not used).
3419 (lookup_rgb_color): Don't lookup color table. Just do gamma
3420 correction.
3421 (COLOR_INTENSITY): New #define (from xfns.c).
d8d95bc7
SM
3422 (x_disable_image): New function (from xfns.c).
3423 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
3424 (x_build_heuristic_mask): Sync with xfns.c.
3425 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
3426 (HAVE_PBM): Remove #ifdef.
3427 (pbm_load): Sync with xfns.c. Set img->width and img->height
3428 before IMAGE_BACKGROUND.
d8d95bc7 3429 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
e3564461
ST
3430 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
3431 Don't enclose with #if HAVE_PNG.
3432 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
d8d95bc7
SM
3433 symbol _CGImageCreateWithPNGDataProvider is defined.
3434 Otherwise use image_load_quicktime.
e3564461 3435 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
d8d95bc7
SM
3436 [HAVE_PNG] (png_load): Sync with xfns.c.
3437 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
3438 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
3439 HAVE_JPEG.
3440 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
3441 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
3442 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
3443 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
3444 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
3445 (tiff_image_p, tiff_load): Don't enclose declarations with #if
3446 HAVE_TIFF.
3447 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
3448 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
3449 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
d8d95bc7
SM
3450 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
3451 New functions (from xfns.c).
e3564461 3452 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
d8d95bc7 3453 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
e3564461
ST
3454 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
3455 Don't enclose with #if HAVE_GIF.
3456 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
3457 animated gif. Otherwise use image_load_quicktime.
3458 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
3459 gif_DrawText to avoid conflict with QuickdrawText.h.
3460 [HAVE_GIF] (gif_load): Sync with xfns.c.
3461 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
3462 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
3463 Ghostscript is not supported yet).
3464 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
3465 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
3466 cross_disabled_images (from xfns.c). Remove #if 0 for supported
3467 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
3468 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
3469 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
d8d95bc7
SM
3470 HAVE_PNG. Call EnterMovies to support animated gifs.
3471 Call init_image_func_pointer to bind a symbol
e3564461 3472 _CGImageCreateWithPNGDataProvider if it is defined.
a64387ee 3473
d8d95bc7 3474 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
e3564461
ST
3475 (x_draw_bar_cursor): Sync declaration with xterm.c.
3476 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
3477 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
3478 graphics).
3479 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
3480 (mac_draw_line_to_pixmap, XCreatePixmap)
3481 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
d8d95bc7
SM
3482 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
3483 New functions.
3484 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
3485 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
3486 Cast bits to char *.
e3564461
ST
3487 (reflect_byte): New function (from w32fns.c).
3488 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
3489 due to byte alignment.
d8d95bc7
SM
3490 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
3491 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
e3564461
ST
3492 (XSetForeground): Remove static (now used in macfns.c).
3493 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
3494 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
3495 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
3496 (x_draw_glyph_string_box, x_draw_image_foreground)
3497 (x_draw_image_foreground_1, x_draw_image_glyph_string)
3498 (x_draw_stretch_glyph_string, x_draw_glyph_string)
3499 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
3500 Sync with xterm.c.
3501 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
3502 than the xterm.c version when a strictly horizontal or vertical
3503 line is drawn.
3504 (XTset_terminal_window): Add static.
3505 (x_make_frame_visible): Add UNBLOCK_INPUT.
3506 (x_free_frame_resources): New funcion (from xterm.c).
3507 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
3508 occurs in tool bar area.
d8d95bc7
SM
3509 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
3510 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
e3564461
ST
3511 Initialize image cache.
3512 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
3513 Enclose unused functions with #if 0.
3514 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
3515 (decode_mac_font_name): New function to apply code conversions
d8d95bc7 3516 from a mac font name to an XLFD font name according to its script code.
e3564461 3517 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
d8d95bc7 3518 font name to a mac font name according to REGISTRY and ENCODING fields.
e3564461
ST
3519 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
3520 whose name starts with `.'.
3521 (init_font_name_table): Use decode_mac_font_name. Add both
3522 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
3523 of a font is smJapanese.
3524 (mac_do_list_fonts): New function to list fonts that match a given
3525 pattern.
3526 (x_list_fonts, XLoadQueryFont): Use it.
3527 (XLoadQueryFont): Set rbearing field for each variable width
3528 character to avoid needless redraw.
3529 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
3530
446f5f3d
KS
35312004-02-26 Kim F. Storm <storm@cua.dk>
3532
af617d0f
KS
3533 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
3534 as read_socket_hook handler on X aborts if buffer is too small
3535 and W32 handler doesn't always check buffer limit.
3536
446f5f3d
KS
3537 * xdisp.c (handle_single_display_prop): Handle left-fringe and
3538 right-fringe similar to a display margin image. Specifically,
3539 the characters having the fringe prop are no longer shown, and
3540 we use IT_IMAGE/next_element_from_image with image_id = -1 to
3541 do this. Set fringe bitmap face_id in it->face_id.
3542 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
3543 still realize it->face (i.e. the fringe bitmap face).
3544
7d8a0b55
MB
35452004-02-25 Miles Bader <miles@gnu.org>
3546
3547 * xdisp.c (check_it): Check string/string_pos consistency.
3548 (init_iterator): Initialize string-related fields properly.
3549
35502004-02-11 Miles Bader <miles@gnu.org>
3551
3552 * xdisp.c (produce_image_glyph): Force negative descents to zero.
3553
35542004-02-10 Miles Bader <miles@gnu.org>
3555
3556 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
3557 BLOCK_INPUT can be nested, so it doesn't make much sense.
3558
a64387ee 35592004-02-24 Michael Mauger <mmaug@yahoo.com>
ce35edd1
JR
3560
3561 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
3562 (xbm_read_bitmap_data): Use unsigned char for image data.
3563
92f5fba2
LT
35642004-02-23 Luc Teirlinck <teirllm@auburn.edu>
3565
3566 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
3567
8565fb3d
JR
35682004-02-22 Jason Rumney <jasonr@gnu.org>
3569
3570 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
3571 correctly over other bitmaps.
3572
a6eeaa81 35732004-02-21 Eli Zaretskii <eliz@gnu.org>
f8125c39
EZ
3574
3575 * emacs.c (USAGE1): Split into two halves.
3576 (USAGE2): Second half of the old USAGE1.
d8d95bc7
SM
3577 (USAGE3): Rename from USAGE2.
3578 (USAGE4): Rename from USAGE3.
f8125c39 3579
4effffca
EZ
35802004-02-21 Juri Linkov <juri@jurta.org>
3581
3582 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
3583 Fix --multibyte. Move --help, --version to USAGE2. Add alias
3584 --file. Fix -f, -l. Sort options. Untabify.
3585 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
3586
923c1e6f
LT
35872004-02-19 Luc Teirlinck <teirllm@auburn.edu>
3588
3589 * category.c (Fdefine_category, Fcategory_docstring)
3590 (Fget_unused_category, Fset_category_table)
3591 (Fcategory_set_mnemonics): Doc fixes.
3592
b0e225fd
KS
35932004-02-20 Kim F. Storm <storm@cua.dk>
3594
3595 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
3596 The following changes are relative to the 2004-01-21 revision.
3597 (NREAD_INPUT_EVENTS): Define as max number of input events to read
3598 in one call to read_socket_hook. Value is 8.
3599 (read_avail_input): Separate and rework handling of read_socket_hook
3600 and non-read_socket_hook cases. Use smaller input_event buffer
d8d95bc7
SM
3601 in read_socket_hook case, and repeat if full buffer is read.
3602 Use new local variable 'discard' to skip input after C-g.
b0e225fd
KS
3603 In non-read_socket_hook case, just use a single input_event, and
3604 call kbd_buffer_store_event on the fly for each character.
3605
b15aa9f9
SM
36062004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
3607
3608 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
3609 Remove unused `gu' alternative.
3610
83c9aa95
AS
36112004-02-19 Andreas Schwab <schwab@suse.de>
3612
3613 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
3614 warning.
3615
cc808173
KS
36162004-02-18 Kim F. Storm <storm@cua.dk>
3617
3618 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
3619 Fix last change.
3620
ab90a54d
KS
36212004-02-17 Kim F. Storm <storm@cua.dk>
3622
b26f249f
KS
3623 * xdisp.c (fast_find_position): Fix return value of new version;
3624 it was inverted compared to the 21.1 version.
3625 (get_window_cursor_type): Don't look at glyph if NULL.
3626 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
0bf7d005 3627
ab90a54d
KS
3628 * keyboard.c: Rework previous change; it didn't consider that the
3629 buf array was allocated on the stack.
3630 (prev_read): Remove variable.
3631 (read_avail_input_buf): New static event buffer array.
b9568dfc 3632 (in_read_avail_input): New static variable to handle re-entrancy.
ab90a54d 3633 (read_avail_input): Change buf to pinter to read_avail_input_buf.
b9568dfc
KS
3634 Use in_read_avail_input to handle re-entrance; when re-entered,
3635 fully initialize and use tmp_buf array instead of read_avail_input_buf.
3636 Do not initialize read_avail_input_buf in full here; instead assume it
ab90a54d
KS
3637 is always cleared on entry. To ensure that, we clear (just) the
3638 entries that were used before we return.
3639 (init_keyboard): Initialize read_avail_input_buf here.
3640
b6189c3b 36412004-02-16 Jesper Harder <harder@ifa.au.dk>
4e039f3f
EZ
3642
3643 * cmds.c (Fend_of_line): Doc fix.
3644
7b5368c1
EZ
36452004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
3646
3647 * keyboard.c (prev_read): New static variable.
3648 (read_avail_input): Use it to zero out only those slots in buf[]
3649 that were used last time we were called.
3650
a6eeaa81 36512004-02-16 Eli Zaretskii <eliz@gnu.org>
ca4bc494
EZ
3652
3653 * Makefile.in (obj): Move fringe.o from here...
3654 (XOBJ, MAC_OBJ): ...to here.
3655
159c348e
SE
36562004-02-16 Stephen Eglen <stephen@gnu.org>
3657
3658 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
3659
d2f14999
SM
36602004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
3661
b15aa9f9
SM
3662 * data.c (Fbyteorder):
3663 * fringe.c (Fdefine_fringe_bitmap):
3664 * xdisp.c (handle_single_display_prop):
d2f14999
SM
3665 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
3666
8d50508a
JR
36672004-02-16 Jason Rumney <jasonr@gnu.org>
3668
3669 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
3670
dd4497dc
ST
36712004-02-15 Steven Tamm <steventamm@mac.com>
3672
3673 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
3674 controlling emulation of a three button mouse with option and
3675 command keys.
3676 (Qreverse, mac_get_enumlated_btn): Handle the emulation
b15aa9f9 3677 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
dd4497dc 3678
c9159cb3
KS
36792004-02-15 Kim F. Storm <storm@cua.dk>
3680
2cc52658
KS
3681 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
3682
c9159cb3
KS
3683 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
3684 Perform byte-swapping.
3685
12fde2dc
KS
36862004-02-14 Kim F. Storm <storm@cua.dk>
3687
3688 * dispextern.h (struct draw_fringe_bitmap_params): Change member
3689 bits from char to short to facilitate wider bitmaps.
3690 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
3691 member.
3692
3693 * fringe.c (struct fringe_bitmap): Change member bits from char to
3694 short to facilitate 16 bits wide bitmaps. Modify all standard
3695 bitmaps accordingly.
3696 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
3697 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
3698 (draw_fringe_bitmap): Ditto.
3699 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
3700 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
3701 handle up to 16 bits wide bitmaps.
3702 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
f21a7192 3703 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
12fde2dc
KS
3704
3705 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
3706 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
3707 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
3708
3709 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
3710 so it is no longer necessary to expand them here.
3711
3712 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
3713
9d7271e8
KS
37142004-02-12 Kim F. Storm <storm@cua.dk>
3715
3716 * window.c (Fwindow_fringes): Doc fix.
3717
706c1e4f
JD
37182004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3719
3720 * xselect.c (x_get_foreign_selection): Add new optional parameter
3721 time_stamp.
3722 (Fx_get_selection_internal): Ditto, pass time_stamp to
3723 x_get_foreign_selection.
3724
3725 * data.c (Fbyteorder): New function.
3726
c2d12b5d
JD
37272004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3728
3729 * atimer.c: Move include stdio.h to same place as in other files.
3730
3731 * region-cache.c: Ditto.
3732
3733 * sysdep.c: Ditto.
3734
3735 * xfaces.c: Ditto.
3736
4c1947b9
SS
37372004-02-09 Sam Steingold <sds@gnu.org>
3738
89458937 3739 * w32term.c (w32_draw_fringe_bitmap): Fix a typo in the last patch.
4c1947b9 3740
82722af3
KS
37412004-02-09 Kim F. Storm <storm@cua.dk>
3742
3743 * fringe.c: New file. Move original fringe related declarations
3744 and code from dispextern.h and xdisp.c here.
3745 Rework code to support user defined fringe bitmaps, redefining
3746 standard bitmaps, ability to overlay user defined bitmap with
3747 overlay arrow bitmap, and add faces to bitmaps.
3748 (Voverflow_newline_into_fringe): Declare here.
3749 (enum fringe_bitmap_align): New enum.
3750 (..._bits): All bitmaps are now defined without bitswapping; that
3751 is now done in init_fringe_once (if necessary).
3752 (standard_bitmaps): New array with specifications for the
3753 standard fringe bitmaps.
3754 (fringe_faces): New array.
3755 (valid_fringe_bitmap_id_p): New function.
3756 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
3757 (draw_fringe_bitmap): New function which draws fringe bitmap,
3758 possibly overlaying bitmap with cursor in right fringe or the
3759 overlay arrow in the left fringe.
3760 (update_window_fringes): Do not handle overlay arrow here.
3761 Compare and copy fringe bitmap faces.
3762 (init_fringe_bitmap): New function.
3763 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
3764 define and destroy user defined fringe bitmaps.
3765 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
3766 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
3767 (syms_of_fringe): New function. Defsubr new DEFUNs.
3768 DEFVAR_LISP Voverflow_newline_into_fringe.
3769 (init_fringe_once, init_fringe): New functions.
3770 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
4c1947b9 3771
82722af3
KS
3772 * Makefile.in (obj): Add fringe.o.
3773 (fringe.o): New dependencies.
3774
3775 * dispextern.h (FRINGE_ID_BITS): New definition for number of
3776 bits allocated to hold a fringe number. Increase number of bits
3777 from 4 to 8 to allow user defined fringe bitmaps.
3778 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
3779 left_user_fringe_face_id, right_user_fringe_bitmap,
3780 right_user_fringe_face_id.
3781 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
3782 Move to new file fringe.c.
3783 (MAX_FRINGE_BITMAPS): Define here.
3784 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
3785 and overlay_p. Change member which to int.
3786 (struct redisplay_interface): New members define_fringe_bitmap
3787 and destroy_fringe_bitmap.
3788 (valid_fringe_bitmap_id_p): Add prototype.
3789 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
3790
3791 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
3792 arrows.
3793 (update_frame): Do flush_display if force_flush_display_p to
3794 ensure display (specifically fringes) are updated in a timely
3795 manner when resizing the frame by dragging the mouse.
3796 (update_window_line): Update row if overlay arrow changed.
3797 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
3798 or overlay arrow changed.
3799
3800 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
3801 syms_of_fringe, and init_fringe.
3802
3803 * frame.h (struct frame): New member force_flush_display_p.
3804
3805 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
3806 Add prototypes.
3807
a3993cc8 3808 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
a64387ee 3809 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
a3993cc8
KS
3810 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
3811 Use cursor color for displaying cursor in fringe.
82722af3
KS
3812 (x_redisplay_interface): Add null handlers for
3813 define_fringe_bitmap and destroy_fringe_bitmap functions.
3814
3815 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
3816 xterm.c to handle overlayed fringe bitmaps and to use cursor color
3817 for displaying cursor in fringe.
3818 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
3819 specific functions to define and destroy fringe bitmaps in fringe_bmp.
3820 (w32_redisplay_interface): Add them to redisplay_interface.
3821 (w32_term_init): Call w32_init_fringe instead of explicitly
3822 defining fringe bitmaps in fringe_bmp array.
3823 (x_delete_display): Call w32_reset_fringes instead of explicitly
3824 destroying fringe bitmaps in fringe_bmp array.
3825
3826 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
3827 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
3828 (continued_bits, continuation_bits, ov_bits, first_line_bits)
3829 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
3830 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
3831 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
3832 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
3833 Move fringe handling vars and code to new file fringe.c.
3834 (handle_display_prop): Handle left-fringe and right-fringe
3835 display properties; store user fringe bitmaps in iterator.
3836 (move_it_in_display_line_to): Handle cursor in fringe at eob.
3837 (clear_garbaged_frames): Set force_flush_display_p if resized.
3838 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
3839 (display_line): Handle cursor in fringe at eob.
3840 (display_line): Set row user fringe bitmaps from iterator.
3841
3842 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
3843 Use cursor color for displaying cursor in fringe.
3844 (x_redisplay_interface): Add null handlers for
3845 define_fringe_bitmap and destroy_fringe_bitmap functions.
3846
030400eb
JD
38472004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3848
3849 * macfns.c (Fx_change_window_property): Make doc string and
3850 parameters same as for X version.
3851
3852 * w32fns.c (Fx_change_window_property): Ditto.
3853
3af55251
KS
38542004-02-07 Kim F. Storm <storm@cua.dk>
3855
ec110e9e
KS
3856 * xdisp.c (hscroll_window_tree): Position cursor near to right
3857 margin in hscrolled window when jumping to end of line (rather
3858 than centering cursor).
3859
3af55251
KS
3860 * process.c (wait_reading_process_input): Don't do adaptive read
3861 buffering if waiting for a specific process.
3862
b0c138ce
LT
38632004-02-05 Luc Teirlinck <teirllm@auburn.edu>
3864
3865 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
3866 (Fread_minibuffer, Feval_minibuffer)
3867 (Fread_string, Fread_no_blanks_input)
3868 (Fcompleting_read): Doc fixes.
3869 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
3870 completion-regexp-list. Define Qcase_fold_search and staticpro it.
3871 (read_minibuf): Fix initial comment.
3872 (Ftry_completion, Fall_completions, Ftest_completion): Bind
e8eeaed8 3873 case-fold-search to the value of completion-ignore-case when
b0c138ce
LT
3874 checking completion-regexp-list.
3875 (Fdisplay_completion_list): Make it handle arguments that are
3876 symbols. Doc fix.
3877
9676f5ad 38782004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
64d1e373 3879
9676f5ad 3880 * xterm.h: Add declaration of free_frame_menubar.
64d1e373 3881
9676f5ad
JD
3882 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
3883 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
b0c138ce 3884 (Fx_change_window_property): Add declaration of parameters type and
9676f5ad 3885 format. Remove unused variable cons.
5b698285
JD
3886
3887 * xselect.c: Include stdio,h.
3888
fc1d15f6
KH
38892004-02-05 Kenichi Handa <handa@m17n.org>
3890
ebaff4af
KH
3891 * fns.c (Fset_char_table_range): Fix previous change.
3892
fc1d15f6
KH
3893 * buffer.c (Fset_buffer_multibyte): Fix docstring.
3894
9676f5ad
JD
38952004-02-04 Luc Teirlinck <teirllm@auburn.edu>
3896
3897 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
3898
da75761f
SM
38992004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
3900
3901 * keymap.c (Vmouse_events): Rename from Vmenu_events.
3902 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
3903
13c5d120
KH
39042004-02-04 Kenichi Handa <handa@m17n.org>
3905
3906 * fns.c (Fset_char_table_range): Handle charsets ascii,
3907 eight-bit-control, and eight-bit-graphic correctly.
3908
2883d842
JR
39092004-02-03 Jason Rumney <jasonr@gnu.org>
3910
3911 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
3912
3913 * w32fns.c (x_to_w32_font): Likewise.
3914
69eff41f
JD
39152004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3916
3917 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
3918 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
3919
3920 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
3921 ClientMessages.
3922
3923 * xselect.c: Include termhooks.h and X11/Xproto.h
3924 (x_check_property_data, x_fill_property_data)
3925 (x_property_data_to_lisp, mouse_position_for_drop)
3926 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
da75761f 3927 (Fx_send_client_event): Move here from xfns.c.
69eff41f
JD
3928 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
3929
da75761f 3930 * xfns.c (x-send-client-message): Move to xselect.c
69eff41f
JD
3931 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
3932 OUTER_P.
3933 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
3934 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
3935 if vector_ret_p is true.
3936 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
69eff41f 3937
a6eeaa81 39382004-02-02 Eli Zaretskii <eliz@gnu.org>
dcdbbb5d
EZ
3939
3940 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
3941 basename of FILE relative to it, not FILE itself.
3942
09721b31
KH
39432004-02-02 Kenichi Handa <handa@m17n.org>
3944
3945 * coding.c (coding_restore_composition): Check invalid
3946 composition data more rigidly.
3947
eb996101
LT
39482004-01-30 Luc Teirlinck <teirllm@auburn.edu>
3949
3950 * fileio.c (Fread_file_name_internal): Correctly handle the case
3951 where insert-default-directory is nil.
3952 (Fread_file_name): Always return an empty string if the user exits
3953 with an empty minibuffer. Adapt the docstring accordingly.
3954 (syms_of_fileio): Adapt the docstring of insert-default-directory
3955 to the change in Fread_file_name.
3956
a6eeaa81 39572004-01-29 Eli Zaretskii <eliz@gnu.org>
a0367d42
EZ
3958
3959 * alloca.c [!alloca]: Fix the prototype for xfree.
3960
13f52ed8
KH
39612004-01-29 Kenichi Handa <handa@m17n.org>
3962
3963 * fns.c (string_char_to_byte): Optimize for ASCII only string.
3964 (string_byte_to_char): Likewise.
3965
d57625a0
JR
39662004-01-28 Peter Runestig <peter@runestig.com>
3967
3968 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
3969
a64387ee 39702004-01-27 Steven Tamm <steventamm@mac.com>
911c78b4
ST
3971
3972 * unexmacosx.c (unexec_copy): Do not copy more than was
3973 requested to prevent overwriting during unexec.
3974
eb37b8fd
JD
39752004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3976
ce38070a
JD
3977 * process.c (sigchld_handler): Add comment about not calling malloc.
3978
eb37b8fd
JD
3979 * process.h: Add extern to synch_process_termsig.
3980
a64387ee 39812004-01-27 Steven Tamm <steventamm@mac.com>
21a3e657 3982
da75761f
SM
3983 * macterm.c (make_mac_frame, make_mac_terminal_frame):
3984 Move setting of scroll bars from make_mac_frame to
3985 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
21a3e657 3986
d62a265d
RS
39872004-01-26 Richard M. Stallman <rms@gnu.org>
3988
3989 * search.c (Freplace_match): Handle nonexistent
3990 back-references properly.
3991
39922004-01-03 Richard M. Stallman <rms@gnu.org>
3993
3994 * window.c (decode_any_window): New function.
3995 (Fwindow_height, Fwindow_width, Fwindow_edges)
3996 (Fwindow_pixel_edges, Fwindow_inside_edges)
3997 (Fwindow_inside_pixel_edges): Use decode_any_window.
3998
ff236419
JD
39992004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4000
4001 * process.h: synch_process_termsig new variable.
4002
4003 * callproc.c: Define synch_process_termsig.
4004 (Fcall_process): Initiate synch_process_termsig to zero and
4005 check if non-zero and get signal name after subprocess has ended.
4006
4007 * process.c (sigchld_handler): Set synch_process_termsig
4008 if terminated by a signal. synch_process_death setting removed.
4009
4010 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
4011
41b867ea
AS
40122004-01-26 Andreas Schwab <schwab@suse.de>
4013
4014 * print.c (print_preprocess): Declare size as EMACS_INT to not
4015 lose bits.
4016 (print_object): Likewise.
4017 * alloc.c (Fpurecopy): Likewise.
4018
a08084ff
LT
40192004-01-25 Luc Teirlinck <teirllm@auburn.edu>
4020
4021 * window.c (Fwindow_minibuffer_p): Doc fix.
4022
b19ac475
JY
40232004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
4024
4025 * editfns.c (Fformat): Make both passes accept the same set of flags.
4026
fe905025
KH
40272004-01-23 Kenichi Handa <handa@m17n.org>
4028
4029 * fns.c (Fmd5): If OBJECT is a buffer different from the current
4030 one, set buffer to OBJECT temporarily.
4031
438fc6c0
SM
40322004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
4033
455316e2
SM
4034 * keyboard.c (kbd_buffer_gcpro): Remove.
4035 (kbd_buffer_store_event, clear_event, Fdiscard_input)
4036 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
4037 Don't initialize and/or maintain the variable any more. It was made
4038 redundant by my commit of 2003-06-15.
4039
438fc6c0
SM
4040 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
4041
5335a4ee
JD
40422004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4043
4044 * lisp.h: Add undef DECL_ALIGN.
4045
dcdaeebc
SM
40462004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
4047
4048 * process.c (wait_reading_process_input) [SYNC_INPUT]:
4049 Check interrupt_input_pending explicitly.
4050
4051 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
4052
4053 * keyboard.c (handle_async_input): New fun,
4054 extracted from input_available_signal.
4055 (input_available_signal, reinvoke_input_signal): Use it.
4056
9076a823
SM
40572004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
4058
d7107586
SM
4059 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
4060
4061 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
4062 manipulation macros for when tags are in the lower bits.
4063 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
4064 (DECL_ALIGN): New macro.
4065 (DEFUN): Use it.
4066
4067 * lisp.h [ENABLE_CHECKING]: Don't force union type.
4068
4069 * s/darwin.h (__attribute__): Remove outdated workaround.
4070
4071 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
4072
4073 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
4074 Don't check range of malloc address.
4075 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
4076
9076a823
SM
4077 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
4078
4079 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
4080
ba029065
KH
40812004-01-19 Kenichi Handa <handa@m17n.org>
4082
4083 * fontset.c (fontset_font_pattern): Fix previous change.
4084
7af0e8d7
MB
40852004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
4086
4087 * xdisp.c (Voverflow_newline_into_fringe)
4088 (move_it_in_display_line_to, redisplay_internal)
4089 (update_window_fringes, redisplay_window, display_line, window):
4090 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
4091 that it compiles without a window-system.
4092 * dispnew.c (direct_output_for_insert, update_window): Likewise.
4093
77a9cf69
KS
40942004-01-16 Kim F. Storm <storm@cua.dk>
4095
4096 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
4097
a64387ee 4098 * buffer.c (init_buffer_once): Set buffer_defaults and
77a9cf69
KS
4099 buffer_local_flags for indicate_buffer_boundaries.
4100 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
4101 default- variable for it.
4102
4103 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
4104 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
d7107586 4105 New members exact_window_width_line_p and cursor_in_fringe_p for
77a9cf69
KS
4106 overflowing newlines into right fringe.
4107 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
4108 and indicate_bottom_line_p for buffer boundaries and scrolling.
4109 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
4110 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
4111 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
4112 and HOLLOW_SQUARE_BITMAP.
4113 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
4114 Add prototypes.
4115
4116 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
4117 instead of related indicator fields.
4118 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
4119 (direct_output_for_insert): Handle exact width lines like
4120 contined lines. Call update_window_fringes.
4121 (update_window): Call update_window_fringes.
4122 (scrolling_window): Don't skip desired rows with changed bitmaps.
4123 Check if fringe bitmaps changes when assigning scrolled rows.
4124
4125 * xdisp.c (Voverflow_newline_into_fringe): New variable.
4126 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
4127 (move_it_in_display_line_to): Overflow newline into fringe for
4128 rows that are exactly as wide as the window.
4129 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
4130 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
4131 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
4132 (fringe_bitmaps): Add new bitmaps.
4133 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
4134 Select proper bitmap for cursor in fringe when appropriate.
4135 Handle alignment of bitmap to top or bottom of row.
4136 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
4137 done by update_window_fringes.
4138 (update_window_fringes, draw_window_fringes): New functions.
4139 (redisplay_internal): Call update_window_fringes in case only
4140 cursor row is updated.
4141 (redisplay_window): Call update_window_fringes.
4142 Explicitly call draw_window_fringes if redisplay was done using
4143 the current matrix or the overlay arrow is in the window.
4144 (try_window_reusing_current_matrix): Mark scrolled rows for
4145 fringe update (to update buffer-boundaries / scrolling icons).
4146 (find_last_unchanged_at_beg_row): Handle exact width lines line
4147 continued lines.
4148 (display_line): Overflow newline into fringe for rows that are
4149 exactly as wide as the window. Don't append space for newline
d7107586 4150 in this case.
77a9cf69
KS
4151 (notice_overwritten_cursor): Explicitly clear cursor bitmap
4152 in fringe as if it had been overwritten.
4153 (erase_phys_cursor): Erase cursor bitmap in fringe.
d7107586 4154 (syms_of_xdisp): Mark show-trailing-whitespace and
77a9cf69
KS
4155 void-text-area-pointer as user options.
4156 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
d7107586 4157
77a9cf69
KS
4158 * xterm.c (x_update_window_end): Call draw_window_fringes.
4159 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
4160 in row instead of actually drawing fringe bitmaps.
4161 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
4162 (x_draw_window_cursor): Draw cursor in fringe.
4163
4164 * w32term.c (x_update_window_end): Call draw_window_fringes.
4165 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
4166 in row instead of actually drawing fringe bitmaps.
4167 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
4168 (w32_draw_window_cursor): Draw cursor in fringe.
4169
4170 * macterm.c (x_update_window_end): Call draw_window_fringes.
4171 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
4172 in row instead of actually drawing fringe bitmaps.
4173 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
4174 (mac_draw_window_cursor): Draw cursor in fringe.
4175
a633a954
JD
41762004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4177
4178 * xterm.c (handle_one_xevent): Don't handle characters that are part
4179 of an old style (XLookupString) compose sequence.
4180
80460525
KH
41812004-01-15 Kenichi Handa <handa@m17n.org>
4182
4183 * search.c (Freplace_match): Use make_multibyte_string or
4184 make_unibyte_string according to the buffer multibyteness.
4185
7fc34f85
SM
41862004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
4187
4188 * alloc.c (struct interval_block, struct string_block)
4189 (struct symbol_block, struct marker_block, live_string_p)
4190 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
4191 Better preserve alignment for objects in blocks.
4192 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
4193
4194 * lread.c (defvar_per_buffer): Remove dead declaration.
4195
4196 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
4197 space size.
4198
66070bd1
JD
41992004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4200
4201 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
4202 if a key press should pop down. Only pop down if a key is pressed
4203 outside the menu/dialog.
4204 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
4205 popup_get_selection.
4206 (create_and_show_dialog): Pass 1 for down_on_keypress to
4207 popup_get_selection.
4208
de7515d6
JD
42092004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4210
4211 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
4212 BLOCK/UNBLOCK_INPUT.
4213
160b1b50
JD
42142004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4215
4216 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
4217 specified.
4218
3a9f36e6
KH
42192004-01-08 Kenichi Handa <handa@m17n.org>
4220
4221 * editfns.c (Fformat): Fix '&' to '&&'.
4222
3803eb32
AS
42232004-01-08 Andreas Schwab <schwab@suse.de>
4224
4225 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
4226 size if PSEUDOVECTOR_FLAG is set.
4227
9da88f37
KH
42282004-01-07 Kenichi Handa <handa@m17n.org>
4229
74ac5074
KH
4230 * charset.c (Fdeclare_equiv_charset): Fix docstring.
4231
9da88f37
KH
4232 * fontset.c (fontset_ref_via_base): Fix previous change.
4233
05faee07
KS
42342004-01-07 Kim F. Storm <storm@cua.dk>
4235
4236 * process.c (read_process_output): Only activate adaptive
4237 buffering if we read less than 256 bytes at a time.
4238
634910c8
KS
42392004-01-06 Kim F. Storm <storm@cua.dk>
4240
4241 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
4242 object and image object. Return glyph width and height.
4243 (mode_line_string, marginal_area_string): Ditto.
4244
4245 * dispextern.h (buffer_posn_from_coords, mode_line_string)
4246 (marginal_area_string): Fix prototypes.
4247
4248 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
f63fd14e 4249 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
634910c8
KS
4250 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
4251
4252 * keyboard.c (make_lispy_position): Use modified mode_line_string,
4253 buffer_posn_from_coords, and marginal_area_string functions to
4254 include both string object and image object in the lispy position.
4255 Also add actual glyph width and height to position.
4256 (read_key_sequence): Use real buffer position from mouse
4257 event to find keymap property even when click is in marginal area.
4258
4259 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
4260 mode_line_string and marginal_area_string functions to handle
4261 both string object and image object properties.
d7107586 4262
57951c2e
AS
42632004-01-06 Andreas Schwab <schwab@suse.de>
4264
4265 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
4266 character.
4267
181e6a61
AS
42682004-01-02 Andreas Schwab <schwab@suse.de>
4269
d7107586
SM
4270 * macterm.c (emacs_options, x_initialized, same_x_server):
4271 Remove unused (and duplicated) definitions.
181e6a61 4272
31e0fbdd
KS
42732004-01-02 Kim F. Storm <storm@cua.dk>
4274
4275 * process.h (struct Lisp_Process): New members for adaptive read
4276 buffering: adaptive_read_buffering, read_output_delay, and
4277 read_output_skip.
4278
4279 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
4280 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
4281 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
4282 (process_output_delay_count, process_output_skip): New vars.
4283 (Vprocess_adaptive_read_buffering): New variable.
4284 (make_process): Initialize adaptive read buffering members.
4285 (Fstart_process): Set adaptive_read_buffering member.
4286 (deactivate_process): Cleanup adaptive read buffering.
4287 (wait_reading_process_input): Temporarily omit delayed
4288 subprocesses from the set of file descriptors to read from;
4289 adjust the select timeout if we skipped any subprocesses.
4290 (read_process_output): Increase adaptive read buffering delay if
4291 we read less than a full buffer; reduce delay when we read a
4292 full buffer.
4293 (send_process): Simplify using local Lisp_Process var.
4294 Reset adaptive read buffering delay after write.
4295 (init_process): Initialize process_output_delay_count and
4296 process_output_skip.
4297 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
4298
68c6a789
JR
42992004-01-01 Jason Rumney <jasonr@gnu.org>
4300
d7107586 4301 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
68c6a789 4302
3f70fe82
LT
43032003-12-30 Luc Teirlinck <teirllm@auburn.edu>
4304
4305 * print.c (Ferror_message_string): Add hyperlink in the docstring
4306 to the definition of `signal' in the Elisp manual.
4307 * eval.c (Fsignal): Ditto.
4308
b6189c3b 43092003-12-29 James Clark <jjc@jclark.com>
c2be49ed
EZ
4310
4311 * fns.c (internal_equal): Return t for two NaN arguments.
4312
7abd90ea
RS
43132003-12-29 Richard M. Stallman <rms@gnu.org>
4314
4315 * data.c (store_symval_forwarding): Handle setting
4316 default-fill-column, etc., by changing the value in
4317 buffers that use the default.
4318
4319 * minibuf.c (Fset_minibuffer_window): Doc fix.
4320
4321 * fileio.c (choose_write_coding_system): Ignore auto_saving
4322 if using the visited file for auto saves.
4323 (Fwrite_region): Don't update SAVE_MODIFF
4324 if auto-saving in visited file.
4325
3e7cfcdc
KH
43262003-12-29 Kenichi Handa <handa@m17n.org>
4327
4328 * dispextern.h (face_font_available_p): Extern it.
4329
4330 * fontset.c (Voverriding_fontspec_alist): New variable.
4331 (lookup_overriding_fontspec): New function.
d7107586 4332 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
3e7cfcdc
KH
4333 (fontset_font_pattern): Likewise.
4334 (regulalize_fontname): New function.
4335 (Fset_fontset_font): Call regulalize_fontname.
4336 (Fset_overriding_fontspec_internal): New function.
d7107586
SM
4337 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
4338 Defsubr Sset_overriding_fontspec_internal.
3e7cfcdc
KH
4339
4340 * xfaces.c (face_font_available_p): New function.
4341
7abd90ea
RS
43422003-12-28 Richard M. Stallman <rms@gnu.org>
4343
4344 * buffer.c (Fother_buffer): Don't crash if BUF is nil
4345 or if its name is nil.
4346
4347 * buffer.c (Fkill_buffer): Don't delete auto-save file
4348 if it's the same as the visited file.
4349
de1d1a40
LT
43502003-12-28 Luc Teirlinck <teirllm@auburn.edu>
4351
4352 * coding.c (Fcheck_coding_system): Doc fix.
4353
204fb75e
KS
43542003-12-28 Kim F. Storm <storm@cua.dk>
4355
4356 * Makefile.in (eval.o): Depend on dispextern.h.
4357
4358 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
4359 image glyph using image's ascent.
4360 (mode_line_string): Return image glyph as object clicked on.
4361 Adjust y0 for image glyph using image's ascent.
4362
4363 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
4364 (struct glyph): New members, ascent and descent. Used to save
4365 this glyph's ascent and descent, instead of having.
4366 (struct glyph): Declare member face_id using FACE_ID_BITS.
4367 (find_hot_spot): Add prototype.
4368
4369 * keyboard.c (Qimage): Remove extern (now in lisp.h).
4370 (QCmap): Declare extern.
4371 (make_lispy_position): When position is inside image hot-spot,
4372 use hot-spot element's id as posn element.
4373
4374 * lisp.h (IMAGEP): New macro to test for image object type.
4375 (Qimage): Declare extern.
4376
4377 * macfns.c (Qimage): Remove extern (now in lisp.h).
4378 (valid_image_p, parse_image_spec): Use IMAGEP macro.
4379
4380 * macterm.c (Qface, Qmouse_face): Remove unused externs.
4381
4382 * w32fns.c (Qimage): Remove extern (now in lisp.h).
4383 (valid_image_p, parse_image_spec): Use IMAGEP macro.
4384
4385 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
4386
4387 * w32term.c (Qface, Qmouse_face): Remove unused externs.
4388
4389 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
4390 pointer types.
4391 (Qrelative_width, Qalign_to): Remove unused variables.
4392 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
4393 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
4394 image maps.
d7107586 4395 (x_y_to_hpos_vpos): Return glyph relative coordinates through
204fb75e
KS
4396 new dx and dy args.
4397 Remove buffer_only_p arg (always 0). Simplify code accordingly.
4398 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
4399 than row's ascent and height, to get sensible height on tall rows.
4400 (build_desired_tool_bar_string): Remove Qimage extern.
4401 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
4402 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
4403 image glyph is alone on the last line.
4404 (append_glyph, append_composite_glyph, produce_image_glyph)
d7107586 4405 (append_stretch_glyph): Set glyph's ascent and descent.
204fb75e 4406 (on_hot_spot_p): New function to check if position is inside an
d7107586 4407 rectangular, circular, or polygon-shaped image hot-spot,
204fb75e
KS
4408 (find_hot_spot): New function to search for image hot-spot.
4409 (Flookup_image_map): New defun to search for image hot-spot.
4410 (define_frame_cursor1): New aux function to determine frame pointer.
4411 (note_mode_line_or_margin_highlight, note_mouse_highlight):
4412 Handle `pointer' text property and :pointer image property to
4413 control frame pointer shape. Detect image hot-spots for pointer
4414 and help_echo properties. Use define_frame_cursor1.
4415 (note_mouse_highlight): Use Vvoid_text_area_pointer.
f63fd14e 4416 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
204fb75e
KS
4417 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
4418
4419 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
4420
4421 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
4422 (Qimage): Remove extern (now in lisp.h).
4423 (valid_image_p, parse_image_spec): Use IMAGEP macro.
4424
4425 * xmenu.c (show_help_event): Remove unused code.
4426
4427 * xterm.c (Qface, Qmouse_face): Remove unused externs.
4428 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
4429 row's ascent and descent, to get a sensible height on tall rows.
4430
fc052137
LT
44312003-12-25 Luc Teirlinck <teirllm@auburn.edu>
4432
4433 * minibuf.c (Fcompleting_read): Undo previous change.
4434
a64387ee 44352003-12-25 Lars Hansen <larsh@math.ku.dk>
b9148500
LH
4436
4437 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
4438 Arguments GCPRO'ed in call to file name handler.
4439
56ffd194
TTN
44402003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
4441
4442 * termcap.c (tgetst1): Scan for "%pN"; if all
4443 N are continuous in [1,9], remove all "%pN".
4444
5202d23d
JD
44452003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4446
f26fab36
JD
4447 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
4448
5202d23d
JD
4449 * xfaces.c (lface_fully_specified_p): Take into account that
4450 MAC OS always have unspecified stipple.
4451
8babaa59
TTN
44522003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
4453
4454 * tparam.c (tparam1): Add handling for `%pN', which
4455 means use param N for the next substitution.
4456
2d176448
TTN
44572003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
4458
4459 * xfaces.c (Fcolor_gray_p): Fix omission bug:
4460 In case `frame' is nil, consult the selected frame.
4461 (Fcolor_supported_p): Likewise.
4462
adb0708c
LT
44632003-12-23 Luc Teirlinck <teirllm@auburn.edu>
4464
000eeb15
LT
4465 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
4466 Doc fixes.
0dc72b11
LT
4467
4468 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
4469 and an integer. Adapt the introductory comment accordingly.
adb0708c
LT
4470 (Fread_from_minibuffer): Delete code moved into read_minibuf.
4471 Doc fix.
4472 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
4473 read_minibuf.
4474 (Fcompleting_read): Delete code moved into read_minibuf.
d7107586 4475 (Ftest_completion): Make it handle obarrays and hash tables correctly.
adb0708c 4476
2e4d132b
KH
44772003-12-03 Kenichi Handa <handa@m17n.org>
4478
4479 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
4480 encoding sequence.
4481
3999c705
KH
44822003-12-01 Kenichi Handa <handa@m17n.org>
4483
4484 * composite.c (syms_of_composite): Don't make the compostion hash
4485 table week.
4486
d344ecbb
LT
44872003-11-30 Luc Teirlinck <teirllm@auburn.edu>
4488
4489 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
4490 * textprop.c (Fget_char_property_and_overlay): New function.
4491 (syms_of_textprop): Defsubr it.
4492
03d6484e
JD
44932003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4494
019b1f0e
JD
4495 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
4496 to compile on terminal configuration.
4497
03d6484e
JD
4498 * fileio.c (Fread_file_name): Check use_file_dialog also before
4499 calling Fx_file_dialog.
4500
4501 * fns.c: use_file_dialog: New variable.
4502 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
4503
442d3fd0
KS
45042003-11-29 Kim F. Storm <storm@cua.dk>
4505
4506 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
4507 (syms_of_msdos): Don't intern and staticpro them.
4508
0f6a07a8
KS
45092003-11-27 Kim F. Storm <storm@cua.dk>
4510
4511 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
4512 coordinates relative to glyph at posn. If glyph is an image,
4513 return that as object at posn. Callers changed.
4514 (mode_line_string, marginal_area_string): Calculate and return
4515 pixel coordinates relative to glyph. Callers changed.
4516
4517 * dispextern.h (buffer_posn_from_coords, mode_line_string)
4518 (marginal_area_string): Fix prototypes.
4519 (window_box_left_offset, window_box_right_offset): Add prototypes.
4520
4521 * frame.h (get_specified_cursor_type, get_window_cursor_type):
4522 Remove prototypes.
4523
4524 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
4525
4526 * keyboard.c (make_lispy_position): Add x and y coordinates
4527 relative to the current glyph as 7th element of position.
4528 If glyph is an image, return it in the object element.
4529 (read_key_sequence): Skip checks for keymap property in cases
4530 where POSN_STRING is not a string (e.g. an image).
4531
4532 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
4533 (Vshow_text_cursor_in_void): New variable.
4534 (glyph_to_pixel_coords): Don't use negative hpos.
4535 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
4536 (append_stretch_glyph): Change ascent arg to be actual value
f63fd14e 4537 in pixels rather than ratio to height. Callers changed.
0f6a07a8
KS
4538 (calc_pixel_width_or_height): New aux function, implementing
4539 pixel based artihmetic for glyph widths and heights.
4540 (produce_stretch_glyph): Use calc_pixel_width_or_height for
4541 :width, :height, :align-to, and :ascent, thus allowing these to
4542 be specified in pixels as well as multiples of characters.
4543 Don't produce stretch glyphs with zero width or height.
4544 (get_specified_cursor_type): Declare static.
4545 (get_window_cursor_type): Declare static. Add glyph arg to be
4546 able to know when cursor is on an image; always substitute
4547 hollow-box cursor for filled-box cursor on images, to avoid
4548 negative images and flicker when blinking the cursor.
4549 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
4550 (note_mode_line_or_margin_highlight): Use non-text cursor rather
4551 than vertical scroll-bar cursor in display margins.
4552 (note_mouse_highlight): Use non-text cursor rather than text
4553 cursor in fringes and over images in the text area.
4554 Use non-text cursor when mouse pointer is outside editable text,
4555 i.e. in the void after end-of-line or end-of-buffer; this was
4556 already done for W32, but is now standard for all systems --
4557 user can toggle show-text-cursor-in-void to get old behaviour.
4558 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
4559 Vdisplay_pixels_per_inch.
4560
00498bfc
AS
45612003-11-25 Andreas Schwab <schwab@suse.de>
4562
4563 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
4564 EMACS_INT to not lose bits.
4565 (Ffillarray): Don't set bits beyond the size of a bool vector.
4566
edaa824d
KS
45672003-11-25 Kim F. Storm <storm@cua.dk>
4568
4569 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
4570 define this defun on systems that cannot use stderr as lvalue.
4571
74d6f539
GM
45722003-11-24 Gerd Moellmann <gerd@gnu.org>
4573
4574 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
4575 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
4576 ld's default is incompatible with unexec.
4577
6a1ff3ba
KS
45782003-11-23 Kim F. Storm <storm@cua.dk>
4579
63dc7c6b
KS
4580 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
4581 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
4582 (Fforce_window_update): New defun.
4583 (syms_of_window): Defsubr it.
4584 (Fset_window_margins, Fset_window_fringes): Doc fix.
4585
6a1ff3ba
KS
4586 * print.c (Fredirect_debugging_output): New defun.
4587 (syms_of_print): Defsubr it.
4588
aef109b7
LT
45892003-11-22 Luc Teirlinck <teirllm@auburn.edu>
4590
4591 * fns.c (Fset_char_table_parent): Doc fix.
4592
6a1ff3ba 45932003-11-22 Kim F. Storm <storm@cua.dk>
63ccbe21
KS
4594
4595 * dispnew.c (buffer_posn_from_coords): Return actual row/column
4596 for glyph clicked on, rather than (unused) pixel positions.
4597 (mode_line_string, marginal_area_string): Change X and Y args to
4598 pointers for returning actual row/column for glyph clicked on.
4599 Simplify and optimize loops.
4600
aef109b7
LT
4601 * dispextern.h (mode_line_string, marginal_area_string):
4602 Update prototypes.
63ccbe21
KS
4603
4604 * keyboard.c (make_lispy_position): New function for generating
4605 mouse click positions from frame and pixel coordinates.
4606 Enhanced to return buffer position and actual row/column for
4607 events outside the text area using updated mode_line_string and
4608 marginal_area_string functions.
4609 Return left-fringe and right-fringe clicks as such, rather than
4610 clicks in text area.
4611 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
4612 pixel_to_glyph_coords, as we never use the results.
4613 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
4614 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
4615 Eliminate unused code in WHEEL_EVENT handling.
4616 (make_lispy_movement): Use make_lispy_position.
4617
4618 * window.c (coordinates_in_window): Remove redundant tests.
4619 Fix returned X pixel value for left-margin.
4620
4621 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
4622 mode_line_string and marginal_area_string parameters.
4623
a64387ee 46242003-11-22 Lars Hansen <larsh@math.ku.dk>
930a9995 4625
d7107586
SM
4626 * w32.c (struct the_group, getgrgid): Add.
4627 * mac.c (struct my_group, getgrgid): Add.
aef109b7 4628
3dbf3426
LT
46292003-11-21 Luc Teirlinck <teirllm@auburn.edu>
4630
4631 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
4632
cae8ddbb 46332003-11-21 Lars Hansen <larsh@math.ku.dk>
ded4064f 4634
d7107586
SM
4635 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
4636 include in call to file name handler. Optionally translate numeric
4637 UID and GID to strings. Update docstring.
4638 (directory_files_internal): Add parameter ID-FORMAT.
4639 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
4640 include in call to file name handler and call to
4641 directory_files_internal. Update Docstring.
4642 (Fdirectory_files): Add dummy parameter in call to
4643 directory_files_internal.
4644 * lisp.h (Qinteger): Add.
4645 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
4646 (Ffile_attributes): Add parameter.
4647 * data.c (Qinteger): Export.
cae8ddbb 4648
2550b848
LT
46492003-11-21 Luc Teirlinck <teirllm@auburn.edu>
4650
3dbf3426 4651 * fns.c (Freverse, Fnreverse): Doc fixes.
2550b848 4652
88380018
KS
46532003-11-19 Kim F. Storm <storm@cua.dk>
4654
4655 * xdisp.c (init_iterator): Initialize it->start to position
4656 before reseating (in case start position is invisible).
4657 (init_to_row_start): Set it->start to row-start.
4658 (redisplay_window): Accept optional_new_start if start position
4659 is invisible (in which case IT_CHARPOS overshoots PT).
4660 (display_line): Setup row->start from it->start (rather than
4661 it->current which is wrong if first char on line is invisible).
4662 When done, reseat it->start to it->current (= start of next row).
4663 (expose_area): Fix exposure of text area when first char (e.g. TAB)
4664 is only partially visible.
4665
4666 * dispextern.h (struct it): New member start.
4667
854c1a59
SM
46682003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
4669
455316e2
SM
4670 * alloc.c (make_float, Fcons): Clear the markbit at init time.
4671 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
4672 of block_index outside of the macro call.
4673 (Fgarbage_collect): Remove null code.
4674
4675 * m/amdx86-64.h: Don't redefine XPNTR.
4676
854c1a59
SM
4677 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
4678 of VALMASK.
4679
4680 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
4681 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
4682 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
4683
4684 * lisp.h (VALMASK): Only define for non-union type.
4685 (MARKBIT): Remove.
4686 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
4687 (XTYPE): Define unconditionally.
4688 (XSETTYPE): Remove one more remnant.
4689 (EQ): Define differently for the union and non-union cases.
4690 (INTMASK): New bit mask.
4691 (struct Lisp_Marker): Move down to prepare for upcoming patch.
4692 (GC_EQ): Delegate to EQ.
4693
4694 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
4695
a0c6ef2d
JD
46962003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4697
4698 * xterm.c (x_window_to_scroll_bar): Move check of display to
4699 where window_id is compared.
4700
859492c4
KS
47012003-11-17 Kim F. Storm <storm@cua.dk>
4702
4703 * dispextern.h (struct it): New member first_vpos.
4704
4705 * xdisp.c (start_display): Set it->first_vpos.
4706 (try_window_id): Use first_vpos to start display in first _text_
4707 line if no reusable lines at start of window with header line.
4708
810f2256
JD
47092003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4710
7c402969 4711 * w32fns.c (XPutPixel):
854c1a59
SM
4712 * w32bdf.c (w32_init_bdf_font):
4713 * sunfns.c (sel_read):
4714 * process.c (Fmake_network_process):
4715 * frame.c (store_frame_param):
4716 * fontset.c (Fset_fontset_font):
4717 * emacs.c (shut_down_emacs):
a64387ee 4718 * ccl.c (ccl_driver): Remove period at end of error message.
7c402969 4719
a32e9bfd
JD
4720 * config.in: Regenerate.
4721
810f2256
JD
4722 * xfns.c (x_window_to_frame, x_any_window_to_frame)
4723 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
4724 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
4725 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
4726 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
4727
4728 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
4729
4730 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
4731 (XTmouse_position, handle_one_xevent): Pass Display* to
4732 x_window_to_scroll_bar.
4733 (x_window_to_scroll_bar): Take a Display* argument.
4734 Check that display for frame is equal to Display* argument.
854c1a59 4735 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
810f2256
JD
4736 x_display_info_for_display instead. Use Display in xev instead
4737 of GDK_DISPLAY.
4738 (x_dispatch_event): Call x_display_info_for_display.
f63fd14e 4739 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
810f2256
JD
4740 (x_connection_closed): Call xg_display_close for GTK.
4741 (x_term_init): Call xg_display_open for additional displays.
4742 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
4743 for GTK.
4744
4745 * xmenu.c (single_menu_item, mouse_position_for_popup)
4746 (x_activate_menubar): Formatting adjustments.
4747
4748 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
4749 adjustments.
4750
4751 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
4752 (xg_display_close, xg_create_default_cursor)
4753 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
4754 handling.
854c1a59
SM
4755 (xg_left_ptr_cursor): Remove.
4756 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
810f2256
JD
4757 cursor here.
4758 (xg_win_to_widget): Take Display* argument, call
4759 gdk_xid_table_lookup_for_display.
4760 (xg_create_frame_widgets, xg_get_file_name, create_menus)
4761 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
4762 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
4763 in FRAME_X_DISPLAY_INFO.
4764 (xg_get_scroll_id_for_window): Take Display* argument.
4765 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
854c1a59 4766 (xg_initialize): Remove xg_left_ptr_cursor.
810f2256
JD
4767
4768 * gtkutil.h: xg_get_scroll_id_for_window, xg_win_to_widget takes
4769 Display* argument also. Declare xg_display_open,
4770 xg_display_close, xg_create_default_cursor.
4771
0b03cc78
JD
47722003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4773
4774 * xterm.c (x_detect_focus_change): Do not change focus frame for
4775 Enter/LeaveNotify if the current focus frame has explicit focus.
4776
77e688fa
KS
47772003-11-14 Kim F. Storm <storm@cua.dk>
4778
4779 * dispnew.c (update_text_area): Fix redisplay error when hscroll
4780 is active and first glyph is only partially visible.
854c1a59 4781
dd429b03
KH
47822003-11-13 Kenichi Handa <handa@m17n.org>
4783
4784 * xdisp.c (select_frame_for_redisplay): New function.
4785 (redisplay_internal): Record also selected_frame for
4786 unwind_redisplay. Call select_frame_for_redisplay before
4787 redrawing each frame.
4788 (unwind_redisplay): Argument changed to a cons.
4789
6d9266f4
LT
47902003-11-12 Luc Teirlinck <teirllm@auburn.edu>
4791
4792 * fns.c (Fstring_to_multibyte): Doc fix.
4793
80060eb3
KH
47942003-11-11 Kenichi Handa <handa@m17n.org>
4795
4796 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
4797
74305183
JD
47982003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4799
4800 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
4801 program specified positions.
4802
cfda993e
JD
48032003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4804
4805 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
4806
df211069
KH
48072003-11-08 Kenichi Handa <handa@m17n.org>
4808
4809 * Makefile.in (lisp): Add kannada.el.
4810 (shortlisp): Likewise.
4811
4307d534
KH
48122003-11-07 Kenichi Handa <handa@m17n.org>
4813
854c1a59
SM
4814 * coding.c (coding_allocate_composition_data):
4815 Reset coding->composing to COMPOSITION_NO.
4307d534
KH
4816 (coding_restore_composition): Detect invalid composition data.
4817 Give Fstring and Fvector a Lispy integer, not C int.
4818
854c1a59
SM
48192003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
4820
4821 * floatfns.c (Flogb): Don't use VALMASK.
4822
4823 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
4824 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
4825
4826 * lisp.h (XINT): Move the cast to clarify what is going on.
4827 (GCTYPEMASK, XSETTYPE): Remove.
4828 (XGCTYPE): Make it an alias of XTYPE.
4829
d04103a1
JD
48302003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4831
4832 * xterm.c (x_term_init): Fix formatting.
4833
da18b5ac
JD
48342003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4835
4836 * gtkutil.h: Declare xg_have_tear_offs, remove xg_keep_popup
4837 and xg_did_tearoff.
4838
4839 * gtkutil.c: Remove variable xg_did_tearoff.
4840 (xg_have_tear_offs): New function.
4841 (tearoff_remove): Just decrease xg_detached_menus.
4842 (tearoff_activate): Increase xg_detached_menus and call
4843 tearoff_remove when tearoff is removed.
854c1a59 4844 (xg_keep_popup): Remove function.
da18b5ac
JD
4845 (create_menus): Give add_tearoff_p as argument to recursive
4846 call to create_menus.
4847 (xg_create_widget): Use variables instead of multiple
4848 strcmp. Tell create_menus to create tear off only for
4849 menu bar menus.
4850 (xg_update_menubar): Change title for a detached menu also.
4851 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
4852 of deep_p.
4853 (xg_initialize): Initialize xg_detached_menus, remove
4854 initialization of xg_did_tearoff.
4855
4856 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
4857 xg_have_tear_offs returns non-zero.
4858 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
4859 call to xg_keep_popup.
4860
64d4923e
AC
48612003-11-01 Andrew Choi <akochoi@shaw.ca>
4862
4863 * macterm.c (XTread_socket): Handle menubar selection and grow
4864 window only for mouseDown events.
854c1a59 4865
6cc8bc07
JD
48662003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4867
4868 * xterm.c (x_term_init): For GTK part, increase x_initialized
4869 to check for more than one display. Use error instead of return 0.
4870
043131c4
AC
48712003-10-31 Andrew Choi <akochoi@shaw.ca>
4872
854c1a59 4873 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
043131c4
AC
4874 (copy_dysymtab): Call it.
4875
bdda99a1
LT
48762003-10-31 Luc Teirlinck <teirllm@auburn.edu>
4877
4878 * eval.c (Fdefvaralias): Doc fix.
4879
800f42ff 48802003-10-26 Luc Teirlinck <teirllm@auburn.edu>
0d11571e
LT
4881
4882 * data.c (Fsetplist): Doc fix.
4883
ef35b389
LK
48842003-10-14 Lute Kamstra <lute@gnu.org>
4885
4886 * window.c (Fset_window_fringes): Clarify docstring.
07107abc 4887
ef35b389 48882003-10-14 Kim F. Storm <storm@cua.dk>
854c1a59 4889
07107abc
KS
4890 * window.c (Fset_window_margins): Simplify arg checking.
4891
f7005886
RS
48922003-10-13 Richard M. Stallman <rms@gnu.org>
4893
4894 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
4895 (print_partial_compiled_pattern): Replace assert with a printout.
4896 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
4897
4898 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
4899
4900 * window.c (Fset_window_margins): Allow only integers as args.
4901 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
4902 Doc fixes.
4903
9c0c2af5
LK
49042003-10-13 Lute Kamstra <lute@gnu.org>
4905
4906 * window.c (Fset_window_fringes): Elaborate docstring.
4907
3f080e4e
AC
49082003-10-12 Andrew Choi <akochoi@shaw.ca>
4909
854c1a59 4910 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
a4887377 4911
3f080e4e
AC
4912 * s/darwin.h (GC_MARK_STACK): Define.
4913
0aa513ed
JD
49142003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4915
4916 * window.c (shrink_windows): New function.
4917 (size_window): Call shrink_windows to calculate window sizes when
4918 shrinking frame with more than one window.
4919
6aa8858a
KS
49202003-10-12 Kim F. Storm <storm@cua.dk>
4921
4922 * xdisp.c (compute_fringe_widths): Doc fix.
4923
c2164d91
KH
49242003-10-08 Kenichi Handa <handa@m17n.org>
4925
854c1a59 4926 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
c2164d91 4927
f82ac129
KH
49282003-10-07 Kenichi Handa <handa@m17n.org>
4929
4930 * coding.c (Qcoding_system_define_form): New variable.
4931 (syms_of_coding): Intern and staticpro it.
4932 (Fcheck_coding_system): Try to autoload the definition of
4933 CODING-SYSTEM.
4934
9296c947
LT
49352003-10-05 Luc Teirlinck <teirllm@auburn.edu>
4936
4937 * fns.c (Frequire): Doc fix.
4938
c1f0671a
JD
49392003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4940
3d8c3826
JD
4941 * xfns.c (Fx_send_client_event): New function as a base for
4942 manipulating extended window manager hints.
6dc15d98 4943 (Fx_send_client_event): Remove unused variable s.
3d8c3826 4944
068ae0fd
JD
4945 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
4946 that function is removed.
4947
4948 * xterm.c (x_set_offset): Use move_offset_left/top instead of
4949 x/y_pixels_outer_diff.
4950 (x_check_expected_move): Calculate move_offset_left/top.
4951
4952 * xterm.h (struct x_output): New members: move_offset_top/left.
4953
854c1a59 4954 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
068ae0fd
JD
4955 call x_set_offset directly.
4956
4957 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
4958
96f09305
JD
4959 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
4960
4961 * xterm.c (x_delete_display): Free font names and font_encoder
4962 in dpyinfo->font_table.
4963
854c1a59
SM
4964 * xfns.c (Fx_close_connection): Only call XFreeFont here.
4965 Move xfree of font names to x_delete_display.
96f09305 4966
c1f0671a
JD
4967 * xterm.h (struct x_display_info): New member, wm_type.
4968 (struct x_output): New members, expected_top/left and
4969 check_expected_move.
4970
4971 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
4972 is received.
854c1a59
SM
4973 (handle_one_xevent): Rename x_check_expected_move from
4974 x_check_fullscreen_move.
c1f0671a
JD
4975 (x_set_offset): Only add WM decoration sizes to modified_top/left
4976 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
854c1a59 4977 (x_check_expected_move): Rename from x_check_fullscreen_move.
c1f0671a
JD
4978 Removed fullscreen specific code. Use check_expected_move,
4979 expected_left/top instead. Also, set wm_type.
4980 (x_term_init): Initialize wm_type to unknown.
4981
4982 * frame.c (x_fullscreen_move): Remove addition of WM decoration
4983 sizes to move_x/y.
4984
be2fdba9
KH
49852003-10-03 Kenichi Handa <handa@m17n.org>
4986
4987 * macterm.c (x_load_font): Clear all members of FONTP before start
4988 filling them.
4989
49902003-10-02 Kenichi Handa <handa@m17n.org>
4991
4992 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
4993 before calling find_ccl_program_func. Call find_ccl_program_func
4994 only when fontp->font_encoder is not NULL.
4995
4996 * xterm.c (x_load_font): Clear all members of FONTP before start
4997 filling them.
4998
26a6e439
JPW
49992003-10-03 John Paul Wallington <jpw@gnu.org>
5000
5001 * keymap.c (map_keymap): Don't abort when binding is a vector.
5002
0d4c2dc2
JR
50032003-10-02 Jason Rumney <jasonr@gnu.org>
5004
854c1a59
SM
5005 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
5006 Sync dependencies with Makefile.in.
a63cf46f
JR
5007 (alloca.o): Remove.
5008
0d4c2dc2
JR
5009 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
5010 filling them.
5011
5012 * w32bdf.c (w32_load_bdf_font): Likewise.
5013
ab8f7d5c
RS
50142003-09-30 Richard M. Stallman <rms@gnu.org>
5015
5016 * term.c (set_tty_color_mode): Calculate current_mode_spec
5017 regardless of value of VAL.
5018
854c1a59 5019 * intervals.c (graft_intervals_into_buffer):
ab8f7d5c
RS
5020 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
5021 Handle over_used when splitting UNDER.
5022
a64387ee 50232003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
ab8f7d5c
RS
5024
5025 * regex.c (regex_compile): Free the stack when returning from function.
5026
3413f972
KH
50272003-09-28 Kenichi Handa <handa@m17n.org>
5028
5029 * fontset.c (Finternal_char_font): Change return value to
5030 cons (FONT-NAME . GLYPH-CODE).
5031
a6eeaa81 50322003-09-28 Eli Zaretskii <eliz@gnu.org>
40409f05
EZ
5033
5034 * term.c (tty_setup_colors): Treat any negative argument as -1.
5035
f98ddc99
KH
50362003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
5037
5038 * process.c (send_process): Delete unused temp_buf.
5039
66c8f1a8
DL
50402003-09-26 Dave Love <fx@gnu.org>
5041
5042 * xterm.c (x_bitmap_mask): Declare.
5043
ca716c26
DL
50442003-09-25 Dave Love <fx@gnu.org>
5045
5046 * Makefile.in (fns.o): Depend on md5.h.
5047
fbe57420
KS
50482003-09-25 Kim F. Storm <storm@cua.dk>
5049
5050 * window.c (set_window_buffer): Fix redisplay problems when
5051 switching between buffers with different display margin widths.
5052
ef6ae4ff
KS
50532003-09-23 Kim F. Storm <storm@cua.dk>
5054
5055 * process.c (set_socket_option): Fix :bindtodevice option.
5056 (Fset_network_process_option): Update process contact list when
5057 setting option succeeds.
5058 (Fmake_network_process): Doc fix.
5059
68e03c1c
DL
50602003-09-23 Dave Love <fx@gnu.org>
5061
7146d1c1 5062 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
68e03c1c 5063
a6eeaa81 50642003-09-22 Eli Zaretskii <eliz@gnu.org>
2f809aae
EZ
5065
5066 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
5067 color mode is an integer number (it could be -1).
5068
8fe7d8c8
RS
50692003-09-22 Richard M. Stallman <rms@gnu.org>
5070
5071 * intervals.c (graft_intervals_into_buffer): Correct the main loop
5072 in the case where OVER is longer than UNDER.
5073
2f71b5ea
MY
50742003-09-22 Masatake YAMATO <jet@gyve.org>
5075
7146d1c1 5076 * window.c (Fset_window_scroll_bars): Validate the value of
2f71b5ea 5077 `vertical_type'.
7146d1c1 5078
0c4da023
KS
50792003-09-21 Kim F. Storm <storm@cua.dk>
5080
5081 * frame.c (Vdefault_frame_scroll_bars): New variable.
5082 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
5083 (syms_of_frame): DEFVAR_LISP it, and initialize according to
5084 window-system default scroll bar position.
5085
b648413b
KS
5086 * window.c (Fwindow_scroll_bars): Doc fix.
5087
8f5b9e34
JD
50882003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5089
854c1a59 5090 * xterm.c (x_set_offset): Take window manager decorations into account.
8f5b9e34 5091
b0f23edf
RS
50922003-09-19 Richard M. Stallman <rms@gnu.org>
5093
5094 * atimer.h: Don't include lisp.h.
5095 (P_): Define it here (as well as elsewhere).
5096
5097 * print.c (Fprin1_to_string): Move the PRINTPREPARE
5098 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
5099
5100 * data.c (Fvariable_binding_locus): New function.
5101 (syms_of_data): defsubr it.
5102 (Flocal_variable_p): Delete duplicate call to indirect_variable.
5103
e1283999
DL
51042003-09-18 Dave Love <fx@gnu.org>
5105
ad5f3636
DL
5106 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
5107
e1283999
DL
5108 * process.c (Fnetwork_interface_info): Fix type error.
5109 (Fnetwork_interface_list): Doc fix.
5110 (read_process_output, read_process_output): Delete unused var.
5111
b8c7fd71
KS
51122003-09-17 Kim F. Storm <storm@cua.dk>
5113
5114 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
5115 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
5116 (Fnetwork_interface_info): Check that ifreq struct has required
5117 fields before accessing them; this requires that those fields are
5118 defined as macros, which may be too restrictive on some platforms,
5119 but it is better than failing on other platforms.
5120 (syms_of_process): Only defsubr above fns when included.
5121
11e0a411
DL
51222003-09-17 Dave Love <fx@gnu.org>
5123
5124 * unexalpha.c: Don't include varargs.h.
5125
e9c50801
KS
51262003-09-17 Kim F. Storm <storm@cua.dk>
5127
5128 * process.c (Fset_process_sentinel): Add sentinel to childp plist
5129 for network process.
5130 (socket_options): Add `:' prefix to option names. Add optbit field.
5131 (set_socket_option): Remove no_error arg and special handling of s < 0.
5132 Return 1<<optbit for known option, 0 for unknown.
5133 Do not interpret 0 as false for boolean option (only nil).
5134 Pass failed option and value to report_file_error.
7146d1c1 5135 (Fset_network_process_options): Replace by Fset_network_process_option.
e9c50801
KS
5136 (Fset_network_process_option): New function to set just one option.
5137 (Fmake_network_process): Allow :coding arg to be a cons.
5138 Allow :server arg to be an integer specifying backlog size.
5139 Remove :options arg, and allow options to be specified directly
5140 as :KEY, VALUE pairs. Parse these options before binding socket.
5141 As before, :reuseaddr t is default for a server process, but this
5142 can now be disabled by specifying :reuseaddr nil.
5143 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
5144 (init_process): Availability of network options is now checked with
5145 simpler syntax (featurep 'make-network-process :OPTION); use loop to
5146 setup features.
5147 (syms_of_process): Fix defsubr's for the replaced functions.
5148
a0fc3644
DL
51492003-09-16 Dave Love <fx@gnu.org>
5150
5151 * Makefile.in: Depend on coding.h.
5152
6df2a645
KS
51532003-09-14 Kim F. Storm <storm@cua.dk>
5154
5155 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
5156 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
5157 (syms_of_process): Defsubr them.
5158
5159 * config.in: Regenerate.
7146d1c1
SM
5160
51612003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
5162
5163 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
5164 * m/news-r6.h (XUNMARK): Remove.
5165 * m/mips.h (XUNMARK): Remove.
5166 * m/mips-siemens.h (XUNMARK): Remove.
5167 * m/iris4d.h (XUNMARK): Remove.
5168 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
5169
0930c1a1
SM
51702003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
5171
31003b9e
SM
5172 * lisp.h (VALBITS): Don't remove 1 for the markbit.
5173 (union Lisp_Object): Use unsigned int for types. Remove markbit.
5174 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
5175 (XTYPE): Use unsigned right-shift.
5176 (XMARKBIT, XMARK, XUNMARK): Remove.
5177
0930c1a1
SM
5178 * alloc.c (init_intervals, init_symbol, init_marker):
5179 Don't preallocate anything.
5180 (Fgarbage_collect, mark_object): Ignore the markbit.
5181
5182 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
5183
19bb0fcd 51842003-09-08 Lute Kamstra <lute@gnu.org>
5df034de
LK
5185
5186 * xdisp.c (pint2hrstr): New function.
5187 (decode_mode_spec): Add `%i' and `%I' specs.
5188 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
5189 for `mode-line-format'.
5190
03bb6a06
AS
51912003-09-07 Andreas Schwab <schwab@suse.de>
5192
5193 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
5194 avoid warning.
5195
a6eeaa81 51962003-09-07 Eli Zaretskii <eliz@gnu.org>
2063d89c 5197
0930c1a1 5198 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
2063d89c 5199
ed159bbf
KS
52002003-09-03 Kim F. Storm <storm@cua.dk>
5201
5202 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
5203 change (superseded by 2002-08-30 change); the default blink-off
5204 cursor is now again "no cursor".
5205
fe64a394
JR
52062003-09-01 Jason Rumney <jasonr@gnu.org>
5207
5208 * makefile.w32-in (alloca.o): Remove.
5209 (coding.o): Depend on intervals.h
5210 (emacs.o, bytecode.o): Depend on window.h
5211
c0175e24
DL
52122003-09-01 Dave Love <fx@gnu.org>
5213
5214 * Makefile.in (alloca.o): Remove commands.
5215 (coding.o): Depend on intervals.h composite.h window.h.
5216 (emacs.o): Depend on window.h keyboard.h keymap.h.
5217 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
5218 (bytecode.o): Depend on window.h.
5219
a24d4cb2
JR
52202003-08-31 Jason Rumney <jasonr@gnu.org>
5221
4bc2315e
JR
5222 * w32term.c (w32_per_char_metric): Allow cached metrics to be
5223 returned even when font_type is unknown.
5224
a24d4cb2
JR
5225 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
5226
9d35adc7
JD
52272003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5228
5229 * xterm.c (x_term_init): Initialize new fields in x_display_info.
5230
5231 * xterm.h (struct x_display_info): Add red/green/blue_bits and
5232 *_offset.
5233
5234 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
5235 calculate pixel value.
5236
6f68b035
GM
52372003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
5238
0930c1a1
SM
5239 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
5240 Don't tell redisplay display is accurate when it's actually been
5241 paused for pending input.
6f68b035 5242
4828b4d7
RS
52432003-08-29 Richard M. Stallman <rms@gnu.org>
5244
5245 * dispnew.c (adjust_glyph_matrix): Call window_box
5246 whenever W is nonzero.
5247
5248 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
5249 (Fkill_local_variable, Fmake_variable_frame_local)
0930c1a1 5250 (Flocal_variable_p, Flocal_variable_if_set_p):
4828b4d7
RS
5251 Use indirect_variable to trace thru variable aliases.
5252
5253 * config.in: Updated.
5254
5255 * callint.c (Fcall_interactively): Save and restore
5256 Vthis_command, Vthis_original_command, real_this_command,
5257 and current_kboard->Vlast_command.
5258
5259 * abbrev.c (Fexpand_abbrev): Insert before deleting.
5260
e019878d
GM
52612003-08-29 Gerd Moellmann <gerd@gnu.org>
5262
5263 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
5264
85478bc6
KH
52652003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
5266
0930c1a1 5267 * coding.c (decode_coding_iso2022): Initialize local variable c2.
85478bc6
KH
5268 (decode_coding_sjis_big5): Likewise.
5269
07ce82d3
JR
52702003-08-27 Jason Rumney <jasonr@gnu.org>
5271
d3703de3
JR
5272 * w32.c (sys_pipe): Protect against file descriptor overflow.
5273
ee4a01d1
JR
5274 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
5275
07ce82d3
JR
5276 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
5277
a64387ee 52782003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
72d19c66
LK
5279
5280 * xfns.c (Vgtk_version_string): New variable.
5281 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
5282
a6eeaa81 52832003-08-24 Eli Zaretskii <eliz@gnu.org>
5459e42a 5284
0930c1a1 5285 * term.c (term_init): Remove `const' from buffer_size's declaration.
3d8714e7 5286
5459e42a
EZ
5287 * Makefile.in (msdos.o): Depend on intervals.h.
5288
0930c1a1 5289 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
5459e42a 5290
231d6cfb
JD
52912003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5292
5293 * xterm.h (struct x_display_info): New fields: client_leader_window
5294 and Xatom_wm_client_leader.
5295
5296 * xterm.c (x_initialize): Move call to x_session_initialize to ...
5297 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
5298
5299 * xsmfns.c (create_client_leader_window): New function.
5300 (x_session_initialize): Call create_client_leader_window, take
5301 dpyinfo as argument.
5302
5303 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
5304
5305 * Makefile.in (xsmfns.o): Add more depenedencies.
5306
afa88464
DL
53072003-08-21 Dave Love <fx@gnu.org>
5308
5309 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
5310
f730033e
KH
53112003-08-21 Kenichi Handa <handa@m17n.org>
5312
5313 * term.c (term_init): Fix previous change; don't rely on the
5314 length of `buffer' if TERMINFO is defined.
5315
6dca786c
DL
53162003-08-20 Dave Love <fx@gnu.org>
5317
5318 * atimer.h: Include lisp.h.
5319
5320 * lisp.h (EMACS_LISP_H): New.
5321 (popup_activated_flag): Don't declare.
5322
5323 * alloca.c: Some merging with gnulib. Change logic and doc
5324 concerning (x)malloc/(x)free -- no longer Emacs-specific.
5325 [DO_BLOCK_INPUT]: Don't include lisp.h.
5326 (xmalloc, xfree): Declare.
5327 (malloc): Don't declare.
5328
0930c1a1 5329 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
6dca786c
DL
5330 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
5331 atimer.h, blockinput.h.
5332
5333 * alloc.c (lisp_align_malloc): Change type of `aligned'.
5334
5335 * alloca.s: Removed.
5336
3a06a6d9
RS
53372003-08-19 Gerd Moellmann <gerd@gnu.org>
5338
5339 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
5340 use -lncurses.
5341
5342 * term.c (term_init): Use a buffer of size 4096 for tgetent since
5343 FreeBSD returns something longer than 2044. Abort if the end of
5344 the buffer is overwritten.
5345
27eeee55
MB
53462003-08-19 Miles Bader <miles@gnu.org>
5347
5348 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
5349
2f297815
GM
53502003-08-19 Gerd Moellmann <gerd@gnu.org>
5351
f4446bbf
GM
5352 * alloc.c (lisp_align_malloc): Check for memory full when
5353 allocating ablocks, which also avoids freeing a pointer into an
5354 ablocks structure.
5355
5356 * puresize.h (BASE_PURESIZE): Increase to 1100000.
5357
0930c1a1 5358 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
2f297815 5359
0e7d7aae
RS
53602003-08-16 Richard M. Stallman <rms@gnu.org>
5361
5362 * editfns.c (Fencode_time): Doc fix.
5363
53642003-08-16 David Ponce <david@dponce.com>
5365
5366 * fileio.c (Fwrite_region): Fix conditional expression to issue
5367 the right message.
5368
b6189c3b 53692003-08-16 Juri Linkov <juri@jurta.org>
0e7d7aae
RS
5370
5371 * syntax.c (Fforward_word): Argument changed to optional.
0930c1a1 5372 Set default value to 1.
0e7d7aae 5373
5d551295
KH
53742003-08-15 Kenichi Handa <handa@m17n.org>
5375
5376 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
5377 what autoscaled.
5378 (best_matching_font): Once we find a better scalable font, set
5379 non_scalable_has_exact_height_p to 1.
5380 (try_font_list): Call try_alternative_families to try any family
5381 with the given registry.
5382
1661e56b
AS
53832003-08-09 Andreas Schwab <schwab@suse.de>
5384
f29181dc
AS
5385 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
5386
1661e56b
AS
5387 * print.c (print_string): Fix printing of multibyte string with
5388 nontrivial printcharfun.
5389
465aa50a
JD
53902003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5391
5392 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
5393
5394 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
5395
e430e5ba
KH
53962003-07-31 Kenichi Handa <handa@m17n.org>
5397
5398 * process.c (read_process_output): Return the actually read bytes
5399 instead of the result of decoding.
5400
97e7188e
KH
54012003-07-31 Kenichi Handa <handa@m17n.org>
5402
5403 * xterm.h (struct x_bitmap_record): New member have_mask.
5404
5405 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
5406 to 0.
5407 (x_create_bitmap_from_file): Likewise.
5408 (x_destroy_bitmap): Check have_mask member before freeing a mask.
5409 (x_destroy_all_bitmaps): Likewise.
5410 (x_create_bitmap_mask): Set have_mask member to 1.
5411
b53094d6
RS
54122003-07-30 Richard M. Stallman <rms@gnu.org>
5413
5414 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
5415
631f2082
JD
54162003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5417
5418 * gtkutil.c (xg_mark_data): Update calls to mark_object.
5419
c855f2ca
RS
54202003-07-29 Richard M. Stallman <rms@gnu.org>
5421
5422 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
5423 Conditionalize XIM code on HAVE_XIM.
5424
5425 * fns.c (Fclear_string): New function.
5426 (syms_of_fns): defsubr it.
5427
b6189c3b 54282003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
17e6d491 5429
0930c1a1 5430 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
17e6d491 5431
29ea8ae9
SM
54322003-07-22 Stefan Monnier <monnier@cs.yale.edu>
5433
5434 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
5435
5436 * buffer.c (delete_all_overlays): New function.
5437 * buffer.h (delete_all_overlays): Declare.
5438 * coding.c (run_pre_post_conversion_on_str):
5439 * print.c (temp_output_buffer_setup):
5440 * fileio.c (Finsert_file_contents):
5441 * minibuf.c (get_minibuffer): Use it.
5442
1dd7ccf2
AC
54432003-07-22 Andrew Choi <akochoi@shaw.ca>
5444
5445 * unexmacosx.c (unexec_regions_sort_compare):
5446 (unexec_regions_merge): New functions. Sort and merge unexec
5447 regions before dumping them.
5448
f57bd967
DL
54492003-07-22 Dave Love <fx@gnu.org>
5450
5451 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
5452
7cdee936
SM
54532003-07-21 Stefan Monnier <monnier@cs.yale.edu>
5454
5455 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
5456 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
5457 MARKBIT as the gcmarkbit for strings.
5458
e50886d3
RS
54592003-07-21 Richard M. Stallman <rms@gnu.org>
5460
5461 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
5462
29ea8ae9 5463 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
e50886d3
RS
5464 (syms_of_fns): Corresponding change.
5465
5466 * alloc.c (syms_of_alloc): Doc fixes.
5467
54682003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
5469
5470 * s/netbsd.h: Use -Wl syntax.
5471
fdc39b59
RS
54722003-07-17 Richard M. Stallman <rms@gnu.org>
5473
5474 * xterm.c (xim_initialize): Redo 6/24 change.
5475
9c53385f
SM
54762003-07-15 Stefan Monnier <monnier@cs.yale.edu>
5477
5478 * buffer.c (copy_overlays): Use EMACS_INT for positions.
5479 (Fswitch_to_buffer): Don't signal an error when switching to the same
5480 buffer in a dedicated window.
5481
5482 * alloc.c: Use bitmaps for cons, as was done for floats.
5483 (init_float, init_cons): Let the normal code allocate the first block.
5484 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
5485 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
5486 New macros.
5487 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
5488 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
5489 (live_cons_p): Check the pointer is not past the `conses' array.
5490 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
5491 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
5492 (survives_gc_p): Use CONS_MARKED_P and simplify.
5493 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
5494
dde13196
PE
54952003-07-13 Paul Eggert <eggert@twinsun.com>
5496
5497 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
5498 puts it into BSS instead, at least on Solaris 8 and 9.
5499 This is a valid optimization, and it may occur on other platforms,
5500 so Emacs should not assume that initializing a static variable to
5501 zero puts it into data.
5502 * alloc.c (pure, staticvec):
5503 Initialize these arrays to nonzero, so that they're not
5504 put into BSS by that optimization.
5505
a801bc34
SM
55062003-07-13 Stefan Monnier <monnier@cs.yale.edu>
5507
5508 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
5509 (lisp_align_malloc): Use posix_memalign is available.
5510 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
5511 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
5512 for consistency. Update users.
5513
0c8b2afa
RS
55142003-07-13 Richard M. Stallman <rms@gnu.org>
5515
5516 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
5517
668c2ab0
JB
55182003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
5519
5520 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
5521 and use the Gtk+ function gtk_window_icon_from_file if available.
5522
5523 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
5524 handle mask of bitmaps.
5525 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
5526 mask property.
5527 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
5528
5529 * xterm.h (xg_set_icon): New function.
5530
800bebe3
RS
55312003-07-12 Paul Eggert <eggert@twinsun.com>
5532
5533 * unexelf.c (unexec): Consider a section to precede the .bss
5534 section if its addresses overlap that of .bss.
5535
69e38995
RS
55362003-07-12 Richard M. Stallman <rms@gnu.org>
5537
5538 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
5539
5540 * config.in (HAVE_CRTIN): Add #undef.
5541 (INLINE): Really inline only if OPTIMIZE is defined.
5542
5543 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
5544 END_FILES_1.
5545 (START_FILES_1, END_FILES_1): New macros (conditional).
a801bc34 5546 (LD_SWITCH_SYSTEM_TEMACS): Define.
69e38995
RS
5547
5548 * s/openbsd.h: Don't include bsd4-3.h.
a801bc34
SM
5549 (TERMINFO): Define.
5550 (LIBS_TERMCAP): Define.
5551 (LD_SWITCH_SYSTEM): Define (two definitions).
69e38995
RS
5552
5553 * xfns.c: Include libpng/png.h instead of png.h.
5554
f1d0c238
AS
55552003-07-11 Andreas Schwab <schwab@suse.de>
5556
5557 * buffer.c (modify_overlay): Update prototype.
5558 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
5559 Likewise.
5560
5f6bf5fe
SM
55612003-07-09 Stefan Monnier <monnier@cs.yale.edu>
5562
5563 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
5564 (struct interval): Move to intervals.h.
5565 (struct Lisp_Marker): Use EMACS_INT for position info.
5566 (forward_point): Remove prototype of defunct function.
5567 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
5568 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
5569 (syms_of_textprop, set_text_properties): Remove prototypes that are
5570 already in intervals.h.
5571
5572 * intervals.h (struct interval): Move from lisp.h.
5573 Use EMACS_INT for position and size info.
5574
5575 * coding.c: Include intervals.h for Fset_text_properties.
5576
5577 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
5578 position and length information.
5579
2765b457
SM
55802003-07-09 Stefan Monnier <monnier@cs.yale.edu>
5581
5582 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
5583 position and length information.
5584
2410d73a
SM
55852003-07-09 Stefan Monnier <monnier@cs.yale.edu>
5586
5587 Change overlays_after and overlays_before so the overlays themselves
5588 are linked into lists, rather than using cons cells. After all each
5589 Lisp_Misc already occupies 5 words, so we can add a `next' field to
5590 Lisp_Overlay for free and save up one cons cell per overlay (not
5591 to mention one indirection when traversing the list of overlay).
5592
5593 * lisp.h (struct Lisp_Overlay): New field `next'.
5594
5595 * buffer.h (struct buffer): Change overlays_before and overlays_after
5596 from Lisp lists of overlays to pointers to overlays.
5597
5598 * buffer.c (overlay_strings, recenter_overlay_lists):
5599 Fix typo in eassert in last commit.
5600 (unchain_overlay): New function.
5601 (add_overlay_mod_hooklist): Use AREF.
5602 (copy_overlays, reset_buffer, overlays_at, overlays_in)
5603 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
5604 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
5605 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
5606 (report_overlay_modification, evaporate_overlays, init_buffer_once):
5607 Adjust to new type of overlays_(before|after).
5608
5609 * alloc.c (mark_object): Mark the new `next' field of overlays.
5610 (mark_buffer): Manually mark the overlays_(after|before) fields.
5611
5612 * coding.c (run_pre_post_conversion_on_str):
5613 * editfns.c (overlays_around):
5614 * xdisp.c (load_overlay_strings):
5615 * fileio.c (Finsert_file_contents):
5616 * indent.c (current_column):
5617 * insdel.c (signal_before_change, signal_after_change):
5618 * intervals.c (set_point_both):
5619 * print.c (temp_output_buffer_setup): Use new type for
5620 overlays_(before|after).
5621
04812929
SM
56222003-07-08 Stefan Monnier <monnier@cs.yale.edu>
5623
5624 * buffer.c (report_overlay_modification): Don't run hooks while
5625 traversing the list of overlays.
5626
5627 * buffer.h (struct buffer): Use an int for overlay_center.
5628 (overlays_at, evaporate_overlays, recenter_overlay_lists)
5629 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
5630
5631 * buffer.c (reset_buffer, recenter_overlay_lists)
5632 (adjust_overlays_for_insert, adjust_overlays_for_delete)
5633 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
5634 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
5635 (overlays_at, evaporate_overlays, recenter_overlay_lists)
5636 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
5637
5638 * xdisp.c (fast_find_position): Remove unused var.
5639
5640 * cmds.c (Qexpand_abbrev): New sym.
5641 (syms_of_cmds): Initialize it.
5642 (internal_self_insert): Use it to call expand-abbrev.
5643
2e7ecf15
KS
56442003-07-09 Kim F. Storm <storm@cua.dk>
5645
f9711de4 5646 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if Emacs
2e7ecf15 5647 was configured with --without-xim.
42f81f64 5648 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
2e7ecf15 5649
c6de56a0
RS
56502003-07-07 Richard M. Stallman <rms@gnu.org>
5651
5652 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
5653
5654 * alloc.c (Fgarbage_collect): Doc fix.
5655
b6189c3b 56562003-07-07 Nozomu Ando <nand@mac.com>
b93fb365
KH
5657
5658 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
5659
bfe1a3f7
SM
56602003-07-06 Stefan Monnier <monnier@cs.yale.edu>
5661
04812929
SM
5662 * minibuf.c (read_minibuf): UNGCPRO before returning.
5663 (Ftry_completion, Fall_completions): Doc fix.
5664
bfe1a3f7
SM
5665 * alloc.c (live_float_p): Check that p is not past the `floats' array,
5666 now that `floats' is not the last element of the struct any more.
5667
ee79d1aa
JR
56682003-07-06 Jason Rumney <jasonr@gnu.org>
5669
5670 * w32term.h (ClipboardSequence_Proc): New type.
5671
5672 * w32fns.c (clipboard_sequence_fn): New variable.
5673 (globals_of_w32fns): Initialize it.
5674
5675 * w32select.c (last_clipboard_sequence_number): New variable.
5676 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
5677 number if possible.
5678
49723c04
SM
56792003-07-06 Stefan Monnier <monnier@cs.yale.edu>
5680
4698665f
SM
5681 * m/amdx86-64.h (MARKBIT):
5682 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
5683 MARKBIT and ARRAY_MARK_FLAG any more.
5684
5685 * m/hp800.h (XSETMARKBIT):
5686 * m/sr2k.h (XSETMARKBIT):
5687 * lisp.h (XSETMARKBIT): Remove unused macro.
5688
49723c04
SM
5689 * lisp.h (mark_object): Change prototype.
5690
5691 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
5692 (last_marked): Change accordingly.
5693 (mark_interval, mark_maybe_object, mark_maybe_pointer)
5694 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
5695 (mark_buffer): Update calls to mark_object.
5696
5697 * bytecode.c (mark_byte_stack):
5698 * fns.c (sweep_weak_table):
5699 * keyboard.c (mark_kboards): Update calls to mark_object.
5700
1d660eca
JR
57012003-07-06 Jason Rumney <jasonr@gnu.org>
5702
5703 * alloc.c (struct ablock): Only include padding when there is some.
5704
618b5ae4
SM
57052003-07-04 Stefan Monnier <monnier@cs.yale.edu>
5706
5707 * alloc.c (ALIGN): Add casts to simplify usage.
5708 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
5709 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
5710 (struct ablock, struct ablocks): New types.
5711 (free_ablock): New global var.
5712 (lisp_align_malloc, lisp_align_free): New functions.
5713 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
5714 (struct float_block): Reorder and add gcmarkbits.
5715 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
5716 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
5717 (init_float, make_float): Use lisp_align_malloc.
5718 (free_float, live_float_p): Don't use `type' any more.
5719 (make_float): Use FLOAT_UNMARK to access to mark bit.
5720 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
5721 Use FLOAT_MARKED_P to access the mark bit.
5722 (pure_alloc): Simplify use of ALIGN.
5723 (mark_object): Use FLOAT_MARK to access the mark bit.
5724 (gc_sweep): Use new macros to access the float's mark bit.
5725 (init_alloc_once): Init free_ablock.
5726
5727 * lisp.h (struct Lisp_Float): Remove unused field `type'.
5728
3ef06d12
SM
57292003-06-27 Stefan Monnier <monnier@cs.yale.edu>
5730
5731 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
5732 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
5733 (allocate_buffer): Move.
5734 (string_bytes): Don't mask markbit of `size_byte'.
5735 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
5736 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
5737 Use the `size' field of buffers (rather than the `name' field) for
5738 the mark bit, as is done for all other vectorlike objects.
5739 Use the new macros to access the mark bit of vectorlike objects.
5740
e81043aa
RS
57412003-06-26 Richard M. Stallman <rms@gnu.org>
5742
5743 * puresize.h (BASE_PURESIZE): Increment base size.
5744
5745 * xdisp.c (fast_find_position): Enable Gerd's new definition.
5746
5747 * xterm.c (xim_initialize): Undo previous change.
5748
2d0834cc
SM
57492003-06-26 Stefan Monnier <monnier@cs.yale.edu>
5750
5751 * alloc.c (survives_gc_p): Simplify.
5752
5753 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
5754
5755 * window.c (Fset_window_dedicated_p): Simplify.
5756 (display_buffer_1): Don't raise the win from which minibuf was entered.
5757 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
5758 (Fminibuffer_selected_window): Simplify.
5759
5760 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
5761
5762 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
5763 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
5764
5765 * insdel.c (check_markers, adjust_markers_for_delete)
5766 (adjust_markers_for_insert, adjust_markers_for_replace)
5767 (prepare_to_modify_buffer, RESTORE_VALUE):
5768 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
5769 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
5770 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
5771 * alloc.c (Fmake_marker, free_marker, gc_sweep):
5772 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
5773 * editfns.c (save_excursion_restore, transpose_markers):
5774 * window.c (delete_window):
5775 * xdisp.c (message_dolog): Update for new types.
5776
d54ae3d8
JD
57772003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5778
a5f696ac
JD
5779 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
5780 (realize_default_face): Use default_face_done_p for the force_p
2d0834cc 5781 argument to set_lface_from_font_name. Set default_face_done_p to one.
a5f696ac
JD
5782
5783 * frame.c (make_frame): Initialize default_face_done_p.
5784
5785 * frame.h (struct frame): Add default_face_done_p.
5786
d54ae3d8
JD
5787 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
5788 will be defined.
5789
2336fe58
SM
57902003-06-25 Stefan Monnier <monnier@cs.yale.edu>
5791
5792 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
5793 Initialize the new field `gcmarkbit'.
5794 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
5795 (mark_interval_tree): Don't mark the tree separately from the nodes.
5796 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
5797 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
5798 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
5799
5800 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
5801 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
5802 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
5803 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
5804 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
5805
bcea31c2
DL
58062003-06-24 Dave Love <fx@gnu.org>
5807
5808 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
5809
5810 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
5811 from gnulib.
5812
2601f59e
RS
58132003-06-21 Richard M. Stallman <rms@gnu.org>
5814
5815 * fileio.c (Fwrite_region): Alternate messages
5816 for append and partial write.
5817
5818 * keyboard.c (read_key_sequence): When converting upcase fn key to
5819 downcase, update fkey and keytran so `backspace' gets translated.
5820
5821 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
5822
5823 * process.c (wait_reading_process_input): Don't signal SIGIO
5824 in batch mode.
5825
b5d2c621
KH
58262003-06-17 Kenichi Handa <handa@m17n.org>
5827
5828 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
5829 composite.h.
5830
5831 * xselect.c: Don't include charset.h, coding.h, composite.h.
5832 (Qforeign_selection): New variable.
5833 (syms_of_xselect): Intern and static it.
5834 (selection_data_to_lisp_data): Return a unibyte string made from
5835 data with `foreign-selection' text property.
5836
6793bc63
SM
58372003-06-15 Stefan Monnier <monnier@cs.yale.edu>
5838
5839 * termhooks.h (EVENT_INIT): New macro.
5840
5841 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
5842
5843 * alloc.c (mark_kboards): Move to keyboard.c.
5844
5845 * keyboard.c (record_asynch_buffer_change, read_avail_input):
5846 * xterm.c (x_dispatch_event):
5847 * xmenu.c (find_and_call_menu_selection):
5848 * xdisp.c (handle_tool_bar_click):
5849 * w32menu.c (menubar_selection_callback):
5850 * sysdep.c (kbd_input_ast, read_input_waiting):
5851 * msdos.c (dos_rawgetc):
5852 * macterm.c (mac_check_for_quit_char):
5853 * macmenu.c (menubar_selection_callback):
5854 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
5855 data to kbd_buffer_store_event.
5856
b3ea810c
KS
58572003-06-15 Kim F. Storm <storm@cua.dk>
5858
5859 * xdisp.c (x_fix_overlapping_area): Always use area relative X
6793bc63 5860 to fix redisplay problem with tall characters (such as \e,AC\e(B).
b3ea810c 5861
b8f75eda
KG
58622003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
5863
5864 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
5865
ba92ce48
KH
58662003-06-12 Kenichi Handa <handa@m17n.org>
5867
5868 * fileio.c (Fwrite_region): Save and restore restriction.
5869
b80263be
DL
58702003-06-12 Dave Love <fx@gnu.org>
5871
5872 * alloca.c (alloca): Declare arg as size_t.
5873
6793bc63
SM
5874 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
5875 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
b80263be 5876
b23c0a83
DL
58772003-06-11 Dave Love <fx@gnu.org>
5878
5879 * search.c (shrink_regexp_cache): Use xrealloc.
5880 (syms_of_search): Use xmalloc.
5881
700e47c2
KS
58822003-06-10 Kim F. Storm <storm@cua.dk>
5883
5884 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
5885 Adjust phys_cursor.x to be relative to window box, rather than
5886 text area before checking -- to ensure cursor is redrawn when
5887 exposing window.
5888 Note: This also fixes a similar (older) bug if display margins
5889 are present.
5890
f11aa0b2
KH
58912003-06-06 Kenichi Handa <handa@m17n.org>
5892
5893 * coding.c (encoding_buffer_size): If coding->type is
5894 coding_type_ccl, double magnification on CRLF encoding.
5895
3d143690
JR
58962003-06-06 Jason Rumney <jasonr@gnu.org>
5897
5898 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
5899 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
5900
5901 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
5902 Mac too.
5903
f16205ca
DL
59042003-06-05 Dave Love <fx@gnu.org>
5905
b23c0a83
DL
5906 * strftime.c: Merge changes from gnulib.
5907
f16205ca
DL
5908 * mktime.c (__mktime_internal): Merge changes from gnulib
5909 involving year 69 and dst2.
5910
5911 Changes to merge with gnulib version and be consistent with the
5912 autoconf test:
5913
6793bc63
SM
5914 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
5915 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
f16205ca
DL
5916 [HAVE_LOCALE_H]: Include locale.h.
5917 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
5918
9b87a0bc
KS
59192003-06-05 Kim F. Storm <storm@cua.dk>
5920
5921 * window.c (coordinates_in_window): Convert X and Y to window
5922 relative coordinates inside mode-line and header-line parts.
5923 Convert X and Y to margin area relative coordinates inside left
5924 and right display margin parts.
5925
5a8a15ec
JR
59262003-06-05 Jason Rumney <jasonr@gnu.org>
5927
5928 * w32fns.c (add_system_logical_colors_to_map): New function.
5929 (Fx_open_connection): Use it.
5930
01ed8ff1
SM
59312003-06-04 Stefan Monnier <monnier@cs.yale.edu>
5932
5933 * process.c (allocate_pty): Revert part of the previous patch.
5934 (Faccept_process_output): Simplify.
5935
b427b65d
JR
59362003-06-04 Jason Rumney <jasonr@gnu.org>
5937
5938 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
5939
5940 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
5941 (lispy_mouse_wheel_names): Remove.
5942 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
5943 Always define drag_and_drop_syms.
5944
5945 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
5946 WHEEL_EVENT events.
5947
914a8c47
SM
59482003-06-03 Stefan Monnier <monnier@cs.yale.edu>
5949
01ed8ff1
SM
5950 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
5951
914a8c47
SM
5952 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
5953
adcb132c
JD
59542003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5955
5956 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
5957 menu item label.
5958
be781fa7
RS
59592003-06-03 Richard M. Stallman <rms@gnu.org>
5960
5961 * window.c (Fwindow_edges): Doc fix.
5962 (Fwindow_pixel_edges, Fwindow_inside_edges)
5963 (Fwindow_inside_pixel_edges): New functions.
5964 (syms_of_window): defsubr them.
5965
5966 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
5967 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
5968
914a8c47
SM
59692003-06-02 Stefan Monnier <monnier@cs.yale.edu>
5970
5971 * dispnew.c (Fsit_for): Don't lie about the number of args.
5972
5b07197a
DL
59732003-06-02 Dave Love <fx@gnu.org>
5974
5975 * callproc.c: Use HAVE_FCNTL_H, not USG5.
5976 (syms_of_callproc) <process-environment>: Doc fix.
5977
5978 * doc.c: Use HAVE_FCNTL_H, not USG5.
5979
5980 * xfaces.c (font_rescale_ratio): Fix for K&R.
5981
5982 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
5983
5984 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
5985
5986 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
5987
5988 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
5989 (xg_create_frame_widgets): Use ENCODE_UTF_8.
5990
d7107586 5991 * xterm.c (Qutf_8): Move to coding.c
5b07197a
DL
5992
5993 * xmenu.c (ENCODE_MENU_STRING): New.
5994 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
5995 Use it.
5996
5997 * coding.h (ENCODE_UTF_8): New.
5998 (Qutf_8): Declare.
5999
6000 * coding.c (Qutf_8): New.
6001 (syms_of_coding): Intern it.
6002
6003 * fns.c: Doc fixes.
6004
7335b336
KH
60052003-06-02 Kenichi Handa <handa@m17n.org>
6006
6007 * buffer.c (Fset_buffer_multibyte): Fix previous change.
6008
914a8c47
SM
60092003-06-01 Stefan Monnier <monnier@cs.yale.edu>
6010
6011 * lread.c (openp): Make sure STR is a string.
6012
9862c135
JR
60132003-06-01 David Ponce <david@dponce.com>
6014
6015 * termhooks.h (enum event_kind): Added new WHEEL_EVENT event.
6016 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
6017
6018 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
6019 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
6020 (discard_mouse_events): Discard WHEEL_EVENT events too.
6021 (lispy_wheel_names, wheel_syms): New.
6022 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
6023 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX
6024 defined.
914a8c47 6025 (make_lispy_event): Add WHEEL_EVENT handler.
9862c135
JR
6026
6027 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
6028 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
6029 WHEEL_EVENT events.
6030
f984e73e
JPW
60312003-05-31 John Paul Wallington <jpw@gnu.org>
6032
6033 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
6034 timer are in lisp/emacs-lisp.
6035
1efcd78f
KH
60362003-05-31 Kenichi Handa <handa@m17n.org>
6037
458c8af4
KH
6038 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
6039 region when a buffer is changed to unibyte.
6040
1efcd78f
KH
6041 * charset.h (VALID_LEADING_CODE_P): New macro.
6042 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
6043
778e2804
KH
6044 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
6045 is nonzero, accept multibyte form of eight-bit-control chars.
6046 (decode_composition_emacs_mule): Likewise.
6047 (decode_coding_emacs_mule): Likewise.
6048 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
6049 multibyte form of eight-bit-control chars.
6050
6051 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
6052 (Finsert_file_contents): If coding-system-for-read is bound to
6053 Qauto_save_coding, use the coding system emacs-mule with special
6054 setting for recovering a file.
6055 (choose_write_coding_system): On auto saving, use the coding
6056 system emacs-mule with special setting for auto saving.
6057 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
6058
034060e4
KH
60592003-05-30 Kenichi Handa <handa@m17n.org>
6060
6061 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
6062 properly before calling ccl_driver.
6063
778e2804 6064 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
034060e4
KH
6065
6066 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is
6067 nonzero.
6068 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
6069 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
6070
595f5aa5
GM
60712003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
6072
6073 * xfaces.c (realize_default_face): Do not abort if lface is
6074 non-existent - reverts change from 2003-05-19.
6075
103e0180
KH
60762003-05-29 Kenichi Handa <handa@m17n.org>
6077
6078 * coding.c (decode_coding_iso2022): Pay attention to the byte
6079 sequence of CTEXT extended segment, and retain those bytes as is.
6080
60812003-05-28 Kenichi Handa <handa@m17n.org>
6082
6083 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjusted for the name change
6084 of CODING_REPLACEMENT_CHARACTER.
6085 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
6086 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
6087 check this flag on encoding.
6088 (encode_coding_sjis_big5): Check
6089 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
6090 (Fset_terminal_coding_system_internal): Set
6091 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
6092 instead of setting CODING_FLAG_ISO_SAFE flag in
6093 terminal_coding.flags.
6094
6095 * coding.h (CODING_REPLACEMENT_CHARACTER): Renamed from
6096 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
6097 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
6098
ff6a3bfb 60992003-05-28 Richard M. Stallman <rms@gnu.org>
45f266dc 6100
ff6a3bfb
RS
6101 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
6102
6103 * eval.c (unbind_to): Move init of this_binding to separate statement.
45f266dc 6104
1963c428
KS
61052003-05-28 Kim F. Storm <storm@cua.dk>
6106
6107 * xdisp.c (expose_window): Fix error in calculation of
6108 window relative coordinates of area to redisplay.
6109
2b5d4601
JR
61102003-05-27 Jason Rumney <jasonr@gnu.org>
6111
6112 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
6113
1c64a4a2
JB
61142003-05-27 David Ponce <david@dponce.com>
6115
6116 Handle W32 mouse wheel events as mouse click events, like in X.
6117
6118 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
6119 MOUSE_WHEEL_EVENT anymore.
6120
6121 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
6122 Scrolling down/up the mouse wheel is respectively mapped to mouse
6123 button 4 and 5.
6124 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
6125 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
6126 WM_MOUSEWHEEL events.
6127
2d031b89
AS
61282003-05-27 Andreas Schwab <schwab@suse.de>
6129
20464fdf
AS
6130 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
6131
2d031b89
AS
6132 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
6133 partially visible line.
6134
6135 * alloc.c (Fgarbage_collect): Fix last change.
6136
97bc76d4
JPW
61372003-05-26 John Paul Wallington <jpw@gnu.org>
6138
6139 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
6140
56613f06
SM
61412003-05-25 Stefan Monnier <monnier@cs.yale.edu>
6142
6143 * window.c (Fset_window_buffer): Add type of `keep_margins'.
6144 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
6145
6146 * window.h (window_box_text_cols): Declare.
6147
6148 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
6149 (x_draw_vertical_border): Remove unused var `f'.
6150
6151 * xfaces.c (build_scalable_font_name): Remove `unused var
6152 pixel_size' warning.
6153
6154 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
6155
6156 * unexelf.c (unexec): Remove `unused var n' warning.
6157
6158 * strftime.c (my_strftime_localtime_r): Remove `defined but
6159 unused' warning.
6160
6161 * process.c (allocate_pty): Remove `unused var stb' and
6162 `cp might be used uninitialized' warnings.
6163
6164 * dispnew.c (mode_line_string): Remove unused var `f'.
6165
6166 * coding.c (find_safe_codings): Remove unused var `i'.
6167
6168 * bytecode.c (Fbyte_code): Remove `unused val' warning.
6169
6170 * buffer.c (Fkill_buffer): Remove unused var `list'.
6171
6172 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
6173
93421a1f
JD
61742003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6175
6176 * frame.c (make_frame): Condition want_fullscreen with
6177 HAVE_WINDOW_SYSTEM.
6178
c4b8aebc
JB
61792003-05-25 Juanma Barranquero <lektu@terra.es>
6180
6181 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
6182 (Fwindow_scroll_bars): Fix typo in docstring.
6183
0416870b
KS
61842003-05-24 Kim F. Storm <storm@cua.dk>
6185
6186 The following changes serve several purposes:
6187
6188 1) Swap the position of fringes and display margins in windows, i.e.
6189 the fringes are now displayed between the margins and the text area
6190 (by default).
6191
6192 2) Allow fringe and scroll bar parameters to be set per-buffer and
6193 per-window (like display margins). Such settings are now stored
6194 in window configurations, preserved when frames are resized, and
9018a88e 6195 copied when windows are split vertically or horizontally.
0416870b
KS
6196 Several bugs related to display margins have been fixed.
6197
6198 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
9018a88e 6199
0416870b
KS
6200 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
6201 rather than FRAME_WIDTH (FRAME_FONT (f)).
6202
6203 5) Introduce a consistent naming of variables, members and macros
6204 depending on whether their value is measured in pixels or in
6205 canonical columns/lines. Pixel dimensions are named *_width and
6206 *_height, while canonical columns/lines are named *_cols and
6207 *_lines. Pixel positions are named *_x and *_y, while column/line
6208 positions are named *_col and *_line.
6209
6210 6) Consolidate more of the X, W32, and MAC gui code by moving
6211 common data into struct frame, and generalize it for the non-gui
6212 case by using suitable defaults.
6213
6214 7) Cleanup and consolidate the macros controlling frame and window
6215 layout into frame.h and window.h, and generalize the use of the
6216 various window_box_* functions (enhanced to handle the new fringe
6217 position and the per-window fringe and scroll bar settings).
6218
6219 * frame.h (struct frame): Rename members height to text_lines,
6220 width to text_cols, window_height to total_lines, window_width to
6221 total_cols, new_height to new_text_lines, new_width to
6222 new_text_cols. All uses changed.
6223 (struct frame): New members which consolidate common members of
6224 x_output, w32_output, and mac_output structures: left_pos,
6225 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
6226 win_gravity, size_hint_flags, border_width, internal_border_width,
6227 line_height, fringe_cols, left_fringe_width, right_fringe_width,
6228 want_fullscreen. All uses changed.
6229 (struct frame): New member column_width contaning the canonical
6230 column width, analogue to line_height. All uses changed.
6231 (struct frame): Rename members scroll_bar_pixel_width to
6232 config_scroll_bar_width, and scroll_bar_cols to
6233 config_scroll_bar_cols. All uses changed.
6234 (struct frame): New member scroll_bar_actual_width which
6235 consolidates and renames the vertical_scroll_bar_extra member of
6236 x_output, w32_output, and mac_output structures. All uses changed.
6237 (FRAME_PIXEL_HEIGHT): Renamed from PIXEL_HEIGHT and moved
6238 from x/w32/macterm.h files. All uses changed. Also change code
6239 which referred to f->output_data...->pixel_height.
6240 (FRAME_PIXEL_WIDTH): Renamed from PIXEL_WIDTH and moved
f63fd14e 6241 from x/w32/macterm.h files. All uses changed. Also change code
0416870b
KS
6242 which referred to f->output_data...->pixel_width.
6243 (FRAME_LINES): Renamed from FRAME_HEIGHT. All uses changed.
6244 Also change code which referred to f->height.
6245 (FRAME_COLS): Renamed from FRAME_WIDTH. All uses changed.
6246 Also change code which referred to f->width.
6247 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
6248 to update new_text_lines and new_text_cols members directly.
6249 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Renamed from
6250 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
6251 (FRAME_CONFIG_SCROLL_BAR_COLS): Renamed from
6252 FRAME_SCROLL_BAR_COLS. All uses changed.
6253 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
6254 Renamed from FRAME_LEFT_SCROLL_BAR_WIDTH and
6255 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
6256 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
6257 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
6258 (FRAME_TOTAL_COLS): Renamed from FRAME_WINDOW_WIDTH.
6259 (SET_FRAME_COLS): Renamed from SET_FRAME_WIDTH.
6260 (FRAME_TOTAL_COLS_ARG): Renamed from FRAME_WINDOW_WIDTH_ARG.
6261 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
6262 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
6263 (FRAME_LINE_HEIGHT): Renamed from CANON_Y_UNIT. Unconditionally
6264 return line_height member (it now has proper value also for
6265 non-window frames).
6266 (FRAME_COLUMN_WIDTH): Renamed from CANON_X_UNIT. Unconditionally
6267 return new column_width member (rather than the default font width).
6268 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
6269 (FRAME_RIGHT_FRINGE_WIDTH): Renamed from FRAME_X_... and moved
6270 from x/w32/macterm.h files. Unconditionally return corresponding
6271 member of frame structure (they now have proper values also for
6272 non-window frames).
6273 (FRAME_TOTAL_FRINGE_WIDTH): Renamed from FRAME_FRINGE_WIDTH.
6274 Calculate return value from left and right widths.
6275 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
6276 internal_border_width member (has proper value for non-window frame).
6277 (FRAME_PIXEL_X_FROM_CANON_X): Renamed from PIXEL_X_FROM_CANON_X.
6278 (FRAME_PIXEL_Y_FROM_CANON_Y): Renamed from PIXEL_Y_FROM_CANON_Y.
6279 (FRAME_CANON_X_FROM_PIXEL_X): Renamed from CANON_X_FROM_PIXEL_X.
6280 (FRAME_CANON_Y_FROM_PIXEL_Y): Renamed from CANON_Y_FROM_PIXEL_Y.
6281 (FRAME_LINE_TO_PIXEL_Y): Renamed from CHAR_TO_PIXEL_ROW,
6282 consolidated from xterm.h, macterm.h, and w32term.h.
6283 (FRAME_COL_TO_PIXEL_X): Renamed from CHAR_TO_PIXEL_COL,
6284 consolidated from xterm.h, macterm.h, and w32term.h.
6285 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Renamed from
6286 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
6287 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Renamed from
6288 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
6289 (FRAME_PIXEL_Y_TO_LINE): Renamed from PIXEL_TO_CHAR_ROW
6290 consolidated from x/mac/w32term.h.
6291 (FRAME_PIXEL_X_TO_COL): Renamed from PIXEL_TO_CHAR_COL
6292 consolidated from x/mac/w32term.h.
6293 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Renamed from
6294 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
6295 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Renamed from
6296 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
6297
6298 * window.h (struct window): Rename members left to left_col,
6299 top to top_line, height to total_lines, width to total_cols,
6300 left_margin_width to left_margin_cols, right_margin_width to
6301 right_margin_cols, orig_height to orig_total_lines, orig_top to
6302 orig_top_line. All uses changed.
6303 (struct window): New members left_fringe_width, right_fringe_width,
6304 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
6305 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
6306 New macros primarily used to simplify other macros.
6307 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
6308 referred to XINT (w->width).
6309 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
6310 referred to XINT (w->height).
6311 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
6312 referred to XINT (w->width) * canon_x_unit.
6313 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
6314 referred to XINT (w->height) * canon_y_unit.
6315 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
6316 referred to XINT (w->left).
6317 (WINDOW_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_EDGE. Change
6318 all uses and code that referred to XINT (w->left) + XINT (w->width).
6319 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
6320 referred to XINT (w->top).
6321 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
6322 referred to XINT (w->top) + XINT (w->height).
6323 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
6324 referred to XINT (w->left) * canon_x_unit.
6325 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
6326 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
6327 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
6328 referred to XINT (w->top) * canon_y_unit.
6329 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
6330 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
6331 (WINDOW_LEFTMOST_P): New macro.
6332 (WINDOW_BOX_LEFT_EDGE_COL): Renamed from WINDOW_LEFT_MARGIN.
6333 All uses changed.
6334 (WINDOW_BOX_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_MARGIN.
6335 All uses changed.
6336 (WINDOW_BOX_LEFT_EDGE_X): Renamed from
6337 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
6338 Do not exclude left fringe width.
6339 (WINDOW_BOX_RIGHT_EDGE_X): Renamed from
6340 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
6341 Do not exclude fringe widths.
6342 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
6343 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
6344 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
6345 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
6346 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
6347 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
6348 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
6349 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
6350 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
6351 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
6352 New macros. Change code which referenced corresponding
6353 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
6354 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
6355 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
6356 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
6357 allow per-window scroll-bar settings.
6358 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
6359 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
6360 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
6361 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
6362 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
6363 FRAME_SCROLL_BAR_WIDTH.
6364 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
9018a88e 6365 (WINDOW_SCROLL_BAR_AREA_X): New macros.
0416870b
KS
6366 (WINDOW_HEADER_LINE_HEIGHT): Renamed from
6367 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
6368 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Renamed from
6369 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
6370 (WINDOW_BOX_TEXT_HEIGHT): Renamed from
6371 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
6372 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
6373 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
6374 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Moved here from dispextern.h.
6375 (WINDOW_LEFT_MARGIN_WIDTH): Renamed from
6376 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
6377 (WINDOW_RIGHT_MARGIN_WIDTH): Renamed from
6378 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
6379 (window_from_coordinates): Update prototype.
6380 (Fset_window_buffer): Update EXFUN.
6381 (set_window_buffer): Update prototype.
9018a88e 6382
0416870b 6383 * dispextern.h (struct glyph_matrix): Rename members window_left_x
9018a88e 6384 to window_left_col, window_top_y to window_top_line. All uses
0416870b
KS
6385 changed.
6386 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
6387 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
6388 internal_border_width is now set to 0 for non-window frames.
6389 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
6390 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
6391 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
6392 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
6393 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
6394 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
6395 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
6396 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
6397 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
9018a88e 6398 Move to window.h and renamed [see window.h changes].
0416870b
KS
6399 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
6400 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
9018a88e
SM
6401 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
6402 Use WINDOW_TOTAL_LINES.
0416870b
KS
6403 (frame_update_line_height): Remove prototype.
6404
6405 * buffer.h (struct buffer): Rename members measured in columns:
6406 left_margin_width to left_margin_cols, right_margin_width to
6407 right_margin_cols. All uses changed.
6408 New members left_fringe_width, right_fringe_width,
6409 fringes_outside_margins for per-buffer fringe settings.
6410 New members scroll_bar_width and vertical_scroll_bar_type for
6411 per-buffer scroll bar settings.
6412
6413 * buffer.c (init_buffer_once): Set buffer_defaults and
6414 buffer_local_flags for new buffer-local variables
6415 left_fringe_width, right_fringe_width, fringes_outside_margins,
6416 scroll_bar_width, and vertical_scroll_bar_type.
6417 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
6418 default-* variables for them.
6419
6420 * dispnew.c: Make (many) trivial substitutions for renamed and
6421 new macros in dispextern.h, frame.h and window.h.
6422 (mode_line_string): No need to adjust width for mode lines, as it
6423 is already adjusted by the caller.
6424 (marginal_area_string): Handle fringes inside/outside margins.
9018a88e 6425
0416870b
KS
6426 * frame.c: Make (many) trivial substitutions for renamed and
6427 new macros in dispextern.h, frame.h and window.h.
6428 (make_frame): Initialize left_fringe_width, right_fringe_width,
6429 fringe_cols, scroll_bar_actual_width, border_width,
6430 internal_border_width, column_width, line_height, x_pixels_diff,
6431 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
6432 members with values suitable for a non-window frames.
6433
6434 * gtkutil.c: Make (many) trivial substitutions for renamed and
6435 new macros in dispextern.h, frame.h and window.h.
9018a88e 6436
0416870b
KS
6437 * indent.c: Make (few) trivial substitutions for renamed and
6438 new macros in dispextern.h, frame.h and window.h.
6439
6440 * keyboard.c: Make (many) trivial substitutions for renamed and
6441 new macros in dispextern.h, frame.h and window.h.
6442 (make_lispy_event): Use window positions returned from
6443 window_from_coordinates when constructing the lisp event for
6444 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
6445 (incorrect) values locally.
6446 (make_lispy_movement): Use window positions returned from
6447 window_from_coordinates when constructing the lisp event, rather
6448 than calculating (incorrect) values locally.
6449
6450 * scroll.c: Make (some) trivial substitutions for renamed and
6451 new macros in dispextern.h, frame.h and window.h.
6452
6453 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
6454 scroll-bars.
6455
6456 * sysdep.c: Make (few) trivial substitutions for renamed and
6457 new macros in dispextern.h, frame.h and window.h.
6458
6459 * term.c: Make (some) trivial substitutions for renamed and
6460 new macros in dispextern.h, frame.h and window.h.
6461
6462 * widget.c: Make (few) trivial substitutions for renamed and
6463 new macros in dispextern.h, frame.h and window.h.
6464
6465 * window.c: Make (many) trivial substitutions for renamed and
6466 new macros in dispextern.h, frame.h and window.h.
6467 (make_window): Initialize new members
6468 left_margin_cols, right_margin_cols, left_fringe_width,
6469 right_fringe_width, fringes_outside_margins, scroll_bar_width,
6470 and vertical_scroll_bar_type.
6471 (coordinates_in_window): Adapted to new fringe/margin positions
9018a88e 6472 and per-window fringes and scroll-bars.
0416870b 6473 Fix bug related to incorrectly adjusting coordinates by
9018a88e 6474 frame's internal_border_width (the effect normally negible since
0416870b
KS
6475 the internal_border_width is typically 0 or 1 pixel, but very
6476 noticeable for an internal_border_width of e.g. 25 pixels).
6477 Upon successful return (other than ON_NOTHING), the coordinates
6478 are now always properly converted to window relative for the
6479 given display element.
6480 (window_from_coordinates): Add new parameters wx and wy to
6481 return the window relative x and y position in the returned
6482 window and part. A null arg means, don't return the position.
6483 All callers changed.
6484 (adjust_window_margins): New function which may reduce the width
6485 of the display margins if a window's text area is too small after
6486 resizing or splitting windows.
6487 (size_window): Fix bug that did not account for display margin
6488 widths when checking the minimum width of a window; use
6489 adjust_window_margins.
6490 (set_window_buffer): Call Fset_window_fringes and
6491 Fset_window_scroll_bars to setup per-window elements.
6492 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
6493 existing display margin, fringe widths, and scroll bar settings
9018a88e
SM
6494 (e.g. after splitting a window or resizing the frame).
6495 All callers changed.
0416870b
KS
6496 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
6497 (Fsplit_window): Duplicate original window's display margin,
6498 fringe, and scroll-bar settings; then call Fset_window_buffer with
6499 KEEP_MARGINS non-nil. This fixes a bug which caused a split
6500 window to only preserve the display margins in one of the windows.
c4b8aebc 6501 When splitting horizontally, call adjust_window_margins on both
0416870b 6502 windows to ensure that the text area of the new windows is non too
f9711de4 6503 narrow. This fixes a bug which could cause Emacs to trap if the
0416870b
KS
6504 width of the split window was less than the width of the display
6505 margins.
9018a88e
SM
6506 (window_box_text_cols): Renamed from window_internal_width.
6507 All uses changed. Adapt to per-window fringes and scroll bars.
0416870b
KS
6508 Fix bug that caused vertical separator to be subtracted also on
6509 window frames. Fix another bug that did not reduce the returned
6510 value by the columns used for display margins.
6511 (window_scroll_line_based): Fix bug related to scrolling too much
6512 when display margins are present (implicitly fixed by the fix to
6513 window_box_text_cols).
6514 (scroll_left, scroll_right): Fix bug related to scrolling too far
6515 by default when display margins are present (implicitly fixed by
6516 the fix to window_box_text_cols).
6517 (struct saved_window): Rename members left to left_col, top to
6518 top_line, width to total_cols, height to total_lines, orig_top to
6519 orig_top_line, orig_height to orig_total_lines. All uses changed.
6520 New members left_margin_cols, right_margin_cols,
6521 left_fringe_width, right_fringe_width, fringes_outside_margins,
6522 scroll_bar_width, and vertical_scroll_bar_type for saving
6523 per-window display elements.
6524 (Fset_window_configuration): Restore display margins, fringes,
6525 and scroll bar settings. This fixes a bug which caused display
6526 margins to be discarded when saving and restoring a window
6527 configuration.
6528 (save_window_save): Save display margins, fringes, and scroll bar
6529 settings. This fixes a bug which caused display margins to be
6530 discarded when saving and restoring a window configuration.
6531 (Fset_window_margins): Do nothing if display margins are not
6532 really changed. Otherwise, call adjust_window_margins to ensure
6533 the text area doesn't get too narrow. This fixes a bug which
f9711de4 6534 could cause Emacs to trap if setting display margins wider than
0416870b
KS
6535 the width of the window.
6536 (Fset_window_fringes): New defun to allow user to specifically set
6537 this window's fringe widths and position vs. display margins.
6538 (Fwindow_fringes): New defun to return window's actual fringe
6539 settings.
6540 (Fset_window_scroll_bars): New defun to allow user to specifically
6541 set this window's scroll bar width and position.
6542 (Fwindow_scroll_bars): New defun to return window's actual scroll
6543 bar settings.
6544 (compare_window_configurations): Also compare display margins,
6545 fringes, and scroll bar settings.
6546 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
6547
6548 * xdisp.c: Make (many) trivial substitutions for renamed and
6549 new macros in dispextern.h, frame.h and window.h.
6550 (window_box_width): Adapt to per-window fringes and scroll bars,
f63fd14e 6551 and new fringe vs. display margin position. Note that returned
0416870b
KS
6552 value is no longer guaranteed to be a whole multiple of the frame
6553 column width, since per-window fringes may now be any width.
6554 (window_box_left_offset): New function like window_box_left, but
6555 value is relative to left border of window (rather than frame).
6556 (window_box_right_offset): New function like window_box_right,
6557 but value is relative to left border of window.
6558 (window_box_left): Adapt to per-window fringes and scroll bars,
6559 and new fringe vs. display margin position. Simplify by using
6560 WINDOW_LEFT_EDGE_X and window_box_left_offset.
6561 (window_box): Allow null args for unnecessary return values;
6562 change/simplify relevant callers.
6563 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
9018a88e
SM
6564 and new fringe vs. display margin position.
6565 Use window_box_left_offset and window_box_right_offset
0416870b 6566 (get_glyph_string_clip_rect): Adapt to per-window fringes and
9018a88e
SM
6567 scroll bars, and new fringe vs. display margin position.
6568 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
0416870b
KS
6569 (draw_fringe_bitmap): Rework to handle per-window fringes and new
6570 fringe vs. display margin position.
6571 (hscroll_window_tree): Use window_box_width instead of window_box.
a64387ee
JB
6572 (redisplay_window): Adapt to per-window scroll bars.
6573 (draw_glyphs): Rework to handle per-window fringes and scroll
9018a88e
SM
6574 bars, and new fringe vs. display margin position.
6575 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
a64387ee 6576 (x_clear_end_of_line): Adapt to per-window fringes and scroll
0416870b
KS
6577 bars, and new fringe vs. display margin position. Fix bug which
6578 increased total width of full_width rows by width of scroll bars
6579 although window's total width already includes that.
6580 (x_fix_overlapping_area): Simplify using window_box_left_offset.
6581 (expose_area): Simplify using window_box_left_offset.
6582 (x_draw_vertical_border): Handle per-window scroll bar settings,
6583 mixing windows with left, right and no scroll bars.
6584
6585 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
6586 where it's used in x_list_fonts (for clarity).
6587 (frame_update_line_height): Remove unused function; functionality
6588 is now done directly when setting the default font in x_set_font.
6589
6590 * xfns.c: Make (many) trivial substitutions for renamed and
6591 new macros in dispextern.h, frame.h and window.h.
6592
6593 * xmenu.c: Make (some) trivial substitutions for renamed and
6594 new macros in dispextern.h, frame.h and window.h.
6595
6596 * xterm.h (struct x_output): Move members left_pos, top_pos,
6597 border_width, pixel_height, pixel_width, line_height,
6598 internal_border_width, vertical_scroll_bar_extra,
6599 left_fringe_width, right_fringe_width, fringe_cols,
6600 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
6601 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
6602 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
6603 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
6604 (PIXEL_WIDTH, PIXEL_HEIGHT)
6605 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
6606 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
6607 frame.h and renamed [see frame.h changes].
6608 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
6609 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
6610 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
6611 and renamed [see frame.h changes].
9018a88e 6612
0416870b
KS
6613 * xterm.c: Make (several) trivial substitutions for renamed and
6614 new macros in dispextern.h, frame.h and window.h.
6615 (x_draw_glyph_string_box): Adapt to per-window fringes and
6616 scroll-bars.
6617 (scroll_run): Adapt to new fringe position.
6618 (glyph_rect): Use window coordinates returned from
6619 window_from_coordinates rather than frame_to_window_pixel_xy.
6620 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
6621 scroll-bars.
6622 (handle_one_xevent): Simplify a USE_GTK conditional.
6623 (x_clip_to_row): Remove superfluous whole_line_p arg and code
6624 (fringes are now inside margins, i.e. always in the clipping area).
6625 All callers changed.
6626 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
6627 directly, then call compute_fringe_widths. Don't call
6628 frame_update_line_height.
6629
6630 * w32term.h (struct w32_output): Move members left_pos, top_pos,
6631 border_width, pixel_height, pixel_width, line_height,
6632 internal_border_width, vertical_scroll_bar_extra,
6633 left_fringe_width, right_fringe_width, fringe_cols,
6634 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
6635 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
6636 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
6637 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
6638 (PIXEL_WIDTH, PIXEL_HEIGHT)
6639 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
6640 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
6641 frame.h and renamed [see frame.h changes].
6642 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
6643 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
6644 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
6645 and renamed [see frame.h changes].
9018a88e 6646
0416870b
KS
6647 * w32term.c: Make (several) trivial substitutions for renamed and
6648 new macros in dispextern.h, frame.h and window.h.
6649 (x_draw_glyph_string_box): Adapt to per-window fringes and
6650 scroll-bars.
6651 (glyph_rect): Use window coordinates returned from
6652 window_from_coordinates rather than frame_to_window_pixel_xy.
6653 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
6654 scroll-bars.
6655 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
6656 (fringes are now inside margins, i.e. always in the clipping area).
6657 All callers changed.
6658 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
6659 directly, then call compute_fringe_widths. Don't call
6660 frame_update_line_height.
6661
6662 * w32console.c: Make (few) trivial substitutions for renamed and
6663 new macros in dispextern.h, frame.h and window.h.
6664
6665 * w32fns.c: Make (many) trivial substitutions for renamed and
6666 new macros in dispextern.h, frame.h and window.h.
6667
6668 * w32menu.c: Make (few) trivial substitutions for renamed and
6669 new macros in dispextern.h, frame.h and window.h.
6670
6671 * macterm.h (struct mac_output): Move members left_pos, top_pos,
6672 border_width, pixel_height, pixel_width, line_height,
6673 internal_border_width, vertical_scroll_bar_extra,
6674 left_fringe_width, right_fringe_width, fringe_cols,
6675 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
6676 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
6677 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
6678 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
6679 (PIXEL_WIDTH, PIXEL_HEIGHT)
6680 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
6681 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
6682 frame.h and renamed [see frame.h changes].
6683 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
6684 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
6685 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
6686 and renamed [see frame.h changes].
9018a88e 6687
0416870b
KS
6688 * macterm.c: Make (several) trivial substitutions for renamed and
6689 new macros in dispextern.h, frame.h and window.h.
6690 (x_draw_glyph_string_box): Adapt to per-window fringes and
6691 scroll-bars.
6692 (glyph_rect): Use window coordinates returned from
6693 window_from_coordinates rather than frame_to_window_pixel_xy.
6694 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
6695 scroll-bars.
6696 (x_clip_to_row): Remove superfluous whole_line_p arg and code
6697 (fringes are now inside margins, i.e. always in the clipping area).
6698 All callers changed.
6699 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
6700 directly, then call compute_fringe_widths. Don't call
6701 frame_update_line_height.
6702
6703 * macfns.c: Make (several) trivial substitutions for renamed and
6704 new macros in dispextern.h, frame.h and window.h.
9018a88e 6705 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
0416870b
KS
6706
6707 * macmenu.c: Make (few) trivial substitutions for renamed and
6708 new macros in dispextern.h, frame.h and window.h.
6709
6710 * msdos.h (struct x_output): Remove members left_pos, top_pos,
6711 and line_height, and use corresponding new members in struct
6712 frame. All uses changed.
6713 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
6714 superseeded by corresponding macros in frame.h.
6715
6716 * msdos.c: Make (several) trivial substitutions for renamed and
6717 new macros in dispextern.h, frame.h and window.h.
6718 (IT_note_mouse_highlight): Use updated window coordinates returned
9018a88e 6719 by window_from_coordinates, rather than adjusting them locally.
0416870b
KS
6720 (internal_terminal_init): No need to initialize line_height here;
6721 it now defaults to 1.
6722
9018a88e
SM
67232003-05-24 Stefan Monnier <monnier@cs.yale.edu>
6724
6725 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
6726 dropping `down' events.
6727
016bd3c0
AS
67282003-05-24 Andreas Schwab <schwab@suse.de>
6729
6730 * coding.c (find_safe_codings): Fix last change.
6731
4dacadcc
TTN
67322003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
6733
6734 * xfns.c (x_window): Fix typo from 2003-05-21 change.
6735
319830ce
SM
67362003-05-23 Stefan Monnier <monnier@cs.yale.edu>
6737
9018a88e
SM
6738 * xdisp.c (display_mode_element): Increase max depth.
6739 Simplify the error handling code. Use a different error string
6740 for the case where we hit the depth limit.
6741
319830ce
SM
6742 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
6743
6744 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
6745
67462003-05-21 Stefan Monnier <monnier@cs.yale.edu>
6747
6748 * intervals.c (get_local_map): Don't get char-property of previous
6749 point any more: get_pos_property already does it and better.
6750
c67de8ba
DL
67512003-05-21 Dave Love <fx@gnu.org>
6752
6753 [Merged from unicode branch.]
6754
6755 * xfns.c (x_window, x_window): Use use_xim.
6756
6757 * xterm.c (use_xim): Initialize.
6758 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
6759 (x_term_init): Maybe set use_xim.
6760
6761 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
6762
edd3ff1d
JR
67632003-05-21 Jason Rumney <jasonr@gnu.org>
6764
6765 * unexw32.c (_start): Remove _fmode initialization.
6766
6767 * emacs.c (main) [WINDOWSNT]: Move it here.
6768
463f55ee
DL
67692003-05-20 Dave Love <fx@gnu.org>
6770
6771 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
6772
af253914
RS
67732003-05-19 Richard M. Stallman <rms@gnu.org>
6774
6775 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
6776 as value for QCfont attribute.
6777 (realize_default_face): lface should already exist; crash if not.
6778 Specify 0 for FORCE_P when calling set_lface_from_font_name.
6779
6780 * frame.c (Fignore_event): Doc fix.
6781
1d211019
KH
67822003-05-19 Kenichi Handa <handa@m17n.org>
6783
6784 * coding.c (decode_coding_string): Handle post-read-conversion
6785 even if the coding doesn't require decoding.
6786
4dd68254
RS
67872003-05-18 Richard M. Stallman <rms@gnu.org>
6788
6789 * callproc.c (Fcall_process_region): Doc fix.
6790
14d87dc9
SM
67912003-05-17 Stefan Monnier <monnier@cs.yale.edu>
6792
deca5d96
SM
6793 * lread.c (Fload): Print a message if package is obsolete.
6794
14d87dc9
SM
6795 * window.c (Fselect_window): Add optional `norecord' arg.
6796 (select_window_1): Fold into Fselect_window.
6797 (select_window_norecord): New function.
6798 (temp_output_buffer_show): Use it. Preserve current buffer.
6799
6800 * window.h (Fselect_window): Update declaration.
6801
6802 * window.c (delete_window, Fother_window, Fset_window_configuration):
6803 * minibuf.c (read_minibuf):
6804 * macterm.c (x_new_focus_frame):
6805 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
6806 * callint.c (Fcall_interactively):
6807 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
6808
6809 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
6810
78f52183
DK
68112003-05-17 David Kastrup <dak@gnu.org>
6812
6813 * process.c (read_process_output): Back out change from 2003-03-09.
6814
14d87dc9
SM
68152003-05-17 Stefan Monnier <monnier@cs.yale.edu>
6816
6817 * editfns.c (get_pos_property): Don't assume that `object' = nil.
6818
6819 * textprop.c (text_property_stickiness): New arg `buffer'.
6820
6821 * intervals.h (text_property_stickiness): New arg `buffer'.
6822 (get_pos_property): Declare.
6823
6824 * intervals.c (get_local_map): Use get_pos_property, to obey
6825 stickiness and empty overlays.
6826 (create_root_interval, graft_intervals_into_buffer): Use BEG.
6827 (merge_properties, intervals_equal, merge_properties_sticky):
6828 Use XCAR, XCDR.
6829 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
6830
1fd1cc2f
RS
68312003-05-17 Richard M. Stallman <rms@gnu.org>
6832
4f9f637a
RS
6833 * minibuf.c (read_minibuf): If buffer is empty, record the default
6834 in the history.
6835 (Fminibuffer_complete_word): When deleting the overlap, take account
6836 of its real position.
6837
6838 * fns.c (map_char_table): Fix previous change.
6839
1fd1cc2f
RS
6840 * syntax.c (find_defun_start):
6841 When open_paren_in_column_0_is_defun_start,
6842 return beginning of buffer.
6843
6844 * lisp.h (map_char_table): Declare added arg.
6845
6846 * fns.c (map_char_table): New arg TABLE gets the master table.
6847 All calls changed.
6848 Process default and inheritance, resorting to Faref if necessary.
6849
6850 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
6851 (Faccessible_keymaps): Pass new arg to map_char_table.
6852
6853 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
6854
6855 * casetab.c (set_case_table): Pass new arg to map_char_table.
6856
6857 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
6858
6859 * lisp.h (specbinding_func): New typedef.
6860 (struct specbinding): Use specbinding_func, to put the `volatile'
6861 in the right place.
6862
6863 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
6864 to avoid GCC warning.
14d87dc9 6865
b6189c3b 68662003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org>
b4bd27c5 6867
14d87dc9 6868 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
b4bd27c5 6869
35fb885d
SM
68702003-05-15 Stefan Monnier <monnier@cs.yale.edu>
6871
6872 * keyboard.c (apply_modifiers): Don't fill the other cache.
6873
9a274fbd
SM
68742003-05-14 Stefan Monnier <monnier@cs.yale.edu>
6875
c55b5fad
SM
6876 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
6877
9a274fbd
SM
6878 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
6879 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
6880 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
6881 (Fset_window_configuration, Fcurrent_window_configuration)
6882 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
6883 (Fpos_visible_in_window_p, mark_window_cursors_off)
6884 (window_internal_height, window_internal_width, Frecenter)
6885 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
6886 (replace_buffer_in_all_windows, init_window_once, init_window)
6887 (syms_of_window, keys_of_window): Move from lisp.h.
6888 * lisp.h: Move window.c declarations to window.h.
6889
6890 * bytecode.c: Include window.h.
6891 * emacs.c: Include window.h.
6892
14d87dc9 6893 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
9a274fbd
SM
6894 (keyremap): Add `parent' field.
6895 (keyremap_step): Use it. Remove `parent' argument.
6896 (read_key_sequence): Setup and use the new `parent' field.
6897
fd93e331
SM
68982003-05-11 Stefan Monnier <monnier@cs.yale.edu>
6899
6900 * keyboard.c (adjust_point_for_property): Ensure termination.
6901
1c4001a1
SM
69022003-05-10 Stefan Monnier <monnier@cs.yale.edu>
6903
6904 * keyboard.c (follow_key): Remove dead variable `did_meta'.
6905 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
6906 duplicated handling of function-key-map and key-translation-map
6907 in read_key_sequence.
6908 (read_key_sequence): Use them.
6909
6910 * keyboard.c (adjust_point_for_property): Try harder to move point
6911 to the non-sticky end of an invisible property.
6912
6913 * xdisp.c (single_display_prop_intangible_p): Make `space' display
6914 property intangible as well.
6915
780379b1
AS
69162003-05-10 Andreas Schwab <schwab@suse.de>
6917
6918 * xmenu.c (single_menu_item): Change last parameter to void* to
6919 avoid warning.
6920
ca2de342
RS
69212003-05-09 Richard M. Stallman <rms@gnu.org>
6922
6923 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
6924 Bind Qinhibit_modification_hooks to t so there will be no GC.
6925 Rename local `tem' to `save_deactivate_mark'.
6926
6927 * eval.c (specpdl_ptr): Declare volatile.
6928 (unbind_to): Copy the whole binding and decrement specpdl_ptr
6929 before doing the work of unbinding it.
6930
6931 * lisp.h (struct specbinding): Declare elements volatile.
6932 (specpdl_ptr): Declare volatile.
6933
6934 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
6935
6936 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
6937 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
6938
347003be
DL
69392003-05-08 Dave Love <fx@gnu.org>
6940
6941 * coding.c (Vlast_coding_system_used): Doc fix.
6942
5adcec23
JR
69432003-05-07 Jason Rumney <jasonr@gnu.org>
6944
6945 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
6946 when system does not support them.
6947
5fe3b8a4
SM
69482003-05-05 Stefan Monnier <monnier@cs.yale.edu>
6949
6950 * fileio.c (Qwrite_region_annotate_functions): New var.
6951 (build_annotations): Use it to process the global part of the hook.
6952 (syms_of_fileio): Init and staticpro it.
6953
6954 * keyboard.c (safe_run_hooks_error): Display a message instead of
6955 silently ignoring the error.
6956
69572003-05-03 Stefan Monnier <monnier@cs.yale.edu>
6958
6959 * keyboard.c (input_available_signal): Mark static.
6960 (menu_bar_items): Use map_keymap.
6961 (menu_bar_one_keymap): Remove.
6962 (menu_bar_item): Adjust arglist (for use in map_keymap).
6963 Properly hide a second binding when not both are keymaps.
6964
6965 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
6966 (single_keymap_panes): Use it and map_keymap.
6967 (single_menu_item): Use skp as well.
6968
6969 * keymap.h (map_keymap_function_t): New type.
6970 (map_keymap): Declare.
6971
6972 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
6973 (map_keymap_call, Fmap_keymap): New functions.
6974 (syms_of_keymap): Defsubr map-keymap.
6975
4b1b4443
JD
69762003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6977
6978 * gtkutil.c (create_dialog, make_widget_for_menu_item)
6979 (make_menu_item, create_menus, xg_update_menu_item): Don't call
6980 ..._with_mnemonic functions for menu items.
6981
1f816871
KH
69822003-05-01 Kenichi Handa <handa@m17n.org>
6983
6984 * coding.c (coding_system_accept_latin_extra_p): Delete this
6985 function.
6986 (find_safe_codings): Pay attention to
6987 the property tranlsation-table-for-encode of each codings.
6988 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
6989
5ed6ba5b
SM
69902003-05-01 Stefan Monnier <monnier@cs.yale.edu>
6991
6992 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
6993
32c06229
SM
69942003-04-30 Stefan Monnier <monnier@cs.yale.edu>
6995
6996 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
6997
6998 * lisp.h (CHECK): Wrap args in parenthesis.
6999 (specbind): Fix doc: symbol = Qnil is not supported any more.
7000
7001 * bytecode.c (Fbyte_code) <unwind-protect>:
7002 Use Fprogn rather than 0 and Qnil.
7003
7004 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
7005 `double', and `triple' modifiers as well.
7006
ed3c3314
RS
70072003-04-30 Richard M. Stallman <rms@gnu.org>
7008
7009 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
7010
7011 * alloc.c (abort_on_gc): New variable.
7012 (Fgarbage_collect): Abort if abort_on_gc is set.
7013
7014 * lisp.h (abort_on_gc): Add decl.
7015
7016 * eval.c (Fsignal): Clear abort_on_gc.
7017
7018 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
32c06229 7019 Reinit FORMAT_START and END before second scan.
ed3c3314
RS
7020
7021 * xdisp.c (move_it_vertically_backward): Do the final big else
7022 even if nlines is 0.
7023
7024 * xdisp.c (redisplay_internal): Finish the per-frame loop
7025 even if redisplay is suspended by input.
7026
0b325c12
AC
70272003-04-24 Andrew Choi <akochoi@shaw.ca>
7028
7029 * macterm.c (x_list_fonts): Return all fonts that match if
7030 maxnames = -1.
7031
4e837cd0
KH
70322003-04-25 Kenichi Handa <handa@m17n.org>
7033
7034 * syntax.c (skip_chars): Fix previous change.
7035
9af7511a
KH
70362003-04-24 Kenichi Handa <handa@m17n.org>
7037
7038 * syntax.c (skip_chars): Make the code faster by using the common
7039 technique of *p, *stop, and *endp.
7040
e3b2c21f
JD
70412003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7042
7043 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
32c06229 7044 tool_bar_items so GTK tool bar expose callback does not access items
e3b2c21f
JD
7045 being updated.
7046
32c06229
SM
70472003-04-19 Stefan Monnier <monnier@cs.yale.edu>
7048
7049 * eval.c (Fapply): Undo last change and add a comment about why.
7050
c6464167
MB
70512003-04-18 Miles Bader <miles@gnu.org>
7052
7053 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
7054 pickier PARSE_MULTIBYTE_SEQ.
7055
e509f168
SM
70562003-04-17 Stefan Monnier <monnier@cs.yale.edu>
7057
7058 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
7059 Use XCDR, XCAR, CONSP.
7060 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
7061 (Fapply): Remove unnecessary GCPRO.
7062
7063 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
7064
7065 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
7066
7067 * buffer.h: Don't hardcode BEG==1.
7068
7069 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
7070
5ceea398
RS
70712003-04-16 Richard M. Stallman <rms@gnu.org>
7072
7073 * xdisp.c (try_window, try_window_reusing_current_matrix):
7074 When at end of window, set window_end_pos to Z-ZV.
7075
7076 * buffer.c (Foverlay_recenter): Doc fix.
7077
e509f168
SM
70782003-04-14 Stefan Monnier <monnier@cs.yale.edu>
7079
7080 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
7081
d243e605
AC
70822003-04-14 Andrew Choi <akochoi@shaw.ca>
7083
7084 * macterm.c (mac_check_for_quit_char): Don't check more often than
7085 once a second.
7086
6901b111
SM
70872003-04-11 Stefan Monnier <monnier@cs.yale.edu>
7088
7089 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
7090 specially, so that they can't hide an implicit switch-frame event.
7091 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
7092 (head_table): Use switch-frame as event_kind for select-window.
7093 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
7094
7095 * editfns.c (Fformat): Lisp_Object/int mixup.
7096 (format2): Remove unused var numargs.
7097
e301806f 70982003-04-11 Kenichi Handa <handa@m17n.org>
aa95b710 7099
6901b111 7100 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
aa95b710
KH
7101 (Qafter_insert_file_set_coding): New variable.
7102 (syms_of_fileio): Initialize and staticpro it. Delete declaration
7103 for after-insert-file-adjust-coding-function.
7104 (Finsert_file_contents): Call Qafter_insert_file_set_coding
7105 instead of Vafter_insert_file_adjust_coding_function.
7106
38914424
KH
71072003-04-11 Kenichi Handa <handa@m17n.org>
7108
7109 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
7110
7111 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
7112 string. Callers changed.
7113
71142003-04-10 Kenichi Handa <handa@m17n.org>
a288d979 7115
6901b111 7116 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
a288d979 7117 (syms_of_fileio): Declare it as a lisp variable.
6901b111
SM
7118 (Finsert_file_contents):
7119 Call Vafter_insert_file_adjust_coding_function before calling
a288d979
KH
7120 decode-format.
7121
f979dc05
JD
71222003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7123
7124 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
7125 get GtkAdjustment as widget now is a GtkRange.
7126
7127 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
7128 GtkRange to avoid memory leak.
7129
f8c6b4c2 71302003-04-09 Kenichi Handa <handa@m17n.org>
cb98871c 7131
50ebc53d
KH
7132 * xfaces.c (Vface_font_rescale_alist): New variable.
7133 (struct font_name): New member rescale_ratio.
7134 (font_rescale_ratio): New function.
6901b111 7135 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
50ebc53d
KH
7136 (better_font_p): On comparing point sized, pay attention to
7137 recale_ratio member of fonts.
7138 (build_scalable_font_name): Reflect font->rescale_ratio in the
7139 font name.
6901b111 7140 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
50ebc53d 7141
cb98871c
KH
7142 * lread.c (read1): Before calling index, check if the 2nd
7143 arguemnt is in ASCII range.
7144
4773b8ca
RS
71452003-04-08 Richard M. Stallman <rms@gnu.org>
7146
b0ada147
RS
7147 * fileio.c (Ffile_symlink_p): Doc fix.
7148
7149 * editfns.c (Fformat): Translate positions of text properties
7150 in the format string to apply them to the result.
7151
4773b8ca
RS
7152 * fileio.c (Finsert_file_contents): Doc fix.
7153 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
7154
71552003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
6901b111 7156
4773b8ca
RS
7157 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
7158
e8f25745 71592003-04-08 Steven Tamm <steventamm@mac.com>
b0ada147 7160
e8f25745
ST
7161 * mac.c (init_mac_osx_environment): Switch libexec and bin so
7162 that self-contained application finds libexec files.
7163
f8c6b4c2 71642003-04-08 Kenichi Handa <handa@m17n.org>
2310d84c 7165
6901b111
SM
7166 * coding.c (code_convert_region_unwind):
7167 Set Vlast_coding_system_used to the argument.
2310d84c
KH
7168 (code_convert_region): If post-read-conversion function changed
7169 the value of last-coding-sytem, keep the new value in
7170 coding->symbol so that it won't be overridden.
7171 (run_pre_post_conversion_on_str): Likewise.
7c086845
KH
7172 (coding_system_accept_latin_extra_p): New function.
7173 (find_safe_codings): Pay attention to characters registered in
7174 latin-extra-code-table.
2310d84c 7175
39c9a034
TTN
71762003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
7177
7178 * Makefile.in (md5.o): Add missing dependency info.
7179
eb67c5d6
RS
71802003-04-06 Richard M. Stallman <rms@gnu.org>
7181
7182 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
7183
7184 * marker.c (verify_bytepos): New function.
7185
7186 * intervals.c (set_intervals_multibyte_1): When becoming
7187 multibyte, adjust right and left child sizes to a whole set of
7188 characters. If an interval gets zero total-length, delete it.
7189 If an interval consists of just its children, delete one of them.
7190
7191 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
7192 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
39c9a034 7193
eb67c5d6
RS
7194 * alloc.c: (VALIDATE_LISP_STORAGE): Macro deleted.
7195 All calls deleted.
7196 (lisp_malloc): Do the work here directly.
7197
b1f81fc5
JB
71982003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
7199
7200 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
7201 char tables.
7202
72032003-04-04 Kenichi Handa <handa@m17n.org>
aa8b70ae
KH
7204
7205 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
7206 destructively change "%S" to "%s".
7207
774666fb
MB
72082003-04-03 Miles Bader <miles@gnu.org>
7209
7210 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
7211 always set.
7212
19c37f01
DL
72132003-04-01 Dave Love <fx@gnu.org>
7214
7215 * xfns.c (xpm_lookup_color): Grok "opaque".
7216
2f4b24c3
AC
72172003-03-31 Andrew Choi <akochoi@shaw.ca>
7218
7219 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
7220 parent window ID.
7221
7222 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
7223
7224 * macterm.h (struct mac_output): Define x_pixels_diff and
7225 y_pixels_diff.
b1f81fc5 7226
9443fcf6
JB
72272003-03-31 Juanma Barranquero <lektu@terra.es>
7228
7229 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
7230 blockinput.h and files included from it.
7231
e072891b
KS
72322003-03-31 Kim F. Storm <storm@cua.dk>
7233
7234 The following changes consolidates the common code related to
7235 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
7236 files into frame.c.
9443fcf6 7237
e072891b
KS
7238 * frame.c: Include blockinput.h.
7239 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
7240 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
7241 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
7242 related vars here.
7243 (struct frame_parm_table, frame_parms): New table for describing
7244 frame parameters and their associated Q-variable.
7245 The order of the parameters corresponds to the sequence of the
7246 frame_parm_handlers table in redisplay_interface.
7247 (x_fullscreen_move, x_set_frame_parameters)
7248 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
7249 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
7250 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
7251 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
7252 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
7253 Generic functions for processing of frame parameters.
7254 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
7255 (display_x_get_resource, x_get_resource_string): Functions for
7256 generic access to X resources.
7257 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
7258 (x_default_parameter, Fx_parse_geometry): Functions for generic
7259 access to frame parameters.
6901b111
SM
7260 (x_figure_window_size): Generic calculation of frame size.
7261 Fixed to add space needed for tool bar. Also setup size_hint_flags.
e072891b
KS
7262 (syms_of_frame): Intern and staticpro frame parameter variables.
7263 Defvar_lisp Vx_resource_class and Vx_resource_name here.
7264 Defsubr Sx_get_resource and Sx_parse_geometry.
9443fcf6 7265
e072891b
KS
7266 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
7267 parameter related vars defined in frame.c.
7268 (EMACS_CLASS): Define here.
7269 (enum FULLSCREEN_*): Define here.
7270 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
7271 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
7272 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
7273 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
7274 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
7275 (x_set_visibility, x_set_autoraise, x_set_autolower)
7276 (x_set_unsplittable, x_set_vertical_scroll_bars)
7277 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
7278 (x_figure_window_size): Add prototypes.
7279
7280 * dispextern.h (frame_parm_handler): New typedef.
7281 (struct redisplay_interface): New member frame_parm_handlers.
7282 (enum resource_types): Move declaration here.
7283 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
7284 (x_default_parameter): Add prototypes.
7285
7286 * window.c: Remove extern decl for frame parameter vars.
7287 (change_window_heights): New generic function;
7288 replaces x_change_window_heights. All users changed.
7289
7290 * window.h (change_window_heights): Add prototype.
7291
7292 * xfaces.c: Remove extern decl for frame parameter vars.
7293
7294 * xterm.h (EMACS_CLASS): Remove. Use generic define.
7295 (struct w32_display_info): Fix type of xrdb member.
7296 (enum FULLSCREEN_*): Remove.
7297 Remove prototypes for generic functions (in frame.h).
7298
7299 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
7300 parameters now defined in frame.h and frame.c.
f63fd14e 7301 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
7302 (enum x_frame_parms): Remove (bogus, unused enum).
7303 (check_x_display_info): Make non-static (for frame.c).
7304 (struct x_frame_parm_table, x_frame_parms): Remove.
7305 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
7306 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
7307 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
7308 (x_change_window_heights, x_set_autoraise, x_set_autolower)
7309 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
7310 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
7311 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
7312 Remove. Use generic functions instead.
7313 (enum resource_types): Remove.
7314 (x_set_scroll_bar_default_width): New global function (for frame.c).
7315 (Fx_create_frame): Depend on x_figure_window_size to add space for
7316 toolbar and setup size_hint_flags.
7317 (x_frame_parm_handlers): New table for redisplay_interface.
7318 (syms_of_xfns): Don't intern/staticpro removed vars.
9443fcf6 7319
e072891b 7320 * xterm.c: Remove unnecessary extern declarations.
f63fd14e 7321 (x_fullscreen_adjust): Remove. Use generic instead.
e072891b
KS
7322 (x_redisplay_interface): Add x_frame_parm_handlers member.
7323
7324 * w32gui.h (XrmDatabase): New (dummy) typedef.
7325
7326 * w32term.h (EMACS_CLASS): Remove. Use generic define.
7327 (struct w32_display_info): Fix type of xrdb member.
7328 (enum FULLSCREEN_*): Remove.
7329 (x_fullscreen_adjust): Remove prototype.
7330
7331 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
7332 parameters now defined in frame.h and frame.c.
f63fd14e 7333 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
7334 (enum x_frame_parms): Remove (bogus, unused enum).
7335 (check_x_display_info): Make non-static (for frame.c).
7336 (struct x_frame_parm_table, x_frame_parms): Remove.
7337 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
7338 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
7339 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
7340 (x_change_window_heights, x_set_autoraise, x_set_autolower)
7341 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
7342 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
7343 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
7344 Remove. Use generic functions instead.
7345 (enum resource_types): Remove.
7346 (x_set_scroll_bar_default_width): New global function (for frame.c).
7347 (Fx_create_frame): Depend on x_figure_window_size to add space for
7348 toolbar and setup size_hint_flags.
7349 (w32_frame_parm_handlers): New table for redisplay_interface.
7350 (syms_of_w32fns): Don't intern/staticpro removed vars.
9443fcf6 7351
e072891b
KS
7352 * w32term.c: Remove unnecessary extern declarations.
7353 (x_fullscreen_adjust): Remove. Use generic instead.
7354 (x_redisplay_interface): Add w32_frame_parm_handlers member.
7355
7356 * w32reg.c (x_get_string_resource): Use XrmDatabase.
7357
7358 * macgui.h (XrmDatabase): New (dummy) typedef.
7359
7360 * macterm.h (EMACS_CLASS): Remove.
7361 (struct mac_display_info): Add xrdb member.
7362 (struct mac_output): Add want_fullscreen member.
7363
7364 * macfns.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 (check_x_display_info): Make non-static (for frame.c).
7368 (struct x_frame_parm_table, x_frame_parms): Remove.
7369 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
7370 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
7371 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
7372 (x_change_window_heights, x_set_autoraise, x_set_autolower)
7373 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
7374 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
7375 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
7376 Remove. Use generic functions instead.
7377 (enum resource_types): Remove.
7378 (x_set_scroll_bar_default_width): New global function (for frame.c).
7379 (mac_frame_parm_handlers): New table for redisplay_interface.
7380 (syms_of_macfns): Don't intern/staticpro removed vars.
9443fcf6 7381
e072891b
KS
7382 * macterm.c: Remove unnecessary extern declarations.
7383 (x_redisplay_interface): Add mac_frame_parm_handlers member.
7384
3e6a560b
KS
7385 * Makefile.in (frame.o): Add dependency on blockinput.h and files
7386 included from it (atimer.h and systime.h).
7387
7b7b454e
AS
73882003-03-30 Andreas Schwab <schwab@suse.de>
7389
7390 * xdisp.c (x_insert_glyphs): Fix swapped width and height
7391 parameters for shift_glyphs_for_insert.
7392
7393 * macterm.c (x_redisplay_interface): Add missing entry for
7394 draw_vertical_window_border.
7395
beb402de
KG
73962003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
7397
7398 * fileio.c (Fexpand_file_name): In the no-handler case, after
7399 expanding, look again for a handler and invoke it. This is needed
7400 for filenames like "/foo/../user@host:/bar/../baz" -- the first
7401 expansion produces "/user@host:/bar/../baz" which needs to be
7402 expanded again for the finame result "/user@host:/baz".
7403
b676f356
JD
74042003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7405
7406 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
7407 of area to be redrawn for better performance.
7408
3c671a56
SM
74092003-03-28 Stefan Monnier <monnier@cs.yale.edu>
7410
7411 * xterm.c (take_vertical_position_into_account): Remove.
7412 (xt_action_hook): Call set_vertical_scroll_bar if needed.
7413 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
7414 (xm_scroll_callback, x_create_toolkit_scroll_bar)
7415 (x_set_toolkit_scroll_bar_thumb): Simplify.
7416 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
7417 (XTread_socket): Remove unused var.
7418 (x_make_frame_invisible): Replace goto with else.
7419
7420 * xdisp.c (set_vertical_scroll_bar): New fun.
7421 (redisplay_window): Use it.
7422
84f2e615
RS
74232003-03-26 Richard M. Stallman <rms@gnu.org>
7424
7425 * xdisp.c (update_tool_bar): Recompute tool bar if
7426 update_mode_lines is set. Set w->update_mode_line
7427 only if the tool bar contents actually change.
7428 (update_menu_bar): Undo previous change.
7429
70b6104c
JD
74302003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7431
5fd6f727
JD
7432 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
7433 (xg_frame_set_char_size): Calculate scroll bar width before frame
7434 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
7435 (xg_separator_p): Check for all documented separator types.
7436 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
7437 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
7438
70b6104c
JD
7439 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
7440 so tool bar gets updated.
7441
d9b36d19
SM
74422003-03-26 Stefan Monnier <monnier@cs.yale.edu>
7443
7444 * data.c (store_symval_forwarding): Re-instate part of the code
7445 that was deleted with too much enthusiasm.
7446
74472003-03-25 Stefan Monnier <monnier@cs.yale.edu>
7448
7449 * data.c (store_symval_forwarding): Delete special read-only
7450 hack for type == -1, since we now use ->constant instead.
7451 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
7452
7453 * buffer.c (overlays_in): Declare static.
7454 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
7455 `constant' field rather than the variable's `type' field.
7456
365fa1b3
AC
74572003-03-24 Andrew Choi <akochoi@shaw.ca>
7458
7459 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
7460
7461 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
7462
7463 * fns.c [MAC_OSX]: Do not redefine vector.
7464
7465 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
7466
7467 * macgui.h: Remove definition of No_Cursor.
7468
d9b36d19 7469 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
365fa1b3
AC
7470
7471 * xdisp.c: Define No_Cursor.
7472 (x_write_glyphs, notice_overwritten_cursor)
7473 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
7474 (note_mouse_highlight): Remove Mac-specific code.
7475 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
d9b36d19 7476
c0bcce6f
JPW
74772003-03-24 John Paul Wallington <jpw@gnu.org>
7478
7479 * xdisp.c (redisplay_window): If mini window's buffer is not
7480 empty, then redisplay it like other windows.
7481
a526b96c
KS
74822003-03-23 Kim F. Storm <storm@cua.dk>
7483
7484 * w32term.c (w32_draw_window_cursor): Fix last change.
7485
37ab321e
KH
74862003-03-23 Kenichi Handa <handa@m17n.org>
7487
a526b96c
KS
7488 * alloc.c (make_string_from_bytes, make_specified_string):
7489 Add `const' for the arg CONTENTS.
37ab321e
KH
7490
7491 * lisp.h (make_string_from_bytes, make_specified_string):
7492 Prototypes adjusted.
7493
7863d625
JD
74942003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7495
a526b96c 7496 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
fd4c9408 7497
7863d625
JD
7498 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
7499 (XG_SB_RANGE): New define.
7500
7501 * gtkutil.c (xg_fixed_handle_expose): New function.
7502 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
7503 expose events.
7504 (xg_update_scrollbar_pos): Take two more arguments, left and width
7505 of scroll bar including borders.
7506 Clear left and right part outside scroll bar separately as some
7507 themes have bars that are not an even number of pixels.
d9b36d19 7508 Don't set reallocate_redraws, don't call
7863d625
JD
7509 gdk_window_process_all_updates.
7510 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
7511 so no need to change it. Calculate size and value with XG_SB_RANGE.
7512
d9b36d19
SM
7513 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
7514 Pass left and width of scroll bar including borders to
7863d625
JD
7515 xg_update_scrollbar_pos.
7516
af0ad939
TTN
75172003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
7518
7519 * Makefile.in: Make sure space precedes end-of-line backslashes.
7520
b22139fd
KS
75212003-03-22 Kim F. Storm <storm@cua.dk>
7522
7523 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
7524 Add generic versions here. Remove system specific versions
7525 defined elsewhere.
7526
7527 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
7528 Add prototypes.
7529
6e6410cf
KS
7530 * xterm.h (STORE_NATIVE_RECT): New macro.
7531
5c9cc435
KS
75322003-03-21 Kim F. Storm <storm@cua.dk>
7533
00c64fab
SM
7534 * xdisp.c (get_glyph_string_clip_rect):
7535 Use FRAME_INTERNAL_BORDER_WIDTH.
5c9cc435
KS
7536
7537 * dispextern.h (struct redisplay_interface): Add active_p
7538 argument to draw_window_cursor member. All uses changed.
7539
acd37560
KS
75402003-03-21 Kim F. Storm <storm@cua.dk>
7541
7542 The following changes consolidate code related to writing and
7543 inserting glyphs, exposing frame, the tool bar, the mouse face,
7544 the output cursor, and help echo from xterm.c, w32term.c and
7545 macterm.c into xdisp.c. It also generalizes the use of the
7546 window_part enum instead of using numeric values throughout.
af0ad939 7547
acd37560
KS
7548 * xdisp.c: Consolidate gui-independent code here.
7549 Include keymap.h.
7550 (Qhelp_echo): Import.
7551 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
7552 (help_echo_string, help_echo_window, help_echo_object)
7553 (previous_help_echo_string, help_echo_pos): Declare here.
7554 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
7555 (estimate_mode_line_height): Define here. Handle windowing
7556 systems directly (without using estimate_mode_line_height_hook).
7557 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
7558 (update_window_cursor, update_cursor_in_window_tree)
7559 (fast_find_position, fast_find_string_pos)
7560 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
7561 (expose_area, expose_line, expose_overlaps, expose_window)
7562 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
7563 declared static as they are only used locally in xdisp.c.
7564 (draw_glyphs): Rename from x_draw_glyphs and make static.
7565 (tool_bar_item_info, notice_overwritten_cursor): Make static.
7566 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
7567 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
af0ad939 7568 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
acd37560
KS
7569 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
7570 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
7571 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
7572 (note_mouse_highlight, x_clear_window_mouse_face)
7573 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
7574 (x_intersect_rectangles): New generic functions for use by xdisp.c
7575 and GUI front-ends.
7576 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
7577 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
7578
7579 * dispextern.h (Display_Info): Generic typedef for *_display_info.
7580 (NativeRectangle): Generic typedef for rectangle type.
7581 (enum window_part): Move here from window.c.
7582 (struct redisplay_interface): New members flush_display_optional,
7583 define_frame_cursor, clear_frame_area, draw_window_cursor,
7584 draw_vertical_window_border, shift_glyphs_for_insert.
7585 Rename member clear_mouse_face to clear_window_mouse_face.
7586 (estimate_mode_line_height_hook): Remove hook.
7587 (auto_raise_tool_bar_buttons_p): Don't declare extern.
7588 (tool_bar_item_info): Remove prototype.
7589 (help_echo_string, help_echo_window, help_echo_object)
7590 (previous_help_echo_string, help_echo_pos)
7591 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
7592 (x_stretch_cursor_p, output_cursor): Declare extern.
7593 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
7594 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
7595 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
7596 (display_and_set_cursor, set_output_cursor, x_cursor_to)
7597 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
7598 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
7599 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
7600 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
7601 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
7602 Add prototypes.
7603 (mode_line_string, marginal_area_string): Fix prototypes.
7604
7605 * window.c (enum window_part): Move to dispextern.h.
7606 (coordinates_in_window): Use enum window_part member names
7607 instead of numbers to describe return value.
7608 (struct check_window_data): Change part member to window_part.
7609 (check_window_containing): Return window_part unaltered.
7610 (window_from_coordinates): Change part arg from int to enum
7611 window_part. Allow part arg to be null. All users changed.
7612
7613 * window.h (window_from_coordinates): Fix prototype.
7614
7615 * term.c (estimate_mode_line_height): Move to xdisp.c.
7616
7617 * keyboard.c (make_lispy_event): Use enum window_part.
7618
7619 * dispnew.c (mode_line_string, marginal_area_string): Use enum
7620 window_part instead of int in arg list. Users changed.
7621
7622 * xterm.h (No_Cursor): Declare as None for X.
7623 (struct mac_output): Replace member cross_cursor by hand_cursor.
af0ad939 7624
acd37560
KS
7625 * xterm.c: Remove consolidated defines and code.
7626 (BETWEEN): Remove unused macro.
7627 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
7628 (x_define_frame_cursor, x_clear_frame_area)
7629 (x_draw_window_cursor): New X-specific functions for RIF.
7630 (x_redisplay_interface): Add new members.
7631
7632 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
7633
7634 * w32term.h (struct w32_output): Remove cross_cursor member.
7635
7636 * w32term.c: Remove consolidated defines and code.
7637 (BETWEEN): Remove unused macro.
7638 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
7639 (w32_define_frame_cursor, w32_clear_frame_area)
7640 (w32_draw_window_cursor): New W32-specific functions for RIF.
7641 (w32_redisplay_interface): Add new members.
7642
a64387ee 7643 * w32gui.h (No_Cursor): Define as 0 for W32.
acd37560
KS
7644 (XRectangle): Add X compatible rectangle type.
7645 (NativeRectangle): Declare as RECT for W32.
7646 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
7647
7648 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
7649
7650 * w32console.c: Remove consolidated defines and code.
af0ad939 7651
acd37560
KS
7652 * msdos.h (Display_Info): Add generic typedef.
7653
7654 * msdos.c: Remove consolidated defines and code.
7655 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
7656
7657 * macterm.h (struct mac_output): Replace member cross_cursor by
7658 hand_cursor.
7659 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
7660
7661 * macterm.c: Remove consolidated defines and code.
7662 (BETWEEN): Remove unused macro.
7663 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
7664 (mac_define_frame_cursor, mac_clear_frame_area)
7665 (mac_draw_window_cursor): New Mac-specific functions for RIF.
7666 (x_redisplay_interface): Add new members.
7667
7668 * macgui.h (No_Cursor): Define as 0 for Mac.
7669 (XRectangle): Add X compatible rectangle type.
7670 (NativeRectangle): Declare as Rect for Mac.
7671 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
7672
204ccab1
KS
7673 * macfns.c (x_set_mouse_color): Setup hand_cursor.
7674 (x_set_cursor_color): Use x_display_and_set_cursor.
acd37560 7675
9443fcf6 7676 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
acd37560
KS
7677 included from it. Add dependency on keymap.h.
7678
7679 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
7680
8ba01a70 76812003-03-21 Kenichi Handa <handa@m17n.org>
3f817c73
KH
7682
7683 * fileio.c (Fexpand_file_name): Fix previous change.
7684
8ba01a70 76852003-03-19 Kenichi Handa <handa@m17n.org>
4f497b0a
KH
7686
7687 * fileio.c (Ffile_name_directory): Reconstruct file name by
7688 make_specified_string.
7689 (Ffile_name_nondirectory, Ffile_name_as_directory)
7690 (Fdirectory_file_name, Fexpand_file_name)
7691 (Fsubstitute_in_file_name): Likewise.
7692 (Fread_file_name): Compare decoded homedir with DIR and
7693 DEFAULT_FILENAME.
7694
7695 * alloc.c (make_specified_string): If NCHARS is negative, count
7696 the number of characters.
7697
19536747
JD
76982003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7699
de38ae5a
JD
7700 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
7701 all widgets.
7702
19536747
JD
7703 * gtkutil.h: Removed xg_ignore_next_thumb.
7704
37ab321e 77052003-03-18 Kenichi Handa <handa@m17n.org>
cb0d4562
KH
7706
7707 * coding.c (Vchar_coding_system_table): Remove this variable.
7708 (Vcoding_system_safe_chars): New variable.
7709 (intersection): Remove this function.
7710 (find_safe_codings): Don't use Vchar_coding_system_table, but try
7711 all codings in SAFE_CODINGS.
00c64fab 7712 (Ffind_coding_systems_region_internal): Adjust for the change of
cb0d4562
KH
7713 find_safe_codings. Get generic coding systems from
7714 Vcoding_system_safe_chars.
7715 (Fdefine_coding_system_internal): New function.
7716 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
7717 Initialize and staticpro Vcoding_system_safe_chars.
7718
17097258
JD
77192003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7720
2a2071c3
JD
7721 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
7722 equal old values before updating.
7723
17097258
JD
7724 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
7725
7726 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
7727
77282003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7729
7730 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
7731 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
7732 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
7733 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
7734 (xg_create_scroll_bar): Pass bar to button event callback.
7735 (xg_find_top_left_in_fixed): New function.
7736 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
7737 whole scroll bar area. Get old position with
7738 xg_find_top_left_in_fixed, calculate and only clear needed areas.
7739 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
7740 dragging is in progress. Calculate whole as for Motif.
7741 Remove code that saved last values. Call gtk_range functions to
7742 set scroll bar sizes.
7743
7744 * gtkutil.h: Removed xg_ignore_next_thumb.
7745
8cb9dfbf
JB
77462003-03-17 Juanma Barranquero <lektu@terra.es>
7747
7748 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
7749 and files included from it.
7750
00c64fab
SM
77512003-03-18 Stefan Monnier <monnier@cs.yale.edu>
7752
7753 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
7754 multiple occurrences of the same keymap under different prefixes.
7755 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
7756
c45bb3b2
JR
77572003-03-16 Jason Rumney <jasonr@gnu.org>
7758
7759 * w32gui.h: Use HDC for Display.
7760
7761 * w32term.c (w32_encode_char): Prevent double-byte chars from
7762 crashing Emacs.
7763
7764 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
7765 as binary.
7766
2a6d0874
JB
77672003-03-16 Juanma Barranquero <lektu@terra.es>
7768
7769 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
7770
03eb5fab
KS
77712003-03-16 Kim F. Storm <storm@cua.dk>
7772
7773 The following changes consolidate some of the gui-independent
7774 parts of the processing and drawing of "glyph strings" from
7775 xterm.c, w32term.c, and macterm.c into xdisp.c.
2a6d0874 7776
03eb5fab
KS
7777 * dispextern.h (struct glyph): Reduce face_id member from 22 to
7778 21 bits (this reduces number of faces from 4M to 2M).
7779 Replace W32 specific w32_font_type member (2 bits) by generic
7780 font_type member (3 bits) for portability.
7781 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
7782 (enum draw_glyphs_face): Define here.
7783 (struct glyph_string): Define here. Merge W32 and X versions.
7784 (struct redisplay_interface): New members per_char_metric,
7785 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
7786 (VCENTER_BASELINE_OFFSET): Define here.
7787 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
7788 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
7789
7790 * xdisp.c: Consolidate gui-independent "glyph string" code here.
7791 (dump_glyph_string): Moved here.
7792 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
7793 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
7794 (fill_composite_glyph_string, fill_glyph_string)
7795 (fill_image_glyph_string, fill_stretch_glyph_string)
7796 (left_overwritten, left_overwriting, right_overwritten)
7797 (right_overwriting, get_char_face_and_encoding)
7798 (set_glyph_string_background_width, compute_overhangs_and_x)
7799 (append_glyph, append_composite_glyph, produce_image_glyph)
7800 (take_vertical_position_into_account, append_stretch_glyph)
7801 (produce_stretch_glyph): New generic functions (based on X version).
7802 Call platform specific functions through rif.
7803 (INIT_GLYPH_STRING): New macro, hides W32 details.
7804 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
7805 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
7806 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
7807 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
7808 (notice_overwritten_cursor):
7809 Generic functions exported to platform modules. Users changed.
7810
7811 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
7812 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
7813 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
fad49844 7814 New macros for consolidated code.
2a6d0874 7815
03eb5fab
KS
7816 * xterm.c: Remove consolidated defines and code.
7817 (x_per_char_metric, x_encode_char)
7818 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
7819 (x_redisplay_interface): Add new members.
7820
7821 * w32gui.h (Display): Add dummy typedef for consolidation.
7822 (XChar2b): Define alias for wchar_t for consolidation.
7823 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
7824
7825 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
2a6d0874 7826 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
03eb5fab
KS
7827 New macros for consolidation.
7828
fad49844 7829 * w32term.c: Remove consolidated defines and code.
03eb5fab
KS
7830 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
7831 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
7832 (w32_per_char_metric): Change font_type arg to int for RIF.
7833 (w32_encode_char): Return int according to RIF requirements.
7834 (w32_compute_glyph_string_overhangs): Adapt to RIF.
7835 (w32_get_glyph_overhangs): New function for RIF. Uses generic
7836 x_get_glyph_overhangs.
7837 (w32_redisplay_interface): Add new members.
7838
7839 * macgui.h (XChar2b): Move typedef here for consolidation.
7840 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
7841
7842 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
7843 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
7844 consolidation.
7845
7846 * macterm.c: Remove consolidated defines and code.
7847 (mac_per_char_metric): New function for RIF.
00c64fab 7848 (mac_encode_char): Adapt to new RIF requirements.
03eb5fab
KS
7849 (mac_compute_glyph_string_overhangs): Adapt for RIF.
7850 (x_redisplay_interface): Add new members.
7851
00c64fab
SM
78522003-03-15 Stefan Monnier <monnier@cs.yale.edu>
7853
7854 * keymap.c (Vmenu_events): New var.
7855 (syms_of_keymap): Initialize it.
7856 (where_is_internal): Check more carefully what is a menu event.
7857
225c7a07
RS
78582003-03-14 Richard M. Stallman <rms@gnu.org>
7859
7860 * lread.c (read1): After #!, exit loop on eof.
7861
cea9be54
JD
78622003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7863
9ea0e54d
JD
7864 * gtkutil.h: Add declaration for xg_frame_cleared.
7865
0cb35f4e
JD
7866 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
7867
cea9be54
JD
7868 * gtkutil.c (struct xg_last_sb_pos): New structure.
7869 (handle_fixed_child): New function.
7870 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
7871 and force a redraw on them.
7872 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
7873 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
7874 so we can avoid unneeded redraws.
7875 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
7876 and force a redraw on the scroll bar.
7877 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
7878 if xg_last_sb_pos shows the positions are up to date.
0cb35f4e 7879 (xg_frame_cleared): New function.
cea9be54 7880
20b853f3
KH
78812003-03-13 Kenichi Handa <handa@m17n.org>
7882
7883 * coding.c (Fdetect_coding_region): Fix docstring.
7884 (Fdetect_coding_string): Fix docstring.
7885
7a555aff
AS
78862003-03-13 Andreas Schwab <schwab@suse.de>
7887
25cc0080
AS
7888 * gtkutil.c: Add prototype for create_menus.
7889
30225431
AS
7890 * data.c (long_to_cons): Fix type of top.
7891
7892 * xselect.c (selection_data_to_lisp_data): Use int instead of
7893 long for an integer of size 4.
7894
7a555aff 7895 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
30225431 7896 (xg_tool_bar_help_callback): Likewise.
7a555aff 7897
a3e4741f
AS
78982003-03-12 Andreas Schwab <schwab@suse.de>
7899
7900 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
7901
9668be7c
KS
79022003-03-12 Kim F. Storm <storm@cua.dk>
7903
03eb5fab 7904 The following changes consolidate the fringe handling from
9668be7c 7905 xterm.c, w32term.c, and macterm.c into xdisp.c.
00a88f32 7906
9668be7c
KS
7907 * xdisp.c: Consolidate fringe handling code here.
7908 (left_bits, right_bits, continued_bits, continuation_bits)
7909 (ov_bits, zv_bits): Define fringe bitmaps.
7910 (fringe_bitmaps): New array holding fringe bitmaps.
7911 (draw_fringe_bitmap): Draw a specific bitmap; call display
7912 specific drawing routine via rif->draw_fringe_bitmap.
7913 (draw_row_fringe_bitmaps): Generic replacement for
7914 x_draw_row_fringe_bitmaps; all callers changed.
7915 (compute_fringe_widths): Generic replacement for
7916 x_compute_fringe_widths; all callers changed.
7917
7918 * dispextern.h (enum fringe_bitmap_type): Define here.
7919 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
7920 (fringe_bitmaps): Declare extern.
7921 (struct redisplay_interface): New member draw_fringe_bitmap.
7922 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
7923
7924 * xterm.c: Remove generic fringe code.
7925 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
7926 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
7927
7928 * w32term.c: Remove generic fringe code.
7929 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
7930 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
00a88f32 7931
9668be7c
KS
7932 * macterm.c: Remove generic fringe code.
7933 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
7934 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
7935
00a88f32
SM
79362003-03-11 Stefan Monnier <monnier@cs.yale.edu>
7937
7938 * print.c (Fprin1_to_string): Return unibyte string if possible.
7939
1d1de695
DK
79402003-03-09 David Kastrup <dak@gnu.org>
7941
7942 * process.c (read_process_output): We have allocated enough space
7943 for readmax and carryover, so actually use the alloted space.
7944
257f40f2
JD
79452003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7946
7947 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
7948 toolkit scrollbar click.
7949
7950 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
7951 for USE_GTK.
7952 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
7953 also.
7954 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
7955 scrollbar and control is pressed, call x_scroll_bar_handle_click.
00a88f32 7956
257f40f2
JD
7957 * gtkutil.h: Declare xg_get_scroll_id_for_window.
7958
7959 * gtkutil.c (xg_get_scroll_id_for_window): New function.
7960 (xg_tool_bar_item_expose_callback): New function.
7961 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
7962 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
7963 on the tool bar widget.
7964 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
7965 to expose on the tool bar item widgets.
7966
15213141
JD
79672003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7968
26b74a0b 7969 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
00a88f32 7970 struct image* when deciding to update (struct image* may have been
26b74a0b
JD
7971 deleted from the image cache).
7972
15213141
JD
7973 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
7974 the event isn't for a frame (i.e. for dialogs).
7975
20b853f3 79762003-03-07 Kenichi Handa <handa@m17n.org>
cb681b34
KH
7977
7978 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
7979 composition components reaches the limit, terminate composing.
7980 (COMPOSITION_OK): New macro.
00a88f32 7981 (detect_coding_iso2022): Use it if an escape sequence for
cb681b34
KH
7982 composition is found.
7983 (coding_restore_composition): Adjust the number of composition
7984 components if it is not sane.
7985
c9029fe5
JB
79862003-03-06 Juanma Barranquero <lektu@terra.es>
7987
7988 * w32term.h (struct w32_display_info): Add xrdb member to support
7989 passing resources via -xrm on Windows.
7990
7991 * w32term.c (w32_make_rdb): New function.
7992 (w32_term_init): Use it to initialize xrdb member of w32_display_info
7993 struct. Delete leftover code.
7994
7995 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
7996 for resources passed on the command line.
7997
7998 * w32reg.c (w32_get_rdb_resource): New function.
7999 (x_get_string_resource): Use it, so resources passed with -xrm
8000 supercede the ones in the registry.
8001
9d00001f
JD
80022003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8003
8004 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
8005 instead of x_top_window_to_frame.
8006
ca2417b9
JD
80072003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8008
8009 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
8010 when restarting Emacs.
8011
5b20caf0
RS
80122003-03-03 Richard M. Stallman <rms@gnu.org>
8013
8014 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
8015 to run kill-buffer-query-functions.
8016 (Qkill_buffer_query_functions): New var.
8017 (syms_of_buffer): Init and staticpro it.
8018
58e91b77
JD
80192003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8020
8021 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
8022
932357b4
KS
80232003-02-25 Kim F. Storm <storm@cua.dk>
8024
8025 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
8026 If centering point failed to make whole line visible and vscroll
8027 is non-zero, disable vscroll and try centering point again.
8028
8029 * lread.c (read1): Accept `single space' syntax like (? x).
8030
bb8db7e1
JD
80312003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8032
8033 * keyboard.c (cancel_hourglass_unwind): Surround with
8034 #ifdef HAVE_X_WINDOWS
8035
47d77aab
KH
80362003-02-25 Kenichi Handa <handa@m17n.org>
8037
8038 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
8039 process only when "subprocesses" is defined.
8040
6a097c0c
SM
80412003-02-24 Stefan Monnier <monnier@cs.yale.edu>
8042
8043 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
8044
0b063c27
JB
80452003-02-24 Juanma Barranquero <lektu@terra.es>
8046
d1135afc
JB
8047 * callint.c (fix_command): Declare as static void and move before
8048 Fcall_interactively.
8049
0b063c27
JB
8050 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
8051 (syms_of_xdisp): Don't initialize Qwhen.
8052
0af912f0
JD
80532003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8054
8055 * keyboard.c (cancel_hourglass_unwind): New function.
8056 (command_loop_1): Cancel hourglass with unwind-protect.
8057
120d0a23
RS
80582003-02-23 Richard M. Stallman <rms@gnu.org>
8059
8060 * callint.c (fix_command): New subroutine, from Fcall_interactively.
8061 Detect (when ... (region-beginning)) etc.
8062 (Fcall_interactively): Call fix_command.
8063 (Qif, Qwhen): New variables.
8064 (syms_of_callint): Init and staticpro them.
0b063c27 8065
120d0a23
RS
8066 * regex.c (print_partial_compiled_pattern): Output to stderr.
8067
4ece81a6
KG
80682003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
8069
8070 * dired.c (directory_files_internal): Don't expand directory.
8071 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
8072 instead. From Lars Hansen <larsh@math.ku.dk>.
8073
e52bd6b7
SM
80742003-02-22 Stefan Monnier <monnier@cs.yale.edu>
8075
8076 * fns.c (string_to_multibyte): Remove unused var i.
8077 (Flanginfo): Fix int/Lisp_Object mixup.
8078 (void_call2): New fun.
8079 (Fmap_char_table): Use it in place of call2.
8080
8081 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
8082
8083 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
8084
8085 * keymap.c (copy_keymap_1): Make it static.
8086
8087 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
8088
c33ef7c4
JB
80892003-02-22 David Ponce <david@dponce.com>
8090
8091 * lread.c (Fload): Don't check STRING_MULTIBYTE.
8092
16782258
JD
80932003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8094
8095 * process.h: Removed subtty field from struct Lisp_Process.
8096
8097 * process.c (create_process): Remove setting of subtty.
8098 (emacs_get_tty_pgrp): New function.
e52bd6b7
SM
8099 (Fprocess_running_child_p, process_send_signal):
8100 Call emacs_get_tty_pgrp instead of ioctl.
16782258
JD
8101 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
8102
3abeca61
KG
81032003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
8104
8105 * keymap.c (Fdefine_key): Doc fix.
8106
92a8ce63
JB
81072003-02-21 Juanma Barranquero <lektu@terra.es>
8108
8109 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
8110
8111 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
8112 POLLING_PROBLEM_IN_SELECT.
8113
8114 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
8115 Delete #undef of POLLING_PROBLEM_IN_SELECT.
8116
8117 * s/hpux10-20.h: New file.
8118
e52bd6b7
SM
8119 * process.c (wait_reading_process_input):
8120 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
92a8ce63 8121
20f1ef2e
KH
81222003-02-20 Kenichi Handa <handa@m17n.org>
8123
32d0a9dc
KH
8124 * fontset.c (check_fontset_name): If NAME is nil, return the
8125 default fontset.
8126 (override_font_info): New function.
e52bd6b7 8127 (Fset_fontset_font): Document that NAME nil means the default fontset.
32d0a9dc
KH
8128 (Ffontset_info): If FONTSET is not the default fontset, merge
8129 FONTSET onto the copy of the default fontset, and work on that
8130 copy. Document that NAME nil means the default fontset.
8131 (Ffontset_font): Document that NAME nil means the default fontset.
8132
20f1ef2e
KH
8133 * process.c (setup_process_coding_systems): If the process's
8134 in/out descriptor is -1, do nothing.
8135
77d1daf2
AS
81362003-02-19 Andreas Schwab <schwab@suse.de>
8137
e52bd6b7
SM
8138 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
8139 Add prototypes.
77d1daf2 8140
f9a45bb3
KH
81412003-02-19 Kenichi Handa <handa@m17n.org>
8142
8143 * xfaces.c (try_alternative_families): Try all scalable fonts if
8144 Vscalable_fonts_allowed is not Qt.
8145
72ecb43c
JD
81462003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8147
8148 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
8149
ee5be7c3
JD
81502003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8151
8152 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
8153 names.
8154
8155 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
e52bd6b7 8156 (sorted_font_list): Move allocation of struct font_name to
ee5be7c3
JD
8157 x_face_list_fonts.
8158 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
8159 (Fx_list_fonts): Set maxnames to -1 to get all font names.
8160
4cd519a7
KS
81612003-02-18 Kim F. Storm <storm@cua.dk>
8162
068f9882
KS
8163 * lread.c (read1): Fix last change.
8164 "`" is not always special. Allow "?" after a character constant.
4cd519a7 8165
7290a344
AC
81662003-02-18 Andrew Choi <akochoi@shaw.ca>
8167
8168 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
8169
1f7fa69b
AS
81702003-02-18 Andreas Schwab <schwab@suse.de>
8171
8172 * window.c (window_scroll_pixel_based): Move outside a
8173 multi-glyph character before setting new window start.
8174
8175 * xdisp.c (in_display_vector_p): New function.
8176 * dispextern.h (in_display_vector_p): Declare.
8177
23e21195
KS
81782003-02-18 Kim F. Storm <storm@cua.dk>
8179
8180 * lread.c (read1): Fix and relax read syntax.
8181 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
8182 Only recognize "," after dotted-pair dot if inside backquote.
8183 Never include "`" or "," (inside backquote) in a symbol.
8184 Allow dotted-pair dot after a character constant.
8185 Allow "`" and "," (inside backquote) after a character constant.
92a8ce63 8186
f098b121
JD
81872003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8188
8189 * gtkutil.c (xg_tool_bar_expose_callback): New function.
8190 (xg_create_tool_bar): Force style of tool bar to be horizontal with
8191 icons. Set name of tool bar to emacs-toolbar.
8192 (update_frame_tool_bar): Connect expose event to
8193 xg_tool_bar_expose_callback.
8194
63020c46
RS
81952003-02-17 Richard M. Stallman <rms@gnu.org>
8196
8197 * keyboard.c (this_command_key_count_reset): New variable.
8198 Initiatize to 0 where this_command_key_count is set.
8199 (read_char): Save and restore this_command_key_count_reset
8200 around input method code.
8201 (read_char): If this_command_key_count_reset, echo reread commands.
8202 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
8203
fb4452cc
KH
82042003-02-17 Kenichi Handa <handa@m17n.org>
8205
8206 * fns.c (string_to_multibyte): Always return a multibyte string.
8207
bd11cc09
JR
82082003-02-16 Jason Rumney <jasonr@gnu.org>
8209
e52bd6b7
SM
8210 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
8211 Negative max_fonts parameter means list all.
bd11cc09 8212
4cdf4bde
DL
82132003-02-14 Dave Love <fx@gnu.org>
8214
8215 * fns.c (Flanginfo): Doc fix.
8216
023b93f6
KS
82172003-02-13 Kim F. Storm <storm@cua.dk>
8218
37cd4238
KS
8219 * lread.c (read_escape): Interpret \s as a SPACE character, except
8220 for \s-X in a character constant which still is the super modifier.
8221 (read1): Signal an `invalid read syntax' error if a character
8222 constant is immediately followed by a digit or symbol character.
8223
140a6b7e
KS
8224 * search.c (Fmatch_data): Doc fix. Explicitly state that
8225 match-data is undefined if last search failed.
8226
023b93f6
KS
8227 * keymap.c (Fcommand_remapping): Renamed from Fremap_command.
8228 All uses changed.
8229
7d5c86e5
JB
82302003-02-12 Juanma Barranquero <lektu@terra.es>
8231
8232 * eval.c (Fdefmacro): Fix typo.
8233
295fff2c
KS
82342003-02-12 Kim F. Storm <storm@cua.dk>
8235
8236 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
8237 macro is a string, convert meta modifiers in string when copying
8238 the string into a vector.
8239
60f3202d
KS
82402003-02-11 Kim F. Storm <storm@cua.dk>
8241
8242 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
8243
61cb0b53
KH
82442003-02-11 Kenichi Handa <handa@m17n.org>
8245
8246 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
8247
7392e23c
KS
82482003-02-10 Kim F. Storm <storm@cua.dk>
8249
8250 * process.c: Doc fixes.
8251 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
8252
ce4254bd
KH
82532003-02-10 Kenichi Handa <handa@m17n.org>
8254
9c7a329a
KH
8255 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
8256
ce4254bd
KH
8257 * process.c (QCfilter_multibyte): New variable.
8258 (setup_process_coding_systems): New function.
e52bd6b7
SM
8259 (Fset_process_buffer, Fset_process_filter):
8260 Call setup_process_coding_systems.
ce4254bd
KH
8261 (Fstart_process): Initialize the member `filter_multibyte' of
8262 struct Lisp_Process.
8263 (create_process): Call setup_process_coding_systems.
8264 (Fmake_network_process): New keyward `:filter-multibyte'.
8265 Initialize the member `filter_multibyte' of struct Lisp_Process.
8266 Call setup_process_coding_systems.
8267 (server_accept_connection): Call setup_process_coding_systems.
8268 (read_process_output): If the process has a filter, decide the
8269 multibyteness of a string to given to the filter by
8270 `filter_multibyte' member of the process. If the process doesn't
8271 have a filter and the result of conversion is unibyte, use
8272 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
8273 multibyte form.
8274 (Fset_process_coding_system): Call setup_process_coding_systems.
8275 (Fset_process_filter_multibyte): New function.
8276 (Fprocess_filter_multibyte_p): New function.
8277 (syms_of_process): Intern and staticpro QCfilter_multibyte.
8278 Defsubr Sset_process_filter_multibyte and
8279 Sprocess_filter_multibyte_p.
8280
8281 * process.h (struct Lisp_Process): New member filter_multibyte.
8282
8283 * lisp.h (setup_process_coding_systems): Add prototype.
8284
8285 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
8286 process, update coding systems for the process.
8287
b08d5f59
KH
82882003-02-09 Kenichi Handa <handa@m17n.org>
8289
8290 * fns.c (string_to_multibyte): New function.
8291 (Fstring_to_multibyte): New function.
8292 (syms_of_fns): Defsubr it.
8293
0dfd93c0
AS
82942003-02-08 Andreas Schwab <schwab@suse.de>
8295
8296 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
8297 instead of the substitution.
8298
7b76ca1c
JD
82992003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8300
8301 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
8302
8303 * xmenu.c (menu_position_func): Adjust menu popup position so that
8304 the menu is fully visible.
7b76ca1c 8305
2436a4e4
JD
83062003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8307
8308 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
e52bd6b7
SM
8309 (x_make_frame_invisible, x_wm_set_icon_position):
8310 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
2436a4e4
JD
8311
8312 * xfns.c (x_set_name, x_set_title): Ditto.
8313
37d1e680
RS
83142003-02-04 Richard M. Stallman <rms@gnu.org>
8315
8316 * keyboard.c (echo_now): Update before_command_echo_length.
8317 (Freset_this_command_lengths): Reset this_command_key_count etc.
8318 immediately rather than arranging to do it later.
8319 (before_command_key_count_1, before_command_echo_length_1)
8320 (before_command_restore_flag): Vars deleted.
8321 (add_command_key): Don't handle before_command_restore_flag.
8322 (read_char, record_menu_key): Don't update before_command_key_count or
8323 before_command_echo_length.
8324 (read_char): Don't handle before_command_restore_flag.
8325
8326 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
8327 in direct-output clauses if it wouldn't be called in the ordinary case.
8328
578846a3
KS
83292003-02-04 Kim F. Storm <storm@cua.dk>
8330
8331 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
8332
49853a4d
JD
83332003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8334
8335 * gtkutil.c (remove_from_container): Copying list is not needed.
8336 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
8337 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
8338 on list returned from gtk_container_get_children to avoid memory leak.
8339
8b53dc06
JR
83402003-02-01 Jason Rumney <jasonr@gnu.org>
8341
5d54d177
JR
8342 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
8343 local malloc.
8344 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
8345 definitions in xpm.h.
8346 (init_xpm_functions): New function.
f63fd14e 8347 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
5d54d177
JR
8348 (init_external_image_libraries): Try to load libXpm.dll.
8349
8b53dc06
JR
8350 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
8351 timestamp.
8352
b222e415
DL
83532003-01-31 Dave Love <fx@gnu.org>
8354
8355 * syntax.c (Fskip_chars_forward)
8356 (open-paren-in-column-0-is-defun-start): Doc fix.
8357
c60ee5e7
JB
83582003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
8359
8360 * fileio.c: Support // at start of name for Cygwin (just added proper
8361 preprocessor tests).
8362
8363 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
8364
8365 * Makefile.in: Use @EXEEXT@ for Cygwin.
8366
8367 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
8368
8369 * s/cygwin.h: Added for Cygwin port.
8370
53b37591
JB
83712003-01-31 Juanma Barranquero <lektu@terra.es>
8372
8373 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
8374 when including gif_lib.h.
fe929957 8375 (init_gif_functions, init_tiff_functions): New functions.
f63fd14e
JB
8376 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
8377 Windows. Disable color table lookups. Call library functions
53b37591 8378 through pointers determined at runtime.
fe929957
JB
8379 (init_external_image_libraries): Try to load libungif.dll and
8380 libtiff.dll.
53b37591 8381
45415a8f
KH
83822003-01-31 Kenichi Handa <handa@m17n.org>
8383
8384 * xdisp.c (SKIP_GLYPHS): New macro.
e52bd6b7 8385 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
45415a8f 8386
a97e4138
JD
83872003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8388
e52bd6b7 8389 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
a97e4138 8390
6eed9bed
DL
83912003-01-30 Dave Love <fx@gnu.org>
8392
8393 * alloc.c (Vgc_elapsed, gcs_done): New variables.
8394 (Fgarbage_collect): Use them.
8395 (init_alloc, syms_of_alloc): Set them up.
8396
100dcd40
JB
83972003-01-30 Juanma Barranquero <lektu@terra.es>
8398
8399 * w32fns.c (init_external_image_libraries): Add missing operator.
8400
fbd852af
JR
84012003-01-29 Jason Rumney <jasonr@gnu.org>
8402
8403 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
8404 an alternative name for jpeg.dll.
8405
8a2d8020
KH
84062003-01-29 Kenichi Handa <handa@m17n.org>
8407
8408 * xdisp.c (set_cursor_from_row): Pay attention to string display
8409 properties.
8410
058c18c7
AC
84112003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
8412
8413 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
8414 <escape>.
8415 (keycode_to_xkeysym_table): Reformat and add more comments.
8416 (XTread_socket): Drop special case for backspace.
8417
385f11cf
AC
84182003-01-28 Andrew Choi <akochoi@shaw.ca>
8419
8420 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
8421 values in old-style RGB specs.
8422
c922a224
JB
84232003-01-27 Juanma Barranquero <lektu@terra.es>
8424
8425 * w32fns.c (init_external_image_libraries): Try alternate names for the
8426 jpeg dll.
8427
0a1d6de0
JD
84282003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8429
8430 * gtkutil.c (create_dialog, xg_separator_p)
8431 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
8432 before calling strcmp or strlen.
8433
a97e4138 84342003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1d1885fc
JD
8435
8436 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
8437 and handle image load failure.
8438
28908312
JR
84392003-01-26 Jason Rumney <jasonr@gnu.org>
8440
8441 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
8442 New functions.
f63fd14e
JB
8443 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
8444 Disable color table lookups. Call jpeg library functions
28908312
JR
8445 through pointers determined at runtime.
8446 (init_external_image_libraries): Try to load jpeg.dll.
8447
84e47416
RS
84482003-01-25 Richard M. Stallman <rms@gnu.org>
8449
8450 * lisp.h: Declare format2 instead of format1.
8451
8452 * fileio.c (barf_or_query_if_file_exists):
8453 Call format2 instead of format1.
8454
8455 * editfns.c (format2): New function, replaces format1
8456 but takes exactly two Lisp Objects as format args.
8457
8458 * buffer.c (Fkill_buffer): Call format2 instead of format1.
8459
a97e4138 84602003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1fcfb866
JD
8461
8462 * xterm.h: Change to return value of x_dispatch_event to int.
8463
8464 * xterm.c (x_filter_event): New function.
8465 (event_handler_gdk, XTread_socket): Call x_filter_event.
8466 (x_dispatch_event): Change to return value of finish.
8467 (event_handler_gdk): Use return value from x_dispatch_event.
8468
8469 * xfns.c (x_window): Call create_frame_xic for GTK version to
8470 initialize input methods.
8471
8472 * gtkutil.h: Add (void) prototypes.
8473
8474 * gtkutil.c (create_menus): Remove code that puts the help menu to
8475 the right.
8476
54eefef1
JR
84772003-01-25 Jason Rumney <jasonr@gnu.org>
8478
8479 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
8480 [HAVE_PNG]: Sync with xfns.c version.
f63fd14e
JB
8481 (png_load): Adjust colors for Windows. Use Windows
8482 bitmaps. Disable color table lookups.
c262430d
JR
8483 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
8484 (init_png_functions): New function.
8485 (png_read_from_memory, png_load): Call png library functions
8486 through pointers determined at runtime.
8487 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
8488 (init_external_image_libraries): New function.
8489 (init_xfns): Call it.
54eefef1 8490
1a9e275b
AS
84912003-01-24 Andreas Schwab <schwab@suse.de>
8492
8493 * minibuf.c (Fminibuffer_message): Verify type of parameter.
8494
a97e4138 84952003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
81e302ef
JD
8496
8497 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
8498 of static initializer.
8499
422eec7e
DL
85002003-01-24 Dave Love <fx@gnu.org>
8501
8502 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
8503 architectures.
8504
8505 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
8506 Use __alignof__.
8507
2a026b04
KH
85082003-01-24 Kenichi Handa <handa@m17n.org>
8509
8510 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
e52bd6b7 8511 It it is nonzero, don't pretend that an invisible area doesn't exist.
2a026b04
KH
8512 (command_loop_1): Call adjust_point_for_property with proper
8513 second arg.
8514
a18bb28d
JR
85152003-01-22 Jason Rumney <jasonr@gnu.org>
8516
8517 Sync changes with xterm.c and xfns.c.
8518
8519 * w32term.c (x_draw_glyph_string_foreground)
8520 (x_draw_composite_glyph_string_foreground): Implement overstriking.
8521
8522 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
8523 phys_cursor's hpos is overwritten. This is still not completely
8524 correct, as it doesn't really make sense to use hpos at all to
8525 get the cursor glyph (as that is relative to the width of the
8526 characters on the line, which may have changed during the update).
8527
8528 * w32term.c (notice_overwritten_cursor): Handle the special case
8529 of the cursor being in the first blank non-text line at the
8530 end of a window.
8531
8532 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
8533 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
8534 Compute from the x position returned by x_draw_glyphs.
8535
8536 (x_display_and_set_cursor): Don't set phys_cursor_width here,
8537 except for NO_CURSOR and system caret, to make phys_cursor_width
8538 contain what its name suggests.
8539 (notice_overwritten_cursor): Consider the cursor image erased if
8540 the output area intersects the cursor image in y-direction.
8541
6a097c0c
SM
8542 * w32term.c (note_mode_line_or_margin_highlight): Rename from
8543 note_mode_line_highlight and extend.
a18bb28d
JR
8544
8545 * w32term.c (last_window): New variable.
8546 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
8547 (note_mouse_movement): Remove reimplemented code in #if 0.
8548
8549 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
8550 not update_mode_lines, and always set it to 1.
8551
ac6e47ef
JR
85522003-01-21 Jason Rumney <jasonr@gnu.org>
8553
8554 * w32fns.c (IDC_HAND): Define it if system headers don't.
8555
85562003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
8557
8558 * w32term.h (struct w32_output): New member hand_cursor.
8559 (WM_EMACS_SETCURSOR): New message definition.
8560
8561 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
8562 function w32_define_cursor.
8563 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
8564 position, change member name output_data.x to output_data.w32 and
8565 add function w32_define_cursor.
8566 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
8567 and change member name output_data.x to output_data.w32.
e52bd6b7
SM
8568 (w32_initialize_display_info):
8569 Setup dpyinfo->vertical_scroll_bar_cursor.
ac6e47ef
JR
8570
8571 * w32fns.c (Vx_hand_shape): New variable.
8572 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
8573 WM_EMACS_SETCURSOR.
8574 (x-create-frame): Setup Cursor types.
8575
ceb39a17
JB
85762003-01-21 David Ponce <david@dponce.com>
8577
ac6e47ef 8578 * w32term.c (w32_encode_char): For DIM=1 charset, set
f63fd14e 8579 ccl->reg[2] to -1 before calling ccl_driver. (Sync. with xterm.c
ac6e47ef 8580 x_encode_char change by Kenichi Handa <handa@m17n.org> on
ceb39a17 8581 2002-09-30.)
ac6e47ef
JR
8582 (w32_draw_relief_rect): Declare all args.
8583 (w32_define_cursor): New.
8584
8585 * w32fns.c (w32_load_cursor): New function.
8586 (w32_init_class): Use it.
8587 (x_put_x_image): Declare all args.
8588
b6189c3b 85892003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk>
46cf0bed
JB
8590
8591 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
8592
a97e4138 85932003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e8794476
JD
8594
8595 * gtkutil.c: Must include stdio.h before termhooks.h
8596
83fc9c63
DL
85972003-01-21 Dave Love <fx@gnu.org>
8598
8599 * alloc.c (Fgc_status): Print zombie list.
8600 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
8601 Fix assignment of zombies.
8602 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
8603 Don't take car of non-cons.
8604
8605 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
8606
8607 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
8608
fe04b8c8
JR
86092003-01-20 David Ponce <david@dponce.com>
8610
8611 * w32menu.c (digest_single_submenu): Declare all args.
8612
8613 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
8614 changes in xmenu.c:
8615
8616 (parse_single_submenu): Use individual keymap's prompt
8617 string as pane name, if there is one.
8618 (set_frame_menubar): Save menu_items_n_panes from each call to
8619 parse_single_submenu and use it when calling digest_single_submenu.
8620
539e69a9
ST
86212003-01-20 Steven Tamm <steventamm@mac.com>
8622
8623 * macterm.c (XTread_socket): Checks for valid, visible window
8624 before sending a scroll-wheel event.
8625
675d000f
RS
86262003-01-20 Richard M. Stallman <rms@gnu.org>
8627
8628 * xdisp.c (redisplay_window): If mini window's buffer is not
8629 a minibuffer, then redisplay it like other windows.
8630
a97e4138 86312003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
22174d10
JD
8632
8633 * gtkutil.c (xg_create_frame_widgets): Check if there is an
8634 external tool bar before setting tool bar height.
8635
048addec
JD
86362003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8637
8638 * xterm.c (handle_one_xevent): Surround popup_activated
8639 with #ifdef:s for non-toolkit version.
8640
8641 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
8642 (gtkutil.o): New file.
8643 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
8644 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
8645
8646 * gtkutil.c: New file for GTK version.
8647
8648 * gtkutil.h: New file for GTK version.
8649
8650 * xterm.h: Add xt_or_gtk_widget.
8651 Include gtk files for USE_GTK.
8652 (struct x_output): Add toolbar_height.
8653 (struct x_output): Add GTK widgets and Gdk size_hints.
8654 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
8655 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
8656 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
8657
8658 * xterm.c: Include gtkutil.h for USE_GTK.
8659 Declare extern void free_frame_menubar for USE_GTK.
8660 (note_mouse_highlight): Check popup_activated for USE_GTK.
8661 (xt_action_hook): Don't compile if USE_GTK.
8662 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
8663 (xg_scroll_callback): New function.
8664 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
8665 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
8666 for USE_GTK.
8667 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
8668 xg_show_scroll_bar for USE_GTK.
8669 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
8670 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
8671 (event_handler_gdk): New function for USE_GTK.
8672 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
8673 (handle_one_xevent): Make sure widget is mapped before
8674 calling x_real_positions for USE_GTK.
8675 (XTread_socket): Add GTK event loop for USE_GTK.
8676 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
8677 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
8678 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
8679 (x_iconify_frame): Add code for USE_GTK.
8680 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
8681 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
8682 is in gtkutil.c.
8683 (x_term_init): Add initialization for GTK.
8684 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
8685
8686 * xmenu.c: Include gtkutil.h for USE_GTK.
8687 (Fx_popup_menu): Use current position if x and y is NIL.
6bdb309a
SM
8688 (single_menu_item, single_menu_item, Fx_popup_dialog):
8689 Check for USE_GTK.
048addec
JD
8690 (popup_widget_loop): New function for USE_GTK.
8691 (x_activate_menubar): Add code for USE_GTK.
8692 (popup_activate_callback, popup_deactivate_callback)
6bdb309a
SM
8693 (menu_highlight_callback, menubar_selection_callback):
8694 Add USE_GTK versions.
048addec
JD
8695 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
8696 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
8697 (free_frame_menubar): Only compile if not USE_GTK. GTK version
8698 is in gtkutil.c.
8699 (popup_selection_callback): New version for USE_GTK.
8700 (create_and_show_popup_menu): New fuction, one USE_GTK version and
6bdb309a 8701 one USE_X_TOOLKIT version.
048addec
JD
8702 (xmenu_show): Call create_and_show_popup_menu.
8703 (dialog_selection_callback): New version for USE_GTK.
8704 (create_and_show_dialog): New fuction, one USE_GTK version and
6bdb309a 8705 one USE_X_TOOLKIT version.
048addec
JD
8706 (xdialog_show): Call create_and_show_dialog.
8707
8708 * xfns.c: Include gtkutil for USE_GTK.
8709 (x_window_to_frame, x_any_window_to_frame)
8710 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
8711 (x_top_window_to_frame): Add code for USE_GTK.
8712 (x_set_background_color): Call xg_set_background_color for GTK.
8713 (x_set_menu_bar_lines): Check for USE_GTK.
8714 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
8715 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
8716 (x_window): Call xg_create_frame_widgets for USE_GTK.
8717 (Fx_create_frame): Check for USE_GTK
8718 (Fx_file_dialog): New implementation for USE_GTK.
8719
8720 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
8721 (update_menu_bar): Add check for USE_GTK.
8722 (update_tool_bar): Add check for USE_GTK and external tool bar.
8723 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
8724 (redisplay_internal): Add check for USE_GTK and popup_activated.
8725 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
8726 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
8727 (display_menu_bar): Add check for USE_GTK
8728
8729 * lisp.h: Declare Vx_resource_name extern.
8730
a64387ee 8731 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
048addec
JD
8732 for USE_GTK.
8733 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
8734
8735 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
8736 (FRAME_EXTERNAL_TOOL_BAR): New macro.
8737 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
8738
8739 * fileio.c (Fread_file_name): Add check for USE_GTK.
8740
6bdb309a
SM
8741 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
8742 Add check for USE_GTK.
048addec
JD
8743
8744 * config.in: Added HAVE_GTK
8745
8746 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
8747
87482003-01-18 Stefan Monnier <monnier@cs.yale.edu>
8749
8750 * charset.h (Funibyte_char_to_multibyte): Export.
8751
87522003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8753
8754 * xmenu.c (mouse_position_for_popup): New function.
8755 (Fx_popup_menu): Call mouse_position_for_popup for X and
8756 mouse_position_hook for others.
8757
87582003-01-17 Kim F. Storm <storm@cua.dk>
8759
8760 * editfns.c (Finsert): Mention `string-make-multibyte' and
8761 `string-as-multibyte' in doc string.
8762
87632003-01-17 Kenichi Handa <handa@m17n.org>
8764
8765 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
3c02a6f5 8766
048addec
JD
8767 * editfns.c (Fformat): Convert an unibyte char argument that is
8768 formatted by "%c" to multibyte if the total result must be a
8769 multibyte string.
cd7df9c0 8770
048addec 87712003-01-16 Kim F. Storm <storm@cua.dk>
cd7df9c0 8772
048addec
JD
8773 * process.c (set-process-filter): Document unibyte/multibyte-ness
8774 of string argument.
56210ecd 8775
048addec 87762003-01-16 Kenichi Handa <handa@m17n.org>
56210ecd 8777
048addec 8778 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
56210ecd 8779
048addec
JD
8780 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
8781 (re_search_2): Likewise.
6df8b9fe 8782
048addec 87832003-01-15 Kenichi Handa <handa@m17n.org>
6df8b9fe 8784
048addec
JD
8785 * xdisp.c (message_dolog): Fix bug of the case that *Message*
8786 buffer is unibyte.
292ddc31 8787
048addec 87882003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
292ddc31 8789
048addec 8790 * fns.c (Fsubstring): Clarify doc string.
292ddc31 8791
048addec
JD
8792 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
8793 (Fprevious_char_property_change)
8794 (Fnext_single_char_property_change)
8795 (Fprevious_single_char_property_change, Fnext_property_change)
8796 (Fnext_single_property_change, Fprevious_property_change)
8797 (Fprevious_single_property_change, Fadd_text_properties)
8798 (Fput_text_property, Fset_text_properties)
8799 (Fremove_text_properties, Fremove_list_of_text_properties)
8800 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
63e4e4c6 8801
048addec 88022003-01-14 Kim F. Storm <storm@cua.dk>
63e4e4c6 8803
048addec
JD
8804 * process.h (struct Lisp_Process): New member plist replaces old
8805 member private_vars. All uses changed.
63e4e4c6 8806
048addec 8807 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
6bdb309a 8808 (QCplist): Rename from QCvars. Change all uses.
048addec 8809 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
6bdb309a 8810 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
048addec 8811 (syms_of_process): Intern, staticpro, defsubr these.
6bdb309a 8812 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
7ed16567 8813
048addec 88142003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
7ed16567 8815
6bdb309a 8816 * m/delta.h: Remove (obsolete).
e833850f 8817
048addec 88182003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
e833850f 8819
048addec
JD
8820 * fileio.c (Fdelete_directory, Fdelete_file): Document the
8821 behaviour in front of symlinks.
8822 (Fdelete_file): Raise an error on directories.
817cb127 8823
048addec 88242003-01-13 Dave Love <fx@gnu.org>
817cb127 8825
048addec 8826 * fns.c (Freverse): Use QUIT.
3e8cf2ea 8827
048addec 88282003-01-13 Richard M. Stallman <rms@gnu.org>
3e8cf2ea 8829
048addec
JD
8830 * minibuf.c (minibuffer_completion_contents):
8831 Error if point is inside prompt.
3e8cf2ea 8832
048addec
JD
8833 * keyboard.c (command_loop_1): Don't redisplay directly
8834 if there's a post-command-hook.
3e8cf2ea 8835
048addec
JD
8836 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
8837 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
2c10f029 8838
048addec 88392003-01-12 Kim F. Storm <storm@cua.dk>
94e8ffca 8840
048addec 8841 * process.h (struct Lisp_Process): New member private_vars.
94e8ffca 8842
048addec
JD
8843 * process.c (QCvars): New variable.
8844 (syms_of_process): Intern and staticpro it.
8845 (Fset_process_contact): Removed function.
8846 (Fprocess_variable, Fset_process_variable): New functions.
8847 (syms_of_process): Defsubr them.
8848 (Fstart_process): Initialize private_vars plist to nil.
8849 (Fmake_network_process): New arg :vars to setup the private
8850 variables for new network process.
8851 (server_accept_connection): Copy server's private variables to
8852 client process.
2c10f029 8853
048addec
JD
8854 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
8855 crashes). Code rewritten and simplified. Now directly aligns the
8856 pointer and recalculates pure_bytes_used, rather than aligning the
8857 size and adjusting the pointer.
b8a76c6c 8858
048addec 88592003-01-11 Kim F. Storm <storm@cua.dk>
b8a76c6c 8860
048addec
JD
8861 * process.c (Fset_process_contact): New function.
8862 (syms_of_process): defsubr it.
8863 (make-network-process): Update doc.
3a8d0899 8864
048addec 88652003-01-10 Andreas Schwab <schwab@suse.de>
3a8d0899 8866
048addec
JD
8867 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
8868 Reported by Berthold Gunreben <b.gunreben@web.de>.
4abc7470 8869
048addec 88702003-01-10 Dave Love <fx@gnu.org>
4abc7470 8871
048addec 8872 * composite.c (syms_of_composite): Make composition_hash_table weak.
b809d662 8873
048addec 88742003-01-09 Kim F. Storm <storm@cua.dk>
b809d662 8875
048addec
JD
8876 * process.c (Fmake_network_process): Convert new port number
8877 to host byte order for `:service t' case. From Mario Lang.
bf338245 8878
048addec 88792003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
bf338245 8880
048addec
JD
8881 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
8882 instead of XtAppProcessEvent.
bf338245 8883
048addec
JD
8884 * xterm.c (handle_one_xevent): New function.
8885 (x_dispatch_event): New function.
8886 (XTread_socket): Call handle_one_xevent.
bf338245 8887
048addec 8888 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
e833850f 8889
048addec
JD
8890 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
8891 call XQueryPointer to get coordinates.
8892 (popup_get_selection): Do not set popup_activated_flag to zero,
8893 let popup_deactivate_callback do that. Needed for Motif.
8894 Call x_dispatch_event instead of XtDispatchEvent.
8895 (xmenu_show): Calculate root coordinate from frame top/left position.
c4af2bce 8896
048addec 88972003-01-08 Kim F. Storm <storm@cua.dk>
c4af2bce 8898
6bdb309a 8899 * process.c (server_accept_connection): Fix recording of new
048addec
JD
8900 connection's local address in :local property of contact info.
8901 (Fmake_network_process): Record local network address for new
8902 client processes in :local property of contact info.
6bdb309a 8903 (format-network-address): Add arg OMIT-PORT. Change callers.
00e3ab56 8904
048addec 89052003-01-07 Dave Love <fx@gnu.org>
00e3ab56 8906
048addec 8907 * Makefile.in (fns.o): Depend on coding.h.
f387e1fd 8908
048addec 89092003-01-07 Markus Rost <rost@math.ohio-state.edu>
f387e1fd 8910
048addec 8911 * minibuf.c (Fread_variable): Doc fix.
f387e1fd 8912
048addec
JD
8913 * eval.c (Fuser_variable_p): Doc change. For custom variables,
8914 use the same test as for custom-variable-p.
8c6d74c6 8915
048addec 89162003-01-05 Richard M. Stallman <rms@gnu.org>
e833850f 8917
048addec
JD
8918 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
8919 Count LAST_LINE_MISFIT in scroll margin for end of window.
8920 Move label too_near_end before setting SCROLL_MARGIN_POS.
8921 Set LAST_LINE_MISFIT before jumping there.
8c6d74c6 8922
048addec
JD
8923 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
8924 scroll_conservatively case. If scrolling that much doesn't change
8925 STARTP, move it down one line.
e833850f 8926
048addec
JD
8927 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
8928 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
8c6d74c6 8929
048addec
JD
8930 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
8931 selected frame.
8c6d74c6 8932
048addec
JD
8933 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
8934 (syms_of_keymap): staticpro them.
8935 (Fapropos_internal): Initialize them and clear them out.
8936 Don't GCPRO them.
8c6d74c6 8937
048addec
JD
8938 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
8939 Doc fixes.
8c6d74c6 8940
048addec
JD
8941 * lisp.h: New misc type Lisp_Save_Value.
8942 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
8943 (XSAVE_VALUE): New macro.
8944 (struct Lisp_Save_Value): New data type.
8945 (union Lisp_Misc): Add u_save_value alternative.
8946 (make_save_value): Declared.
8c6d74c6 8947
048addec 8948 * alloc.c (make_save_value): New function.
8c6d74c6 8949
048addec
JD
8950 * xterm.c (x_catch_errors): Save dpy using make_save_value.
8951 (x_catch_errors_unwind): Call XSync.
8c6d74c6 8952
048addec 89532003-01-01 Richard M. Stallman <rms@gnu.org>
8c6d74c6 8954
048addec 8955 * window.c (window_scroll_pixel_based): Partially undo last change.
8c6d74c6 8956
048addec
JD
8957 * keyboard.c (command_loop_1): Call adjust_point_for_property
8958 in direct action cases for Qforward_char and Qbackward_char.
8959 Set already_adjusted so it won't be done twice.
8c6d74c6 8960
b6189c3b 89612002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk>
8c6d74c6 8962
048addec
JD
8963 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
8964 type definition of size_t.
8c609cff 8965
048addec 89662003-01-02 Steven Tamm <steventamm@mac.com>
8c609cff 8967
048addec
JD
8968 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
8969 distinguish Carbon GUI builds from X11 builds on darwin.
b37113a1 8970
048addec 89712002-12-30 Steven Tamm <steventamm@mac.com>
b37113a1 8972
048addec
JD
8973 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
8974 to default to t.
fa634a5e 8975
048addec 89762002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
fa634a5e 8977
048addec 8978 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
ce0669d4 8979
048addec 89802002-12-28 Steven Tamm <steventamm@mac.com>
ce0669d4 8981
048addec
JD
8982 * Makefile.in (macosx-bundle): Fixes to Mac OS X/Carbon port to
8983 allow building in a different directory than source. Uses some
8984 GNU Make extensions, but there is no other make on Mac OS X.
2308af15 8985
048addec 89862002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
2308af15 8987
048addec
JD
8988 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
8989 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
8990 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
8991 (Fstring_to_number): Mention the returned value in the doc strings.
2155ecf3 8992
048addec 89932002-12-23 Richard M. Stallman <rms@gnu.org>
2155ecf3 8994
048addec
JD
8995 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
8996 <scroll-down-aggressively>: Doc fix.
2155ecf3 8997
048addec
JD
8998 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
8999 string as pane name, if there is one.
9000 (set_frame_menubar): Save menu_items_n_panes from each call to
9001 parse_single_submenu and use it when calling digest_single_submenu.
2155ecf3 9002
048addec
JD
9003 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
9004 Don't try to make last line fully visible if it is past end of window.
61f1d295 9005
048addec 90062002-12-22 Steven Tamm <steventamm@mac.com>
61f1d295 9007
048addec
JD
9008 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
9009 (mac_menu_show): Add support for hierarchical popup menus.
9010 (add_menu_item): Remove indentation support.
9011 (fill_submenu, fill_menu): Create hierarchical menus
9012 instead of using indentation.
0b17a217 9013
048addec 90142002-12-22 Richard M. Stallman <rms@gnu.org>
0b17a217 9015
048addec
JD
9016 * xdisp.c (try_cursor_movement): Don't call try_window here.
9017 (redisplay_window): Never redisplay minibuffer when inactive.
0b17a217 9018
048addec 9019 * window.c (select_window_1): Undo 9/21 change.
402e4f8b 9020
048addec 90212002-12-22 Steven Tamm <steventamm@mac.com>
402e4f8b 9022
048addec
JD
9023 * macterm.c (XTread_socket): Call KeyTranslate for control and
9024 meta to deal correctly shifted non-alpha characters, like C-S-5
9025 being treated like C-%. Does not look for shift key to deal
9026 with masking off control-key with mac-reverse-ctrl-meta.
f02cac82 9027
048addec 90282002-12-21 Richard M. Stallman <rms@gnu.org>
f02cac82 9029
048addec
JD
9030 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
9031 If it is non-nil, run timers. Use an unwind-protect to requeue
9032 the events that were read ahead.
9033 (popup_get_selection_unwind): New subroutine.
9034 (popup_get_selection_queue): File-scope variable now holds that queue.
9035 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
9036 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
9037 Use an unwind-protect to pop down the dialog box.
9038 (xdialog_show_unwind): New subroutine implements that.
f02cac82 9039
048addec
JD
9040 * xdisp.c (row_containing_pos): Change exit test using last_y.
9041 (try_window_id): Abort if row_containing_pos returns null.
f02cac82 9042
048addec
JD
9043 * lread.c (load_error_handler): New function.
9044 (Fload): Handle errors in Fsubstitute_in_file_name.
9045 Don't expect Fsignal to return.
f02cac82 9046
048addec
JD
9047 * eval.c: Errors and throws work right with interrupt blocking.
9048 (struct catchtag): New elt interrupt_input_blocked.
9049 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
9050 (internal_catch, Fcondition_case, internal_condition_case)
9051 (internal_condition_case_1, internal_condition_case_2): Save it.
9052 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
f02cac82 9053
048addec 9054 * editfns.c (Fformat): Add parens.
f02cac82 9055
048addec
JD
9056 * dired.c (file_name_completion): Fix that change.
9057 Delete special quit-handling code; just use QUIT.
f02cac82 9058
b6189c3b 90592002-12-21 Tak Ota <Takaaki.Ota@am.sony.com>
f02cac82 9060
048addec
JD
9061 * dired.c (file_name_completion): Close directory on error
9062 just as in directory_files_internal.
1a590729 9063
048addec 90642002-12-19 David Kastrup <David.Kastrup@t-online.de>
1a590729 9065
048addec
JD
9066 * window.c (Fset_window_configuration): Set old_point to correct
9067 value when new_current_buffer == current_buffer.
f02cac82 9068
048addec 90692002-12-17 Ben Key <bkey1@tampabay.rr.com>
2308af15 9070
048addec
JD
9071 Revisited my earlier fix for the following entry in etc/PROBLEMS:
9072 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
9073 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
9785d95b 9074
048addec
JD
9075 These changes were in part based upon suggestions made by Peter
9076 'Luna' Runestig [peter@runestig.com].
9785d95b 9077
048addec
JD
9078 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token,
9079 g_b_init_get_token_information, g_b_init_lookup_account_sid,
6bdb309a 9080 g_b_init_get_sid_identifier_authority ): Add several static
048addec 9081 global variables.
9785d95b 9082
048addec
JD
9083 * w32.c (globals_of_w32): New function. Used to initialize those
9084 global variables that must always be initialized on startup even
9085 when the global variable initialized is non zero. Its primary
9086 purpose at this time is to set the global variables
9087 g_b_init_is_windows_9x, g_b_init_open_process_token,
9088 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
9089 g_b_init_get_sid_identifier_authority to 0 on startup.
9090 Called from main.
9785d95b 9091
048addec
JD
9092 * w32.c (is_windows_9x): Perform initialization only if
9093 g_b_init_is_windows_9x is equal to 0. On initialization set
9094 g_b_init_is_windows_9x equal to 1.
2308af15 9095
048addec
JD
9096 * w32.c (open_process_token): Perform initialization only if
9097 g_b_init_open_process_token is equal to 0. On initialization set
9098 g_b_init_open_process_token equal to 1.
2308af15 9099
048addec
JD
9100 * w32.c (get_token_information): Perform initialization only if
9101 g_b_init_get_token_information is equal to 0. On initialization
9102 set g_b_init_get_token_information equal to 1.
9785d95b 9103
048addec
JD
9104 * w32.c (lookup_account_sid): Perform initialization only if
9105 g_b_init_lookup_account_sid is equal to 0. On initialization
9106 set g_b_init_lookup_account_sid equal to 1.
9785d95b 9107
048addec
JD
9108 * w32.c (get_sid_identifier_authority): Perform initialization
9109 only if g_b_init_get_sid_identifier_authority is equal to 0.
9110 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
9785d95b 9111
f63fd14e 9112 * w32fns.c (globals_of_w32fns): New function. Used to initialize
048addec
JD
9113 those global variables that must always be initialized on startup
9114 even when the global variable initialized is non zero.
9115 Its primary purpose at this time is to initialize the global variable
9116 track_mouse_event_fn.
9785d95b 9117
a64387ee 9118 * w32fns.c (w32_wnd_proc): Remove initialization of
048addec 9119 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
9785d95b 9120
048addec 9121 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
9785d95b 9122
f63fd14e 9123 * w32menu.c (globals_of_w32menu): New function. Used to
048addec
JD
9124 initialize those global variables that must always be initialized
9125 on startup even when the global variable initialized is non zero.
9126 Its primary purpose at this time is to initialize the global
9127 variables get_menu_item_info and set_menu_item_info.
9785d95b 9128
048addec
JD
9129 * w32menu.c (initialize_frame_menubar): Remove initialization of
9130 get_menu_item_info and set_menu_item_info.
9785d95b 9131
048addec 9132 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
9785d95b 9133
048addec
JD
9134 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
9135 Declare them.
9785d95b 9136
048addec
JD
9137 * emacs.c (main): Call globals_of_w32 prior to calling
9138 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
9139 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
9140 is defined.
9785d95b 9141
048addec
JD
9142 * w32term.c (x_update_window_begin): Fix Windows API error
9143 detected by BoundsChecker. Test to determine if
9144 w32_system_caret_hwnd is NULL prior to attempting to use
9145 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
2308af15 9146
048addec
JD
9147 * w32term.c (x_update_window_end): Fix Windows API error
9148 detected by BoundsChecker. Test to determine if
9149 w32_system_caret_hwnd is NULL prior to attempting to use
9150 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
b6da19ef 9151
048addec 91522002-12-17 Kenichi Handa <handa@m17n.org>
b6da19ef 9153
048addec
JD
9154 * coding.c (coding_system_require_warning): New variable.
9155 (syms_of_coding): DEFVAR it.
b6da19ef 9156
048addec 9157 * coding.h (coding_system_require_warning): Extern it.
b6da19ef 9158
048addec
JD
9159 * fileio.c (choose_write_coding_system): Even if
9160 Vcoding_system_for_write is non-nil, if
9161 coding_system_require_warning is nonzero, call
9162 Vselect_safe_coding_system_function.
bfcf6dbe 9163
048addec 91642002-12-17 Markus Rost <rost@math.ohio-state.edu>
bfcf6dbe 9165
048addec
JD
9166 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
9167 (lisp): Add font-core.
2c568af5 9168
048addec 91692002-12-13 Stefan Monnier <monnier@cs.yale.edu>
2c568af5 9170
048addec
JD
9171 * textprop.c (text_read_only): New arg `propval'.
9172 (get_char_property_and_overlay): Remove unused var `next_overlay'.
9173 (verify_interval_modification): Use text_read_only's new arg.
b8c6225c 9174
048addec 91752002-12-13 Kenichi Handa <handa@m17n.org>
b8c6225c 9176
048addec 9177 * coding.c (Funencodable_char_position): Set pend correctly.
706ddb8f 9178
048addec 91792002-12-12 Jason Rumney <jasonr@gnu.org>
706ddb8f 9180
048addec
JD
9181 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
9182 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
9183 Be more careful about when help_events are generated.
96720f09 9184
048addec 91852002-12-12 Steven Tamm <steventamm@mac.com>
96720f09 9186
048addec
JD
9187 * macterm.c (mac_check_for_quit_char): Correctly set the
9188 modifiers of the event to 0.
9189 * mac.c (sys_select): Duplicate rfds before calling select to
9190 ensure that rfds survive the while loop.
e5ae1c49 9191
048addec 91922002-12-11 Kim F. Storm <storm@cua.dk>
e5ae1c49 9193
048addec
JD
9194 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
9195 row_containing_pos returned NULL.
2eb46b2d 9196
048addec 91972002-12-10 Steven Tamm <steventamm@mac.com>
2eb46b2d 9198
6bdb309a 9199 * mac.c (sys_read): Fix sys_read to not call select if IO is
048addec 9200 non-blocking.
6bdb309a 9201 (sys_select): Fix sys_select to not use a timeout larger than
048addec 9202 the one given.
b11f1d8a 9203
048addec 92042002-12-10 Juanma Barranquero <lektu@terra.es>
b11f1d8a 9205
048addec 9206 * editfns.c (Fformat): Use alloca, not _alloca.
d8528226 9207
048addec 92082002-12-09 Richard M. Stallman <rms@gnu.org>
d8528226 9209
048addec
JD
9210 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
9211 as the last thing.
a4ac5b17 9212
048addec 92132002-12-09 Dave Love <fx@gnu.org>
a4ac5b17 9214
048addec 9215 * s/sol2-8.h: Removed. (Not necessary.)
ac42d7b9 9216
048addec 92172002-12-09 Matthew Swift <swift@alum.mit.edu>
ac42d7b9 9218
048addec
JD
9219 * editfns.c (Fformat): Handle precision in string conversion
9220 specifiers like libc functions do (ie, print at most that many
9221 characters).
85cce843 9222
048addec 92232002-12-08 Richard M. Stallman <rms@gnu.org>
85cce843 9224
048addec
JD
9225 * xdisp.c (row_containing_pos): Check more carefully
9226 whether charpos is really in the row before returning it.
0d4d26a7 9227
048addec 92282002-12-07 Steven Tamm <steventamm@mac.com>
0d4d26a7 9229
048addec 9230 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
b11f1d8a 9231
048addec
JD
9232 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
9233 each stack frame. This may change as it could be time consuming.
0d4d26a7 9234
048addec
JD
9235 * macterm.c (mac_check_for_quit_char, quit_char_comp)
9236 (init_quit_char_handler, mac_determine_quit_char_modifiers)
6bdb309a 9237 (mac_initialize): Add code to check for pressing of quit_char
048addec 9238 in the OS event queue.
b11f1d8a 9239
048addec
JD
9240 * mac.c (sys_select): Call mac_check_for_quit_char every second
9241 while blocking on select.
0d4d26a7 9242
048addec
JD
9243 * mac.c (sys_read): Use sys_select to test for input first
9244 before calling read, to allow C-g to break.
9252f7bc 9245
048addec 92462002-12-07 Richard M. Stallman <rms@gnu.org>
9252f7bc 9247
048addec 9248 * minibuf.c (Fcompleting_read): Doc fix.
9252f7bc 9249
048addec 9250 * lread.c (syms_of_lread) <load-history>: Doc fix.
9252f7bc 9251
048addec 9252 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
9252f7bc 9253
048addec
JD
9254 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
9255 autoload.
9252f7bc 9256
048addec 9257 * data.c (Fdefalias): Record in load-history redefining an autoload.
9252f7bc 9258
048addec 9259 * alloca.c: Undo ifdef change accidentally made on 12-04.
bfa261c0 9260
048addec 92612002-12-06 Francesco Potorti` <pot@gnu.org>
bfa261c0 9262
048addec 9263 * xfns.c (png_load): Avoid double gamma correction for PNG images.
c5992177 9264
048addec 92652002-12-04 Richard M. Stallman <rms@gnu.org>
c5992177 9266
048addec 9267 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 9268
048addec 9269 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 9270
048addec 9271 * alloca.c: Don't use #error.
02d588e2 9272
048addec 92732002-12-03 Dave Love <fx@gnu.org>
02d588e2 9274
048addec
JD
9275 * buffer.c (Qucs_set_table_for_input): New.
9276 (Fget_buffer_create): Use it.
9277 (Qset_buffer_major_mode_hook): Deleted.
9278 (Fset_buffer_major_mode): Revert previous change.
9279 (init_buffer_once): Intern ucs-set-table-for-input.
9280 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
9281 Add &Qucs_set_table_for_input.
451e2697 9282
048addec 92832002-12-03 Andreas Schwab <schwab@suse.de>
451e2697 9284
048addec
JD
9285 * callint.c (Fcall_interactively): Use next_event only if less
9286 than key_count.
72742a99 9287
048addec 92882002-12-02 Andrew Choi <akochoi@shaw.ca>
72742a99 9289
048addec
JD
9290 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
9291 names to 255 characters.
72742a99 9292
048addec
JD
9293 * macterm.c (XTread_socket): If all frames have been collapsed,
9294 expand the first one before handling drag-and-drop events.
72742a99 9295
048addec
JD
9296 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
9297 which is detected by autoconf.
40e6ff95 9298
048addec 92992002-12-01 Steven Tamm <steventamm@mac.com>
40e6ff95 9300
048addec
JD
9301 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
9302 offset in two hints table to allow prebinding to be redone and
9303 allow the executable to be stripped.
c02138c6 9304
048addec 93052002-11-29 Dave Love <fx@gnu.org>
c02138c6 9306
048addec
JD
9307 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
9308 already provided.
0e47bbf7 9309
048addec 93102002-11-29 Richard M. Stallman <rms@gnu.org>
0e47bbf7 9311
048addec
JD
9312 * xdisp.c (start_display): Check more intelligently for
9313 whether the line is continued.
9314 (move_it_vertically_backward): Clear it->continuation_lines_width.
44129dcb 9315
048addec 93162002-11-28 Dave Love <fx@gnu.org>
44129dcb 9317
048addec
JD
9318 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
9319 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
f707342d 9320
048addec 93212002-11-27 Steven Tamm <steventamm@mac.com>
f707342d 9322
048addec
JD
9323 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
9324 more descriptive error output from lread.c:Fload upon most require
9325 cycles during boostrapping.
1637fd2c 9326
048addec 93272002-11-27 Jason Rumney <jasonr@gnu.org>
1637fd2c 9328
048addec
JD
9329 * fileio.c (Finsert_file_contents): Give a more appropriate error
9330 for files bigger than 2Gb when off_t is 32 bit.
1637fd2c 9331
048addec
JD
9332 * dired.c (Ffile_attributes): Don't return negative file sizes for
9333 files bigger than 2Gb when off_t is 32 bit.
540c2788 9334
048addec 93352002-11-27 Dave Love <fx@gnu.org>
6b2fd6ea 9336
048addec 9337 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
6b2fd6ea 9338
048addec
JD
9339 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
9340 Test GETPGRP_VOID instead.
9341 [BSD_TERMIOS]: Remove definitions (never used).
6b2fd6ea 9342
048addec
JD
9343 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
9344 Don't define.
9345 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
540c2788 9346
048addec 9347 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
8cc03716 9348
048addec 93492002-11-25 Jason Rumney <jasonr@gnu.org>
8cc03716 9350
048addec
JD
9351 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
9352 supported.
4042a81a 9353
048addec 93542002-11-25 Dave Love <fx@gnu.org>
4042a81a 9355
048addec 9356 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
4042a81a 9357
048addec 9358 * Makefile.in (TEMACS_LDFLAGS): Update last change.
be4ee72f 9359
048addec 93602002-11-25 Andreas Schwab <schwab@suse.de>
be4ee72f 9361
048addec 9362 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
82122254 9363
048addec 93642002-11-24 Steven Tamm <steventamm@mac.com>
82122254 9365
048addec
JD
9366 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
9367 determine the size of pointers alloced in unexed space instead
9368 of using possibly invalid emacs_zone pointers. This fixes the
9369 binary incompatibility problems caused by updates to libSystem.B.
c1ee53bc 9370
048addec 93712002-11-24 Richard M. Stallman <rms@gnu.org>
c1ee53bc 9372
048addec 9373 * search.c (Fstring_match): Doc fix.
c1ee53bc 9374
048addec
JD
9375 * callint.c (Fcall_interactively): If a command fails because
9376 `*' detects a read-only buffer, but RECORD_FLAG is set,
9377 record it anyway if the args don't actually do tty input.
5598c32e 9378
048addec 93792002-11-22 Dave Love <fx@gnu.org>
5598c32e 9380
048addec 9381 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
5598c32e 9382
048addec
JD
9383 * keyboard.c (interrupt_signal): Provide forward declaration.
9384 (kbd_buffer_store_event): Don't declare interrupt_signal.
5598c32e 9385
048addec 9386 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
97b14e22 9387
048addec 93882002-11-21 Richard M. Stallman <rms@gnu.org>
97b14e22 9389
048addec
JD
9390 * eval.c (interactive_p): Skip any number of bytecode
9391 and special form frames, in any order.
516eea8e 9392
048addec 93932002-11-20 Jason Rumney <jasonr@gnu.org>
516eea8e 9394
048addec
JD
9395 * w32fns.c (convert_mono_to_color_image): New function.
9396 (xbm_load, xbm_load_image): Use it when foreground or background
9397 is explicitly set.
04dbfa08 9398
048addec 93992002-11-19 Dave Love <fx@gnu.org>
04dbfa08 9400
048addec 9401 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
b4aebae3 9402
048addec 94032002-11-18 Jason Rumney <jasonr@gnu.org>
b4aebae3 9404
048addec
JD
9405 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
9406 (XPutPixel): Swap blue and red.
9407 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
9408 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
9409 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
9410 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
1998560a 9411
048addec 94122002-11-18 Dave Love <fx@gnu.org>
d824beee 9413
048addec 9414 * m/orion105.h (HAVE_ALLOCA): Don't define.
d824beee 9415
048addec 9416 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
d824beee 9417
048addec 9418 * m/intel386.h: Don't include alloca.h or define alloca.
d824beee 9419
048addec
JD
9420 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
9421 malloc, realloc, calloc.
d824beee 9422
048addec
JD
9423 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
9424 (bcmp): Don't define.
d824beee 9425
048addec 9426 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
d824beee 9427
048addec 9428 * m/amdahl.h: Don't define LIB_STANDARD.
d824beee 9429
048addec 9430 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
d824beee 9431
048addec 9432 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
d824beee 9433
048addec
JD
9434 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
9435 Don't include alloca.h.
d824beee 9436
048addec 9437 * s/aix3-2.h (HAVE_FSYNC): Don't define.
1998560a 9438
048addec 9439 * regex.c (_GNU_SOURCE): Don't define.
1998560a 9440
048addec 9441 * process.c (_GNU_SOURCE): Don't define.
1998560a 9442
048addec 9443 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
8704a6ab 9444
048addec 94452002-11-18 Markus Rost <rost@math.ohio-state.edu>
8704a6ab 9446
048addec 9447 * s/sol2-8.h: Include sol2-6.h.
6ae2cd57 9448
048addec 94492002-11-18 Miles Bader <miles@gnu.org>
6ae2cd57 9450
048addec
JD
9451 * dispextern.h (struct face): Add `overstrike' field.
9452 * xterm.c (x_draw_glyph_string_foreground)
9453 (x_draw_composite_glyph_string_foreground): Implement overstriking.
9454 * xfaces.c (load_face_font): Set `face->overstrike' based on
9455 result from choose_face_font.
9456 (best_matching_font, choose_face_font): Add `needs_overstrike'
9457 argument, and use it to return whether overstriking is desirable
9458 for this face/font combo.
9459 (set_font_frame_param: Pass new argument to choose_face_font.
6ae2cd57 9460
048addec 94612002-11-17 Ben Key <BKey1@tampabay.rr.com>
3582b6a3 9462
048addec
JD
9463 This change is my fix for the following entry in etc/PROBLEMS:
9464 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
9465 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
f60ae425 9466
048addec
JD
9467 * w32.c: Added wrapper functions around the win32 API functions
9468 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
9469 GetSidIdentifierAuthority. These wrapper functions serve two
9470 purposes:
9471 1. They ensure that the wrapped function can never be called
9472 when Emacs is running on an operating system on which they are
9473 not supported (Microsoft Windows 95 / 98 / ME).
9474 2. They call the wrapped functions via function pointers rather
9475 than calling them directly. This avoids taking advantage of the
9476 undocumented fact that although these functions are not supported
9477 in the 9x branch of Microsoft Windows, the functions do exist in
9478 the version of advapi32.dll that is found in the 9x branch of
9479 Microsoft Windows.
f60ae425 9480
6bdb309a 9481 * w32.c (init_user_info): Replace the calls to the win32 API
048addec
JD
9482 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
9483 and GetSidIdentifierAuthority with calls to the newly added
9484 wrapper functions.
f60ae425 9485
048addec
JD
9486 * w32.h: Added extern declarations for the following functions:
9487 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
9488 syms_of_w32menu, and void syms_of_fontset.
f60ae425 9489
6bdb309a 9490 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
048addec
JD
9491 function pointer track_mouse_event_fn in the handler for the
9492 WM_SETFOCUS message.
3582b6a3 9493
6bdb309a 9494 * w32menu.c (initialize_frame_menubar): Add code to
048addec
JD
9495 reinitialize the function pointers set_menu_item_info and
9496 get_menu_item_info.
f60ae425 9497
048addec 94982002-11-17 Ben Key <BKey1@tampabay.rr.com>
f60ae425 9499
048addec
JD
9500 * sound.c: Added a partial implementation of play-sound-internal
9501 for Microsoft Windows. Added various #ifdef / #else / #endif
9502 code blocks to separate the code that will compile under
9503 Microsoft Windows from the code that is specific to Gnu/Linux.
9504 Moved several blocks of code around to make this separation of code
9505 into Windows compatible and Gnu/Linux compatible code blocks easier.
f60ae425 9506
048addec 9507 * makefile.w32-in: Include sound.c and link with WinMM.lib.
a0f0878d 9508
048addec
JD
9509 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
9510 added support for play-sound-internal under Windows would be
9511 included in the build of Emacs.
517f42a0 9512
048addec 95132002-11-16 Jason Rumney <jasonr@gnu.org>
517f42a0 9514
048addec 9515 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
517f42a0 9516
048addec 9517 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
a0f0878d 9518
048addec 95192002-11-15 Stefan Monnier <monnier@cs.yale.edu>
a0f0878d 9520
048addec
JD
9521 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
9522 (adjust_point_for_property): Move out of display and invisible even if
9523 we were already inside before (in case a property was added while
9524 we weren't looking). Be more careful when handling invisible props.
9525 Skip invisible text as if it really wasn't there at all.
aab83f91 9526
048addec 95272002-11-15 Jason Rumney <jasonr@gnu.org>
aab83f91 9528
048addec
JD
9529 * w32term.c (x_draw_image_foreground)
9530 (w32_draw_image_foreground_1): Use standard copy and invert
9531 operations to draw images.
aab83f91 9532
048addec
JD
9533 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
9534 depth of 1.
9535 (xbm_read_bitmap_data): Invert bits as xbm is read in.
9536 (XPutPixel): Don't invert bits here.
a4478a76 9537
048addec 95382002-11-15 Jason Rumney <jasonr@gnu.org>
a4478a76 9539
048addec
JD
9540 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
9541 (w32_draw_image_foreground_1): Handle image masks.
9542 (x_draw_image_glyph_string): Don't BitBlt transparently.
a4478a76 9543
048addec
JD
9544 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
9545 (x_from_xcolors): Adjust RGB values for W32.
9546 (image_background, image_background_transparent)
9547 (postprocess_image, x_to_xcolors, x_disable_image)
9548 (x_build_heuristic_mask): Adapt for W32 and enable.
9549 (x_create_x_image_and_pixmap): Mark images with palettes as such.
9550 (xbm_load): Remove unused variable.
03670a65 9551
048addec 95522002-11-14 Richard M. Stallman <rms@gnu.org>
03670a65 9553
048addec 9554 * buffer.c (syms_of_buffer): Doc fix.
59daa29a 9555
048addec 95562002-11-14 Dave Love <fx@gnu.org>
59daa29a 9557
048addec 9558 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
59daa29a 9559
048addec
JD
9560 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
9561 * xmenu.c (unuse_menu_items, digest_single_submenu):
9562 * xfns.c (x_put_x_image):
9563 * xdisp.c (message2_nolog, set_message):
9564 * undo.c (record_point):
9565 * terminfo.c (tparam):
9566 * syntax.c (scan_sexps_forward):
9567 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
9568 * composite.c (update_compositions):
9569 * cm.c (calccost, cmgoto):
9570 * charset.c (c_string_width): Declare all args (per C99).
59daa29a 9571
048addec 9572 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
59daa29a 9573
048addec
JD
9574 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
9575 Don't declare.
59daa29a 9576
048addec 9577 * emacs.c (main) [!VMS]: Avoid third arg.
59daa29a 9578
048addec
JD
9579 * fns.c (Fcopy_sequence): Doc fix.
9580 (Fmap_char_table): Cast `call2'.
3947677c 9581
048addec
JD
95822002-11-14 Francesco Potorti` <pot@gnu.org>
9583
9584 * s/sol2-8.h: New file.
9585
95862002-11-14 Kim F. Storm <storm@cua.dk>
9587
9588 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
9589 dependency on `risky-local-variable' and the :propertize form.
9590
95912002-11-12 Stefan Monnier <monnier@cs.yale.edu>
9592
9593 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
9594
9595 * syntax.c (scan_sexps_forward): Undo last patch.
9596 Use a more obvious fix: check eob before updating the syntax table.
9597
95982002-11-09 Stefan Monnier <monnier@cs.yale.edu>
9599
9600 * syntax.c (scan_sexps_forward): Update syntax table before reading
9601 a char rather than after so we don't update the table past eob.
9602
96032002-11-09 Dave Love <fx@gnu.org>
9604
9605 * buffer.c (Fset_buffer_major_mode): Fix last change.
9606
9607 * regex.c (regexec): Fix pmatch declaration.
9608
9609 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
9610
9611 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
9612 to self-inserting characters.
9613 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
9614
9615 * coding.c (Vtranslation_table_for_input): New.
9616 (syms_of_coding): DEFVAR it.
9617
96182002-11-08 Juanma Barranquero <lektu@terra.es>
9619
9620 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
9621 window.
9622
96232002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9624
6bdb309a 9625 * process.c (Fformat_network_address): Remove unused locals p,
048addec
JD
9626 cp, and i.
9627
96282002-11-06 Dave Love <fx@gnu.org>
9629
9630 * buffer.c (Qset_buffer_major_mode_hook): New.
9631 (Fset_buffer_major_mode): Use it.
9632
96332002-11-06 Richard M. Stallman <rms@gnu.org>
9634
9635 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
9636 and stop_polling.
9637
9638 * process.c (wait_reading_process_input):
9639 Test POLLING_PROBLEM_IN_SELECT, not hpux.
9640 Avoid initialization for auto Lisp_Object var.
9641
9642 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
9643
9644 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
9645
96462002-11-05 Richard M. Stallman <rms@gnu.org>
9647
9648 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
9649
9650 * callint.c (Fcall_interactively): New local filter_specs.
9651 (Fcall_interactively): Check for progn as well as let.
9652 Add a gcpro.
9653 (Qprogn): New variable.
9654 (syms_of_callint): Staticpro and init Qprogn.
9655
96562002-11-04 John Paul Wallington <jpw@shootybangbang.com>
9657
9658 * lread.c (Feval_buffer): Doc fix.
9659
96602002-11-04 Dave Love <fx@gnu.org>
9661
9662 * keyboard.c (read_char): Always translate iff
9663 Vkeyboard_translate_table is a char table and c is valid.
9664
9665 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
9666 and fix C types.
9667
96682002-11-03 Stefan Monnier <monnier@cs.yale.edu>
9669
9670 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
9671
9672 * editfns.c (get_pos_property): Don't hardcode Qfield.
9673
9674 * keyboard.c (adjust_point_for_property): Handle `display' prop on
9675 overlays. Also handle `invisible' prop.
9676
96772002-11-02 Stefan Monnier <monnier@cs.yale.edu>
9678
9679 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
9680 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
9681
96822002-11-01 Andreas Schwab <schwab@suse.de>
9683
9684 * editfns.c (Fmessage): Revert last change to properly handle %%.
9685
96862002-11-01 Stefan Monnier <monnier@cs.yale.edu>
9687
9688 * xmenu.c (unuse_menu_items): New fun.
9689 (menu_items_inuse): New var.
9690 (syms_of_xmenu): Initialize it.
9691 (init_menu_items): Use it to detect re-entrance.
9692 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
9693 (Fx_popup_menu): Remove spurious XSETFRAME.
9694
9695 * editfns.c (find_field): Make an exception for nil fields.
9696
96972002-11-01 Dave Love <fx@gnu.org>
9698
9699 * m/gec63.h: Deleted.
9700
97012002-10-31 Dave Love <fx@gnu.org>
9702
9703 * xterm.c (XTread_socket): Fix last change.
9704 (xaw_scroll_callback): Cast call_data to long to avoid warning.
9705
97062002-10-31 Stefan Monnier <monnier@cs.yale.edu>
9707
9708 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
9709
97102002-10-30 Stefan Monnier <monnier@cs.yale.edu>
9711
9712 * editfns.c (overlays_around, get_pos_property): New funs.
9713 (find_field): Use them.
9714 Also be careful not to modify POS before its last use.
9715 (Fmessage): Don't Fformat if there's nothing to format.
9716
97172002-10-30 Dave Love <fx@gnu.org>
9718
9719 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
9720 [HAVE_PTY_H]; Include pty.h.
9721
9722 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
9723
9724 * xterm.c (Qeql): Declare.
9725 (Vx_keysym_table): New.
9726 (syms_of_xterm): Initialize it.
9727 (XTread_socket): Use it. Deal with ASCII keysyms.
9728 (XSetIMValues) [HAVE_X11R6]: Prototype.
9729
9730 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
9731 (lispy_kana_keys): Comment out.
9732 (make_lispy_event) [XK_kana_A]: Comment out.
9733 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
9734 Fix sprintf call.
9735
9736 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
9737 regexp.h change).
9738 (TERMINFO, LIBS_TERMCAP): Define.
9739
9740 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
9741 (bcmp): Define conditional on HAVE_BCMP.
9742 (NO_SIOCTL_H): Don't define.
9743 (TIOCSIGSEND): Don't make conditional on IRIX6.
9744
9745 * s/sol2-5.h: Don't include strings.h.
9746 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
9747
9748 * s/irix6-0.h (IRIX6): Don't define.
9749 (bcopy, bcmp, bzero): Don't undef.
9750
9751 * s/irix6-5.h: Don't include strings.h.
9752 (IRIX6): Don't define.
9753 (bcopy, bcmp, bzero): Don't undef.
9754
9755 * syntax.c (Fforward_comment): Doc fix.
9756
97572002-10-29 Kim F. Storm <storm@cua.dk>
9758
9759 * process.c (Fsignal_process): Allow PROCESS to be specified by
9760 name in addition to pid (as integer or string).
9761
97622002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
9763
9764 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
9765 environments.
9766
97672002-10-27 Kim F. Storm <storm@cua.dk>
9768
9769 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
9770
9771 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
9772
9773 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
9774
9775 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
9776
97772002-10-26 Richard M. Stallman <rms@gnu.org>
9778
9779 * editfns.c (Fformat): Detect invalid format letters for floats.
9780
97812002-10-25 Kenichi Handa <handa@m17n.org>
9782
9783 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
9784 (x_set_title): Likewise.
9785
97862002-10-25 Juanma Barranquero <lektu@terra.es>
9787
9788 * macgui.h:
9789 * w32gui.h: Remove definition of XColor.
9790
9791 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
9792
97932002-10-24 Kim F. Storm <storm@cua.dk>
9794
9795 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
9796 Callers changed (supply dummy arg).
9797
9798 * lisp.h (get_window_cursor_type): Update prototype.
9799
9800 * w32term.c (x_display_and_set_cursor): Get active_cursor from
9801 get_window_cursor_type to track system caret.
9802
98032002-10-24 Kim F. Storm <storm@cua.dk>
9804
9805 * process.c (Fformat_network_address): New function.
9806 (syms_of_process): Defsubr it.
9807 (list_processes_1): Use it to format :local/:remote address if
f9711de4 9808 service/host is not set; before Emacs would crash in that case.
048addec
JD
9809 (Fmake_network_process): Don't use Ffind_operation_coding_system
9810 to setup coding system if host or service is not set.
9811
98122002-10-23 Juanma Barranquero <lektu@terra.es>
9813
9814 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
9815
9816 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
9817 COLORREF.
9818
9819 * macgui.h:
9820 * w32gui.h: Add definition of XColor.
9821
9822 * macfns.c:
9823 * w32fns.c:
9824 * xfaces.c: Remove definition of XColor.
9825
98262002-10-22 Stefan Monnier <monnier@cs.yale.edu>
9827
9828 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
9829
9830 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
9831 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
9832 window if it is dedicated.
9833 (Fshrink_window): Add preserve_before as was done for enlarge_window.
9834 (Vspecial_display_function): Update docstring.
9835
9836 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
9837 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
9838 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
9839
98402002-10-21 Stefan Monnier <monnier@cs.yale.edu>
9841
9842 * casefiddle.c (casify_region): Don't treat a prefix char as part
9843 of a word when at the beginning.
9844
98452002-10-17 Juanma Barranquero <lektu@terra.es>
9846
9847 * lread.c (syms_of_lread): Fix typos.
9848
98492002-10-17 Dave Love <fx@gnu.org>
9850
9851 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
9852
98532002-10-16 Richard M. Stallman <rms@gnu.org>
9854
9855 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
9856
98572002-10-14 Juanma Barranquero <lektu@terra.es>
9858
9859 * w16select.c (syms_of_win16select): Fix docstring for
9860 `selection-coding-system'.
9861
9862 * w32select.c (syms_of_w32select): Likewise.
9863
98642002-10-14 Stefan Monnier <monnier@cs.yale.edu>
9865
9866 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
9867 a backslash-quoted char.
9868 (scan_lists, scan_sexps_forward): Pacify the compiler.
9869
98702002-10-13 Richard M. Stallman <rms@gnu.org>
9871
9872 * window.c (window_scroll): Set immediate_quit.
9873
9874 * print.c (print): When backquote form is the car of a list,
9875 output in old style. Use old_backquote_output to output all
9876 comma forms inside it in old style too.
9877
9878 * buffer.h (struct buffer): Move `undo_list' down below `name'.
9879
98802002-10-11 Markus Rost <rost@math.ohio-state.edu>
9881
9882 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
9883 batch mode).
9884
9885 * lread.c (Fload): Doc fix (load-suffixes).
9886
98872002-10-10 Steven Tamm <steventamm@mac.com>
9888
9889 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
9890 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
9891 Also switch the default to Qnil from Qt.
9892
98932002-10-08 Kenichi Handa <handa@m17n.org>
9894
9895 * coding.c (code_convert_region): When we need more GAP for
9896 conversion, pay attention to the case that coding->produced is not
9897 greater than coding->consumed.
9898
98992002-10-07 Richard M. Stallman <rms@gnu.org>
9900
9901 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
9902
99032002-10-06 Andrew Choi <akochoi@shaw.ca>
9904
9905 * macmenu.c (mac_menu_show): Add j to count menu items; match
9906 menu_item_selection to it to find selected item.
9907
99082002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9909
9910 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
9911 cases. The correct fix is to pass ReparentNotify to Xt.
9912 The shell widget interprets ConfigureNotify differently depending
9913 on if it has been reparented or not.
9914
99152002-10-05 Markus Rost <rost@math.ohio-state.edu>
9916
9917 * editfns.c (Fformat_time_string): Doc fix.
9918
99192002-10-05 John Paul Wallington <jpw@shootybangbang.com>
9920
9921 * fns.c (Flength): Doc fix.
9922
99232002-10-04 Stefan Monnier <monnier@cs.yale.edu>
9924
9925 * keyboard.c (keyremap): New struct.
9926 (read_key_sequence): Use it: globally replace keytran_foo with
9927 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
9928 keytran_next and fkey_next to just `next'.
9929
99302002-10-04 Steven Tamm <steventamm@mac.com>
9931
9932 * macterm.c (keycode_to_xkeysym_table): Change return to be
9933 treated like an X keysym.
9934
99352002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9936
9937 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
9938 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
9939 This is to also handle x/y changes that occur because of a resize.
9940
99412002-10-02 John Paul Wallington <jpw@shootybangbang.com>
9942
9943 * frame.c (Vdelete_frame_functions): New variable.
9944 (syms_of_frame): Initialize and defvar it.
9945 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
9946 it when frame's `tooltip' parameter is non-nil.
9947
9948 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
9949
9950 * w32fns.c (x_create_tip_frame): Likewise.
9951
9952 * macfns.c (x_create_tip_frame): Likewise.
9953
99542002-09-30 Kenichi Handa <handa@m17n.org>
9955
9956 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
9957 -1 before calling ccl_driver.
9958
9959 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
9960 Only when it is non-nil, handle composition sequence.
9961 (setup_coding_system) <0>: Don't force composition handling.
9962
9963 * Makefile.in (lisp, shortlisp): Add utf-16.elc
9964
99652002-09-29 Richard M. Stallman <rms@gnu.org>
9966
9967 * search.c (Freplace_match): Adjust match data for the substitution
9968 just made in the buffer.
9969
9970 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
9971 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
9972
99732002-09-27 Richard M. Stallman <rms@gnu.org>
9974
9975 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
9976 (read_char): Use them. Do all exits thru the end of the function.
9977
99782002-09-27 Kenichi Handa <handa@etl.go.jp>
9979
9980 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
9981 is nil.
9982
99832002-09-26 Richard M. Stallman <rms@gnu.org>
9984
9985 * regex.h (__restrict_arr): Don't define if already defined.
9986
9987 * coding.c (run_pre_post_conversion_on_str):
9988 Save and restore Vdeactivate_mark.
9989
99902002-09-26 John Paul Wallington <jpw@shootybangbang.com>
9991
9992 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
9993
99942002-09-26 Kenichi Handa <handa@etl.go.jp>
9995
9996 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
9997 nonzero, try face's family at first. Otherwise try FAMILY at first.
9998 (choose_face_font): If C is a single byte char or latin-1, call
9999 try_font_list with PREFER_FACE_FAMILY 1.
10000
100012002-09-21 Richard M. Stallman <rms@gnu.org>
10002
10003 * window.c (select_window_1): Don't select frame.
10004 Set frame's selected window only when frame itself is selected.
10005 (Fselect_window): Doc fix.
10006
100072002-09-18 Kim F. Storm <storm@cua.dk>
10008
10009 * process.c (make-network-process): Doc fix (there is no
10010 network-server-log-function hook).
10011
100122002-09-18 Richard M. Stallman <rms@gnu.org>
10013
10014 * print.c (print): Clear out the unused parts of Vprint_number_table.
10015 (syms_of_print): Doc fix for `print-number-table'.
10016
10017 * unexelf.c (unexec): Undo previous change.
10018
100192002-09-17 Andreas Schwab <schwab@suse.de>
10020
10021 * m/alpha.h [LINUX]: Don't define DATA_START.
10022
100232002-09-16 Dave Love <fx@gnu.org>
10024
10025 * unexelf.c (unexec): Deal with .got, reinstating change from
10026 25-08-1999.
10027
100282002-09-13 Richard M. Stallman <rms@gnu.org>
10029
10030 * s/sol2-6.h (UNEXEC): Comment out definition.
10031
10032 * unexsol.c (unexec): Don't downcase first letter of error msg.
10033
10034 * xfaces.c (Fcolor_supported_p): Just one arg is required.
10035
100362002-09-12 Markus Rost <rost@math.ohio-state.edu>
10037
10038 * unexsol.c: Include buffer.h, charset.h, coding.h.
10039
100402002-09-11 Richard M. Stallman <rms@gnu.org>
10041
10042 * unexsol.c: Don't use report_file_error; do it by hand
10043 using dlerror.
10044
10045 * process.c (wait_reading_process_input, both versions):
10046 Before calling turn_on_atimers, call stop_polling.
10047
10048 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
10049
10050 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
10051 we go to too_near_end, call clear_glyph_matrix.
10052 (redisplay_window): After make_cursor_line_fully_visible,
10053 call clear_glyph_matrix and bypass `goto done'.
10054
10055 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
10056 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
10057
100582002-09-10 Richard M. Stallman <rms@gnu.org>
10059
10060 * fileio.c (Fdo_auto_save): Catch error making directory.
10061 Only call push_message if we need to.
10062 At the same time, make an unwind-protect to pop it.
10063 Rename local message_p to old_message_p.
10064 (do_auto_save_make_dir, do_auto_save_eh): New functions.
10065 (do_auto_save_unwind): Don't call pop_message.
10066
10067 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
10068
10069 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
10070
10071 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
10072
10073 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
10074
100752002-09-10 Stefan Monnier <monnier@cs.yale.edu>
10076
10077 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
10078 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
10079 (re_match_2_internal): Be more careful with infinite loops.
10080
100812002-09-10 Kim F. Storm <storm@cua.dk>
10082
10083 * macros.c (end_kbd_macro): New function.
10084 (Fend_kbd_macro): Use it.
10085
10086 * macros.h (end_kbd_macro): Declare extern.
10087
10088 * keyboard.c (Fdiscard_input): If defining keyboard macro,
10089 end and save it instead of discarding it.
10090
100912002-09-09 Markus Rost <rost@math.ohio-state.edu>
10092
10093 * s/sol2-6.h: Fix typo. Add comment.
10094
100952002-09-09 Richard M. Stallman <rms@gnu.org>
10096
10097 * regex.c (regnum_t): Use signed int, not unsigned int.
10098
10099 * s/sol2-6.h: New file.
10100
10101 * s/sol2-5.h (UNEXEC): Definition deleted.
10102
101032002-09-08 Kim F. Storm <storm@cua.dk>
10104
10105 * macros.c (executing_macro_index): Change type to EMACS_INT.
10106 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
10107
10108 * macros.h (executing_macro_index): Change type to EMACS_INT.
10109
101102002-09-06 Richard M. Stallman <rms@gnu.org>
10111
10112 * casetab.c (set_case_table): Make canon table point to eqv table.
10113
101142002-09-06 Juanma Barranquero <lektu@terra.es>
10115
10116 * coding.c (syms_of_coding): Fix spacing.
10117
10118 * composite.c (Fcompose_region_internal)
10119 (Fcompose_string_internal): Likewise.
10120
10121 * data.c (Flsh): Likewise.
10122
10123 * fontset.c (Fset_fontset_font): Likewise.
10124
10125 * macfns.c (Fx_server_max_request_size): Likewise.
10126
10127 * w16select.c (syms_of_win16select): Likewise.
10128
10129 * w32select.c (syms_of_w32select): Likewise.
10130
10131 * xselect.c (syms_of_xselect): Likewise.
10132
101332002-09-05 Richard M. Stallman <rms@gnu.org>
10134
10135 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
10136 call EXTEND_RANGE_TABLE and return a proper value.
10137 (set_image_of_range): Don't call set_image_of_range_1
10138 if no TRANSLATE or if range includes all of Latin-1.
10139 Only call it for the Latin-1 part of the range.
10140 For other cases, make two separate ranges,
10141 one for the original specified characters and one for
10142 their case-conversions.
10143
101442002-09-04 Richard M. Stallman <rms@gnu.org>
10145
10146 * s/sol2-5.h (UNEXEC): Use unexsol.o.
10147
10148 * window.c (displayed_window_lines): Correct for one-off bug
10149 in HEIGHT on non-window displays.
10150
10151 * regex.c (set_image_of_range_1): New function.
10152 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
10153 Return a value to indicate running out of memory.
10154 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
10155 (extend_range_table_work_area): New subroutine.
10156 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
10157 Different calling conventions, and used from set_image_of_range{,_1}.
10158 (IMMEDIATE_QUIT_CHECK): Definitions moved.
10159
101602002-09-04 Juanma Barranquero <lektu@terra.es>
10161
10162 * makefile.w32-in: All dependencies updated.
10163
101642002-09-01 Richard M. Stallman <rms@gnu.org>
10165
10166 * unexsol.c: New file.
10167
10168 * xfns.c (Qbox): Declare external, don't define.
10169
10170 * xdisp.c (redisplay_window) <force-start case>:
10171 If point is on semi-visible last line, reposition
10172 it at previous line.
10173
10174 * alloc.c (display_malloc_warning): Use display-warning.
10175 (malloc_warning_1): Function deleted.
10176
10177 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
10178
10179 * lread.c (read1): Handle #! by skipping the line.
10180
101812002-08-31 Richard M. Stallman <rms@gnu.org>
10182
10183 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
10184 Don't include LDFLAGS.
10185 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
10186
101872002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
10188
10189 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
10190 member of x_display_info unless we compile for some window system.
10191
101922002-08-31 Kim F. Storm <storm@cua.dk>
10193
10194 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
10195 (get_window_cursor_type): Don't use them.
10196 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
10197
101982002-08-30 Kenichi Handa <handa@etl.go.jp>
10199
10200 * xdisp.c (get_next_display_element): Fix previous change.
10201
102022002-08-30 Andrew Choi <akochoi@shaw.ca>
10203
10204 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
10205 (expose_window): Use it to fix the display of overlapping
10206 rows (merge code from xterm.c).
10207
10208 * macfns.c (Qbox): Add extern declaration.
10209
102102002-08-30 Juanma Barranquero <lektu@terra.es>
10211
10212 * w32fns.c (Qbox): Make extern.
10213 (syms_of_w32fns): Remove initialization of Qbox.
10214
102152002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
10216
10217 * xfns.c (Fx_open_connection): Fix error message.
10218
102192002-08-30 Kim F. Storm <storm@cua.dk>
10220
10221 The following changes consolidates the handling of the cursor
10222 type in xdisp.c, moving duplicate code and functionality from
10223 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
10224
10225 * frame.h (enum text_cursor_kinds): Consolidated here.
10226 Added DEFAULT_CURSOR value.
10227 (struct frame) <desired_cursor, cursor_width>
10228 <blink_off_cursor, blink_off_cursor_width>: New fields.
10229 Consolidated from output_x, output_w32 and output_mac structs.
10230 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
10231 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
10232
10233 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
10234 Variables consolidated here.
10235 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
10236 (Vcursor_in_non_selected_windows): Renamed from
10237 cursor_in_non_selected_windows and changed to Lisp_Object.
10238 (syms_of_xdisp): Define and staticpro new and moved variables.
10239 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
10240 consolidated here. Recognize Qhollow setting.
10241 (set_frame_cursor_types): New function to set frame cursor types
10242 based on the frame parameters.
10243 (get_window_cursor_type): New function to calculate new cursor
10244 type and width for the specified window. Based on duplicated
10245 code consolidated here.
10246 Enhancements: cursor-in-non-selected-windows may be a cursor type,
10247 check buffer-local alternate-cursor-type and blink-cursor-alist
10248 before using built-in blink off methods.
10249
10250 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
10251
10252 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
10253 (get_specified_cursor_type, get_window_cursor_type)
10254 (set_frame_cursor_types): Added prototypes.
10255
10256 * macfns.c (x_specified_cursor_type): Removed.
10257 (x_set_cursor_type): Use set_frame_cursor_types.
10258 (Qbar, Qbox): Removed.
10259 (syms_of_macfns): Don't intern or staticpro them.
10260
10261 * macterm.c (x_specified_cursor_type): Remove prototype.
10262 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
10263 (x_display_and_set_cursor): Use get_window_cursor_type.
10264 Remove unused local variables cursor_non_selected, active_cursor.
10265 Redraw cursor if hbar cursor width changes.
10266 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
10267
10268 * macterm.h (enum text_cursor_kinds): Removed.
10269 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
10270 <blink_off_cursor, blink_off_cursor_width>: Members removed.
10271 (FRAME_DESIRED_CURSOR): Macro removed.
10272
10273 * w32fns.c (Vblink_cursor_alist): Removed.
10274 (Qbar, Qhbar, Qbox, Qhollow): Removed.
10275 (syms_of_w32fns): Don't intern, staticpro, or define them.
10276 (x_specified_cursor_type): Removed.
10277 (x_set_cursor_type): Use set_frame_cursor_types.
10278
10279 * w32term.c (x_specified_cursor_type): Remove prototype.
10280 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
10281 (x_display_and_set_cursor): Use get_window_cursor_type.
10282 Remove unused local variables cursor_off_state.
10283 Redraw cursor if hbar cursor width changes.
10284 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
10285
10286 * w32term.h (enum text_cursor_kinds): Removed.
10287 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
10288 <blink_off_cursor, blink_off_cursor_width>: Members removed.
10289 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
10290 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
10291 (struct w32_display_info) <x_highlight_frame>: Renamed member from
10292 w32_highlight_frame.
10293
10294 * xfns.c (Vblink_cursor_alist): Removed.
10295 (Qbar, Qhbar, Qbox, Qhollow): Removed.
10296 (syms_of_xfns): Don't intern, staticpro, or define them.
10297 (x_specified_cursor_type): Removed.
10298 (x_set_cursor_type): Use set_frame_cursor_types.
10299
10300 * xterm.c (x_specified_cursor_type): Remove prototype.
10301 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
10302 (x_display_and_set_cursor): Use get_window_cursor_type.
10303 Remove unused local variables cursor_off_state.
10304 Redraw cursor if hbar cursor width changes.
10305
10306 * xterm.h (enum text_cursor_kinds): Removed.
10307 (struct output_x) <current_cursor, desired_cursor, cursor_width>
10308 <blink_off_cursor, blink_off_cursor_width>: Members removed.
10309 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
10310 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
10311 (x_specified_cursor_type): Remove prototype.
10312
103132002-08-28 Richard M. Stallman <rms@gnu.org>
10314
10315 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
10316 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
10317 (Vblink_cursor_alist): New variable.
10318 (syms_of_w32fns): Initialize and defvar it.
10319 (x_specified_cursor_type): Recognize Qbox for filled box.
10320 Exceptions are hollow boxes.
10321 (Qbox, Qhollow): New variables.
10322 (syms_of_w32fns): Initialize and staticpro them.
10323
10324 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
10325 New macros.
10326 (struct w32_output): New fields blink_off_cursor,
10327 blink_off_cursor_width.
10328 (FRAME_CURSOR_WIDTH): New macro.
10329
10330 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
10331 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
10332
10333 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
10334 for bar cursor.
10335
10336 * w32term.c (expose_overlaps): New function.
10337 (expose_window): Use it to fix the display of overlapping rows.
10338
103392002-08-28 Simon Josefsson <jas@extundo.com>
10340
10341 * xfns.c (Fx_open_connection): Improve help when X connection
10342 fails, xhost is insecure and xauth is better.
10343
103442002-08-28 Juanma Barranquero <lektu@terra.es>
10345
10346 * makefile.w32-in: Add missing dependencies on w32term.h and
10347 composite.h.
10348
10349 * emacs.c (USAGE1): Add missing newline.
10350
103512002-08-27 Andrew Choi <akochoi@shaw.ca>
10352
10353 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
10354
103552002-08-27 Richard M. Stallman <rms@gnu.org>
10356
10357 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
10358 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
10359 (Vblink_cursor_alist): New variable.
10360 (syms_of_xfns): Initialize and defvar it.
10361 (x_specified_cursor_type): Recognize Qbox for filled box.
10362 Exceptions are hollow boxes.
10363 (Qbox, Qhollow): New variables.
10364 (syms_of_xfns): Initialize and staticpro them.
10365
10366 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
10367 New macros.
10368 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
10369
10370 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
10371 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
10372
10373 * emacs.c (main): Handle --script.
10374 (USAGE1): Mention --script.
10375 (standard_args): Define sort order for --script.
10376
103772002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
10378
10379 * xdisp.c (redisplay_updating_p): Variable removed.
10380 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
10381 New variables.
10382 (init_iterator): Don't free realized faces if
10383 inhibit_free_realized_faces is set.
10384 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
10385 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
10386 initialize Qinhibit_free_realized_faces.
10387
10388 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
10389 when iterator is adding glyphs to a glyph matrix.
10390
103912002-08-27 Kenichi Handa <handa@etl.go.jp>
10392
10393 * xdisp.c (get_next_display_element): In unibyte case, don't use
10394 octal form for such eight-bit characters that can be converted to
10395 multibyte char.
10396
103972002-08-26 Kim F. Storm <storm@cua.dk>
10398
b6189c3b
KS
10399 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize
10400 foreground and background colors. From Joe Buehler.
048addec
JD
10401
104022002-08-26 Miles Bader <miles@gnu.org>
10403
10404 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
10405
104062002-08-25 Andrew Choi <akochoi@shaw.ca>
10407
10408 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
10409 defined instead of MAC_OSX.
10410
10411 * s/darwin.h (select): Define select to sys_select only if
10412 HAVE_CARBON is defined.
10413 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
10414 (DONT_REOPEN_PTY): #def it.
10415
10416 * macterm.c (XTread_socket): Remove code to call
10417 SendEventToEventTarget for keys with command modifiers when
10418 mac_command_key_is_meta is nil.
10419
104202002-08-24 Andreas Schwab <schwab@suse.de>
10421
10422 * eval.c (Fdefvar): Fix last change.
10423
104242002-08-23 Richard M. Stallman <rms@gnu.org>
10425
10426 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
10427 Record variables in load history as (defvar . VAR).
10428 (Fdefvar): Don't record in load history if no initial value.
10429 (Qdefvar): New variable.
10430 (syms_of_eval): Init and staticpro it.
10431
10432 * lread.c (syms_of_lread): Doc fix.
10433 (build_load_history): Use Fmember to see if a definition
10434 is already in the Vload_history element.
10435
10436 * process.c (Fstart_process): Remove /: from program name.
10437
10438 * emacs.c (decode_env_path): Don't add /: if file name handler
10439 has a `safe-magic' property.
10440
10441 * callproc.c (Fcall_process): Remove /: from program name.
10442
104432002-08-23 Stefan Monnier <monnier@cs.yale.edu>
10444
10445 * regex.c (PATFETCH): Remove the translating fetch.
10446 (PATFETCH_RAW): Rename to PATFETCH.
10447 (set_image_of_range): New fun.
10448 (SET_RANGE_TABLE_WORK_AREA): Use it.
10449 (regex_compile): Don't translate the pattern chars so eagerly.
10450 Only do it when inserting an `exactn' bytecode or when handling
10451 a char-range.
10452 (mutually_exclusive_p): Avoid empty statement.
10453
104542002-08-22 Kim F. Storm <storm@cua.dk>
10455
10456 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
10457 end up on a partially visible line; this reverts a specific part
10458 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
10459 display error which has been reported several times now.
10460 However it introduces the problem that changes was supposed to fix.
10461 See my comments in the source if you want to debug this further.
10462
104632002-08-20 Kenichi Handa <handa@etl.go.jp>
10464
10465 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
10466
104672002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
10468
10469 * msdos.c (croak): Add `void' to definition.
10470
c1380aa6 10471 * sysdep.c (request_sigio, unrequest_sigio) [MSDOS]:
048addec
JD
10472 Don't define them, they are defined in msdos.c.
10473
10474 * mem-limits.h [MSDOS]: Declare etext.
10475
10476 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
10477 `const' since CORRECT_DIR_SEPS modifies its target.
10478
104792002-08-19 Kim F. Storm <storm@cua.dk>
10480
2fb0ce67 10481 * keyboard.c (Fclear_this_command_keys): Add optional arg
048addec
JD
10482 KEEP-RECORD to avoid clearing lossage when we just want to clear
10483 the current key sequence (kmacro needs this).
10484
104852002-08-19 Kenichi Handa <handa@localhost>
10486
10487 * composite.c (run_composition_function): Call FUNC if it is fboundp.
10488
10489 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
10490 cons, return Qnil.
10491
104922002-08-17 Richard M. Stallman <rms@gnu.org>
10493
10494 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
10495
10496 * sysdep.c [!VMS]: Include sys/files.h.
10497
10498 * editfns.c (save_restriction_restore): Defend from unchained marker.
10499
10500 * buffer.c (overlays_at): Handle extending vec uniformly.
10501 (overlays_in): Handle extending vec from length 0 as in overlays_at.
10502
105032002-08-15 Andrew Choi <akochoi@shaw.ca>
10504
10505 * mac.c (init_mac_osx_environment): New function.
10506
10507 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
10508
105092002-08-14 Kim F. Storm <storm@cua.dk>
10510
10511 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
10512 executing macro before appending to it (when used from Lisp).
10513 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
10514 which is called prior to each iteration of macro (for kmacro.el).
10515 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
10516
10517 * lisp.h (Fexecute_kbd_macro): Update prototype.
10518
10519 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
10520
105212002-08-14 Kenichi Handa <handa@etl.go.jp>
10522
10523 * xselect.c (QUTF8_STRING): New variable.
10524 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
10525 (x_atom_to_symbol): Likewise.
10526 (x_get_local_selection): New argument local_request. If it is
10527 nonzero, call handler_fn with the second arg nil.
10528 (x_handle_selection_request): Call x_get_local_selection with
10529 local_request 0.
10530 (lisp_data_to_selection_data): Don't encode the string here.
10531 (Fx_get_selection_internal): Call x_get_local_selection with
10532 local_request 1.
10533 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
10534
10535 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
10536
10537 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
10538
105392002-08-13 Richard M. Stallman <rms@gnu.org>
10540
10541 * minibuf.c (Fminibufferp): New function.
10542 (syms_of_minibuf): Defsubr it.
10543 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
10544
105452002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
10546
10547 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
10548
105492002-08-12 Richard M. Stallman <rms@gnu.org>
10550
10551 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
10552 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
10553 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
10554 already.
10555
10556 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
10557
105582002-08-11 Andrew Choi <akochoi@shaw.ca>
10559
10560 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
10561 (Vmac_pass_command_to_system): New variable.
10562 (Vmac_pass_control_to_system): New variable.
10563 (do_mouse_moved): Check wp with is_emacs_window.
10564 (XTread_socket): Check window_ptr with is_emacs_window.
10565 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
10566 events back to Mac Toolbox for processing, depending on values of
10567 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
10568 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
10569 Vmac_pass_control_to_system.
10570
105712002-08-10 Kenichi Handa <handa@etl.go.jp>
10572
10573 * coding.c (unencodable_char_position): New function.
10574 (Funencodable_char_position): New function.
10575 (syms_of_coding): Defsubr Funencodable_char_position.
10576
105772002-08-10 Andrew Choi <akochoi@shaw.ca>
10578
10579 * mac.c (sys_select) [MAC_OSX]: New function.
10580
10581 * macterm.c (MakeMeTheFrontProcess): New function.
10582 (mac_initialize): Call MakeMeTheFrontProcess.
10583
10584 * s/darwin.h: Define select to sys_select.
10585
105862002-08-09 Richard M. Stallman <rms@gnu.org>
10587
10588 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
10589
105902002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
10591
10592 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
10593 end of the buffer.
10594
105952002-08-08 Ken Raeburn <raeburn@mit.edu>
10596
10597 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
10598
10599 * puresize.h (BASE_PURESIZE): Increase to 910000.
10600
106012002-08-08 Kenichi Handa <handa@etl.go.jp>
10602
10603 * coding.c (Ffind_operation_coding_system): For write-region, if
10604 VISIT is a filename, make it the target.
10605
106062002-08-07 Richard M. Stallman <rms@gnu.org>
10607
10608 * alloc.c (mark_object): Detect long lists for debugging.
10609 (mark_object_loop_halt): New variable.
10610
10611 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
10612
10613 * data.c (Fmake_variable_frame_local): Doc fix.
10614
106152002-08-01 David Ponce <david@dponce.com>
10616
10617 * w32menu.c (local_heap, local_alloc, local_free): New macros.
10618 (malloc_widget_value, free_widget_value)
10619 (w32_free_submenu_strings): Use them.
10620
10621 (push_submenu_start, push_submenu_end, push_left_right_boundary)
10622 (push_menu_pane, push_menu_item, single_keymap_panes)
10623 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
10624 (single_submenu, set_frame_menubar)
10625 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
10626
10627 (Fx_popup_menu): Don't show pop up menu until preceding one is
10628 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
10629
10630 * w32menu.c: Changes adapted from xmenu.c
10631 (set_frame_menubar): First parse all submenus,
10632 then make widget_value trees from them.
10633 Don't allocate any widget_value objects
10634 until we are done with the parsing.
10635 (parse_single_submenu): New function.
10636 (digest_single_submenu): New function.
10637 (single_submenu): Function deleted, replaced by those two.
10638
106392002-08-04 Andrew Choi <akochoi@shaw.ca>
10640
10641 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
10642 returns a valid window pointer before proceeding for keyDown and
10643 autoKey events.
10644
106452002-08-03 Andrew Choi <akochoi@shaw.ca>
10646
10647 * macterm.c (USE_CARBON_EVENTS): New macro.
10648 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
10649 (x_iconify_frame): Call CollapseWindow.
10650 (Vmac_reverse_ctrl_meta): New variable.
10651 (Vmac_wheel_button_is_mouse_2): New variable.
10652 (init_mac_drag_n_drop): New function.
10653 (mac_do_receive_drag): New function.
10654 (mac_handle_service_event): New function.
10655 (init_service_handler): New function.
10656 (mac_to_emacs_modifiers): New function.
10657 (mac_event_to_emacs_modifiers): New function.
10658 (mac_get_mouse_btn): New function.
10659 (mac_convert_event_ref): New function.
10660 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
10661 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
10662 mac_get_mouse_btn.
10663 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
10664
10665 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
10666 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
10667 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
10668 TOOL_BAR_EVENT for MAC_OS as well.
10669 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
10670 as for WINDOWS_NT.
10671 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
10672
10673 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
10674
106752002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
10676
10677 * xdisp.c (forward_to_next_line_start): Fix a condition that
10678 lead to a newline being skipped.
10679
106802002-08-02 Andrew Choi <akochoi@shaw.ca>
10681
10682 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
10683
106842002-08-01 Richard M. Stallman <rms@gnu.org>
10685
10686 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
10687
106882002-07-31 Andrew Choi <akochoi@shaw.ca>
10689
10690 * macfns.c: #undef init_process before #define-ing it.
10691
10692 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
10693 HAVE_CARBON is defined.
10694
106952002-07-31 Richard M. Stallman <rms@gnu.org>
10696
10697 * xmenu.c (set_frame_menubar): First parse all submenus,
10698 then make widget_value trees from them.
10699 Don't allocate any widget_value objects
10700 until we are done with the parsing.
10701 (parse_single_submenu): New function.
10702 (digest_single_submenu): New function.
10703 (single_submenu): Function deleted, replaced by those two.
10704
107052002-07-30 Juanma Barranquero <lektu@terra.es>
10706
10707 * w32proc.c (syms_of_ntproc): Fix docstring of
10708 `w32-get-true-file-attributes'.
10709
107102002-07-28 Richard M. Stallman <rms@gnu.org>
10711
10712 * s/hpux8.h (HPUX8): Define this before including hpux.h.
10713 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
10714
10715 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
10716
10717 * keyboard.c (make_lispy_event):
10718 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
10719 Explicitly clear up_modifier in event->modifiers.
10720
107212002-07-27 Richard M. Stallman <rms@gnu.org>
10722
10723 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
10724
10725 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
10726 for bar cursor.
10727
107282002-07-26 Kenichi Handa <handa@etl.go.jp>
10729
10730 * coding.c (detect_coding_iso2022): While checking a byte sequence
10731 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
10732 it in the normal loop.
10733
107342002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
10735
10736 * xterm.c (expose_overlaps): New function.
10737 (expose_window): Use it to fix the display of overlapping rows.
10738
10739 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
10740
107412002-07-23 Ken Raeburn <raeburn@gnu.org>
10742
10743 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
10744 since it only depends on XUINT.
10745
10746 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
10747 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
10748 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
10749 Macros deleted.
3947677c 10750
77d1daf2
AS
10751 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
10752 its value over other approaches.
10753 * sysdep.c (start_of_data): Don't define the function if a macro
10754 form has been defined.
8a8e19a3 10755
048addec
JD
107562002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
10757
10758 * xdisp.c (redisplay_updating_p): New variable.
10759 (init_iterator): Don't free realized faces when
10760 redisplay_updating_p is set.
10761 (redisplay_internal): Set redisplay_updating_p while updating
10762 the display.
10763
107642002-07-23 Richard M. Stallman <rms@gnu.org>
10765
10766 * editfns.c (Fmessage): Treat "" like nil.
10767
107682002-07-23 Kenichi Handa <handa@etl.go.jp>
10769
10770 * xdisp.c (face_before_or_after_it_pos):
10771 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
10772
107732002-07-22 Juanma Barranquero <lektu@terra.es>
10774
10775 * callproc.c (init_callproc) [DOS_NT]:
10776 Initialize Vshared_game_score_directory to nil.
10777 (syms_of_callproc) [DOS_NT]: Likewise.
10778
107792002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
10780
10781 * xdisp.c (display_line): Replace an abort with xassert.
10782
107832002-07-21 Richard M. Stallman <rms@gnu.org>
10784
10785 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
10786 and END_UNCHANGED when setting buffer_unchanged_p.
10787 Use current_matrix_up_to_date_p to decide whether to use
10788 try_cursor_movement.
10789
10790 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
10791
10792 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
10793
10794 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
10795 Set to nil if dir does not exist.
10796 (syms_of_callproc): Init unconditionally and simply.
10797
10798 * buffer.c (Fbuffer_list): Doc fix.
10799
108002002-07-21 Ken Raeburn <raeburn@gnu.org>
10801
10802 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
10803
10804 * buffer.c (mmap_realloc): When shrinking, make sure number of
10805 pages to unmap is rounded towards zero.
10806
10807 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
10808 (XSETINT): Deleted.
10809
10810 * m/att3b.h (XINT): Don't define.
10811 (VALBITS, VALMASK, XTYPE): Deleted.
10812 (DATA_SEG_BITS): Define.
10813 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
10814 ARRAY_MARK_FLAG): Deleted.
10815 (DATA_SEG_BITS): Define.
10816 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
10817 (DATA_SEG_BITS): Define.
10818
108192002-07-20 Richard M. Stallman <rms@gnu.org>
10820
10821 * print.c (print_error_message): New args CONTEXT and CALLER.
10822 Calls changed.
10823
10824 * lisp.h (print_error_message): Declare new args.
10825
10826 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
10827 and CONTEXT to print_error_message, don't print them here.
10828 For a Quit, don't use Vsignaling_function.
10829 Call message_log_maybe_newline.
10830
10831 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
10832
108332002-07-20 Kim F. Storm <storm@cua.dk>
10834
10835 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
10836
108372002-07-19 Ken Raeburn <raeburn@gnu.org>
10838
10839 * bytecode.c (struct byte_stack): Pointers into byte string now
10840 point to const.
10841 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
10842 const.
10843 * charset.h (BCOPY_SHORT): Source pointer now points to const.
10844 * coding.c (encode_eol, detect_coding, detect_eol):
10845 (decode_coding, encode_coding, detect_coding_system):
10846 Source strings now treated as const.
10847 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
10848 modify Lisp string contents.
10849 * coding.h (decode_coding, encode_coding, detect_coding,
10850 detect_eol): Declarations updated.
10851 * composite.c (compose_chars_in_text): Treat Lisp string contents
10852 as const.
10853 * dispnew.c (safe_bcopy): Source pointer now points to const.
10854 * lisp.h (STRING_COPYIN): New macro.
10855 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
10856 (internal_with_output_to_temp_buffer): Declarations updated.
10857 * print.c (temp_output_buffer_setup):
10858 (internal_with_output_to_temp_buffer): Buffer name argument is now
10859 pointer to const.
10860 * sound.c (struct sound_device): Function pointer field "write"
10861 buffer argument now points to const.
10862 (vox_write): Buffer argument points to const.
10863 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
10864 contents as const.
10865 * sysdep.c (emacs_write): Buffer pointer now const.
10866 * term.c (encode_terminal_code): Buffer pointer now const.
10867 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
10868 (x_face_list_fonts, x_update_menu_appearance):
10869 (hash_string_case_insensitive): Treat Lisp string contents as const.
10870
108712002-07-19 Juanma Barranquero <lektu@terra.es>
10872
048addec
JD
10873 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
10874
10875 * fileio.c (syms_of_fileio): Likewise.
c62aec78
JB
10876 (Ffile_name_as_directory): Fix argument name in docstring.
10877 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
048addec
JD
10878
108792002-07-18 Richard M. Stallman <rms@gnu.org>
10880
10881 * data.c (Fdefalias): Doc fix.
10882
108832002-07-17 Dave Love <fx@gnu.org>
10884
10885 * intervals.h (text_property_stickiness): Use P_.
10886
10887 * ccl.c: Remove `emacs' conditionals.
10888 (ccl_backtrace_table): Fix size spec.
10889 (ccl_driver): Fix type errors.
10890
108912002-07-16 Ken Raeburn <raeburn@gnu.org>
10892
10893 * alloc.c (xstrdup, make_string, make_unibyte_string)
10894 (make_multibyte_string, build_string): String pointer args now
10895 point to const.
10896 * charset.c (find_charset_in_text, c_string_width):
10897 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
10898 * fileio.c (report_file_error):
10899 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
10900 (count_combining_before, count_combining_after, insert_1_both):
10901 (insert, insert_and_inherit, insert_string):
10902 (insert_before_markers, insert_before_markers_and_inherit):
10903 * lread.c (intern, oblookup, hash_string):
10904 * minibuf.c (temp_echo_area_glyphs):
10905 * search.c (fast_c_string_match_ignore_case):
10906 * sysdep.c (emacs_open, set_file_times):
10907 * xfaces.c (xstricmp):
10908 * xdisp.c (store_frame_title, string_char_and_length):
10909 (message_dolog, message2, message2_nolog, set_message): Likewise.
10910 (set_message_1): Cast message string argument to const pointer.
10911 * editfns.c (general_insert_function): Insertion function now
10912 takes pointer to const for input data.
10913 * charset.h (find_charset_in_text, c_string_width):
10914 (parse_str_as_multibyte): Declarations updated.
10915 * dispextern.h (xstricmp): Declaration updated.
10916 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
10917 (count_size_as_multibyte, count_combining_before):
10918 (count_combining_after, insert_1, insert_1_both, message_dolog):
10919 (insert, insert_and_inherit, insert_before_markers)
10920 (insert_before_markers_and_inherit, set_message, message2):
10921 (message2_dolog, build_string, make_string, make_unibyte_string):
10922 (make_multibyte_string, intern, oblookup, report_file_error):
10923 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
10924 (emacs_open, xstrdup): Declarations updated.
10925 * systime.h (set_file_times): Declaration updated.
10926
10927 * charset.c (find_charset_in_text, lisp_string_width): Use const
10928 for pointer to lisp string data.
10929 * charset.h (FETCH_STRING_CHAR_ADVANCE):
10930 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
10931 * coding.c (Ffind_coding_systems_region_interval):
10932 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
10933 (Fmake_directory_internal, Fdelete_directory):
10934 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
10935 * fontset.c (font_family_registry, fs_query_fontset):
10936 (list_fontsets):
10937 * frame.c (Fframe_parameter):
10938 * keyboard.c (cmd_error_internal):
10939 * keymap.c (Fdescribe_buffer_bindings):
10940 * lread.c (complete_filename_p, openp):
10941 * minibuf.c (Fminibuffer_complete_word):
10942 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
10943 (face_before_or_after_it_pos, next_element_from_string):
10944 (get_overlay_arrow_glyph_row, display_mode_element):
10945 (decode_mode_spec_coding):
10946 * xterm.c (same_x_server): Likewise.
10947
10948 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
10949 settings of non-existent fields.
10950
10951 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
10952 copy a lisp value.
10953
10954 * lread.c (Fintern_soft): Use string macros instead of
10955 Lisp_String fields.
10956 * keyboard.c (echo_char, parse_modifiers_uncached):
10957 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
10958 * textprop.c (validate_interval_range, interval_of): Likewise.
10959
10960 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
10961
10962 * charset.h (FETCH_STRING_CHAR_ADVANCE)
10963 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
10964 XSTRING()->size_byte.
10965
10966 * lisp.h (SDATA, SREF): Produce rvalue.
10967 (SSET): New macro.
10968 * alloc.c (make_event_array): Use SSET for storing into a string.
10969 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
10970 a string.
10971 * casefiddle.c (casify_object): Use SSET.
10972 * charset.h (FETCH_STRING_CHAR_ADVANCE)
10973 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
10974 address of string contents.
10975 * data.c (Faref): Use SDATA.
10976 (Faset): Use SDATA, SSET.
10977 * dired.c (directory_files_internal): Use SSET.
10978 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
10979 (Fread_file_name): Use SREF, SSET.
10980 * fns.c (concat): Use SSET.
10981 (concat, Fdelete): Use SDATA.
10982 * insdel.c (insert_from_string_1): Use SDATA.
10983 * keyboard.c (Fevent_convert_list): Use SREF.
10984 * lread.c (Fload): Use SDATA, SSET.
10985 * macfns.c (validate_x_resource_name): Use SSET.
10986 * process.c (status_message): Use SSET.
10987 * search.c (wordify): Use SDATA.
10988 (Freplace_match): Use SREF.
10989 * w32fns.c (validate_x_resource_name): Use SSET.
10990 * xfns.c (validate_x_resource_name): Use SSET.
10991 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
10992
109932002-07-16 Richard M. Stallman <rms@gnu.org>
10994
10995 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
10996
10997 * xdisp.c (reconsider_clip_changes):
10998 Don't test prevent_redisplay_optimizations_p.
10999 (redisplay_internal): Test prevent_redisplay_optimizations_p
11000 along with clip_changed in some cases.
11001 (try_window_id): Likewise.
11002 (redisplay_window): New local var buffer_unchanged_p.
11003
11004 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
11005
11006 * process.c (create_process): Test USG_SUBTTY_WORKS.
11007 (process_send_signal): Clean up handling of GID.
11008 Detect errors in ioctls meant to set GID.
11009
11010 * window.c (temp_output_buffer_show):
11011 Don't set prevent_redisplay_optimizations_p.
11012
110132002-07-15 Juanma Barranquero <lektu@terra.es>
11014
11015 * eval.c (Fdefvaralias): Add docstring argument.
11016
110172002-07-15 Ken Raeburn <raeburn@gnu.org>
11018
11019 * lisp.h (STRING_INTERVALS): Produce rvalue.
11020 (STRING_SET_INTERVALS): New macro.
11021 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
11022 * fns.c (Fstring_as_multibyte): Likewise.
11023 * intervals.c (balance_possible_root_interval, delete_interval)
11024 (create_root_interval, copy_intervals_to_string): Likewise.
11025 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
11026 instead of 0.
11027
110282002-07-14 Ken Raeburn <raeburn@gnu.org>
11029
11030 * lisp.h (STRING_SET_CHARS): New macro.
11031 (SCHARS, SBYTES): Produce rvalues.
11032 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
11033 * fns.c (concat): Likewise.
11034 * lread.c (read_vector): Likewise.
11035
11036 * lisp.h (SMBP): Deleted. All uses changed to STRING_MULTIBYTE.
11037 (STRING_SET_UNIBYTE): New macro.
11038 (SET_STRING_BYTES): Deleted. Callers (all of which supplied a
11039 length of -1) changed to use STRING_SET_UNIBYTE.
11040 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
11041 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
11042 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
11043 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
11044 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
11045 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
11046 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
11047 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
11048 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
11049 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
11050 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
11051 STRING_BYTES or indirection changed to SCHARS, SBYTES,
11052 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
11053 unchanged for now.
11054
110552002-07-13 Kim F. Storm <storm@cua.dk>
11056
11057 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
11058
110592002-07-12 Richard M. Stallman <rms@gnu.org>
11060
11061 * fileio.c (Fwrite_region): Doc fix.
11062
11063 * print.c (print_error_message): Don't handle Vsignaling_function here.
11064
11065 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
11066 (command_loop_1): Avoid certain actions after memory-full error.
11067
11068 * eval.c (Fsignal): Don't call cancel_hourglass.
11069 For a memory-full error, don't call Vsignal_hook_function
11070 and don't set Vsignaling_function.
11071
11072 * process.c (process_send_signal): Add abort call.
11073
110742002-07-11 Markus Rost <rost@math.ohio-state.edu>
11075
11076 * keymap.c (Fkey_binding): Fix typo.
11077
110782002-07-11 Richard M. Stallman <rms@gnu.org>
11079
11080 * alloc.c (Vmemory_full): New variable.
11081 (Vmemory_signal_data): Renamed from memory_signal_data.
11082 Uses changed.
11083 (syms_of_alloc): Defvar them.
11084 (memory_full, buffer_memory_full): Set Vmemory_full.
11085
11086 * lisp.h (Vmemory_full): Add declaration.
11087 (current_column, indented_beyond_p): Change declaration.
11088
11089 * indent.c (last_known_column): Declare as double, not float.
11090 (current_column, current_column_1, string_display_width)
11091 (position_indentation): Return `double'.
11092 (indented_beyond_p): Arg `column' is `double'. Callers changed.
11093
11094 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
11095 (back_to_previous_visible_line_start)
11096 (reseat_at_next_visible_line_start, next_element_from_buffer):
11097 Use `double', not `float', when calling indented_beyond_p.
11098
11099 * s/hpux11.h (BROKEN_SA_RESTART): Defined.
11100
11101 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
11102
111032002-07-11 Juanma Barranquero <lektu@terra.es>
11104
11105 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
f9711de4
JB
11106 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
11107 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
11108 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
11109 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
11110 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
048addec
JD
11111
111122002-07-10 Juanma Barranquero <lektu@terra.es>
11113
d814862a
JB
11114 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE.
11115 All callers changed.
048addec
JD
11116
111172002-07-09 Stefan Monnier <monnier@cs.yale.edu>
11118
11119 * data.c (Fdefalias): Add an optional `docstring' argument.
11120 (set_internal, Fsetq_default): Use XCAR/XCDR.
11121
11122 * composite.c (HASH_VALUE, HASH_KEY):
11123 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
11124
111252002-07-09 Kenichi Handa <handa@etl.go.jp>
11126
11127 * callproc.c (Fcall_process): Fix previous change.
11128
111292002-07-07 Stefan Monnier <monnier@cs.yale.edu>
11130
11131 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
11132 Add support for hash-tables.
11133 (Ftry_completion): Return t even if the string appears multiple times.
11134
11135 * fns.c (Fnconc): Use XCDR.
11136 (Fprovide): Use CONSP and XCDR.
11137 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
11138 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
11139 (Fmake_hash_table): Accept `:size nil'.
11140 (Fmakehash): Delete: moved to subr.el.
11141 (syms_of_fns): Don't defsubr makehash.
11142
11143 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
11144 (HASH_TABLE_SIZE): Move from fns.c.
11145
111462002-07-07 Richard M. Stallman <rms@gnu.org>
11147
11148 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
11149 Instead just return 0 when there is something to be done.
11150 (try_scrolling): If make_cursor_line_fully_visible returns 0,
11151 retry scrolling as if cursor were off the bottom.
11152 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
11153 return CURSOR_MOVEMENT_MUST_SCROLL.
11154 (redisplay_window): If make_cursor_line_fully_visible returns 0,
11155 go to try_to_scroll.
11156
11157 * buffer.c (Fbuffer_local_value): Store current value into its binding
11158 so we get the up-to-date value for the binding that is loaded.
11159
11160 * eval.c (Fdefmacro): Doc fix.
11161
111622002-07-05 Dave Love <fx@gnu.org>
11163
11164 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
11165 correctly.
11166
11167 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
11168 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
11169 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
11170 CCL_LookupCharConstTbl.
11171 (syms_of_ccl): Defvar translation-hash-table-vector.
11172
111732002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11174
11175 * xdisp.c: Remove unused variable `face'.
11176
111772002-07-04 Juanma Barranquero <lektu@terra.es>
11178
11179 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
11180 obsolescence information.
11181
111822002-07-03 Andrew Choi <akochoi@shaw.ca>
11183
11184 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
11185 pattern. Search cache first.
11186 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
11187 for Japanese font.
11188 (XLoadQueryFont): Use it.
11189
111902002-07-02 Richard M. Stallman <rms@gnu.org>
11191
11192 * keymap.c (Fdefine_key): Doc fix.
11193
11194 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
11195
111962002-07-02 Juanma Barranquero <lektu@terra.es>
11197
11198 * keymap.c (syms_of_keymap): Fix typo.
11199
112002002-07-01 Andrew Choi <akochoi@shaw.ca>
11201
11202 * s/darwin.h: Define POSIX_SIGNALS.
11203
11204 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
11205 and FSRefMakePath to convert FSSpec returned with Apple Event to
11206 Posix pathname.
11207 (mac_initialize) [TARGET_API_MAC_CARBON]:
11208 Call init_required_apple_events and disable the `Quit' menu item
11209 provided automatically by the Carbon Toolbox.
11210
112112002-07-01 Dave Love <fx@gnu.org>
11212
11213 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
11214 for K&R.
11215
11216 * xterm.c: Fix prototype for K&R.
11217
11218 * term.c (costs_set): Declare static, non-initialized for pcc.
11219
112202002-07-01 Richard M. Stallman <rms@gnu.org>
11221
11222 * keyboard.c (timer_last_idleness_start_time): New variable.
11223 (timer_start_idle): Set that.
11224 (read_key_sequence): Use that to reset timer_idleness_start_time
11225 to previous value.
11226
11227 * window.c (Frecenter): With arg, set optional_new_start.
11228
11229 * xdisp.c (redisplay_internal): Make optional_new_start really work.
11230
11231 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
11232 buffer for completion.
11233
112342002-06-29 Ken Raeburn <raeburn@gnu.org>
11235
11236 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
11237
112382002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11239
11240 * keyboard.c (readable_filtered_events): New function that filters
11241 FOCUS_IN_EVENT depending on parameter.
11242 (readable_events): Calls readable_filtered_events, not filtering
11243 FOCUS_IN_EVENT.
11244 (get_filtered_input_pending): New function, filtering parameter passed
11245 to readable_filtered_events.
11246 (get_input_pending): Calls get_filtered_input_pending, not filtering
11247 FOCUS_IN_EVENT.
11248 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
11249 FOCUS_IN_EVENT.
11250
11251 * xterm.h (struct x_output): Add focus_state.
11252
11253 * xterm.c (x_focus_changed): New function.
11254 (x_detect_focus_change): New function.
11255 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
11256 EnterNotify and LeaveNotify to track X focus changes.
11257
112582002-06-28 Andreas Schwab <schwab@suse.de>
11259
11260 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
11261
112622002-06-27 Kim F. Storm <storm@cua.dk>
11263
11264 * xdisp.c: (mode_line_string_list, mode_line_string_face)
11265 (mode_line_string_face_prop): New variables.
11266 (store_mode_line_string): New function.
11267 (display_mode_element): Use store_mode_line_string to
11268 add mode-line string elements to mode_line_string_list
11269 when mode_line_string_list is non-nil.
11270 (Fformat_mode_line): Now returns propertized string by
11271 default. New arg NO-PROPS to ignore properties.
11272 (decode_mode_spec): Only add two dashes for %- in propertized
11273 mode-line string.
11274 (syms_of_xdisp): Init and staticpro mode_line_string_list.
11275
112762002-06-27 Stefan Monnier <monnier@cs.yale.edu>
11277
11278 * minibuf.c (minibuffer_completion_contents): Add return type.
11279
112802002-06-27 Juanma Barranquero <lektu@terra.es>
11281
11282 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
11283
112842002-06-26 Juanma Barranquero <lektu@terra.es>
11285
11286 * fileio.c (read_file_name_cleanup): Add missing return.
11287
112882002-06-26 Richard M. Stallman <rms@gnu.org>
11289
11290 * window.c (Frecenter): Don't set force_start flag.
11291
11292 * minibuf.c (do_completion, Fminibuffer_complete_word)
11293 (Fminibuffer_completion_help): Complete just the text before point.
11294 (minibuffer_completion_contents): New function.
11295
11296 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
11297
11298 * frame.c (frames_bury_buffer): Function deleted.
11299
113002002-06-25 Miles Bader <miles@gnu.org>
11301
11302 * callint.c (Fcall_interactively): When checking to see if doprnt hit
11303 the end of callint_message, allow for a terminating '\0'.
11304
113052002-06-24 Juanma Barranquero <lektu@terra.es>
11306
11307 * w32select.c: Include composite.h
11308
11309 * w16select.c: Likewise.
11310
113112002-06-24 Kenichi Handa <handa@etl.go.jp>
11312
11313 * callproc.c (Fcall_process): If code detection is necessary,
11314 call detect_coding directly here.
11315
11316 * coding.c (detect_eol): Preserve coding->cmp_data.
11317
11318 * w16select.c (Fw16_get_clipboard_data):
11319 * w32fns.c (w32_to_x_font):
11320 * w32select.c (Fw32_get_clipboard_data):
11321 * xselect.c (selection_data_to_lisp_data):
11322 * xterm.c (XTread_socket): Disable composition handling.
11323
113242002-06-24 Stefan Monnier <monnier@cs.yale.edu>
11325
11326 * print.c (temp_output_buffer_setup): Kill all local variables.
11327
113282002-06-22 Stefan Monnier <monnier@cs.yale.edu>
11329
11330 * lread.c (Fread): Remove redundant and imprecise declaration.
11331
11332 * xfns.c (check_x_display_info): Use check_x_frame.
11333
11334 * .gdbinit (xprintsym): Use the new `xname' field.
11335 (xsymbol): Use it.
11336
113372002-06-22 Jason Rumney <jasonr@gnu.org>
11338
11339 * w32fns.c (file_dialog_callback): New function.
11340 (Fx_file_dialog): Allow selecting directories as well as files.
11341
113422002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11343
11344 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
f63fd14e 11345 OpenBSD. Add support for mipseb-*-netbsd* machines.
048addec
JD
11346
113472002-06-17 Andrew Choi <akochoi@shaw.ca>
11348
11349 * macterm.c (mac_scroll_area): Set foreground and backcolor to
11350 black and white before scrolling. Restore frame background and
11351 foreground color after scrolling.
11352 (do_window_update): Call XClearWindow before calling expose_frame.
11353 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
11354 FRAME_FOREGROUND_PIXEL of frame.
11355
11356 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
11357 test Mac command key as <ALT> key.
11358
113592002-06-17 Stefan Monnier <monnier@cs.yale.edu>
11360
11361 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
11362
11363 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
11364 Lookup keys in function-key-map immediately so that key-translation-map
11365 can be applied earlier.
11366 Remove function_key_possible and key_translation_possible, replaced
11367 by checking `keytran_start < t'.
11368
11369 * .gdbinit (xsymbol): Use the new `xname' field.
11370
113712002-06-17 Andrew Choi <akochoi@shaw.ca>
11372
11373 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
11374 test Mac command key as <ALT> key.
11375
11376 * mac.c (do_applescript): Call initialize_applescript if necessary
11377 when first called. Dispose of result_desc only when there is no error.
11378 (Fdo_applescript): Use %d format specifier instead of %ld.
11379
113802002-06-16 Andrew Choi <akochoi@shaw.ca>
11381
11382 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
11383 of FrontWindow for cases keyDown and autoKey.
11384
11385 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
11386 Vdefault_fontset to Monaco with mac-roman coding.
11387
11388 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
11389 init_process before and after inclusion of Carbon/Carbon.h, resp.
11390
11391 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
11392 cursor_gc.
11393 (add_font_name_table_entry): New function.
11394 (init_font_name_table): Use add_font_name_table_entry; add italic,
11395 bold, and bold-italic entries for truetype fonts.
11396
11397 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
11398 for Mac too.
11399 (try_font_list) [MAC_OS]: If no font matches given registry, try
11400 fonts with any registry matching face_family.
11401 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
11402
11403 * s/darwin.h: If autoconf detects the Ncurses library, define
11404 LIBS_TERMCAP to -lncurses to use it.
11405
114062002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
11407
11408 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
11409
114102002-06-15 Richard M. Stallman <rms@gnu.org>
11411
11412 * window.c (Fset_window_configuration): Explicitly preserve
11413 the point value that new_current_buffer had at the start.
11414
114152002-06-14 Juanma Barranquero <lektu@terra.es>
11416
11417 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
11418 Fix typos.
11419
114202002-06-14 Kim F. Storm <storm@cua.dk>
11421
11422 * insdel.c (insert_1_both, insert_from_string_1)
11423 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
11424 insert happened in the end_unchanged region. Otherwise, the
11425 redisplay may be confused and duplicate the last line in the
11426 buffer [seen after save-buffer when require-final-newline==t].
11427
114282002-06-13 Jason Rumney <jasonr@gnu.org>
11429
11430 * w32.c (init_environment): Remove EMACSLOCKDIR.
11431 (stat): Swap _S_IFDIR and _S_IFREG.
11432
114332002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11434
11435 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
11436 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
11437 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
11438 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
11439 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
11440 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
11441 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
11442 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
11443 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
11444 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
11445 SELECTION_REQUEST_EVENT, selection_clear_event to
11446 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
11447 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
11448 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
11449 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
11450 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
11451 no_event to NO_EVENT.
11452
114532002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11454
11455 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
11456
114572002-06-12 Stefan Monnier <monnier@cs.yale.edu>
11458
11459 * intervals.c (textget): Don't forget to `return'.
11460 (lookup_char_property): Use XCAR/XCDR.
11461
114622002-06-12 Juanma Barranquero <lektu@terra.es>
11463
11464 * xdisp.c (Fformat_mode_line): Fix typo.
11465
114662002-06-12 Kim F. Storm <storm@cua.dk>
11467
11468 * xdisp.c (Fformat_mode_line): New function.
11469 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
11470 (store_frame_title_char, store_frame_title): Use unconditionally.
11471 (init_xdisp): Defsubr Fformat_mode_line.
11472 Initialize frame_title_buf etc. unconditionally.
11473
114742002-06-11 Stefan Monnier <monnier@cs.yale.edu>
11475
11476 * keyboard.c (read_key_sequence):
11477 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
11478 things through those maps after downcasing events.
11479 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
11480 applies after function-key-map.
11481 Make sure that keytran can be done in the middle in the sequence.
11482 Be careful not to throw away events past the one we downcase.
11483
11484 * lread.c (read_integer): Remove unused var `tem'.
11485 (read1): Fix int/Lisp_Object mixup.
11486
11487 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
11488
114892002-06-11 Richard M. Stallman <rms@gnu.org>
11490
11491 * keyboard.c (readable_events): Ignore any number of
11492 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
11493
114942002-06-09 Miles Bader <miles@gnu.org>
11495
11496 * xfaces.c (Ftty_supports_face_attributes_p): New function.
11497 (parse_rgb_list, tty_lookup_color): New functions.
11498 (tty_defined_color): Use `tty_lookup_color' to do all the work.
11499 (color_distance, Fcolor_distance): New functions.
11500 (TTY_SAME_COLOR_THRESHOLD): New macro.
11501 (Qtty_color_standard_values): New variable.
11502 (syms_of_xfaces): Initialize new vars & functions.
11503
115042002-06-08 Colin Walters <walters@verbum.org>
11505
11506 * textprop.c (Vchar_property_alias_alist): New variable.
11507 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
11508
11509 * intervals.c (lookup_char_property): New function for looking up
11510 overlay and text properties, created from textget.
11511 (textget): Use it.
11512
11513 * intervals.h (lookup_char_property): Declare.
11514 (Vchar_property_alias_alist): Declare.
11515
11516 * buffer.c (Foverlay_get): Use lookup_char_property.
11517
115182002-06-07 Sam Steingold <sds@gnu.org>
11519
11520 * xselect.c (lisp_data_to_selection_data): Fix last change:
11521 *data_ret is not a Lisp string, while unibyte_string is.
11522
115232002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
11524
11525 * xselect.c (lisp_data_to_selection_data): Fix last change:
11526 set size_ret.
11527
115282002-06-07 Andreas Schwab <schwab@suse.de>
11529
11530 * m/amdx86-64.h: New file.
11531
115322002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
11533
11534 * fns.c (Fstring_make_unibyte): Doc fix.
11535
11536 * xselect.c (lisp_data_to_selection_data): If the requested type
11537 is STRING, call string_make_unibyte to encode the selected text
11538 as a string.
11539
11540 * window.c (Fset_window_hscroll): Doc fix.
11541
115422002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11543
11544 * fileio.c (choose_write_coding_system):
11545 Call select-safe-coding-system properly.
11546
115472002-06-03 Richard M. Stallman <rms@gnu.org>
11548
11549 * xdisp.c (message_with_string): Error if STRING is not a string.
11550
11551 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
11552
11553 * fileio.c (choose_write_coding_system): Pass FILE arg to
11554 Vselect_safe_coding_system_function.
11555
115562002-06-03 Ken Raeburn <raeburn@gnu.org>
11557
11558 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
11559
115602002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
11561
11562 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
11563 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
11564 * keymap.c (describe_command): Likewise.
11565 * minibuf.c (read_minibuf): Likewise.
11566
11567 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
11568 Cast `current_column' return value to int.
11569 (back_to_previous_visible_line_start)
11570 (reseat_at_next_visible_line_start, next_element_from_buffer):
11571 Cast `indented_beyond_p' 3rd arg to float.
11572
11573 * indent.c (last_known_column): Now a float.
11574 (current_column_1, position_indentation, current_column)
11575 (string_display_width): Return float.
11576 (Fcurrent_column): Cast `current_column' return value to int.
11577 (Fcurrent_indentation): Cast `position_indentation' retval to int.
11578 (indented_beyond_p): Third arg now a float.
11579 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
11580
11581 * lisp.h (current_column): Now returns float.
11582 (indented_beyond_p): 3rd arg now a float.
11583
115842002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
11585
11586 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
11587 is Qcompound_text_with_extensions.
11588
11589 * xselect.c (lisp_data_to_selection_data): Always set selection
11590 type as string if x_encode_text returns streingp non-NULL.
11591
11592 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
11593
115942002-05-30 Richard M. Stallman <rms@gnu.org>
11595
11596 * window.c (Fset_window_configuration): Correct the handling
11597 of point in current buffer, to work with multiple windows.
11598
115992002-05-29 Colin Walters <walters@verbum.org>
11600
11601 * lread.c (Fread_from_string): Don't depend on order of evaluation
11602 for C function parameters.
11603
116042002-05-28 Richard M. Stallman <rms@gnu.org>
11605
11606 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
11607 way for blinked-off state and for a nonselected window.
11608
11609 * window.c (window_scroll_pixel_based): Don't call Fbolp;
11610 instead, see if the new start pos is at beginning of line.
11611
11612 * fileio.c (Fwrite_region): If START is a string, don't
11613 make any annotations.
11614
11615 * eval.c (syms_of_eval): Doc fix.
11616
116172002-05-28 Colin Walters <walters@debian.org>
11618
11619 * emacs.c (USAGE1): Add --no-splash.
11620 (standard_args): Ditto.
11621
116222002-05-28 Colin Walters <walters@gnu.org>
11623
11624 * lread.c (readchar_count): New variable.
11625 (readchar): Increment it.
11626 (unreadchar): Decrement it.
11627 (read_multibyte): Decrement it.
11628 (Vread_with_symbol_positions): New variable.
11629 (Vread_symbol_positions_list): New variable.
11630 (read_internal_start): New function, created from Fread and
11631 Fread_from_string. Handle Vread_symbol_positions_list and
11632 Vread_with_symbol_positions.
11633 (readevalloop, Fread, Fread_from_string): Use it.
11634 (read1): Use readchar_count to add symbol positions to
11635 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
11636 (syms_of_lread): DEFVAR_LISP and initialize them.
11637
11638 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
11639 (substitute_object_recurse, substitute_object_in_subtree)
11640 (substitute_in_interval): Prototype.
11641 (read_multibyte): Return c if it's less than zero.
11642
116432002-05-28 Kim F. Storm <storm@cua.dk>
11644
11645 * fileio.c (Fread_file_name_internal): Added brute-force
11646 speed up for using predicate file-directory-p.
11647
116482002-05-28 Kim F. Storm <storm@cua.dk>
11649
11650 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
11651 New variables.
11652 (syms_of_fileio): DEFVAR_LISP them.
11653 (read_file_name_cleanup): New unwind function.
11654 (Fread_file_name_internal): Only return completions satifying
11655 Vread_file_name_predicate. Temporarily unwind protect and rebind
11656 default-directory while checking completions against the predicate.
11657 (Fread_file_name): Added PREDICATE argument. Specbind it to
11658 Vread_file_name_predicate during completion.
11659 Call Vread_file_name_function to read the file name if non-nil.
11660
11661 * lisp.h (Fread_file_name): Now has 6 args.
11662
11663 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
11664 predicate for Fread_file_name when reading directory name.
11665 Supply Qnil for predicate in other calls to Fread_file_name.
11666
116672002-05-26 Miles Bader <miles@gnu.org>
11668
11669 * term.c (tty_capable_p): New function.
11670 * dispextern.h (tty_capable_p): New function declaration.
11671 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
11672 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
11673
116742002-05-23 Stefan Monnier <monnier@cs.yale.edu>
11675
11676 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
11677 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
11678 (Vwrite_region_annotate_functions): Docstring fix.
11679
116802002-05-23 Kim F. Storm <storm@cua.dk>
11681
11682 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
11683 phys_cursor's hpos is overwritten. This is still not completely
11684 correct, as it doesn't really make sense to use hpos at all to
11685 get the cursor glyph (as that is relative to the width of the
11686 characters on the line, which may have changed during the update).
11687
116882002-05-22 Jason Rumney <jasonr@gnu.org>
11689
11690 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
11691 Lisp_Object.
11692 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
11693 Use modified enumfont_t struct.
11694
11695 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
11696
11697 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
11698 Handle the `hbar' cursor type.
11699 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
11700
11701 * w32fns.c (Qhbar): New variable.
11702 (x_specified_cursor_type): Use it.
11703
117042002-05-21 Ken Raeburn <raeburn@gnu.org>
11705
11706 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
11707 now, when the address is needed.
11708
117092002-05-21 Colin Walters <walters@gnu.org>
11710
11711 * Makefile.in (shortlisp): Add font-core.el.
11712
117132002-05-20 Richard M. Stallman <rms@gnu.org>
11714
11715 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
11716
11717 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
11718 equivalent key bindings here.
11719
117202002-05-20 Ken Raeburn <raeburn@gnu.org>
11721
11722 Change symbol structure to contain a lisp object for the symbol
11723 name:
11724 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
11725 object field named "xname".
11726 (SYMBOL_NAME): New macro.
11727 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
11728 name field.
11729 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
11730 (mark_object, gc_sweep): Use symbol xname field and XSTRING
11731 instead of name field.
11732 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
11733 SYMBOL_NAME instead of XSYMBOL and name field.
11734 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
11735 instead of XSYMBOL and name field.
11736 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
11737 and SYMBOL_NAME instead of XSYMBOL and name field.
11738 * coding.c (Fread_coding_system, code_convert_region1)
11739 (code_convert_string1, code_convert_string_norecord)
11740 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
11741 XSYMBOL and name field.
11742 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
11743 (Fmake_variable_buffer_local, Fmake_local_variable)
11744 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
11745 of XSYMBOL and name field.
11746 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
11747 XSYMBOL and name field.
11748 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
11749 instead of XSYMBOL and name field.
11750 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
11751 XSYMBOL and name field.
11752 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
11753 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
11754 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
11755 instead of XSYMBOL and name field.
11756 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
11757 (parse_modifiers, apply_modifiers, Fevent_convert_list)
11758 (parse_solitary_modifier, Fexecute_extended_command):
11759 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
11760 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
11761 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
11762 of XSYMBOL and name field.
11763 (describe_command, describe_translation): Use SYMBOL_NAME and
11764 assignment instead of XSYMBOL and name field and XSETSTRING.
11765 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
11766 instead of XSYMBOL and name field.
11767 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
11768 name field and XSETSTRING.
11769 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
11770 of XSYMBOL and name field.
11771 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
11772 assignment instead of XSYMBOL and name field and XSETSTRING.
11773 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
11774 XSTRING instead of XSYMBOL and name field.
11775 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
11776 and XSTRING instead of XSYMBOL and name field.
11777 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
11778 and XSTRING instead of XSYMBOL and name field.
11779 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
11780 XSTRING instead of XSYMBOL and name field.
11781 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
11782 of XSYMBOL and name field.
11783 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
11784 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
11785
117862002-05-19 Ken Raeburn <raeburn@gnu.org>
11787
11788 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
11789 and XCDR real rvalues in most configurations.
11790
11791 * buffer.c (fix_overlays_in_range, fix_overlays_before):
11792 Don't take the address of the cdr part of a cons cell; instead, track
11793 the parent cell and call XSETCDR, or set the variable for the head
11794 of the list if we haven't started down the list yet.
11795
117962002-05-19 Richard M. Stallman <rms@gnu.org>
11797
11798 * doc.c (reread_doc_file): Don't ask for confirmation.
11799
118002002-05-18 Jason Rumney <jasonr@gnu.org>
11801
11802 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
11803 (xbm_load_image): Use it.
11804 (xbm_load): Ditto.
11805 (xbm_read_bitmap_data): Reverted to xfns.c version.
11806 From David Ponce <david@dponce.com>.
11807
118082002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
11809
11810 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
11811 2.02 and later.
11812
118132002-05-16 Juanma Barranquero <lektu@terra.es>
11814
11815 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
11816
118172002-05-15 Stefan Monnier <monnier@cs.yale.edu>
11818
11819 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
11820 meaningful test.
11821 (read_char_minibuf_menu_prompt): Fix typo.
11822
118232002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
11824
11825 * eval.c (Fcommandp): Doc fix.
11826
118272002-05-13 Stefan Monnier <monnier@cs.yale.edu>
11828
11829 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
11830 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
11831 (Fset_keymap_parent): Gcpro a bit more.
11832 (access_keymap): Gcpro around meta_map call and around the main loop.
11833 (get_keyelt): Gcpro when following indirect references.
11834 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
11835 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
11836 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
11837 Remove useless ad-hoc remap code.
11838
118392002-05-13 Richard M. Stallman <rms@gnu.org>
11840
11841 * search.c (search_buffer): Give up boyer moore search if inverse
11842 translation change charset_base.
11843
118442002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
11845
11846 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
11847 characters is carried over from the previous block of text, adjust
11848 coding->produced to account for the extra character.
11849
118502002-05-11 Andreas Schwab <schwab@suse.de>
11851
11852 * coding.c (intersection): Keep the elements of the returned list
11853 in the same order as in the first list.
11854
118552002-05-11 Kim F. Storm <storm@cua.dk>
11856
11857 * keymap.c (current_minor_maps): Fixed resizing of cmm_maps;
11858 only update cmm_size if realloc actually succeeds.
11859 Testing with initial size of 2 elements revealed that using
11860 realloc on GNU/Linux would cause a random trap in xmalloc
11861 later on, so I rewrote the code to use malloc/bcopy/free instead
11862 of realloc.
11863
118642002-05-10 Jason Rumney <jasonr@gnu.org>
11865
11866 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
11867
118682002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
11869
11870 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
11871 parens, to ensure correct evaluation order.
11872
118732002-05-10 Kim F. Storm <storm@cua.dk>
11874
11875 * keymap.c (Vemulation_mode_map_alists): New variable.
11876 (syms_of_keymap): DEFVAR_LISP it.
11877 (current_minor_maps): Process keymap alists in that list before
11878 minor-mode-overriding-map-alist and minor-mode-map-alist.
11879
118802002-05-09 Richard M. Stallman <rms@gnu.org>
11881
11882 * search.c (Freplace_match): Doc fix.
11883
118842002-05-09 Kim F. Storm <storm@cua.dk>
11885
11886 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
11887 Enlarge cursor rectangle drawn around image with non-zero relief.
11888
11889 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
11890 Enlarge cursor rectangle drawn around image with non-zero relief.
11891
11892 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
11893 Enlarge cursor rectangle drawn around image with non-zero relief.
11894
118952002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
11896
11897 * xselect.c (lisp_data_to_selection_data): Don't set selection
11898 type if comes from the Lisp object's car. If the selection
11899 contains a pure ASCII text, always return QSTRING as its type.
11900
119012002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11902
11903 * mac.c (mac-cut-function): Doc fix.
11904
119052002-05-05 Richard M. Stallman <rms@gnu.org>
11906
11907 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
11908
119092002-05-04 Jason Rumney <jasonr@gnu.org>
11910
11911 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
11912 for event-click-count.
11913
11914 * process.c (init_process): Only add server subfeature if we can
11915 use non-blocking I/O.
11916
119172002-05-04 Andrew Choi <akochoi@shaw.ca>
11918
11919 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
11920 repeatedly.
11921
119222002-05-03 Jason Rumney <jasonr@gnu.org>
11923
11924 * process.c (Fmake_network_process): Only support server sockets
11925 when we can make them non-blocking.
11926
11927 * s/ms-w32.h (HAVE_SELECT): Define.
11928
11929 * w32.h (FILE_NDELAY): New flag.
11930
11931 * w32.c (sys_getpeername, fcntl): New functions.
11932 (_sys_read_ahead): Temporarily block on non-blocking sockets.
11933
11934 * w32proc.c: include sys/file.h.
11935
119362002-05-03 Colin Walters <walters@verbum.org>
11937
11938 * callproc.c (Vgame_score_directory): Renamed to
11939 Vshared_game_score_directory.
11940
119412002-04-30 Richard M. Stallman <rms@gnu.org>
11942
11943 * s/gnu.h [emacs]: Include stdio.h.
11944 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
11945
11946 * eval.c (do_autoload): Error if called while preparing to dump.
11947
11948 * fns.c (Frequire): Error if need to load while preparing to dump.
11949
119502002-04-28 Colin Walters <walters@verbum.org>
11951
11952 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
11953 Default to "~/.emacs.d/games".
11954
119552002-04-29 Stefan Monnier <monnier@cs.yale.edu>
11956
11957 * lread.c (openp): Change arg exec_only to predicate.
11958 (build_load_history): Use XCAR/XCDR.
11959 (Flocate_file_internal): New fun.
11960 (syms_of_lread): Defsubr it.
11961 (Fload): Update call to openp.
11962
11963 * lisp.h (openp): Update prototype.
11964
11965 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
11966 * w32proc.c (sys_spawnve):
11967 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
11968 * w32.c (check_windows_init_file):
11969 * sound.c (Fplay_sound_internal):
11970 * process.c (Fstart_process):
11971 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
11972 * mac.c (run_mac_command):
11973 * emacs.c (init_cmdargs):
11974 * callproc.c (Fcall_process): Update call to openp.
11975
11976 * textprop.c (remove_properties): Don't use XCAR without CONSP.
11977
11978 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
11979
119802002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11981
11982 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
11983 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
11984
119852002-04-28 Richard M. Stallman <rms@gnu.org>
11986
11987 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
11988
11989 * eval.c (Fcommandp): New arg for_call_interactively.
11990 * lisp.h (Fcommandp): Declare new arg.
11991
119922002-04-28 Jason Rumney <jasonr@gnu.org>
11993
11994 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
11995
11996 * w32.c (stat, fstat): Use file index information to generate
11997 inodes for directories where available.
11998
119992002-04-26 Andrew Choi <akochoi@shaw.ca>
12000
12001 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
12002 [HAVE_CARBON]: Include Mac object files.
12003
12004 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
12005 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
12006 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
12007 MAC_OSX, and MAC_OS instead of macintosh.
12008
12009 * editfns.c [MAC_OS8]: Include stdio.h.
12010
12011 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
12012
12013 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
12014 Apple Monaco.
12015
12016 * process.c: Declare QCfamily and QCfilter as extern.
12017 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
12018 calling select.
12019
12020 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
12021
12022 * tparam.c [MAC_OSX]: Don't define BC and UP.
12023
12024 * config.in [HAVE_CARBON]: Add.
12025
12026 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
12027 Move here from mac/src and mac/inc.
12028
12029 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
12030
120312002-04-26 Gerd Moellmann <gerd@gnu.org>
12032
12033 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
12034 Compute phys_cursor_width from the x position returned
12035 by x_draw_glyhs, which is cheaper.
12036 (x_display_and_set_cursor): Compute the buffer-local value
12037 of `cursor-in-non-selected-windows' only when needed.
12038
120392002-04-25 Gerd Moellmann <gerd@gnu.org>
12040
12041 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
12042 cursor on a stretch glyph has a width that depends on
12043 x_stretch_cursor_p.
12044
120452002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12046
12047 * abbrev.c (abbrev-start-location): Doc fix.
12048
12049 * indent.c (Fvertical_motion): Fix last change.
12050
120512002-04-25 Gerd Moellmann <gerd@gnu.org>
12052
12053 * indent.c (Fvertical_motion): Move to the start of the line
12054 containing PT before moving up or down.
12055
120562002-04-24 Gerd Moellmann <gerd@gnu.org>
12057
12058 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
12059 case of writing a whole row, more or less analogous to the case of
12060 writing only parts of a row.
12061
12062 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
12063 0 for NO_CURSOR.
12064
12065 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
12066
120672002-04-23 Colin Walters <walters@verbum.org>
12068
12069 * buffer.c (syms_of_buffer): Doc fix.
12070
120712002-04-23 Gerd Moellmann <gerd@gnu.org>
12072
12073 * xterm.c (notice_overwritten_cursor): Handle the special case
12074 of the cursor being in the first blank non-text line at the
12075 end of a window.
12076
12077 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
12078 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
12079 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
12080 bar cursors only, to make phys_cursor_width contain what its name
12081 suggests.
12082 (notice_overwritten_cursor): Consider the cursor image erased if
12083 the output area intersects the cursor image in y-direction.
12084
120852002-04-23 Simon Marshall <simon@gnu.org>
12086
12087 * xfns.c (x_set_mouse_color): Change default for cross_cursor
12088 to XC_hand2.
12089
120902002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12091
12092 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
12093
120942002-04-22 Kim F. Storm <storm@cua.dk>
12095
12096 * textprop.c (remove_properties): Fixed trap for malformed plist.
12097
120982002-04-22 Richard M. Stallman <rms@gnu.org>
12099
12100 * cmds.c (Fend_of_line): Handle intangible text in mid line.
12101
12102 * window.c (make_window): Initialize height_fixed_p,
12103 last_cursor_off_p, and p->cursor_off_p slots.
12104
121052002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12106
12107 * fns.c (use-dialog-box): Doc fix.
12108
121092002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12110
12111 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
12112 variables `row', `i' and `area'.
12113 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
12114 toolkit library.
12115
121162002-04-19 Stefan Monnier <monnier@cs.yale.edu>
12117
12118 * xfaces.c (clear_font_table): Don't free the default font of
12119 a frame even if it's on another display.
12120 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
12121 that could be Qt.
12122
121232002-04-19 Juanma Barranquero <lektu@terra.es>
12124
12125 * indent.c (Fmove_to_column): Remove unused local variable
12126 `next_boundary_byte'.
12127 (current_column_1): Likewise.
12128
121292002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
12130
12131 * msdos.c (Qhbar): New variable.
12132 (syms_of_msdos): Intern and staticpro it.
12133 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
12134 cursor type.
12135
121362002-04-19 Dave Lambert <dlambert@acm.org>
12137
12138 Theses change implement an underscore-like (`hbar') cursor.
12139
12140 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
12141
12142 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
12143 Handle the `hbar' cursor type.
12144 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
12145
12146 * xfns.c (Qhbar): New variable.
12147 (syms_of_xfns): Intern and staticpro it.
12148 (x_specified_cursor_type): Handle `hbar' cursor.
12149
12150 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
12151 not defined.
12152
121532002-04-18 Richard M. Stallman <rms@gnu.org>
12154
12155 * textprop.c (remove_properties): New arg LIST allows scanning
12156 either a list or a plist.
12157 (interval_has_some_properties_list): New function, like
12158 interval_has_some_properties using list instead of plist.
12159 All callers changed.
12160 (Fremove_list_of_text_properties): New function.
12161 (syms_of_textprop): Defsubr it.
12162
121632002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
12164
12165 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
12166
121672002-04-17 Juanma Barranquero <lektu@terra.es>
12168
12169 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
12170
121712002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
12172
12173 * window.c (coordinates_in_window): Don't report on margin area
12174 if its width is zero.
12175
121762002-04-16 Jason Rumney <jasonr@gnu.org>
12177
12178 * w32fns.c (Fx_file_dialog): Decode file name before using.
12179
12180 * w32term.c (construct_drag_n_drop): Likewise.
12181
121822002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
12183
12184 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
12185 store load-history in pure space.
12186
12187 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
12188
121892002-04-16 Stefan Monnier <monnier@cs.yale.edu>
12190
12191 * xterm.c (Qlatin_1, Qutf_8): New vars.
12192 (syms_of_xterm): Initialize them.
12193 (XTread_socket): Eliminate incorrect optimization that tried to avoid
12194 decoding the output of X*LookupString.
12195 Always use latin-1 to decode the output of XLookupString.
12196 Try Xutf8LookupString if XmbLookupString failed.
12197
12198 * region-cache.c (new_region_cache): Use BEG.
12199
122002002-04-16 Gerd Moellmann <gerd@gnu.org>
12201
12202 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
12203 configuration files.
12204 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
12205 returns 0.
12206
122072002-04-15 Andreas Schwab <schwab@suse.de>
12208
12209 * config.in: Regenerated using autoheader.
12210
12211 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
12212 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
12213 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
12214 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
12215 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
12216 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
12217 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
12218 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
12219 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
12220 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
12221 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
12222 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
12223 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
12224 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
12225 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
12226 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
12227 STACK_DIRECTION, now set by autoconf.
12228
122292002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12230
12231 * dispnew.c (marginal_area_string): Sort arguments.
12232
12233 * dispextern.h (marginal_area_string): Add prototype.
12234
122352002-04-13 Richard M. Stallman <rms@gnu.org>
12236
12237 * fileio.c (Finsert_file_contents):
12238 Don't call temp_output_buffer_setup--do just part, by hand.
12239
12240 * coding.c (run_pre_post_conversion_on_str):
12241 Don't call temp_output_buffer_setup--do just part, by hand.
12242
12243 * keyboard.c (command_loop_1): Don't call start_hourglass
12244 or cancel_hourglass when executing a macro.
12245
12246 * marker.c (count_markers): New function.
12247
12248 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
12249 grow without limit. Move recently used elements to the front.
12250
122512002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
12252
12253 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
12254
122552002-04-12 Gerd Moellmann <gerd@gnu.org>
12256
12257 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
12258 rows marginal areas.
12259 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
12260 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
12261
12262 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
12263
122642002-04-12 Dave Love <fx@gnu.org>
12265
12266 * dispnew.c (marginal_area_string): New.
12267
12268 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
12269 (Qleft_margin, Qright_margin): Declare.
12270 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
12271
12272 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
12273 note_mode_line_highlight and extended.
12274
12275 * keyboard.c (Qleft_margin, Qright_margin): Declare.
12276 (make_lispy_event): Deal with mouse events in margins.
12277
122782002-04-12 Stefan Monnier <monnier@cs.yale.edu>
12279
12280 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
12281
12282 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
12283 than deactivating the mark if tmm is set to `lambda'.
12284 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
12285 Use a single event for HELP_EVENT.
12286 (Fexecute_extended_command): Save last_point_position.
12287
122882002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12289
12290 * lisp.h (Fpropertize): Add prototype.
12291
12292 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
12293
122942002-04-10 Colin Walters <walters@verbum.org>
12295
12296 * config.in: Add HAVE_SHARED_GAME_DIR.
12297
12298 * callproc.c: (Vgame_score_directory): New variable.
12299 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
12300
123012002-04-10 Richard M. Stallman <rms@gnu.org>
12302
12303 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
12304
123052002-04-09 Stefan Monnier <monnier@cs.yale.edu>
12306
12307 * minibuf.c (read_minibuf): Use empty_string.
12308 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
12309 Short-circuit the search as soon as it "failed".
12310 (Fall_completions): Allow lambda forms and lists of strings for alist.
12311 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
12312 when require_match is nil.
12313 (Ftest_completion): Rename from `test_completion' and export to elisp.
12314 Call the predicate also when alist is a list.
12315 Obey Vcompletion_regexp_list.
12316 (do_completion, Fminibuffer_complete_and_exit): Use it.
12317 (Fassoc_string): Rename from `assoc_for_completion'.
12318 Allow list of strings as well and export to elisp.
12319
123202002-04-08 Stefan Monnier <monnier@cs.yale.edu>
12321
12322 * puresize.h (BASE_PURESIZE): Increase to 900KB.
12323
123242002-04-08 Juanma Barranquero <lektu@terra.es>
12325
12326 * w32.c (sys_accept): Don't hide variable `s'.
12327
123282002-04-05 Gerd Moellmann <gerd@gnu.org>
12329
12330 * callint.c (Fcall_interactively): Use INTEGERP instead of
12331 NUMBERP for checking Vhistory_length.
12332
123332002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12334
12335 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
12336 Doc fix to reflect it.
12337
123382002-04-04 Richard M. Stallman <rms@gnu.org>
12339
12340 * xdisp.c (display_mode_element): New arg RISKY.
12341 Disregard text props found or specified within a variable
12342 that isn't marked risky-local-variable.
12343 (Qrisky_local_variable): New variable.
12344 (syms_of_xdisp): Init and staticpro it.
12345
123462002-04-04 Stefan Monnier <monnier@cs.yale.edu>
12347
12348 * undo.c (record_point): New fun.
12349 (record_delete, record_insert): Use it.
12350
123512002-04-03 Juanma Barranquero <lektu@terra.es>
12352
12353 * doc.c (Fdocumentation): Add missing parentheses.
12354 (Fdocumentation_property): Likewise.
12355
123562002-04-03 Stefan Monnier <monnier@cs.yale.edu>
12357
12358 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
12359 data is 0, just return nil.
12360
123612002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
12362
12363 * msdos.c (syms_of_msdos): Fix last change with
12364 mouse_autoselect_window.
12365
123662002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12367
12368 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
12369 mouse_autoselect_window.
12370
123712002-04-02 Stefan Monnier <monnier@cs.yale.edu>
12372
12373 * keyboard.c (make_lispy_event): Handle unknown keysyms together
12374 with system-specific keysyms. Use it also for unknown function keys.
12375
12376 * doc.c (reread_doc_file): Return whether reload was attempted.
12377 (Fdocumentation, Fdocumentation_property): Don't try to reload
12378 if the doc is 0 and only ask once.
12379
12380 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
12381
123822002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
12383
12384 * keyboard.c (read_char): If the event was Qselect_window,
12385 restore timer_idleness_start_time to its previous value.
12386
12387 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
12388
123892002-04-01 Stefan Monnier <monnier@cs.yale.edu>
12390
12391 * region-cache.c (new_region_cache): Use BEG.
12392
12393 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
12394 Use BEG and BEG_BYTE.
12395
12396 * doc.c (get_doc_string): Return nil if the location is wrong.
12397 (reread_doc_file): New fun.
12398 (Fdocumentation, Fdocumentation_property):
12399 Call it if get_doc_string fails.
12400 (Fsnarf_documentation): Make it work for a dumped Emacs.
12401
12402 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
12403 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
12404
12405 * charset.c (Fstring): Allow 0 arguments.
12406
12407 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
12408
12409 * process.c (DATAGRAM_CONN_P, list_processes_1)
12410 (Fprocess_datagram_address, Fset_process_datagram_address)
12411 (Fset_network_process_options, server_accept_connection):
12412 Fix some int/Lisp_Object confusions (thank you union types).
12413
124142002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12415
12416 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
12417
12418 * w32term.c: Likewise.
12419 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
12420
12421 * keyboard.c (Qselect_window): New symbol.
12422 (head_table): Use it.
12423 (keys_of_keyboard): Bound select-window event to handle-select-window.
12424 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
12425
12426 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
12427 (last_window): New variable.
12428 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
12429 (note_mouse_movement): Remove reimplemented code in #if 0.
12430 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
12431 Emacs windows.
12432
12433 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
12434
124352002-03-31 Gerd Moellmann <gerd@gnu.org>
12436
12437 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
12438 Callers changed.
12439
124402002-03-30 Richard M. Stallman <rms@gnu.org>
12441
12442 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
12443 loop whenever it stops making progress.
12444
12445 * widget.c (set_frame_size): Don't call change_frame_size.
12446
124472002-03-30 Gerd Moellmann <gerd@gnu.org>
12448
12449 * dispnew.c (direct_output_for_insert):
12450 Call mark_window_display_accurate.
12451
124522002-03-29 Jason Rumney <jasonr@gnu.org>
12453
12454 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
12455
124562002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
12457
12458 * Makefile.in (lread.o): Depend on coding.h.
12459
12460 * lread.c (openp, Fload): Encode the file name before passing it
12461 to `stat', `access', and `emacs_open'.
12462 (openp): GCPRO the encoded file name. Don't recompute Lisp
12463 strings unnecessarily.
12464
124652002-03-29 Kim F. Storm <storm@cua.dk>
12466
12467 * fns.c (Flax_plist_put): Doc fix.
12468
124692002-03-28 Miles Bader <miles@gnu.org>
12470
12471 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
12472
124732002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12474
12475 * process.c (set-network-process-options): Add usage.
12476 (make-network-process): Doc fix.
12477
124782002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
12479
12480 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
12481
124822002-03-26 Richard M. Stallman <rms@gnu.org>
12483
12484 * fns.c (Fsubstring_no_properties): New function.
12485 (Flax_plist_get, Flax_plist_put): New functions.
12486 (syms_of_fns): defsubr them.
12487
12488 * xdisp.c (update_menu_bar): Test only update_mode_lines;
12489 don't test or alter w->update_mode_line.
12490
12491 * window.c (Fdisplay_buffer): Doc fix.
12492
124932002-03-24 Richard M. Stallman <rms@gnu.org>
12494
12495 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
12496
124972002-03-24 Gerd Moellmann <gerd@gnu.org>
12498
12499 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
12500 (Fdefmacro): Handle `(declare ...)'.
12501 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
12502 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
12503
125042002-03-24 Jason Rumney <jasonr@gnu.org>
12505
12506 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
12507 (xbm_file_p): Add prototypes.
12508 (xbm_format, xbm_image_p): Sync with xfns.c.
12509 (reflect_byte): New function.
12510 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
12511 (xbm_load_image): Create bitmaps with a depth of 1.
12512 (init_xfns): Enable XBM images.
12513
125142002-03-23 Jason Rumney <jasonr@gnu.org>
12515
12516 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
12517 correctly. Do not pass up_modifier to keyboard buffer.
12518
12519 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
12520
125212002-03-22 Stefan Monnier <monnier@cs.yale.edu>
12522
12523 * Makefile.in (bootstrapclean): New target.
12524 (bootstrap-temacs, bootstrap-doc): Remove.
12525 (bootstrap-emacs): Use a bog-standard `temacs'.
12526 Don't bother to build a DOC file.
12527
12528 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
12529
12530 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
12531 in temacs even if !CANNOT_DUMP.
12532 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
12533
12534 * alloc.c (check_pure_size): Only output a warning.
12535
125362002-03-22 Jason Rumney <jasonr@gnu.org>
12537
12538 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
12539 supported.
12540
12541 * w32term.c (zv_bits): Declare as short, for word alignment.
12542 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
12543 (syms_of_w32term): Define x-use-underline-position-properties.
12544
12545 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
12546 (clear_image_cache): Block input, fix logic, clear matrices in
12547 all frames that share this cache.
12548
125492002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
12550
12551 * emacs.c (main): Update the Copyright year in the blurb printed
12552 by "emacs --version".
12553
12554 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
12555
12556 * xterm.c (XTread_socket): If XK_ISO_Lock and
12557 XK_ISO_Last_Group_Lock are defined, handle keysyms between
12558 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
12559
125602002-03-21 Kim F. Storm <storm@cua.dk>
12561
12562 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
12563 menu-bar bindings in keymap and local-map properties _are_ used.
12564 But try keymap property first in accordance with 2002-01-03 patch.
12565 Added comment describing why this is not always reliable.
12566 (tool_bar_items): Ditto for tool-bar.
12567
125682002-03-21 Jason Rumney <jasonr@gnu.org>
12569
12570 * w32fns.c (x_clear_image_1): Disable color table code.
12571
125722002-03-21 Kim F. Storm <storm@cua.dk>
12573
12574 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
12575 removed the wrong version of the DEFUN macro; fixed it.
12576
12577 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
12578 Fmember rather than Fmemq).
12579 (Fprovide): Check that subfeatures is a list.
12580
12581 * process.c (QCfeature, QCdatagram): Removed variables.
12582 (QCtype, Qdatagram): New variables.
12583 (network_process_featurep): Removed function.
12584 (Fmake_network_process): Removed :feature check.
12585 Use :type 'datagram instead of :datagram t to create a datagram
12586 socket. This allows us to add other connection types (e.g. raw
12587 sockets) later in a consistent manner.
12588 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
12589 supported subfeatures for feature make-network-process.
12590 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
12591 Intern and staticpro QCtype and Qdatagram.
12592 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
12593
12594 * xfns.c: (QCtype): Remove duplicate declaration and
12595 initialization (is now declared in process.c).
12596
12597 * w32fns.c: (QCtype): Remove duplicate declaration and
12598 initialization (is now declared in process.c).
12599
126002002-03-21 Richard M. Stallman <rms@gnu.org>
12601
12602 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
12603 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
12604 when jumping to `fail' to avoid undoing reg changes in the
12605 last iteration of the loop.
12606 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
12607
12608 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
12609 Depend on process.h.
12610
126112002-03-20 Jason Rumney <jasonr@gnu.org>
12612
12613 Most of the following changes are still conditional on HAVE_IMAGES
12614 which is not set by default on Windows.
12615
12616 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
12617
12618 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
12619 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
12620 (four_corners_best, x_clear_image_1, x_clear_image)
12621 (x_alloc_image_color, postprocess_image)
12622 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
12623 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
12624 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
12625
12626 * w32gui.h (struct XImage): Define.
12627
12628 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
12629 extract mouse co-ordinates.
12630
126312002-03-20 Jason Rumney <jasonr@gnu.org>
12632
12633 * w32.c (init_winsock): Dynamically load new server and UDP
12634 socket functions.
12635 (socket_to_fd): New function.
12636 (sys_socket): Use it.
12637 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
12638 (sys_recvfrom, sys_sendto): New wrapper functions.
12639
12640 * process.c (QCfamily, QCfilter): Remove duplicate declaration
12641 and initialization.
12642
12643 * makefile.w32-in (LIBS): Remove $(WSOCK32).
12644
126452002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
12646
12647 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
12648 Don't use "sun" as a variable, it's a predefined constant on Sun
12649 machines.
12650
126512002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12652
12653 * bytecode.c (Fbyte_code): Revert last change.
12654
126552002-03-19 Kim F. Storm <storm@cua.dk>
12656
12657 * makefile.w32-in (LIBS): Add $(WSOCK32).
12658 From David Ponce <dponce@voila.fr>.
12659
126602002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12661
12662 * process.c (wait_reading_process_input): Move variables `pname'
12663 and `pnamelen' down where they are used.
12664
12665 * bytecode.c (Fbyte_code): Discard unused computed value to
12666 prevent gcc warning.
12667
12668 * lisp.h (Fplist_member): Add prototype.
12669
126702002-03-18 Kim F. Storm <storm@cua.dk>
12671
12672 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
12673 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
12674
12675 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
12676 Remove explicit GNU_LINUX settings for datagram support.
12677
126782002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12679
12680 * process.c (Fmake_network_process): Remove unused variable `sa'.
12681 Doc fix. Add usage:.
12682 (set_socket_options): Remove unused variables `optnum' and `opttype'.
12683
126842002-03-17 Richard M. Stallman <rms@gnu.org>
12685
12686 * xdisp.c (cursor_type_changed): New variable.
12687 (redisplay_internal): Redisplay all windows if cursor_type_changed.
12688 Clear it when clearing windows_or_buffers_changed.
12689 (try_cursor_movement, redisplay_window, try_window_id)
12690 (try_window_reusing_current_matrix): Test cursor_type_changed
12691 along with windows_or_buffers_changed.
12692
12693 * window.h (cursor_type_changed): New variable.
12694
12695 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
12696 not update_mode_lines, and always set it to 1.
12697
12698 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
12699 if no frames needed redrawing.
12700
127012002-03-17 Kim F. Storm <storm@cua.dk>
12702
12703 The following changes add support for network server processes,
12704 datagram connections, and local (unix) sockets.
12705
12706 * process.h (struct Lisp_Process): New member log.
12707 Doc fix: Member command used to indicate stopped network process.
12708 Doc fix: Member childp contains plist for network process.
12709 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
12710
12711 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
12712 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
12713 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
12714 New variables.
12715 (NETCONN1_P): New macro.
12716 (DATAGRAM_SOCKETS): New conditional symbol.
12717 (datagram_address): New array.
12718 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
12719 (status_message): Use concat3.
12720 (Fprocess_status): Add `listen' status to doc string. Return `stop'
12721 for a stopped network process.
12722 (Fset_process_buffer): Update contact plist for network process.
12723 (Fset_process_filter): Ditto. Don't enable input for stopped
12724 network processes. Server must listen, even if filter is t.
12725 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
12726 New functions.
12727 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
12728 (Fprocess_contact): Added KEY argument. Handle datagrams.
12729 (list_processes_1): Optionally show only processes with the query
12730 on exit flag set. Dynamically adjust column widths. Omit tty
12731 column if not needed. Report stopped network processes.
12732 Identify server and datagram network processes.
12733 (Flist_processes): New optional arg `query-only'.
12734 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
12735 (conv_lisp_to_sockaddr, set_socket_options)
12736 (network_process_featurep, unwind_request_sigio): New helper functions.
12737 (Fprocess_datagram_address, Fset_process_datagram_address):
12738 (Fset_network_process_options): New lisp functions.
12739 (Fopen_network_stream): Removed. Now defined in simple.el.
12740 (Fmake_network_process): New lisp function. Code is based on previous
12741 Fopen_network_stream, but heavily reworked with new property list based
12742 argument list, support for datagrams, server processes, and local
12743 sockets in addition to old client-only functionality.
12744 (server_accept_connection): New function.
12745 (wait_reading_process_input): Use it to handle incoming connects.
12746 Do not enable input on a new connection if process is stopped.
f63fd14e 12747 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
048addec
JD
12748 (send_process): Handle datagram sockets.
12749 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
12750 network process is indicated by setting command field to t .
12751 (Fprocess_send_eof): No-op if datagram connection.
12752 (Fstatus_notify): Don't read input for a stream server socket or a
12753 stopped network process.
12754 (init_process): Initialize datagram_address array.
12755 (syms_of_process): Intern and staticpro new variables, defsubr new
12756 functions.
12757
127582002-03-16 Jason Rumney <jasonr@gnu.org>
12759
12760 * w32fns.c (w32_to_all_x_charsets): Return correct type in
12761 startup case.
12762
127632002-03-16 Richard M. Stallman <rms@gnu.org>
12764
12765 * xdisp.c (redisplay_internal, redisplay_windows):
12766 Use list_of_error to call internal_condition_case_1.
12767 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
12768 so as to catch all errors with no possibility of debugger redisplay.
12769 (list_of_error): New variable.
12770 (syms_of_xdisp): Init and staticpro it.
12771
12772 * print.c (print_object): Delete `\ ' from printed rep of frame.
12773
127742002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
12775
12776 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
12777 until its implementation is fixed.
12778
127792002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12780
12781 * xfns.c (png_load): Remove unused variable `gamma_str'.
12782
127832002-03-14 Richard M. Stallman <rms@gnu.org>
12784
12785 * xfns.c (x_real_positions): Handle failure in XQueryTree.
12786
127872002-03-14 Miles Bader <miles@gnu.org>
12788
12789 * intervals.c (adjust_for_invis_intang): New function.
12790 (set_point_both): Use `adjust_for_invis_intang' to do most of the
12791 work for dealing with invisible+intangible regions. Do so before
12792 and after both forward and backward movements, to handle both
12793 front-sticky and rear-sticky cases.
12794 * textprop.c (text_property_stickiness): Function moved here from
12795 `editfns.c'.
12796 * intervals.h (text_property_stickiness): New declaration.
12797 * editfns.c (char_property_eq): Function removed.
12798 (text_property_stickiness): Function moved to `textprop.c'.
12799
128002002-03-13 Jason Rumney <jasonr@gnu.org>
12801
12802 * config.in: Add STRFTIME_NO_POSIX2.
12803
12804 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
12805 and %OX when underlying strftime does not.
12806
128072002-03-13 Stefan Monnier <monnier@cs.yale.edu>
12808
12809 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
12810 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
12811 line) to avoid annoying flicker.
12812 (xm_scroll_callback): Get rid of the now unnecessary kludge.
12813 (XTread_socket): Mark it static.
12814
12815 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
12816
128172002-03-13 Kim F. Storm <storm@cua.dk>
12818
12819 * puresize.h (BASE_PURESIZE): Increase to 775000.
12820
128212002-03-12 Juanma Barranquero <lektu@terra.es>
12822
12823 * editfns.c (syms_of_editfns): Fix typo.
12824
128252002-03-12 Gerd Moellmann <gerd@gnu.org>
12826
12827 * xsmfns.c: Include stdio.h because termhooks.h needs it.
12828 Include termopt.h for interrupt_input.
12829
128302002-03-11 Andreas Schwab <schwab@suse.de>
12831
12832 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
12833
128342002-03-11 Gerd Moellmann <gerd@gnu.org>
12835
12836 * xterm.c (note_mouse_movement): Put code for
12837 x_autoselect_window_p in #if 0.
12838
12839 * lread.c (Fload): Don't assume that message_with_string uses the
12840 string it is given like a C string.
12841
128422002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12843
12844 * xterm.h (x_session_check_input, x_session_initialize): Declared.
12845
12846 * xterm.c: (XTread_socket): Add call to x_session_check_input and
12847 x_session_have_connection.
12848 (x_initialize): Add call to x_session_initialize.
12849
12850 * termhooks.h (enum event_kind): Add save_session_event.
12851
12852 * keyboard.c: Add Emacs event save_session_event.
12853
12854 * emacs.c (main): Add call to syms_of_xsmfns.
12855
12856 * lisp.h: Declare syms_of_xsmfns as extern.
12857
12858 * config.in: Add HAVE_X_SM.
12859
12860 * Makefile.in (LIBXT): Add -lSM -lICE
12861 if HAVE_X_SM and not USE_X_TOOLKIT.
12862 (XOBJ): New file xsmfns.c added.
12863
12864 * xsmfns.c: New file for X session management.
12865
128662002-03-09 Jason Rumney <jasonr@gnu.org>
12867
12868 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
12869 read-only when setting modified time.
12870
128712002-03-08 Gerd Moellmann <gerd@gnu.org>
12872
12873 * xdisp.c (move_it_vertically_backward): At the end of the function,
12874 when moving forward by lines, treat terminal frames specially.
12875
12876 * keyboard.c (echo_char): Make sure to add a separator between
12877 keys even if echo_dash hasn't been called.
12878
12879 * xdisp.c: Use new string macros.
12880 (update_echo_area): Pass number of bytes to message3 instead of
12881 number of chars.
12882 (set_message_1): Don't access a string's size_byte directly.
12883 (decode_mode_spec_coding): Use number of bytes of eoltype string
12884 instead number of chars.
12885
12886 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
12887
128882002-03-08 Juanma Barranquero <lektu@terra.es>
12889
12890 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
12891 24-bit.
12892
128932002-03-06 Jason Rumney <jasonr@gnu.org>
12894
12895 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
12896
128972002-03-06 Gerd Moellmann <gerd@gnu.org>
12898
12899 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
12900 (cancel_echoing, echo_length, echo_truncate): Changed to
12901 work with new kboard definition.
12902 (echo_now): Use message3_nolog instead of message2_nolog.
12903
12904 * alloc.c (mark_kboards): Mark echo_string.
12905
12906 * keyboard.h (ECHOBUFSIZE): Removed.
12907 (struct kboard): Member echoptr removed, member echobuf renamed
12908 to echo_string.
12909
12910 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
12911 message3 instead of message2 to display the message using STRING's
12912 text properties.
12913
129142002-03-05 Andreas Schwab <schwab@suse.de>
12915
12916 * xdisp.c (hscroll_margin): Change to EMACS_INT.
12917
129182002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
12919
12920 * frame.c (default-frame-alist): Explain that setting it doesn't
12921 affect existing frames.
12922
129232002-03-05 Stefan Monnier <monnier@cs.yale.edu>
12924
12925 * indent.c (skip_invisible): Fix my brain fart.
12926
12927 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
12928
129292002-03-04 Stefan Monnier <monnier@cs.yale.edu>
12930
12931 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
12932 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
12933 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
12934 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
12935 and variables to use EMACS_INT instead of just int.
12936
12937 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
12938
129392002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
12940
12941 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
12942 environment, pass it down with corrected value.
12943
129442002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12945
12946 * lread.c (read_filtered_event): Do not call start_hourglass
12947 before returning.
12948
129492002-03-04 Juanma Barranquero <lektu@terra.es>
12950
12951 * w32term.c (x_display_and_set_cursor): Fix typo.
12952
129532002-03-03 Richard M. Stallman <rms@gnu.org>
12954
12955 * fileio.c (Fmake_temp_name): Doc fix.
12956
129572002-03-03 Gary Wong <gtw@gnu.org>
12958
12959 * termcap.c [!emacs]: Replace ospeed for building standalone
12960 libtermcap, for binary compatibility.
12961
12962 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
12963
129642002-03-03 Richard M. Stallman <rms@gnu.org>
12965
12966 * xrdb.c (file_p): Rename arg `path' to `filename'.
12967
12968 * abbrev.c (Fexpand_abbrev): Increment plist as use count
12969 only if it is an integer.
12970
12971 * xfns.c (png_load): Set screen_gamma based on f->gamma.
12972 If png_get_sRGB gives an answer, call png_set_gamma
12973 using the default image gamma value.
12974
12975 * lread.c (read1): When reading from a file, default string to
12976 multibyte only if it has some multibyte characters.
12977
12978 * print.c (print_object): Output multibyte chars 128...255
12979 using \x even if ! print_escape_multibyte.
12980
12981 * xdisp.c (display_mode_element): Move the places where
12982 bytepos, charpos, this, and lisp_string are set.
12983 Use lisp_string to set bytepos.
12984
12985 * xdisp.c (redisplay_internal):
12986 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
12987
12988 * xdisp.c (display_mode_element): Merge properties specified with
12989 :propertize onto those that come with the string.
12990
129912002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
12992
12993 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
12994 automatic-hscrolling. Users changed.
12995 <hscroll-margin>: Renamed from automatic-hscroll-margin.
12996 Users changed.
12997 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
12998
129992002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
13000
13001 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
13002
130032002-03-02 Kim F. Storm <storm@cua.dk>
13004
13005 * window.c (Fminibuffer_selected_window): New function.
13006 (syms_of_window): Defsubr it.
13007
130082002-03-01 Kim F. Storm <storm@cua.dk>
13009
13010 * window.h (struct window): New member phys_cursor_width.
13011
13012 * window.c (make_window, replace_window): Init phys_cursor_width.
13013
13014 * xterm.c (x_display_and_set_cursor): Blink box cursor using
13015 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
13016
13017 * w32term.c (x_display_and_set_cursor): Blink box cursor using
13018 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
13019
13020 * lisp.h (GCPRO6): New macro.
13021
13022 * process.c (Fopen_network_stream): Use GCPRO6.
13023
130242002-03-01 Kim F. Storm <storm@cua.dk>
13025
13026 * process.c (Qconnect, Qfailed): New variables.
13027 (syms_of_process): Intern and staticpro them.
13028 (Fprocess_status): Document connect and failed return values.
13029 [NON_BLOCKING_CONNECT]: New conditional.
13030 (connect_wait_mask, num_pending_connects): New variables.
13031 (status_message): Convert Qfailed status.
13032 (Fopen_network_stream): Added support for non-blocking connect.
13033 New optional args: filter, sentinel, non_blocking. Doc updated.
13034 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
13035 (deactivate_process): Handle pending non-blocking connect.
13036 (wait_reading_process_input): Poll for status of non-blocking
13037 connects. Exec sentinel directly when connect succeeds.
13038 (status_notify): Don't read process output if not yet connected.
13039
130402002-02-28 Kim F. Storm <storm@cua.dk>
13041
13042 * window.c: (minibuf_selected_window): Renamed from
13043 Vminibuf_selected_window. Users changed.
13044 (syms_of_window): Staticpro it.
13045
130462002-02-26 Kim F. Storm <storm@cua.dk>
13047
13048 The following changes add a new Vminibuf_selected_window variable
13049 which is similar to Vminibuf_scroll_window, but which is only set
13050 on entry to the minibuffer (from a non-minibuffer window):
13051
13052 * window.c: (Vminibuf_selected_window): New variable.
13053 (struct save_window_data): New member minibuf_selected_window.
13054 (Fset_window_configuration): Restore Vminibuf_selected_window.
13055 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
13056 Set minibuf_scroll_window member to nil if minibuf_level is 0.
13057 (compare_window_configurations): Compare minibuf_selected_window.
13058
13059 * window.h: (Vminibuf_selected_window): Declare extern.
13060
13061 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
13062 entry to minibuffer or on entry from a non-minibuffer window.
13063
13064 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
13065 Vminibuf_selected_window instead of Vminibuf_scroll_window.
13066
13067 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
13068 instead of Vminibuf_scroll_window when deciding in which window
13069 the region should be highlighted. Consequently, the region remains
13070 highlighteded even when a completion buffer is also displayed.
13071
130722002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
13073
13074 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
13075
13076 * xselect.c (Qcompound_text_with_extensions): Renamed from
13077 Qcompound_text_no_extensions.
13078 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
13079
130802002-02-26 Juanma Barranquero <lektu@terra.es>
13081
13082 * w32proc.c (syms_of_ntproc): Doc fix.
13083
130842002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13085
13086 * intervals.h: Include "dispextern.h" unconditionally.
13087
130882002-02-24 Jason Rumney <jasonr@gnu.org>
13089
13090 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
13091 and disp-table.elc.
13092 (lisp): Add emacs-lisp/backquote.elc.
13093
130942002-02-24 Kim F. Storm <storm@cua.dk>
13095
13096 * keymap.c (Flookup_key): Fixed problem in 2001-12-28 patch:
13097 The validation of the event type was too strict as it didn't
13098 allow string events; buffer names are used in bindings for
13099 menu-bar-select-buffer (see `menu-bar-update-buffers').
13100
131012002-02-23 Kim F. Storm <storm@cua.dk>
13102
13103 The following changes rework my patch of 2002-02-06 which
13104 added command remapping by entering the commands directly into
13105 the keymaps. Now, command remapping uses an explicit `remap'
13106 prefix in the keymaps, i.e. [remap COMMAND].
13107
13108 * keymap.c (Qremap, remap_command_vector): New variables.
13109 (is_command_symbol): Removed function.
13110 (Fdefine_key): No longer accept a symbol for KEY.
13111 Added validation of [remap COMMAND] argument for KEY.
13112 The DEF is no longer required to be a symbol when remapping a command.
13113 (Fremap_command): New function to remap command through keymaps.
13114 (Flookup_key): Perform command remapping initiated by
13115 Fremap_command directly for speed.
13116 (Fkey_binding): Use Fremap_command for command remapping.
13117 (where_is_internal): Handle new command remapping representation.
13118 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
13119 staticpro them. Defsubr Fremap_command.
13120
13121 * keymap.h (Fremap_command): Declare extern.
13122 (is_command_symbol): Remove extern.
13123
13124 * keyboard.c (command_loop_1): Use Fremap_command for command
13125 remapping; now try command remapping for all symbols.
13126
131272002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
13128
13129 * coding.h (run_pre_post_conversion_on_str): Add prototype.
13130
131312002-02-23 Jason Rumney <jasonr@gnu.org>
13132
13133 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
13134 on the string before encoding it.
13135 (Fw32_get_clipboard_data): Run post-read-conversion on the string
13136 after decoding it.
13137
13138 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
13139
131402002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13141
13142 * w32term.c (enter_timestamp): Remove unused static variable to
13143 prevent warning.
13144
13145 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
13146
131472002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
13148
13149 * w16select.c (Fw16_get_clipboard_data): Fix last change.
13150
13151 * xselect.c (selection_data_to_lisp_data): Fix last change.
13152
131532002-02-22 Jason Rumney <jasonr@gnu.org>
13154
13155 * w32term.h (struct w32_output): New member menu_command_in_progress.
13156
13157 * w32menu.c (menubar_selection_callback): Free the menu and
13158 clear the menu_command_in_progress flag.
13159
13160 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
13161 (menu_free_timer): New variable.
13162 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
13163 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
13164 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
13165 menu command is in progress.
13166 <WM_COMMAND>: Set the menu_command_in_progress flag.
13167 Kill any menu_free_timer that is running.
13168
13169 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
13170 Call ExtTextOutA rather than ExtTextOut.
13171
131722002-02-22 Eli Zaretskii <eliz@gnu.org>
13173
13174 * puresize.h (BASE_PURESIZE): Increase to 755000.
13175
131762002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
13177
13178 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
13179 on the string before encoding it.
13180 (Fw16_get_clipboard_data): Run post-read-conversion on the string
13181 after decoding it.
13182
131832002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
13184
13185 Support for ICCCM Extended Segments in X selections:
13186
13187 * xselect.c <Qcompound_text_no_extensions>: New variable.
13188 (syms_of_xselect): Intern and staticpro it.
13189 (selection_data_to_lisp_data): Run post-read-conversion on decoded
13190 selection text.
13191 (lisp_data_to_selection_data): If next-selection-coding-system is
13192 compound-text-no-extensions, set the type of selection to be
13193 compound-text.
13194
13195 * xterm.h (x_encode_text): Update prototype.
13196
13197 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
13198 callers changed. If SELECTIONP is non-zero, run the
13199 pre-write-conversion function before encoding the selection text.
13200
132012002-02-21 Kim F. Storm <storm@cua.dk>
13202
13203 * frame.c (syms_of_frame): Change mouse-highlight default to t.
13204
13205 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
13206 Correct composing of language-change event.
13207
132082002-02-20 Kim F. Storm <storm@cua.dk>
13209
13210 * keyboard.c (menu_bar_items): Don't include keymap or local-map
13211 bindings at PT when building menu (the menu is not updated often
13212 enough for this to work reliable).
13213 (tool_bar_items): Likewise.
13214 (current_active_maps): Removed unused (and buggy) function.
13215
132162002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13217
13218 * xfns.c (gif_load): Use correct width and height for GIF images.
13219
132202002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
13221
13222 * floatfns.c (Fatan): Accept an optional second arg and call
13223 atan2 if passed 2 args.
13224
132252002-02-18 Jason Rumney <jasonr@gnu.org>
13226
13227 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
13228
132292002-02-17 Jason Rumney <jasonr@gnu.org>
13230
13231 * w32term.c (x_autoselect_window_p): New variable.
13232 (syms_of_w32term): DEFVAR_BOOL and initialize it.
13233 (note_mouse_movement): Use it.
13234
13235 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
13236
13237 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
13238
13239 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
13240 New variables.
13241 (syms_of_w32fns): Intern and staticpro them.
13242 (x_frame_parms) <"fullscreen">: New parameter.
13243 (x_fullscreen_move, x_set_fullscreen): New functions.
13244 (x_set_frame_parameters): Support Qfullscreen.
13245 (x_real_positions): Save x/y_pixels_diff frame params.
13246 (x_figure_window_size): Support full-screen frames.
13247 (Fx_create_frame): Default the fullscreen parameter.
13248
13249 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
13250 (x_fullscreen_adjust): New functions.
13251 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
13252 fullscreen. Call x_check_fullscreen_move, and set the
13253 want_fullscreen member of output_data.w32
13254 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
13255
13256 * w32term.h: New enum for FULLSCREEN_* constants.
13257 (struct w32_output): New members want_fullscreen, x_pixels_diff,
13258 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
13259 (x-fullscreen-adjust): New prototype.
13260
132612002-02-17 Kim F. Storm <storm@cua.dk>
13262
13263 * frame.c: (Vmouse_highlight): New variable.
13264 (syms_of_frame): DEFVAR_LISP it.
13265
13266 * frame.h: (Vmouse_highlight): Declare extern.
8a8e19a3 13267
048addec 13268 * xterm.h (struct x_display_info): Add mouse_face_hidden.
8a8e19a3 13269
048addec
JD
13270 * xterm.c (disable_mouse_highlight): Removed variable.
13271 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
13272 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
13273 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
13274 and on after keyboard input.
13275 (x_term_init): Initialize mouse_face_hidden.
8a8e19a3 13276
048addec 13277 * msdos.h (struct display_info): Add mouse_face_hidden.
8a8e19a3 13278
048addec
JD
13279 * msdos.c (disable_mouse_highlight): Removed variable.
13280 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
13281 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
13282 (internal_terminal_init): Initialize mouse_face_hidden.
13283 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
13284 and on after keyboard input.
4f1b1854 13285
048addec 13286 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
4f1b1854 13287
048addec
JD
13288 * w32term.c (disable_mouse_highlight): Removed variable.
13289 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
13290 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
13291 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
13292 and on after keyboard input.
13293 (w32_initialize_display_info): Initialize mouse_face_hidden.
4f1b1854 13294
048addec 132952002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
4f1b1854 13296
048addec
JD
13297 * msdos.c (last_mouse_window): New variable.
13298 (dos_rawgetc): Fix last change--if the mouse is in the same window
13299 as recorded in last_mouse_window, don't select this window.
5cb6905d 13300
048addec 13301 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
5cb6905d 13302
048addec
JD
13303 * msdos.c (x_autoselect_window_p): New variable.
13304 (syms_of_msdos): Defvar it.
13305 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
13306 which the last mouse movement occured, unless it is already selected.
437dfb9f 13307
048addec
JD
13308 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
13309 New variables.
13310 (syms_of_xdisp): DEVFAR them.
13311 (hscroll_window_tree): Use automatic_hscroll_margin and
13312 Vautomatic_hscroll_step to compute the amount of window scrolling.
437dfb9f 13313
048addec 133142002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9f696a00 13315
048addec
JD
13316 * xterm.c (x-autoselect-window): New variable.
13317 (note_mouse_movement): Use it.
9f696a00 13318
048addec 13319 * keyboard.c: Do not include "systime.h" twice.
d57966d7 13320
048addec 133212002-02-15 Andreas Schwab <schwab@suse.de>
d57966d7 13322
bfa02563 13323 * puresize.h (PURESIZE_RATIO): Increase to 9/5.
d57966d7 13324
048addec 13325 * alloc.c (NSTATICS): Increase to 1280.
74779f52 13326
048addec 133272002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
74779f52 13328
048addec 13329 * alloc.c (NSTATICS): Bump to 1026.
a474d59c 13330
048addec
JD
13331 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
13332 (Vx_super_keysym): New variables.
13333 (syms_of_xterm): DEFVAR_LISP them.
13334 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
13335 variables to determine which keys to use for the various modifiers.
a474d59c 13336
048addec 133372002-02-13 Kim F. Storm <storm@cua.dk>
fbb70ad9 13338
048addec
JD
13339 * window.c: (Vmode_line_in_non_selected_windows): Removed.
13340 (mode_line_in_non_selected_windows): New variable.
13341 (syms_of_window): DEFVAR_BOOL it.
fbb70ad9 13342
048addec
JD
13343 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
13344 Use mode_line_in_non_selected_windows.
13345 (mode_line_in_non_selected_windows): Declare extern.
13346 (Vmode_line_in_non_selected_windows): Removed extern.
2d10309f 13347
048addec 133482002-02-13 Richard M. Stallman <rms@gnu.org>
2d10309f 13349
048addec
JD
13350 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
13351 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
13352 (Fclear_this_command_keys): Doc fixes.
2d10309f 13353
048addec
JD
13354 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
13355 (update_face_from_frame_parameter): Increment face_change_count
13356 and windows_or_buffers_changed to force redisplay using changed faces.
7f2cddf3 13357
048addec
JD
13358 * xdisp.c (QCpropertize): New variable.
13359 (mode_line_proptrans_alist): New variable.
13360 (display_mode_element): New arg PROPS; all calls changed.
13361 Implement this, for strings.
13362 Handle literal output of strings by sharing the
13363 main-line code for strings, using local var `literal'.
13364 Handle :propertize feature.
13365 (syms_of_xdisp): Initialze and staticpro QCpropertize and
13366 mode_line_proptrans_alist.
0b1e6b54 13367
048addec 133682002-02-11 Kim F. Storm <storm@cua.dk>
7f2cddf3 13369
048addec
JD
13370 * window.c: (Vmode_line_in_non_selected_windows): New variable.
13371 (syms_of_window): DEFVAR_LISP it.
7f2cddf3 13372
048addec
JD
13373 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
13374 (CURRENT_MODE_LINE_FACE_ID): Use it.
13375 (Vmode_line_in_non_selected_windows): Declare extern.
e17144de 13376
048addec
JD
13377 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
13378 to get mode line face.
e17144de 13379
048addec 133802002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 13381
048addec
JD
13382 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
13383 variables; cus-start.el doesn't need them anymore.
44368f8f 13384
048addec 133852002-02-09 Kim F. Storm <storm@cua.dk>
f884b6f4 13386
048addec
JD
13387 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
13388 reduction. This fixes a display problem where stray newlines were
13389 inserted in the window (corrected by C-l). Clarified code (IMHO).
6637c996 13390
048addec 133912002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 13392
048addec 13393 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
6637c996 13394
048addec 13395 * xdisp.c (display_mode_lines): Fix last change.
453c5510 13396
048addec 133972002-02-09 Jason Rumney <jasonr@gnu.org>
453c5510 13398
048addec
JD
13399 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
13400 match each other.
13401 (w32_load_system_font): Prevent Cleartype fonts from loading.
13402 (Fx_show_tip): Ensure tip frames are above other topmost windows.
d1d070e3 13403
048addec 134042002-02-09 Kim F. Storm <storm@cua.dk>
d1d070e3 13405
048addec
JD
13406 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
13407 (CURRENT_MODE_LINE_HEIGHT): Use it.
13408 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 13409
048addec
JD
13410 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
13411 (pos_visible_p, handle_face_prop): Likewise.
13412 (display_mode_lines): Likewise, but for the real selected window.
13413 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 13414
048addec
JD
13415 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
13416 in non-selected windows.
13417 (realize_basic_faces): Realize it.
13418 (syms_of_term): Intern and staticpro it.
308dd672 13419
048addec 134202002-02-08 Kim F. Storm <storm@cua.dk>
edde72f6 13421
048addec
JD
13422 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
13423 Changed mail addresses to emacs-devel@gnu.org.
308dd672 13424
048addec 134252002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
3c1e6b46 13426
048addec
JD
13427 * fileio.c (Fsubstitute_in_file_name): If the file name includes
13428 ~user, and there's no such user, don't discard everything before ~user.
03950b5b 13429
048addec 13430 * floatfns.c (Fround): Doc fix.
3c1e6b46 13431
048addec 134322002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c1e11810 13433
048addec 13434 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
c1e11810 13435
048addec 134362002-02-07 Stefan Monnier <monnier@cs.yale.edu>
1996baee 13437
048addec 13438 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
1996baee 13439
048addec 134402002-02-07 Kim F. Storm <storm@cua.dk>
0065bb74 13441
048addec
JD
13442 * keymap.c (where_is_internal): Only check whether definition is
13443 remapped if it fulfills is_command_symbol.
0065bb74 13444
048addec 134452002-02-07 Andreas Schwab <schwab@suse.de>
0065bb74 13446
048addec 13447 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
b5cb6072 13448
048addec 13449 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
b5cb6072 13450
048addec 134512002-02-06 Kim F. Storm <storm@cua.dk>
15fff01d 13452
048addec
JD
13453 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
13454 defining command remapping. Doc updated.
13455 (Flookup_key): Remap command through keymap if KEY is a symbol.
13456 (is_command_symbol): New function.
13457 (Fkey_binding): Use it. New optional argument NO-REMAP.
13458 Doc updated. Callers changed. Perform command remapping via
13459 recursive call unless that arg is non-nil.
13460 (where_is_internal): New argument no_remap. Callers changed.
13461 Call recursively to find original key bindings for a remapped
13462 comand unless that arg is non-nil.
13463 (Fwhere_is_internal): New optional argument NO-REMAP.
13464 Doc updated. Callers changed. Pass arg to where_is_internal.
0065bb74 13465
048addec
JD
13466 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
13467 (is_command_symbol): Added prototype.
0d8466cc 13468
048addec
JD
13469 * keyboard.c (Vthis_original_command): New variable.
13470 (syms_of_keyboard): DEFVAR_LISP it.
13471 (command_loop_1): Set it, and perform command remapping.
15fff01d 13472
048addec 134732002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2fae9111 13474
048addec 13475 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
2d6c1fc0 13476
048addec 134772002-02-06 Jason Rumney <jasonr@gnu.org>
07025a55 13478
048addec 13479 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
07025a55 13480
048addec 134812002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
07025a55 13482
048addec 13483 * charset.c (get_charset_id): Use if-else instead of ?:.
3a232704 13484
048addec 134852002-02-06 Richard M. Stallman <rms@gnu.org>
539e92ad 13486
048addec 13487 * filelock.c (S_ISLNK): Define if not defined.
3a232704 13488
048addec 134892002-02-03 Richard M. Stallman <rms@gnu.org>
0cb8bb48 13490
048addec 13491 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
539e92ad 13492
048addec
JD
13493 * lread.c (read1): Redesign strategy for force_multibyte and
13494 force_singlebyte. Now is_multibyte records whether read_buffer
13495 is multibyte. Encountering any multibyte character makes it so.
4e02881b 13496
048addec 134972002-02-02 Stefan Monnier <monnier@cs.yale.edu>
4e02881b 13498
048addec
JD
13499 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
13500 with the same sequence, map that sequence to f10 rather than f0.
1ab964d7 13501
048addec 135022002-02-03 Andreas Schwab <schwab@suse.de>
1ab964d7 13503
048addec
JD
13504 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
13505 latter never being defined on GNU/Linux.
749f499f 13506
048addec 135072002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
749f499f 13508
048addec
JD
13509 * xfaces.c (realize_default_face): Don't set the weight and slant of
13510 the default face to Qnormal, unless these attributes are unspecified.
b5d9aaba 13511
048addec 135122002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3a232704 13513
048addec
JD
13514 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
13515 Call cancel_hourglass unconditionally.
d0fd26dd 13516
048addec
JD
13517 * eval.c (Fsignal): Remove duplicated declaration of
13518 the variable `display_hourglass_p'.
b4c45162 13519
048addec 135202002-01-31 Richard M. Stallman <rms@gnu.org>
d0fd26dd 13521
048addec 13522 * editfns.c (region_limit): Nicer error message.
c95eaa61 13523
048addec
JD
13524 * coding.c (decode_composition_emacs_mule):
13525 Give up if NCOMPONENT gets too large to index `component'.
c95eaa61 13526
048addec
JD
13527 * callint.c (check_mark): New arg to specify clearer error message.
13528 Callers changed.
c95eaa61 13529
048addec 135302002-01-27 Richard M. Stallman <rms@gnu.org>
c95eaa61 13531
048addec 13532 * minibuf.c (Fcompleting_read): Doc fix.
c95eaa61 13533
048addec 135342002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c95eaa61 13535
048addec
JD
13536 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
13537 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
13538 Fix doc-strings.
c95eaa61 13539
048addec 135402002-01-26 Richard M. Stallman <rms@gnu.org>
c95eaa61 13541
048addec 13542 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
c95eaa61 13543
048addec
JD
13544 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
13545 and scroll_up_aggressively.
c95eaa61 13546
048addec 135472002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
31877e0a 13548
048addec 13549 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
31877e0a 13550
048addec 135512002-01-25 Stefan Monnier <monnier@cs.yale.edu>
e2c3786a 13552
048addec
JD
13553 * textprop.c (Fnext_property_change, Fnext_single_property_change)
13554 (Fprevious_property_change, Fprevious_single_property_change):
13555 Stay within the narrowed-buffer boundaries.
e2c3786a 13556
048addec 135572002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
c513fc03 13558
048addec
JD
13559 * term.c (Ftty_display_color_cells): New function.
13560 (syms_of_term): Defsubr it.
13561 (Ftty_display_color_cells, Ftty_display_color_p): Change the
13562 argument name to DISPLAY. Doc fix.
bf794306 13563
048addec
JD
13564 * dispextern.h: Add prototype for set_tty_color_mode and
13565 tty_setup_colors.
bf794306 13566
048addec 135672002-01-24 Jason Rumney <jasonr@gnu.org>
bf794306 13568
048addec
JD
13569 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
13570 If region left to draw is not what was expected, mark the frame as
13571 garbaged.
62582985 13572
048addec
JD
13573 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
13574 Combine the regions returned by BeginPaint and GetUpdateRect.
c513fc03 13575
048addec 135762002-01-23 Jason Rumney <jasonr@gnu.org>
3509a04c 13577
048addec
JD
13578 * w32term.c (x_update_window_begin): Only hide caret if
13579 w32_use_visible_system_caret is set.
13580 (x_update_window_end): Only show caret if
13581 w32_use_visible_system_caret is set.
13582 (syms_of_w32term): Handle SystemParametersInfo call failing.
3509a04c 13583
048addec 13584 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
3509a04c 13585
048addec 135862002-01-22 Richard M. Stallman <rms@gnu.org>
3509a04c 13587
048addec
JD
13588 * unexelf.c (unexec): Define n so as to cause compilation error
13589 for the code where people have often written n instead of nn.
1e9a6186 13590
048addec 13591 * .gdbinit (hookpost-run): Defined.
1e9a6186 13592
048addec 135932002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e4e34e31 13594
048addec 13595 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
e4e34e31 13596
048addec 135972002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4521d1fc 13598
048addec
JD
13599 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
13600 if fullscreen is being set.
7c75be36 13601
048addec 136022002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4521d1fc 13603
048addec
JD
13604 * minibuf.c (Fminibuffer_contents)
13605 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
13606 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
4521d1fc 13607
048addec 136082002-01-21 Richard M. Stallman <rms@gnu.org>
4521d1fc 13609
048addec 13610 * window.c (check_frame_size): Fix minimum height calculation.
93dec019 13611
048addec 136122002-01-20 Ken Raeburn <raeburn@gnu.org>
93dec019 13613
048addec
JD
13614 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
13615 height before comparison.
13616 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
905cc05a 13617
048addec 136182002-01-20 Jason Rumney <jasonr@gnu.org>
2ed06289 13619
048addec
JD
13620 * w32term.c (w32_system_caret_width): Remove.
13621 (w32_use_visible_system_caret): New user flag.
13622 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
13623 Windows reports a screen reader running.
13624 (x_update_window_begin): Hide the system caret.
13625 (x_update_window_end): Show the system caret.
13626 (x_display_and_set_cursor): Don't draw a cursor when
13627 w32_use_visible_system_caret is set. Do not adjust width.
0e79d667 13628
048addec
JD
13629 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
13630 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
13631 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
13632 the user requests it. Use system default width when creating.
13633 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
0e79d667 13634
048addec
JD
13635 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
13636 New window messages.
905cc05a 13637
048addec 136382002-01-20 Richard M. Stallman <rms@gnu.org>
82a7ab23 13639
048addec 13640 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
d75bec6a 13641
048addec 136422002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
52dcb476 13643
048addec 13644 * doprnt.c (doprnt1): Fix typos in error call.
82a7ab23 13645
048addec 136462002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
82a7ab23 13647
048addec 13648 * unexelf.c (unexec) [__sgi]: Support the .got sections.
82a7ab23 13649
048addec 136502002-01-20 Jason Rumney <jasonr@gnu.org>
4d0fa4f3 13651
048addec
JD
13652 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
13653 that Windows returns. If a double check fails, try to guess how
13654 ExtTextOut is going to act.
4d0fa4f3 13655
048addec
JD
13656 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
13657 in place of stricmp.
13658 (w32_list_synthesized_fonts): Removed.
13659 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
13660 (struct enumfont_t): New element; list.
13661 (enum_font_cb2): List all style and charset variations of a font.
13662 (Fw32_select_font): New optional argument; include_proportional.
13663 Exclude vertical fonts. Exclude proportional fonts unless
13664 include_proportional is non-nil.
13665 (w32_enable_synthesized_fonts): Change to a boolean.
13666 (Fw32_send_sys_command): Doc fix.
493faf20 13667
048addec 136682002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
493faf20 13669
048addec
JD
13670 * dispnew.c (update_frame): Move the variable `tem' to the block
13671 where it is used.
4971e491 13672
048addec 136732002-01-19 Jason Rumney <jasonr@gnu.org>
4971e491 13674
048addec
JD
13675 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
13676 call to face-set-after-frame-default.
4971e491 13677
048addec 136782002-01-18 Richard M. Stallman <rms@gnu.org>
d911a0fa 13679
048addec
JD
13680 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
13681 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
d911a0fa 13682
048addec 136832002-01-17 Richard M. Stallman <rms@gnu.org>
d911a0fa 13684
048addec
JD
13685 * window.c (enlarge_window): When exceeding size of parent,
13686 directly delete all the siblings instead of trying to resize it.
201c831a 13687
048addec 136882002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
201c831a 13689
048addec 13690 * term.c (set_tty_color_mode): Remove unused variable `tem'.
201c831a 13691
048addec 136922002-01-16 Henrik Enberg <henrik@enberg.org>
34e39c95 13693
048addec 13694 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
34e39c95 13695
048addec 136962002-01-16 Kim F. Storm <storm@cua.dk>
d77fbc16 13697
048addec
JD
13698 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
13699 is invisible. This can happen if cursor is on top line of a
13700 window, and we switch to a buffer with a header line.
d77fbc16 13701
048addec 13702 * w32term.c (x_erase_phys_cursor): Ditto.
61e3b944 13703
048addec 137042002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
61e3b944 13705
048addec
JD
13706 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
13707 `dont_resize' only when used.
61e3b944 13708
048addec 13709 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
70da46c3 13710
048addec 137112002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
70da46c3 13712
048addec
JD
13713 * xdisp.c (display_mode_element): When computing charpos, depend
13714 on multibyteness of elt, not the text in field.
8af01033 13715
048addec 137162002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8af01033 13717
048addec
JD
13718 * buffer.c (Fkill_all_local_variables):
13719 Increment `update_mode_lines' only once.
7363986a 13720
048addec 137212002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7363986a 13722
048addec
JD
13723 * lisp.h (adjust_after_replace_noundo)
13724 (Fupdate_coding_systems_internal): Add prototypes.
d9e6c4b1 13725
048addec 13726 * sound.c (Fplay_sound): Initialize header_size also for :data case.
d20fc48a 13727
048addec 137282002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
d9e6c4b1 13729
048addec
JD
13730 Support for the --color command-line argument and tty-color-mode
13731 frame parameter:
f1a85b89 13732
048addec
JD
13733 * term.c (tty_default_color_capabilities, tty_setup_colors)
13734 (set_tty_color_mode): New functions.
13735 (term_init): Call tty_default_color_capabilities.
13736 (Qtty_color_mode_alist): New variable.
13737 (syms_of_term): Intern and staticpro it.
f1a85b89 13738
048addec
JD
13739 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
13740 frames.
13741 (do_switch_frame): For termcap frames, switch the tty
13742 color mode as specified by the frame's parameters.
13743 (Qtty_color_mode): New variable.
13744 (syms_of_frame): Intern and staticpro it.
3a62677f 13745
048addec
JD
13746 * emacs.c (USAGE2): Add the --color option.
13747 (standard_args): Ditto.
72244db2 13748
048addec
JD
137492002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13750
13751 * xterm.h (struct x_output): New members want_fullscreen,
13752 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
13753 y_pixels_outer_diff.
13754 New enum for FULLSCREEN_* constants.
13755 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
13756 is NULL.
13757 (x_fullscreen_adjust): Add prototype.
3a62677f 13758
048addec
JD
13759 * emacs.c (USAGE2): Add the new full-screen arguments.
13760 (standard_args): Ditto.
3a62677f 13761
048addec
JD
13762 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
13763 New variables.
13764 (syms_of_xfns): Intern and staticpro them.
13765 (x_frame_parms) <"fullscreen">: New parameter.
13766 (x_fullscreen_move, x_set_fullscreen): New functions.
13767 (x_set_frame_parameters): Support for Qfullscreen.
13768 (x_real_positions): More accurate computation of the frame position.
13769 (x_figure_window_size): Support full-screen frames.
13770 (Fx_create_frame): Default the fullscreen parameter.
3a62677f 13771
048addec
JD
13772 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
13773 (XTread_socket) <Expose>: Call x_check_fullscreen.
13774 <ConfigureNotify>: Don't resize to fullscreen.
13775 Call x_check_fullscreen_move, and set the want_fullscreen member of
13776 output_data.x.
3a62677f 13777
048addec 137782002-01-13 Jason Rumney <jasonr@gnu.org>
9d113d9d 13779
048addec
JD
13780 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
13781 for mice with more than 3 buttons.
b8523839 13782
048addec
JD
13783 * w32term.c (parse_button): New parameter xbutton. Callers changed.
13784 (w32_read_socket): Handle new "XBUTTON" messages.
9464dea4 13785
048addec
JD
13786 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
13787 (syms_of_w32fns): DEFVAR_BOOL it.
13788 (w32_wnd_proc): Handle new "XBUTTON" messages.
9d113d9d 13789
048addec 137902002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
70ec1377 13791
048addec 13792 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
70ec1377 13793
048addec 137942002-01-13 Andreas Schwab <schwab@suse.de>
92f7dd37 13795
048addec 13796 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
92f7dd37 13797
048addec 137982002-01-12 Andreas Schwab <schwab@suse.de>
c93674bb 13799
048addec
JD
13800 * .gdbinit (xbuffer): Remove address operator since data is now a
13801 pointer.
c93674bb 13802
048addec 138032002-01-11 Richard M. Stallman <rms@gnu.org>
59b59892 13804
048addec 13805 * insdel.c (adjust_after_replace_noundo): New function.
59b59892 13806
048addec 13807 * coding.c (code_convert_region): Don't copy old text if undo disabled.
c6ea2775 13808
048addec 138092002-01-09 Jason Rumney <jasonr@gnu.org>
c6ea2775 13810
048addec
JD
13811 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
13812 when checking for multiple frames.
91175673 13813
048addec 138142002-01-08 Richard M. Stallman <rms@gnu.org>
91175673 13815
048addec
JD
13816 * window.c (delete_window): Rewrite the code for changing the
13817 selected window to handle the case where WINDOW is not a leaf.
91175673 13818
048addec 138192002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
e0fead5d 13820
048addec
JD
13821 * process.c (send_process): Set src_multibyte to 1 after the call
13822 top setup_coding_system, not before the call.
e0fead5d 13823
048addec 138242002-01-07 Jason Rumney <jasonr@gnu.org>
e0fead5d 13825
048addec
JD
13826 * xmenu.c (set_frame_menubar, xmenu_show):
13827 (xdialog_show): Initialize wv->help to Qnil.
c186cdb3 13828
048addec
JD
13829 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
13830 (w32_dialog_show): Initialize wv->help to Qnil.
c186cdb3 13831
048addec 138322002-01-06 Jason Rumney <jasonr@gnu.org>
c186cdb3 13833
048addec 13834 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
c186cdb3 13835
048addec 13836 * w32menu.c (w32_menu_display_help): Revert last change.
58cfce98 13837
048addec 13838 * xmenu.c (menu_highlight_callback): Revert last change.
58cfce98 13839
048addec 138402002-01-06 Andreas Schwab <schwab@suse.de>
62854fe2 13841
048addec
JD
13842 * insdel.c (make_gap_larger): Make sure buffer size does not
13843 overflow range of int.
62854fe2 13844
048addec 138452002-01-05 Jason Rumney <jasonr@gnu.org>
656f46bb 13846
048addec
JD
13847 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
13848 OVERLAPS_P.
656f46bb 13849
048addec 13850 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
656f46bb 13851
048addec
JD
13852 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
13853 to the left or to the right of the pointer, put it against
13854 the left screen edge.
13855 (x_frame_parms): Add missing braces around initializer.
036e218d 13856
048addec
JD
13857 * w32term.c (x_setup_relief_colors): Don't compute an image's
13858 background color if it doesn't have a Pixmap.
13859 (notice_overwritten_cursor): Don't depend on
13860 output_cursor and updated_area. Compare pixel coordinates with
13861 window's cursor pixel coordinates.
13862 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
13863 Call notice_overwritten_cursor with new arg list.
13864 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
13865 unconditionally.
13866 (x_draw_image_relief): Use predefined macro instead of
13867 constant when the value of `tool_bar_button_relief' is negative.
036e218d 13868
048addec 13869 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
7ddb2c16 13870
048addec 138712002-01-04 Richard M. Stallman <rms@gnu.org>
7ddb2c16 13872
048addec 13873 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
ace9b298 13874
048addec 138752002-01-03 Richard M. Stallman <rms@gnu.org>
90647b07 13876
048addec
JD
13877 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
13878 (Fkey_binding): Try the `keymap' property map first.
13879 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
13880 minor mode bindings.
90647b07 13881
048addec 138822002-01-03 Kim F. Storm <storm@cua.dk>
ace9b298 13883
048addec 13884 * keyboard.c (read_key_sequence): Fixed cast of submaps arg to bcopy.
ace9b298 13885
048addec 138862002-01-02 Richard M. Stallman <rms@gnu.org>
ace9b298 13887
048addec
JD
13888 * keyboard.c (read_key_sequence): Handle the keymap property
13889 before minor mode maps.
9fbc32aa 13890
048addec
JD
13891 * editfns.c (Fformat): Update thissize from field_width
13892 based on the actual width, in the string case.
036e218d 13893
048addec 138942002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fbc32aa 13895
048addec
JD
13896 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
13897 when used as truth value to prevent gcc warnings.
9fbc32aa 13898
048addec
JD
13899 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
13900 * w32proc.c: Include <config.h>.
9fbc32aa 13901
048addec 139022002-01-01 Andreas Schwab <schwab@suse.de>
9fbc32aa 13903
048addec
JD
13904 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
13905 not EMACS_INT, to make them compatible with DEFVAR_INT.
13906 * lisp.h (max_specpdl_size): Adjust declaration.
9fbc32aa 13907
048addec 139082002-01-01 Richard M. Stallman <rms@gnu.org>
9fbc32aa 13909
048addec
JD
13910 * print.c (print_object): Test print_escape_nonascii only for
13911 unibyte strings.
13912 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
13913 when outputting to a multibyte buffer.
9fbc32aa 13914
048addec 139152001-12-29 Richard M. Stallman <rms@gnu.org>
9fbc32aa 13916
048addec
JD
13917 * print.c (print_object): In multibyte string, use hex escapes.
13918 Use octal only for unibyte strings.
13919 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
0142178a 13920
048addec
JD
13921 * lread.c (read_escape): New arg BYTEREP for reporting whether
13922 escape forces unibyte or multibyte.
13923 (read1): When reading a string, take note of that info.
0142178a 13924
048addec 139252001-12-29 Ken Raeburn <raeburn@gnu.org>
d4824a5d 13926
048addec
JD
13927 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
13928 comparison to test lisp value returned by Fget.
d4824a5d 13929
048addec 139302001-12-29 Richard M. Stallman <rms@gnu.org>
b1356234 13931
048addec 13932 * lisp.h (max_specpdl_size): Add declaration.
b1356234 13933
048addec 13934 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
3ce081f5 13935
048addec
JD
13936 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
13937 Handle modifier bits. Correct typo in error message.
99e380ee 13938
048addec 139392001-12-28 Richard M. Stallman <rms@gnu.org>
3ce081f5 13940
048addec
JD
13941 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
13942 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
13943 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
13944 Update calls to Fdefine_abbrev.
13945 (write_abbrev): Update for changed data format.
13946 Don't list "system" abbrevs.
13947 (Fexpand_abbrev): Update use count with new data format.
13948 (describe_abbrev): Update for changed data format.
13949 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
66458f32 13950
048addec 13951 * config.in (HAVE_MBSINIT): Add #undef.
66458f32 13952
048addec 13953 * strftime.c (mbsinit): Define as no-op if not available.
66458f32 13954
048addec
JD
13955 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
13956 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
59a86c99 13957
048addec
JD
13958 * keymap.c (Flookup_key): Error message if key has wrong data type.
13959 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
13960 (exclude_key): New variable.
59a86c99 13961
048addec 139622001-12-28 Gerd Moellmann <gerd@gnu.org>
eb77a5f4 13963
048addec
JD
13964 * xterm.c (x_setup_relief_colors): Don't compute an image's
13965 background color if it doesn't have a Pixmap.
eb77a5f4 13966
048addec
JD
13967 * xterm.c (notice_overwritten_cursor): Don't depend on
13968 output_cursor and updated_area. Compare pixel coordinates with
13969 window's cursor pixel coordinates.
13970 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
13971 Call notice_overwritten_cursor with new arg list.
13972 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
13973 unconditionally.
eb77a5f4 13974
048addec
JD
13975 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
13976 height of the cursor line to the amount to scroll.
eb77a5f4 13977
048addec 139782001-12-27 Richard M. Stallman <rms@gnu.org>
bb313871 13979
048addec
JD
13980 * intervals.c (set_point_both): The position after an invisible,
13981 intangible character is not an acceptable stopping point.
bb313871 13982
048addec 139832001-12-27 Ken Raeburn <raeburn@gnu.org>
55b43a63 13984
048addec
JD
13985 * window.c (enlarge_window): In new preserve_before code, convert
13986 CURBEG from lisp object to integer before doing arithmetic.
6052529b 13987
048addec 139882001-12-27 Richard M. Stallman <rms@gnu.org>
3ce081f5 13989
048addec 13990 * bytecode.c (Fbyte_code): Undo previous change.
3ce081f5 13991
048addec 139922001-12-26 Kim F. Storm <storm@cua.dk>
3ce081f5 13993
048addec
JD
13994 * keyboard.c (record_char): Ignore duplicate help-echo events only
13995 separated by mouse-movement. When tracking mouse, only record
13996 first and last mouse-movement event in same window.
13997 Don't record mouse-movement events in keyboard macros.
3ce081f5 13998
048addec 139992001-12-25 Richard M. Stallman <rms@gnu.org>
55b43a63 14000
048addec
JD
14001 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
14002 (Fenlarge_window): New arg PRESERVE_BEFORE.
111ed14e 14003
048addec
JD
14004 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
14005 instead of Fstring_as_unibyte.
9fabb2f5 14006
048addec 140072001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fabb2f5 14008
048addec 14009 The following changes remove mocklisp support:
9fabb2f5 14010
048addec 14011 * mocklisp.h, mocklisp.c: Files removed.
111ed14e 14012
048addec
JD
14013 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
14014 `Qmocklisp' and `Qmocklisp_arguments'.
14015 Remove prototype of syms_of_mocklisp.
2fa0eedf 14016
048addec 14017 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
d1420435 14018
048addec
JD
14019 * callint.c: Do not include mocklisp.h.
14020 (Fcall_interactively): Do not test for mocklisp case.
2fa0eedf 14021
048addec
JD
14022 * eval.c: Remove variables `Qmocklisp_arguments',
14023 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
14024 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
14025 Do not test for mocklisp case.
14026 (Fwhile): Remove unused variable `tem'.
14027 (syms_of_eval): Remove variable `moclisp-arguments'.
ebcbef4e 14028
048addec 14029 * data.c (wrong_type_argument): Remove mocklisp case.
5c131048 14030
048addec 14031 * doc.c (Fdocumentation): Remove mocklisp case.
5c131048 14032
048addec 14033 * emacs.c (main): Do not call syms_of_mocklisp.
5c131048 14034
048addec 140352001-12-21 Richard M. Stallman <rms@gnu.org>
96d276c3 14036
048addec
JD
14037 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
14038 to the left or to the right of the pointer, put it against
14039 the left screen edge.
6108b49c 14040
048addec 140412001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
96d276c3 14042
048addec
JD
14043 * Makefile.in (distclean): Remove .gdbinit if we are building
14044 outside the source tree.
5eea19a4 14045
048addec 140462001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
5eea19a4 14047
048addec 14048 * w32.c (emacs_root_dir): New function.
5eea19a4 14049
048addec 14050 * msdos.c (emacs_root_dir): New function.
5eea19a4 14051
048addec
JD
14052 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
14053 of the current drive as the fallback for default_directory.
438e57dd 14054
048addec
JD
14055 * dired.c (file_name_completion): Run the elements of
14056 completion-ignored-extensions through ENCODE_FILE.
438e57dd 14057
048addec
JD
14058 * lisp.h (scmp): Remove prototype, since it's now a static
14059 function private to dired.c.
c88e5347 14060
048addec 140612001-12-18 Richard M. Stallman <rms@gnu.org>
c88e5347 14062
048addec
JD
14063 * dired.c (scmp): Function moved from minibuf.c.
14064 Delete multibyte handling--used only on encoded strings.
59ce1461 14065
048addec 14066 * minibuf.c (scmp): Function moved to dired.c.
59ce1461 14067
048addec 14068 * fns.c (merge): Add QUIT call.
59ce1461 14069
048addec 140702001-12-18 Dave Love <fx@gnu.org>
8727d588 14071
048addec
JD
14072 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
14073 language/georgian.el.
8727d588 14074
048addec 140752001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
cc63037e 14076
048addec
JD
14077 * Makefile.in (lisp, shortlisp): Synchronize with changes to
14078 lisp/Makefile.in:DONTCOMPILE.
cc63037e 14079
048addec 140802001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
cc63037e 14081
048addec
JD
14082 * xdisp.c (window_box_height): Do not return negative values.
14083 From Gerd Moellmann <gerd@gnu.org>.
cc63037e 14084
048addec 14085 * keyboard.c (head_table): Add missing braces around initializer.
cc63037e 14086
048addec 14087 * term.c (keys): Likewise.
deece6f5 14088
048addec 14089 * xfns.c (x_frame_parms, visual_classes): Likewise.
deece6f5 14090
048addec 140912001-12-17 Sam Steingold <sds@gnu.org>
1b944d9c 14092
048addec
JD
14093 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
14094 patch (COMPOSING_P, not COMPOSING).
28ff4293 14095
048addec 140962001-12-17 Richard M. Stallman <rms@gnu.org>
a395ef6a 14097
048addec 14098 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
a395ef6a 14099
048addec
JD
14100 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
14101 before calling decode_coding.
9b46de40 14102
048addec 14103 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
9b46de40 14104
048addec
JD
14105 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
14106 instead of only for COMPOSITION_DISABLED.
9b46de40 14107
048addec 141082001-12-16 Richard M. Stallman <rms@gnu.org>
aff37336 14109
048addec 14110 * alloc.c (pure_alloc): After overflow, allocate just a small block.
aff37336 14111
048addec 14112 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
b9937f07 14113
048addec
JD
14114 * buffer.h (struct buffer): New field `display_error_modiff'.
14115 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
b9937f07 14116
048addec 14117 * window.c (Frecenter): Clear display_error_modiff field.
2cd23960 14118
048addec
JD
14119 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
14120 Call redisplay_window, but not if display_error_modiff field says no.
14121 (redisplay_window_error): New function.
14122 (displayed_buffer): New variable.
14123 (redisplay_internal, redisplay_windows): Call the new functions
14124 instead of redisplay_window directly.
2cd23960 14125
048addec 141262001-12-15 Richard M. Stallman <rms@gnu.org>
2cd23960 14127
048addec 14128 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
2cd23960 14129
048addec 141302001-12-14 Andrew Innes <andrewi@gnu.org>
a4184c1c 14131
048addec 14132 * makefile.w32-in (EMACSLOADPATH): Define.
f9711de4 14133 ($(EMACS)): Run `list-load-path-shadows' after dumping Emacs.
048addec 14134 (bootstrap-temacs): Remove dependency on bootstrap-clean.
a4184c1c 14135
048addec 141362001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
f6fa0866 14137
048addec
JD
14138 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
14139 parameter have a numeric value all the time.
f6fa0866 14140
048addec 14141 * w32fns.c (x_report_frame_params): Likewise.
f4ca4b00 14142
048addec 141432001-12-12 Richard M. Stallman <rms@gnu.org>
f4ca4b00 14144
048addec 14145 * fileio.c (Fwrite_region): Doc fix.
f4e25f94 14146
048addec
JD
14147 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
14148 (redisplay_internal): Call clear_image_cache only for window terminals.
f4e25f94 14149
048addec 141502001-12-12 Gerd Moellmann <gerd@gnu.org>
91c153e2 14151
048addec
JD
14152 * xdisp.c (move_it_vertically_backward): Change heuristic
14153 for the case that we didn't move far enough initially.
91c153e2 14154
048addec
JD
14155 * window.c (Frecenter): Simplify computation in the case of window
14156 system frames and ARG < 0; use window_box_height.
65b7d3e7 14157
048addec 141582001-12-11 Richard M. Stallman <rms@gnu.org>
65b7d3e7 14159
048addec
JD
14160 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
14161 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
6b5f6311 14162
048addec 141632001-12-11 Andrew Innes <andrewi@gnu.org>
6b5f6311 14164
048addec
JD
14165 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
14166 arg is negative.
be676094 14167
048addec 141682001-12-11 Richard M. Stallman <rms@gnu.org>
be676094 14169
048addec
JD
14170 * m/hp800.h: Split the __hpux conditional into the parts
14171 that are right for GNU/Linux too and the parts that are not.
14172 Use the former if GNU_LINUX.
14173 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
032a857d 14174
048addec 14175 * s/gnu-linux.h (GNU_LINUX): Defined.
032a857d 14176
048addec 141772001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
032a857d 14178
048addec
JD
14179 * macros.c, msdos.c, w16select.c: Change doc-string comments to
14180 `new style' [w/`doc:' keyword].
032a857d 14181
048addec 141822001-12-10 Jason Rumney <jasonr@gnu.org>
b6270150 14183
048addec
JD
14184 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
14185 before using.
b6270150 14186
048addec 141872001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
792e5cbd 14188
048addec
JD
14189 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
14190 keyword].
98cbb9fa 14191
048addec 141922001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
98cbb9fa 14193
048addec 14194 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
98cbb9fa 14195
048addec 14196 * s/hpux10.h (srand48): Don't undefine.
98cbb9fa 14197
048addec 141982001-12-09 Jason Rumney <jasonr@gnu.org>
792e5cbd 14199
048addec
JD
14200 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
14201 Add comment to explain where the struct came from.
14202 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
14203 (add_menu_item): Process pop-up menus first to avoid memory leak.
14204 (add_menu_item, w32_menu_display_help): Use `help' field as
14205 Lisp_Object.
14206 (w32_free_submenu_strings): Only free owner-drawn strings.
fa336b91 14207
048addec 142082001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
fa336b91 14209
048addec 14210 * COPYING: Moved back.
fa336b91 14211
048addec
JD
14212 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
14213 Add parentheses around && within ||.
077907d4 14214
048addec 14215 * indent.c (compute_motion): Likewise.
aa2af83a 14216
048addec 14217 * intervals.c (merge_properties_sticky): Likewise.
60a653f1 14218
048addec
JD
14219 * coding.c (setup_coding_system, shrink_encoding_region)
14220 (Fdecode_sjis_char): Likewise.
60a653f1 14221
048addec 142222001-12-07 Andreas Schwab <schwab@suse.de>
60a653f1 14223
048addec
JD
14224 * xdisp.c (display_mode_element): Don't read past end of string if
14225 it ends with '%'.
60a653f1 14226
048addec
JD
14227 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
14228 can hold.
60a653f1 14229
048addec
JD
14230 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
14231 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
14232 type changed to Lisp_Object.
14233 (syms_of_data): DEFVAR_LISP them.
60a653f1 14234
048addec 142352001-12-07 Richard M. Stallman <rms@gnu.org>
60a653f1 14236
048addec
JD
14237 * callproc.c (init_callproc): Set Vdata_directory based on the source
14238 location whenever Emacs was run uninstalled.
60a653f1 14239
048addec 142402001-12-06 Paul Eggert <eggert@twinsun.com>
60a653f1 14241
048addec
JD
14242 * config.in (HAVE_WORKING_VFORK): New #undefs.
14243 * process.c (create_process):
14244 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
14245 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
14246 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
14247 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
14248 * m/intel386.h (HAVE_VFORK): Likewise.
14249 * m/mips-siemens.h (HAVE_VFORK): Likewise.
14250 * m/mips.h (HAVE_VFORK): Likewise.
14251 * s/freebsd.h (vfork): Remove #define.
14252 * s/lynxos.h (HAVE_VFORK): Remove #undef.
14253 * s/usg5-4-2.h: Fix comment about vfork.
60a653f1 14254
048addec 142552001-12-06 Richard M. Stallman <rms@gnu.org>
60a653f1 14256
048addec
JD
14257 * s/hpux10.h (random): Add undef.
14258 (HAVE_RANDOM): Define it just once.
60a653f1 14259
048addec 142602001-12-06 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 14261
048addec 14262 * eval.c: Undo last change: the standard syntax is not wanted.
60a653f1 14263
048addec 142642001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 14265
048addec
JD
14266 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
14267 scroll bars of the frame before deleting the frame itself. If the
14268 frame has a widget, delete the frame with XtDestroyWidget, and do
14269 not call XDestroyWindow before that.
60a653f1 14270
048addec 142712001-12-06 Kim F. Storm <storm@cua.dk>
60a653f1 14272
048addec 14273 * xfns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 14274
048addec 14275 * w32fns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 14276
048addec 142772001-12-05 Andrew Innes <andrewi@gnu.org>
60a653f1 14278
048addec
JD
14279 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
14280 excessively large.
60a653f1 14281
048addec
JD
14282 * insdel.c (make_gap_larger): New function.
14283 (make_gap_smaller): New function.
14284 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
14285 Call make_gap_smaller if arg is negative.
60a653f1 14286
048addec 142872001-12-04 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 14288
048addec
JD
14289 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
14290 Pass a dummy argument when calling interrupt_signal.
14291 (parse_menu_item): Mark disabled items before checking for empty def.
14292 (read_char_minibuf_menu_prompt): Make safety more visible.
14293 (read_key_sequence): Add a `first_unbound' variable.
14294 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
14295 unbound prefix as soon as we can detect it.
60a653f1 14296
048addec
JD
14297 * doc.c (Fsnarf_documentation): Add prototype.
14298 (get_doc_string): Handle negative arguments.
14299 (Fdocumentation): Use AREF and ASIZE.
14300 Move the calls to get_doc_string to a single place.
14301 Don't confuse an interactive-spec for a docstring reference.
14302 (Fdocumentation_property): Take advantage of the fact that
14303 get_doc_string now ignores the sign of the docstring position.
60a653f1 14304
048addec 14305 * eval.c: Use standard syntax for usage in docstrings.
60a653f1 14306
048addec 143072001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 14308
a64387ee 14309 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
60a653f1 14310
048addec 143112001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 14312
048addec
JD
14313 * xterm.c (x_draw_image_relief): Use predefined macro instead of
14314 constant when the value of `tool_bar_button_relief' is negative.
60a653f1 14315
048addec 143162001-12-02 Richard M. Stallman <rms@gnu.org>
60a653f1 14317
048addec
JD
14318 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
14319 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
60a653f1 14320
048addec 14321 * fileio.c (read_non_regular): Delete Fsignal call.
60a653f1 14322
048addec 143232001-12-01 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 14324
048addec 14325 * lisp.h (run_hook_list_with_args): Undo last change.
60a653f1 14326
048addec 143272001-12-01 Gerd Moellmann <gerd@gnu.org>
60a653f1 14328
048addec 14329 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
60a653f1 14330
048addec 143312001-12-01 Jason Rumney <jasonr@gnu.org>
60a653f1 14332
f63fd14e 14333 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
60a653f1 14334
048addec
JD
14335 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
14336 [!WM_MOUSELEAVE]: Define.
60a653f1 14337
048addec
JD
14338 * w32menu.c (current_popup_menu, get_menu_item_info):
14339 (set_menu_item_info): New vars.
14340 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
14341 (w32_menu_show): Set current_popup_menu.
14342 (add_menu_item): Allocate new strings for owner-drawn menu items
14343 and help strings.
14344 Use owner-draw for disabled menu items again.
14345 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
14346 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
60a653f1 14347
048addec
JD
14348 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
14349 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
14350 <WM_EXITMENULOOP>: Free menu strings.
14351 <WM_MOUSELEAVE>: Stop tracking mouse.
14352 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
60a653f1 14353
048addec
JD
14354 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
14355 and mouse face.
60a653f1 14356
048addec 143572001-12-01 Kim F. Storm <storm@cua.dk>
60a653f1 14358
048addec
JD
14359 The following changes add left-fringe and right-fringe
14360 frame parameters to adjust fringe widths, or remove one or
14361 both fringes.
60a653f1 14362
048addec
JD
14363 * frame.h (struct frame): Remove trunc_area_pixel_width and
14364 trunc_area_cols fields.
14365 (Qleft_fringe, Qright_fringe): Declare.
14366 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
60a653f1 14367
048addec
JD
14368 * frame.c (Qleft_fringe, Qright_fringe): New vars.
14369 (syms_of_frame): Initialize them.
60a653f1 14370
048addec
JD
14371 * window.c (coordinates_in_window): Handle separate left and right
14372 fringe widths.
60a653f1 14373
048addec
JD
14374 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
14375 and fringe_cols fields.
14376 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
14377 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
14378 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
14379 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
14380 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
14381 (x_compute_fringe_widths): Add prototype.
60a653f1 14382
048addec
JD
14383 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
14384 fill fringe evenly with small dashes.
f63fd14e 14385 (x_draw_fringe_bitmap): Clear background if necessary. Align and
048addec
JD
14386 clip the new ZV bitmap to avoid jitter between rows.
14387 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
14388 background. Don't draw fringe bitmaps if fringe width is zero.
14389 (x_compute_fringe_widths): New function.
14390 (x_new_font, x_set_window_size_1): Use it.
60a653f1 14391
048addec
JD
14392 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
14393 (x_set_frame_parameters): Process `font' parameter before other
14394 parameters as fringe widths depend on it.
14395 (x_set_fringe_width): New function.
14396 (x_figure_window_size): Use x_compute_fringe_widths.
14397 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
14398 parameters.
60a653f1 14399
048addec
JD
14400 * widget.c (set_frame_size): Use x_compute_fringe_widths.
14401 (EmacsFrameSetCharSize): Ditto.
60a653f1 14402
048addec
JD
14403 * w32term.h: Merged changes from xterm.h.
14404 * w32term.c: Merged changes from xterm.c.
14405 * w32fns.c: Merged changes from xfns.c.
60a653f1 14406
048addec 144072001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 14408
048addec 14409 * COPYING: Removed.
60a653f1 14410
048addec 144112001-11-29 Dave Love <fx@gnu.org>
60a653f1 14412
048addec
JD
14413 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
14414 extra extra slot.
14415 (detect_coding_mask): Fix call of detect_coding_iso2022.
60a653f1 14416
048addec 144172001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 14418
048addec
JD
14419 * fileio.c (file-name-coding-system)
14420 (default-file-name-coding-system): Doc fix (links to referenced
14421 variables added).
60a653f1 14422
048addec 144232001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 14424
048addec
JD
14425 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
14426 Add dummy uses of gcproN variables.
60a653f1 14427
048addec
JD
14428 * category.c (describe_category, describe_category_1)
14429 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
14430 (syms_of_category): Don't defsubr Sdescribe_categories.
60a653f1 14431
048addec 144322001-11-28 Richard M. Stallman <rms@gnu.org>
60a653f1 14433
048addec 14434 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
60a653f1 14435
048addec
JD
14436 * Makefile.in (lispdir): New variable, referring to build dir.
14437 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
60a653f1 14438
048addec 144392001-11-28 Andrew Innes <andrewi@gnu.org>
60a653f1 14440
048addec
JD
14441 * w32menu.c (w32_menu_display_help): Actually add the new argument
14442 OWNER.
60a653f1 14443
048addec 144442001-11-28 Jason Rumney <jasonr@gnu.org>
60a653f1 14445
048addec
JD
14446 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
14447 menu items. From David Ponce <dponce@wanadoo.fr>.
14448 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
14449 conditionally.
f63fd14e 14450 (w32_menu_display_help): New argument OWNER. Rewritten to store a
048addec 14451 help event in the owner frame's keyboard buffer.
60a653f1 14452
048addec
JD
14453 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
14454 (Fx_show_tip): Don't subtract last width from row width.
14455
14456 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
14457 (w32_read_socket): Use EQ to compare frames.
60a653f1 14458
048addec 144592001-11-28 Gerd Moellmann <gerd@gnu.org>
60a653f1 14460
048addec
JD
14461 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
14462 OVERLAPS_P.
60a653f1 14463
048addec 144642001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 14465
048addec
JD
14466 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
14467 `gcpro3' and `gcpro4'.
60a653f1 14468
048addec 14469 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
60a653f1 14470
048addec 144712001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 14472
048addec 14473 * ccl.c: Use AREF and ASIZE.
60a653f1 14474
048addec 144752001-11-27 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 14476
048addec
JD
14477 * lisp.h (run_hook_list_with_args): Remove.
14478 (LIST_END_P): Fix call to wrong_type_argument.
14479 (make_fixnum_or_float): Use EMACS_INT rather than int.
60a653f1 14480
048addec 144812001-11-26 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 14482
048addec
JD
14483 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
14484 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
60a653f1 14485
048addec
JD
14486 * eval.c: Use AREF and ASIZE.
14487 (Ffetch_bytecode): Add the file name to the error message.
60a653f1 14488
048addec
JD
14489 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
14490 which match the end of the file-name.
14491 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
14492 is not a valid env var, but leave it as is instead.
60a653f1 14493
048addec
JD
14494 * keymap.c (access_keymap): Handle t bindings like nil bindings.
14495 Make nil bindings in char-tables transparent.
14496 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
60a653f1 14497
048addec 144982001-11-26 Richard M. Stallman <rms@gnu.org>
60a653f1 14499
048addec
JD
14500 * textprop.c (set_text_properties_1): Allow START, END in either order.
14501 Do nothing if range is empty.
60a653f1 14502
048addec 14503 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
60a653f1 14504
048addec
JD
14505 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
14506 (clean): Not here.
60a653f1 14507
048addec 145082001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 14509
048addec
JD
14510 * textprop.c (set_text_properties_1): Clearly mark that the
14511 interval should not be empty.
60a653f1 14512
048addec
JD
14513 * intervals.c (graft_intervals_into_buffer):
14514 Don't call set_text_properties_1 on an empty interval.
60a653f1 14515
048addec 145162001-11-25 Richard M. Stallman <rms@gnu.org>
60a653f1 14517
048addec 14518 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
60a653f1 14519
048addec
JD
14520 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
14521 don't lose the data in it.
60a653f1 14522
048addec 145232001-11-25 Juanma Barranquero <lektu@terra.es>
60a653f1 14524
048addec 14525 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
60a653f1 14526
c62aec78 14527 * buffer.c (Fkill_buffer): Likewise.
60a653f1 14528
c62aec78 14529 * print.c (temp_output_buffer_setup): Likewise.
60a653f1 14530
048addec 145312001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 14532
048addec 14533 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
60a653f1 14534
048addec 145352001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 14536
048addec
JD
14537 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
14538 Niemitalo <kon@iki.fi>.
60a653f1 14539
048addec 145402001-11-25 Jason Rumney <jasonr@gnu.org>
60a653f1 14541
048addec 14542 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
60a653f1 14543
048addec
JD
14544 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
14545 (Fx_show_tip): Block input during frame creation.
14546 (Fx_show_tip, Fx_hide_tip): Enable.
60a653f1 14547
048addec 145482001-11-24 Richard M. Stallman <rms@gnu.org>
60a653f1 14549
048addec
JD
14550 * lread.c (Fload): Detect recursive load error for more than 3
14551 nestings of the same file.
14552 (Vrecursive_load_depth_limit): Variable deleted.
14553 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
60a653f1 14554
048addec 145552001-11-24 Jason Rumney <jasonr@gnu.org>
60a653f1 14556
048addec
JD
14557 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
14558 mouse position if either left or top is not specified.
60a653f1 14559
048addec
JD
14560 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
14561 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
14562 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
14563 (my_create_tip_window): Assign tip_window.
14564 (x_create_tip_frame): Use same defaults as X.
14565 (compute_tip_xy): Remove unused variable. Use full screen width.
f63fd14e 14566 (Fx_show_tip): Do not double height. Call ShowWindow directly.
60a653f1 14567
048addec
JD
14568 * w32term.c (x_after_update_window_line): Doc fix.
14569 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
14570 frames.
14571 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
60a653f1 14572
048addec
JD
14573 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
14574 for all Windowed systems.
60a653f1 14575
048addec 145762001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 14577
048addec
JD
14578 * msdos.c (IT_clear_screen): If the frame's faces are not yet
14579 realized, use the initial screen colors to clear the screen.
60a653f1 14580
048addec 145812001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 14582
048addec
JD
14583 * textprop.c (Fset_text_properties): Remove unused variables
14584 `unchanged', `prev_changed', `s' and `len'.
60a653f1 14585
048addec
JD
14586 * search.c (Freplace_match): Remove unused variable `inslen'.
14587
14588 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
14589
145902001-11-22 Jason Rumney <jasonr@gnu.org>
14591
14592 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
14593 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
14594 (my_create_tip_window): New function.
14595 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
14596 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
14597
145982001-11-20 Jason Rumney <jasonr@gnu.org>
14599
14600 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
14601 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
14602
14603 * w32fns.c (Vw32_system_coding_system): Remove.
14604 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
14605
146062001-11-19 Stefan Monnier <monnier@cs.yale.edu>
14607
14608 * fileio.c (Fwrite_region): Move choose_write_coding_system to
14609 after build_annotations.
14610
14611 * syntax.c (describe_syntax): Add dummy arg.
14612 (describe_syntax_1): Update call to describe_vector.
14613
14614 * category.c (describe_category): Add dummy arg.
14615 (describe_category_1): Update call to describe_vector.
14616
14617 * keymap.c (Fdescribe_vector): Add `describer' parameter.
14618 (describe_command, describe_translation): Add dummy second param.
14619 (describe_map): Call elt_describer with two arguments.
14620 (describe_vector_princ): Add `fun' parameter.
14621 Call it instead of the hardcoded `princ'.
14622 (describe_vector): Add arg `args'.
14623 Pass it as a new second argument to elt_describer.
60a653f1 14624
048addec 14625 * keymap.h (describe_vector): Update prototype.
60a653f1 14626
048addec
JD
14627 * frame.c: Don't include keymap.h any more.
14628 (keys_of_frame): Remove.
60a653f1 14629
048addec 14630 * lisp.h (keys_of_frame): Remove declaration.
60a653f1 14631
048addec 14632 * emacs.c (main): Don't call `keys_of_frame' any more.
60a653f1 14633
048addec 146342001-11-14 Andreas Schwab <schwab@suse.de>
60a653f1 14635
048addec
JD
14636 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
14637 if defined, 0 otherwise.
14638 (MAP_FAILED): Define if not defined and use it to test mmap failure.
14639 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
60a653f1 14640
048addec 146412001-11-19 Richard M. Stallman <rms@gnu.org>
60a653f1 14642
048addec 14643 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
60a653f1 14644
048addec 146452001-11-18 Jason Rumney <jasonr@gnu.org>
60a653f1 14646
048addec
JD
14647 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
14648 (x_draw_bar_cursor): If the background color of the glyph under
14649 the cursor equals the frame's cursor color, use the glyph's
14650 foreground color for drawing the bar cursor.
14651 (x_after_update_window_line): Clear internal border in different
14652 circumstances.
14653 (w32_set_vertical_scroll_bar): Check for width and height > 0.
14654 (w32_draw_relief_rect): Correct relief by 1 pixel.
14655 (x_set_glyph_string_background_width):
14656 Set extends_to_end_of_line_p if the row's fill_line_p is set and
14657 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
14658 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
14659 if cursor_in_non_selected_windows is false.
14660 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
14661 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
14662 Notice if cursor gets overwritten.
14663 (notice_overwritten_cursor): Renamed from
14664 note_overwritten_text_cursor. Rewritten to take glyph widths
14665 into account, and to take X positions as parameters.
14666 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
14667 around call to x_draw_glyphs.
14668 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
14669 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
14670 color to use for image glyph reliefs.
14671 (x_draw_image_relief): Accept zero tool_bar_button_relief.
14672 (glyph_rect): Remove unused variable `area'.
60a653f1 14673
048addec
JD
14674 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
14675 some items.
14676 (x_set_internal_border_width): Set frame garbaged when window
14677 doesn't exist yet.
14678 (Fx_create_frame): Accept zero tool_bar_button_relief.
14679 (x_clear_image_1, four_corners_best, image_background)
14680 (image_background_transparent): New functions.
14681 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
14682 (gs_format): Add `:background' entry.
14683 (lookup_image): Set IMG's background color if specified.
14684 (pbm_load, xbm_load_image, png_load): Set IMG's background field
14685 when appropriate.
14686 (x_clear_image_1): Reset `background_valid' and
14687 `background_transparent_valid' fields.
14688 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
14689 calculating it here. Set IMG's background_transparent field.
14690 (enum xpm_keyword_index): Add XPM_BACKGROUND.
14691 (enum png_keyword_index): Add PNG_BACKGROUND.
14692 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
14693 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
14694 (enum gif_keyword_index): Add GIF_BACKGROUND.
14695 (enum gs_keyword_index): Add GS_BACKGROUND.
14696 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
14697 Pre-calculate image background color where necessary.
14698 (x_create_x_image_and_pixmap, xbm_load, gs_load):
14699 Use display info's n_cbits entry for screen depth.
14700 (Fx_show_tip): Remove unused variables `buffer', `top',
14701 `left', `max_width' and `max_height'.
60a653f1 14702
048addec 14703 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
60a653f1 14704
048addec 147052001-11-18 Gerd Moellmann <gerd@gnu.org>
60a653f1 14706
048addec 14707 * puresize.h (BASE_PURESIZE): Increase to 750000.
60a653f1 14708
048addec 147092001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 14710
048addec 14711 * frame.c (Fframe_live_p): Doc fix.
60a653f1 14712
048addec 147132001-11-18 Richard M. Stallman <rms@gnu.org>
60a653f1 14714
048addec
JD
14715 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
14716 (message_dolog_marker3): New static variables hold three markers.
14717 (syms_of_xdisp): Initialize and staticpro them.
14718 (message_dolog): Use message_dolog_marker1..3 instead of
14719 allocating markers each time. Unchain them when done.
60a653f1 14720
048addec 147212001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 14722
048addec 14723 * doc.c (Fsnarf_documentation): Doc fix.
60a653f1 14724
048addec 147252001-11-17 Andreas Schwab <schwab@suse.de>
60a653f1 14726
048addec 14727 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
60a653f1 14728
048addec 147292001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 14730
048addec 14731 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
60a653f1 14732
048addec 147332001-11-17 Jason Rumney <jasonr@gnu.org>
60a653f1 14734
048addec 14735 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
60a653f1 14736
048addec 147372001-11-17 Gerd Moellmann <gerd@gnu.org>
60a653f1 14738
048addec
JD
14739 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
14740 with invalid position.
60a653f1 14741
048addec 147422001-11-16 Richard M. Stallman <rms@gnu.org>
60a653f1 14743
048addec 14744 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
60a653f1 14745
048addec
JD
14746 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
14747 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
14748 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
60a653f1 14749
048addec 14750 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
60a653f1 14751
048addec 147522001-11-16 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 14753
048addec
JD
14754 * fileio.c (build_annotations): Split off the tail.
14755 (build_annotations_2): New fun. Extracted from build_annotations.
14756 (Fwrite_region): Split the call to build_annotations into two
14757 calls to build_annotations and build_annotations_2.
077907d4 14758
048addec 147592001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
1756e2fb 14760
048addec
JD
14761 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
14762 clear_waiting_for_input with argument.
1756e2fb 14763
048addec 14764 * xterm.h (x_update_cursor): Remove duplicated prototype.
06e8f738 14765
048addec 14766 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
06e8f738 14767
048addec 14768 * xterm.c (waiting_for_input): Remove unnecessary declaration.
fa336b91 14769
048addec 14770 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
fa336b91 14771
048addec 147722001-11-16 Stefan Monnier <monnier@cs.yale.edu>
fa336b91 14773
048addec
JD
14774 * fileio.c (choose_write_coding_system): New fun, extracted
14775 from Fwrite_region.
14776 (Fwrite_region): Use it.
fa336b91 14777
048addec
JD
14778 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
14779 (funcall_lambda, run_hook_with_args): Make static and add prototype.
14780 (ml_apply, find_handler_clause): Add prototype.
fa336b91 14781
048addec 147822001-11-16 Eli Zaretskii <eliz@gnu.org>
fa336b91 14783
048addec 14784 * config.in: Add #undef HAVE_COFF_H.
fa336b91 14785
048addec
JD
14786 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
14787 Required for ISC 4.1.
fa336b91 14788
048addec 147892001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
fa336b91 14790
048addec
JD
14791 * syswait.h: (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
14792 Andrew Wiseman <a.wiseman@btclick.com>.
fa336b91 14793
048addec 147942001-11-16 Kim F. Storm <storm@cua.dk>
fa336b91 14795
048addec
JD
14796 The following changes are made to clean up the various internal
14797 references to the fringes to actually use the term `fringe' for
14798 them. Previously, they were called `flags areas', `bitmap areas',
14799 `left/right side of windows', or implicitly as `flags' or
14800 `bitmaps':
fa336b91 14801
048addec 14802 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
f63fd14e 14803 Comments fixed. Use renamed symbols.
06e8f738 14804
f63fd14e 14805 * dispnew.c: Comment fix. Use renamed symbols.
06e8f738 14806
048addec
JD
14807 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
14808 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
14809 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
9ce647f4 14810
048addec 14811 * msdos.c: Comment fix.
9ce647f4 14812
048addec 14813 * w32fns.c: Use renamed symbols.
9b784ab8 14814
f63fd14e 14815 * w32term.c: Comment fixes. Use renamed symbols.
048addec
JD
14816 (fringe_bitmap_type): Renamed from bitmap_type.
14817 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
14818 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
14819 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
9f7e52b4 14820
f63fd14e 14821 * w32term.h: Comment fixes. Use renamed symbols.
048addec
JD
14822 (fringes_extra): Renamed from flags_areas_extra.
14823 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
14824 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
14825 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
14826 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
14827 (FRAME_X_LEFT_FRINGE_WIDTH):
14828 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
14829 (FRAME_X_RIGHT_FRINGE_WIDTH):
14830 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
9f7e52b4 14831
048addec 14832 * widget.c: Use renamed symbols.
9f7e52b4 14833
f63fd14e 14834 * window.c: Comment fixes. Use renamed symbols.
048addec 14835 (coordinates-in-window-p): Doc fix.
fa336b91 14836
f63fd14e 14837 * xdisp.c: Comment fixes. Use renamed symbols.
34e5d0af 14838
048addec 14839 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
9b784ab8 14840
048addec 14841 * xfns.c: Use renamed symbols.
89512fcd 14842
f63fd14e 14843 * xterm.c: Comment fixes. Use renamed symbols.
048addec
JD
14844 (fringe_bitmap_type): Renamed from bitmap_type.
14845 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
14846 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
14847 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
89512fcd 14848
f63fd14e 14849 * xterm.h: Comment fixes. Use renamed symbols.
048addec
JD
14850 (fringes_extra): Renamed from flags_areas_extra.
14851 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
14852 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
14853 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
14854 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
14855 (FRAME_X_LEFT_FRINGE_WIDTH):
14856 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
14857 (FRAME_X_RIGHT_FRINGE_WIDTH):
14858 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
14859
148602001-11-15 Jason Rumney <jasonr@gnu.org>
14861
14862 * w32menu.c (add-menu-item): Make help_echo and radio buttons
14863 work for most menu items. From David Ponce
14864 <david.ponce@wanadoo.fr>.
14865
148662001-11-15 Gerd Moellmann <gerd@gnu.org>
14867
14868 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
14869 Some x_set_* function expect to be called even if old and new
14870 value are equal.
14871
14872 * xdisp.c (build_desired_tool_bar_string): Accept zero
14873 tool_bar_button_relief.
14874
14875 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
14876
14877 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
14878
14879 * xterm.c (x_draw_bar_cursor): If the background color of the
14880 glyph under the cursor equals the frame's cursor color, use
14881 the glyph's foreground color for drawing the bar cursor.
14882
14883 * dispnew.c (direct_output_forward_char): Fix character/byte
14884 position comparison.
7d18891d 14885
048addec 148862001-11-15 Miles Bader <miles@gnu.org>
d2936d21 14887
048addec
JD
14888 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
14889 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
14890 Update arguments to find_field.
14891 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
14892 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
14893 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
14894 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
7d18891d 14895
048addec 148962001-11-14 Richard M. Stallman <rms@gnu.org>
7d18891d 14897
048addec 14898 * editfns.c (Fpropertize): Allow call with 1 arg.
7d18891d 14899
048addec
JD
14900 * dispextern.h (image_background, image_background_transparent):
14901 Conditionalize on HAVE_X_WINDOWS.
7d18891d 14902
048addec 149032001-11-13 Richard M. Stallman <rms@gnu.org>
7d18891d 14904
048addec 14905 * print.c (Fprin1_to_string): Doc fix.
7d18891d 14906
048addec 14907 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
7d18891d 14908
048addec 14909 * floatfns.c (Fceiling, Ffloor): Doc fixes.
7d18891d 14910
048addec 14911 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
7d18891d 14912
048addec 14913 * fileio.c (Ffile_accessible_directory_p): Doc fix.
7d18891d 14914
048addec 14915 * eval.c (syms_of_eval): Doc fix.
7d18891d 14916
048addec 14917 * coding.c (syms_of_coding): Doc fix.
7d18891d 14918
048addec 14919 * doc.c (Fsnarf_documentation): Doc fix.
7d18891d 14920
048addec 14921 * dispnew.c (syms_of_display): Doc fix.
9474c847 14922
048addec 14923 * category.c (Fget_unused_category): Doc fix.
9474c847 14924
048addec 14925 * buffer.c (syms_of_buffer): Doc fixes.
e3059a5d 14926
048addec 149272001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
e3059a5d 14928
048addec 14929 * print.c (prin1, print): Doc fix.
e3059a5d 14930
048addec 149312001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
b3700ae7 14932
048addec
JD
14933 * fontset.h: Remove declarations of variables
14934 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
b3700ae7 14935
048addec
JD
14936 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
14937 `Vclip_large_size_font'.
eae936e2 14938
048addec 149392001-11-13 Jason Rumney <jasonr@gnu.org>
4bb962be 14940
048addec 14941 * w32fns.c: Doc fix.
ddb67bdc 14942
048addec 149432001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3467c402 14944
048addec 14945 * xfaces.c (Fface_attributes_as_vector): Doc fix.
3467c402 14946
048addec 14947 * fns.c: Doc fix.
6e1b91d7 14948
048addec 14949 * emacs.c: Doc fix.
1c1d3d69 14950
048addec 14951 * coding.c: Doc fix.
1c1d3d69 14952
048addec
JD
14953 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
14954 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
14955 `new style' [w/`doc:' keyword].
b6f4c7ba 14956
048addec 149572001-11-12 Richard M. Stallman <rms@gnu.org>
b6f4c7ba 14958
048addec
JD
14959 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
14960 LeaveNotify events. Only FocusIn and FocusOut do that now.
14961 (x_display_and_set_cursor): Do display hollow cursors in active
14962 minibuffer windows when they are not selected.
b6f4c7ba 14963
048addec 149642001-11-12 Jason Rumney <jasonr@gnu.org>
a89f435d 14965
048addec 14966 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
f63fd14e
JB
14967 * w32term.c: Change doc-string comments to `new style'
14968 [w/`doc:' keyword]. Doc fixes.
a89f435d 14969
048addec
JD
14970 * w32fns.c: Don't define max.
14971 (Fx_open_connection): Only execute once.
a4cd0cd7 14972
048addec 149732001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
eafb659a 14974
048addec
JD
14975 * ccl.c: Change macros to use do-while block instead of if-else.
14976 Use braces to follow GNU Coding Standards.
eafb659a 14977
048addec 149782001-11-11 Richard M. Stallman <rms@gnu.org>
a4cd0cd7 14979
048addec 14980 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
a4cd0cd7 14981
048addec 14982 * lread.c (read_escape): Use end_of_file_error for reporting eof.
a4cd0cd7 14983
048addec
JD
14984 * insdel.c (replace_range): Use adjust_markers_for_replace
14985 instead of adjust_markers_for_delete and adjust_markers_for_insert.
a4cd0cd7 14986
048addec 14987 * intervals.h: Declare set_text_properties and set_text_properties_1.
a4cd0cd7 14988
048addec
JD
14989 * textprop.c (set_text_properties_1): New subroutine
14990 broken out of set_text_properties.
14991 (set_text_properties): Use set_text_properties_1.
91823618 14992
048addec
JD
14993 * intervals.c (graft_intervals_into_buffer):
14994 Use set_text_properties_1 to clear out properties.
91823618 14995
048addec
JD
14996 * search.c (Freplace_match): Use replace_range to insert
14997 and delete. Don't request property inheritance from
14998 surrounding text.
86928dfb 14999
048addec 150002001-11-10 Jason Rumney <jasonr@gnu.org>
86928dfb 15001
048addec 15002 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
f63fd14e 15003 vertical fonts. Allow them if face name is explicitly specified.
048addec 15004 Do not give up if we find a font that cannot be converted to an xlfd.
40ef1eda 15005
048addec 150062001-11-10 Gerd Moellmann <gerd@gnu.org>
ab8469eb 15007
048addec
JD
15008 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
15009 instead of malloc/free.
a78e0303 15010
048addec 150112001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
40ef1eda 15012
048addec
JD
15013 * xfaces.c (merge_face_vectors): Use braces to follow GNU
15014 Coding Standards.
15015 (Finternal_set_lisp_face_attribute): Likewise.
fabf4a91 15016
048addec 15017 * buffer.c (Fbury_buffer): Likewise.
0c99b139 15018
048addec 15019 * indent.c (current_column_1): Remove unused variable `prev_col'.
0c99b139 15020
048addec
JD
15021 * coding.c (encode_coding): Use precomputed value of `src'.
15022 (encode_coding): Remove unused variable `src_end'.
15023 (code_convert_region): Remove unused variables `count'.
830ddd77 15024
048addec 150252001-11-07 Jason Rumney <jasonr@gnu.org>
830ddd77 15026
048addec
JD
15027 * w32term.c (x_display_and_set_cursor): Do not move system caret
15028 if cursor_glyph is NULL.
55c6d645 15029
048addec 150302001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
55c6d645 15031
048addec 15032 * keymap.c (access_keymap): Fix compilation error.
5de38842 15033
048addec 150342001-11-07 Miles Bader <miles@gnu.org>
7a4564a4 15035
048addec 15036 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
5de38842 15037
048addec 150382001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4fa23df5 15039
048addec
JD
15040 * intervals.c (graft_intervals_into_buffer):
15041 Remove #ifdef'd-out code.
15042 (graft_intervals_into_buffer): Remove unused variable `middle'.
4fa23df5 15043
048addec
JD
15044 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
15045 code (eval-current-buffer).
15046 Change doc-string comments to `new style' [w/`doc:' keyword].
7a6a97d7 15047
048addec 150482001-11-06 Richard M. Stallman <rms@gnu.org>
c191d13c 15049
048addec 15050 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
7a6a97d7 15051
048addec 150522001-11-06 Stefan Monnier <monnier@cs.yale.edu>
44dc78e0 15053
048addec 15054 * lread.c (read1): Fix behavior with nested backquoting.
44dc78e0 15055
048addec
JD
15056 * keyboard.c (make_lispy_event): Check integerness and fix
15057 Lisp_Object/int mixup.
17893c65 15058
048addec 150592001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4d994a79 15060
048addec 15061 * fns.c (copy_hash_table): Remove unused variable `v'.
d5360cc7 15062
048addec
JD
15063 * fontset.c (fontset_font_pattern): Remove unused variable
15064 `family_registry'.
d5360cc7 15065
048addec 15066 * indent.c (current_column_1): Remove unused variable `prev_col'.
d5360cc7 15067
048addec 150682001-11-05 Richard M. Stallman <rms@gnu.org>
96238a5a 15069
048addec 15070 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
96238a5a 15071
048addec
JD
15072 * buffer.c (Fkill_buffer): Don't delete auto save file
15073 if buffer is modified.
d9d54213 15074
048addec 150752001-11-05 Andrew Innes <andrewi@gnu.org>
d9d54213 15076
048addec
JD
15077 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
15078 CHECK_NUMBER_CDR.
b116830b 15079
048addec 150802001-11-05 Richard M. Stallman <rms@gnu.org>
b116830b 15081
048addec 15082 * unexelf.c (unexec): Minor changes; clean up comments.
3297e2a1 15083
048addec 150842001-11-05 Sam Steingold <sds@gnu.org>
3297e2a1 15085
048addec 15086 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
6fb8339c 15087
048addec 150882001-11-05 Andreas Schwab <schwab@suse.de>
6fb8339c 15089
048addec 15090 * sound.c (sound_perror): Save errno from being clobbered.
7dd73b78 15091
048addec 150922001-11-05 Dale Hagglund <rdh@yottayotta.com>
7dd73b78 15093
048addec
JD
15094 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
15095 the program image directly.
982f6c7e 15096
048addec 150972001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d31053f9 15098
048addec 15099 * buffer.h (Fbuffer_local_value): Add prototype.
d31053f9 15100
048addec 151012001-11-04 Richard M. Stallman <rms@gnu.org>
d31053f9 15102
048addec
JD
15103 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
15104 and CHECK_BUFFER.
d31053f9 15105
048addec
JD
15106 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
15107 (record_char): Likewise.
d31053f9 15108
048addec
JD
15109 * keyboard.c (make_lispy_event): Don't insist a drag event must
15110 move to a different buffer position. Instead, check for moving at
15111 least double_click_fuzz.
982f6c7e 15112
048addec 15113 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
830047fd 15114
048addec 15115 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
b116830b 15116
048addec
JD
15117 * indent.c (current_column_1, Fmove_to_column): Separate the code
15118 for display-table glyphs from the code for buffer text, to fix
15119 bugs in the former.
830047fd 15120
048addec 151212001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
b116830b 15122
048addec
JD
15123 * buffer.c (Fbuffer_local_value): New function.
15124 (syms_of_buffer): Defsubr it.
2df5238c 15125
048addec
JD
15126 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
15127 value of `cursor-in-non-selected-windows'.
4e397688 15128
048addec
JD
15129 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
15130 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
15131 (syms_of_xdisp): Initialize it.
48b0f3ae 15132
048addec 151332001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2df5238c 15134
048addec 15135 * xfns.c (Fx_create_frame): Doc fix.
3ecaf7e5 15136
048addec
JD
15137 * coding.c: Change doc-string comments to `new style' [w/`doc:'
15138 keyword].
3ecaf7e5 15139
048addec
JD
15140 * eval.c (top_level_value, top_level_set): Remove commented and
15141 #ifdef'd-out code.
15142 (Fdefvar): Fix usage in doc-string.
3ecaf7e5 15143
048addec 151442001-11-03 Richard M. Stallman <rms@gnu.org>
3ecaf7e5 15145
048addec 15146 * xfns.c: Include unistd.h, if it exists.
8db2e33b 15147
048addec 15148 * editfns.c: Move the include of ctype.h after unistd.h.
8db2e33b 15149
048addec 15150 * gmalloc.c: Test BROKEN_PROTOTYPES.
aed29b97 15151
048addec 151522001-11-03 Ken Raeburn <raeburn@gnu.org>
aed29b97 15153
048addec
JD
15154 * lisp.h (CHECK_STRING_CAR): New macro.
15155 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
15156 treating XCAR and XCDR as lvalues.
15157 (openp): Use CHECK_STRING_CAR.
15158 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
aed29b97 15159
048addec 151602001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
6cb16f95 15161
048addec
JD
15162 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
15163 (SIGMASKTYPE): Define.
1b1acc13 15164
048addec 15165 * syssignal.h (sigunblock): Don't define if already defined.
020f9b38 15166
048addec 151672001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
020f9b38 15168
048addec
JD
15169 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
15170 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
15171 Fix typos in comments.
6cb16f95 15172
048addec
JD
15173 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
15174 and #ifdef'd-out code.
15175 Fix and reindent comments.
6cb16f95 15176
048addec 15177 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
6cb16f95 15178
048addec
JD
15179 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
15180 argument `i' in macros.
6cb16f95 15181
048addec
JD
15182 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
15183 `i' in macros.
7e9d3c2f 15184
048addec
JD
15185 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
15186 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
15187 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
15188 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
15189 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
15190 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
15191 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
15192 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
15193 in macros.
7e9d3c2f 15194
048addec
JD
15195 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
15196 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
15197 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
15198 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
15199 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
15200 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
15201 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
15202 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
15203 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
15204 (remove unused second argument).
7e9d3c2f 15205
048addec 152062001-11-02 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 15207
048addec
JD
15208 * syntax.c (describe_syntax): New wrapper.
15209 (Finternal_describe_syntax_value): Rename from describe_syntax.
15210 Don't insert space at front and \n at the end.
15211 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
e6bff182 15212
048addec
JD
15213 * regex.c (re_wctype): Try to fix some warnings.
15214 (regcomp, regexec): Don't forget the __restrict.
9ba48103 15215
048addec 152162001-11-02 Richard M. Stallman <rms@gnu.org>
9ba48103 15217
048addec 15218 * textprop.c (Fget_char_property): Doc fix.
9ba48103 15219
048addec 152202001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9ba48103 15221
048addec 15222 * process.c (Fstart_process): Add usage to doc-string.
c22e59e1 15223
048addec 15224 * data.c (Fsetq_default): Ditto.
c22e59e1 15225
048addec 15226 * callint.c (Finteractive): Ditto.
9271ed2c 15227
048addec 152282001-11-01 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 15229
048addec
JD
15230 * macros.c: Don't include keymap.h any more.
15231
152322001-11-01 Richard M. Stallman <rms@gnu.org>
15233
15234 * data.c (Fmake_local_variable): Doc fix.
15235
15236 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
15237 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
e6bff182 15238
048addec 15239 * keymap.c (Fdescribe_buffer_bindings): Print character property
9271ed2c
RS
15240 bindings along with or instead of the buffer local map.
15241 Make the overriding maps override what they should.
15242
f00691a3 152432001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8b8bd9c6
PJ
15244
15245 * window.c (grow_mini_window): Fix typo in comment.
15246
27188d11
GM
152472001-11-01 Gerd Moellmann <gerd@gnu.org>
15248
7b49b9d2
GM
15249 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
15250 (XTset_vertical_scroll_bar): Likewise.
15251
43f7c3ea
GM
15252 * xfns.c (x_build_heuristic_mask): Use four_corners_best
15253 instead of IMAGE_BACKGROUND.
c22e59e1 15254
b350c2e5
GM
15255 * xfns.c (four_corners_best): Reindent.
15256
c22e59e1 15257 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
27188d11
GM
15258 Handle :box so that it is possible to specify sexprs.
15259
bf00d461
EZ
152602001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
15261
15262 * s/hpux11.h: New file.
15263
f00691a3 152642001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e10df59 15265
2b209b97
PJ
15266 * emacs.c (USAGE1): Show command line option --no-window-system
15267 instead of --no-windows in usage.
15268 (standard_args): Rename --no-windows to --no-window-system.
15269 (bug_reporting_address): Follow Emacs coding conventions.
15270
9dbc9081
PJ
15271 * eval.c (Fcommandp): Doc fix.
15272 Change doc-string comments to `new style' [w/`doc:' keyword].
15273
4e10df59
PJ
15274 * frame.c (Fframe_live_p): Doc fix.
15275
15276 * buffer.c (selective-display-ellipses): Doc fix.
15277
dd387b25
GM
152782001-10-31 Gerd Moellmann <gerd@gnu.org>
15279
fe957e65
GM
15280 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
15281
dd387b25
GM
15282 * xfaces.c (realize_x_face): If C is not a single-byte character,
15283 set the face's colors_copied_bitwise_p instead of the defaulted_p
15284 members which have a different meaning.
15285 (free_face_colors): Do nothing for a face whose colors have been
15286 copied bitwise.
15287
c22e59e1 15288 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
dd387b25 15289
f00691a3 152902001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2e1280f8 15291
687784e8
PJ
15292 * marker.c, mocklisp.c: Change doc-string comments to `new style'
15293 [w/`doc:' keyword].
2e1280f8 15294
b9d9a9b9
GM
152952001-10-31 Gerd Moellmann <gerd@gnu.org>
15296
15297 * fns.c (require_unwind): Return Lisp_Object.
15298
f00691a3 152992001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
48400103 15300
fa1361cb
PJ
15301 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
15302 (last-input-char): Revert doc-string to be the same as the
15303 doc-string of `last-input-event'.
15304
6c465a15 15305 * xdisp.c: Fix typos in comments.
48400103 15306
eafa3196
GM
153072001-10-31 Gerd Moellmann <gerd@gnu.org>
15308
15309 * window.c (grow_mini_window): Handle case that the root
15310 window is already smaller than the nominal mininum height.
15311
747d3f2a
SM
153122001-10-30 Stefan Monnier <monnier@cs.yale.edu>
15313
bf9bb76f
SM
15314 * emacs.c (main): Don't call keys_of_macros any more.
15315
15316 * lisp.h (keys_of_macros): Remove.
15317
15318 * macros.c (keys_of_macros): Remove.
15319
747d3f2a
SM
15320 * xfaces.c (Fface_attribute_relative_p): Declare args.
15321
5e905a57
JR
153222001-10-30 Jason Rumney <jasonr@gnu.org>
15323
15324 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
15325 (enum_font_cb2): Ignore fonts with vertical orientation.
15326
3a426197
RS
153272001-10-30 Richard M. Stallman <rms@gnu.org>
15328
15329 * keyboard.c (Finput_pending_p): Doc fix.
15330
a742d646
GM
153312001-10-30 Gerd Moellmann <gerd@gnu.org>
15332
259cf6bc
GM
15333 * xterm.c (x_after_update_window_line): Don't run the code
15334 clearing in borders for rows whose visible height is 0.
15335
3f99f948
GM
15336 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
15337 resized_p flag is set. If not set, use the much less flickering
15338 method previously used.
15339
15340 * dispnew.c (change_frame_size_1): Set frame's resized_p.
15341
15342 * frame.h (struct frame) <resized_p>: New member.
15343
b4a3be43
GM
15344 * lread.c (to_multibyte): Ensure read_buffer is at least twice
15345 as large as the number of bytes to convert.
747d3f2a 15346
a742d646
GM
15347 * lread.c (to_multibyte): New function.
15348 (read1): Use it.
15349
cacbb9e9
EZ
153502001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
15351
15352 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
15353
99cb6b2f
GM
153542001-10-30 Gerd Moellmann <gerd@gnu.org>
15355
327f42ee 15356 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
747d3f2a
SM
15357 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
15358 if the row's fill_line_p is set and drawing the last glyph with
15359 DRAW_IMAGE_{RAISED,SUNKEN}.
327f42ee 15360
99cb6b2f
GM
15361 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
15362
8e8223e2
SM
153632001-10-29 Stefan Monnier <monnier@cs.yale.edu>
15364
15365 * xmenu.c: Include coding.h and charset.h.
15366 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
15367 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
15368 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
15369 Explicitly set wv->help. Use `TRUE' rather than `True'.
15370 (menu_help_callback): Use empty_string.
15371
15372 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
15373 (Fx_popup_dialog): Explicitly init f.
15374 (w32_menu_display_help): Use empty_string.
15375
4d083a8f
RS
153762001-10-29 Richard M. Stallman <rms@gnu.org>
15377
b2304472
RS
15378 * fns.c (Frequire): Detect recursive try to require the same
15379 feature 3 or more levels deep, and get error.
15380 (require_unwind): New subroutine.
15381 (require_nesting_list): New variable.
15382 (syms_of_fns): Init and staticpro it.
15383
4d083a8f
RS
15384 * print.c (print_object): Clarify indication of insertion type.
15385
2fe41216
EZ
153862001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
15387
90480000
EZ
15388 * coding.c (syms_of_coding): Document that locale-coding-system is
15389 used for decoding input on X.
15390
2fe41216
EZ
15391 * window.c (Fscroll_left, Fscroll_right): Doc fix.
15392
f00691a3 153932001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
74e79967
PJ
15394
15395 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
15396 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
15397
60ebcfe8
GM
153982001-10-29 Gerd Moellmann <gerd@gnu.org>
15399
9a7bdceb
GM
15400 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
15401 use NO_CURSOR if cursor_in_non_selected_windows is false.
15402
3f08fcd2
GM
15403 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
15404 the slant attribute if FRAME is t.
15405
0ccfdad2
GM
15406 * xfns.c (x_set_internal_border_width): Set frame garbaged
15407 when X window doesn't exist yet.
15408
ef253080
GM
15409 * xterm.c (x_after_update_window_line): Clear internal border
15410 in different circumstances.
b116830b 15411
60ebcfe8
GM
15412 * xterm.c (XTread_socket) <KeyPress>: Don't use
15413 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
15414 <handa@etl.go.jp>.
15415
73d25f9c
EZ
154162001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
15417
15418 * m/ibms390.h: New file. From Adam Thornton
15419 <athornton@sinenomine.net>.
15420
cac1daf0
GM
154212001-10-28 Gerd Moellmann <gerd@gnu.org>
15422
053b3256 15423 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
b116830b 15424
cac1daf0
GM
15425 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
15426 a loop counter.
15427
f00691a3 154282001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13b1a09c 15429
f9711de4 15430 * emacs.c: Use argv[0] instead of "emacs" when -t was specified.
186486eb 15431
4707d2d0
PJ
15432 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
15433 keyword].
15434 Fix typos in comments.
b116830b 15435
d883731c
PJ
15436 * emacs.c (bug_reporting_address): New function.
15437 Use it when displaying usage message.
15438
04012254
PJ
15439 * minibuf.c (read_minibuf): Remove unused external declaration of
15440 variable `Qread_only'.
15441
13b1a09c
PJ
15442 * keymap.c (access_keymap): Remove unused variable `charset'.
15443
5bbf4378
MB
154442001-10-28 Miles Bader <miles@gnu.org>
15445
15446 * xfaces.c (merge_face_heights): Handle TO being relative as well.
15447 Remove #ifdef'd-out code.
15448 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
15449 (syms_of_xfaces): Initialize them.
15450
1ce1e4ee
JR
154512001-10-27 Jason Rumney <jasonr@gnu.org>
15452
15453 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
15454 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
15455 position using the system caret.
15456
15457 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
15458 (w32_system_caret_height, w32_system_caret_x)
15459 (w32_system_caret_y): New variables for tracking system caret.
15460 (w32_initialize): Initialize them.
c2d53558 15461 (x_display_and_set_cursor): Make system caret follow the active cursor.
1ce1e4ee 15462
c2d53558
SM
15463 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
15464 New messages types.
1ce1e4ee
JR
15465
15466 * w32term.c (note_mouse_highlight): Clear old help_echo.
15467
f00691a3 154682001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e30ce42 15469
bb4600a4
PJ
15470 * xterm.c: Fix typo in a comment.
15471
7db35a48
PJ
15472 * emacs.c: Fix typos in comments.
15473 Remove unnecessary spaces.
15474 Change doc-string comments to `new style' [w/`doc:' keyword].
15475 (USAGE2): Fix typos in usage string.
15476
a7248e4f
PJ
15477 * xterm.c: Fix typo in a comment.
15478
4e30ce42
PJ
15479 * lisp.h: (gdb_lisp_params): Remove code in #if 0 which is now in
15480 emacs.c.
15481
62725a92
GM
154822001-10-27 Gerd Moellmann <gerd@gnu.org>
15483
798dbe1f 15484 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
c2d53558 15485 instead of 1/2 line_height in the heuristic for skipping
798dbe1f
GM
15486 farther backward when target_y was not reached.
15487
62725a92
GM
15488 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
15489 Display errno only if non-zero.
15490 (sound_warning): New function.
15491 (vox_configure): Don't treat failing to set sample rate as error.
15492 (various places): Improve error messages.
15493
d4e34d24
EZ
154942001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
15495
944e6f60
EZ
15496 * fileio.c (Faccess_file): Run the argument filename through
15497 Fexpand_file_name, before using it.
15498
d4e34d24
EZ
15499 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
15500 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
15501
38d2af0c
GM
155022001-10-26 Gerd Moellmann <gerd@gnu.org>
15503
da80a8d5
GM
15504 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
15505
38d2af0c
GM
15506 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
15507 Fix clearing in the case of scroll bars on the right.
c2d53558 15508
45de4a6f 155092001-10-26 Juanma Barranquero <lektu@terra.es>
56f508dd
EZ
15510
15511 * w32gui.h (XImage): Add a dummy typedef.
15512
fbd5ceb2
GM
155132001-10-26 Gerd Moellmann <gerd@gnu.org>
15514
c2d53558 15515 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
fbd5ceb2 15516
b23236fb
EZ
155172001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
15518
15519 * frame.c (Fframe_parameter): Fix last change.
15520
5d991fc4
EZ
15521 * fileio.c: Revert last change (which removed old commented-out
15522 version of expand-file-name). Add a comment that explains why
15523 this old version should not be removed.
15524
879eadc3
GM
155252001-10-25 Gerd Moellmann <gerd@gnu.org>
15526
75700ff2
GM
15527 * frame.c (Fframe_parameter): Fix a bug whereby some
15528 ``artificial'' frame parameters, like `minibuffer' were not
15529 obtained by calling Fframe_parameters.
15530
dfe92a6a
GM
15531 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
15532 cursor differently.
15533
879eadc3
GM
15534 * xdisp.c (move_it_vertically_backward): Compute line height
15535 differently. Add heuristic to try to be more compatible to 20.x.
15536
e1010ebe
SM
155372001-10-25 Stefan Monnier <monnier@cs.yale.edu>
15538
d73a471b
SM
15539 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
15540
d6da5a06
GM
15541 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
15542 boolean.
e1010ebe 15543
f66bd220
MB
155442001-10-25 Miles Bader <miles@gnu.org>
15545
15546 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
15547 BG is a pointer to a structure, not a structure.
15548 (gif_format, png_format): Add missing commas.
15549
d436d538
RS
155502001-10-24 Richard M. Stallman <rms@gnu.org>
15551
15552 * xfaces.c (Fface_attributes_as_vector): New function.
c2d53558 15553 (syms_of_xfaces): Defsubr it.
d436d538 15554
f00691a3 155552001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
075c507b
PJ
15556
15557 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
15558 variable `area'.
15559
f00691a3 155602001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d492b584 15561
c2d53558 15562 * search.c (scan_newline): Remove unused variable `selective_display'.
d492b584 15563
e2a57b34
MB
155642001-10-25 Miles Bader <miles@gnu.org>
15565
15566 * dispextern.h (struct image): Add `background',
15567 `background_valid', and `background_transparent' fields.
15568 (image_background, image_background_transparent): New declarations.
15569 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
15570 * xfns.c (image_background, image_background_transparent)
15571 (four_corners_best): New functions.
c2d53558 15572 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
e2a57b34
MB
15573 (gs_format): Add `:background' entry.
15574 (lookup_image): Set IMG's background color if specified.
15575 (pbm_load, xbm_load_image, png_load): Set IMG's background field
15576 when appropriate.
15577 (x_clear_image_1): Reset `background_valid' and
15578 `background_transparent_valid' fields.
15579 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
15580 calculating it here. Set IMG's background_transparent field.
15581 (enum xpm_keyword_index): Add XPM_BACKGROUND.
15582 (enum png_keyword_index): Add PNG_BACKGROUND.
15583 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
15584 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
15585 (enum gif_keyword_index): Add GIF_BACKGROUND.
15586 (enum gs_keyword_index): Add GS_BACKGROUND.
c2d53558 15587 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
e2a57b34
MB
15588 Pre-calculate image background color where necessary.
15589 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
15590 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
15591 color to use for image glyph reliefs.
15592
b547b6e8
GM
155932001-10-24 Gerd Moellmann <gerd@gnu.org>
15594
d9e3b8c6
GM
15595 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
15596 in full-width rows.
c2d53558 15597
b547b6e8
GM
15598 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
15599 Fix clearing of area not covered by scroll bar.
15600
f00691a3 156012001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2beb36f9
PJ
15602
15603 * xterm.c: (x_insert_glyphs): Remove unused variables `real_end'
15604 and `real_start'.
c2d53558 15605 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
2beb36f9
PJ
15606 (glyph_rect): Remove unused variable `area'.
15607
76cb5e06
GM
156082001-10-24 Gerd Moellmann <gerd@gnu.org>
15609
bdbdebff 15610 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
c2d53558
SM
15611
15612 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
15613 (row_containing_pos): Take additional argument DY.
15614 Treat rows ending in middle of char differently.
62e33982
GM
15615 (display_line): Handle tabs on window systems differently.
15616
15617 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
15618 with additional argument.
15619
15620 * dispextern.h (row_containing_pos): Adjust prototype.
15621
76cb5e06
GM
15622 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
15623 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
15624 (try_window_id, try_window_reusing_current_matrix)
15625 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
6c465a15 15626 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
76cb5e06 15627
f00691a3 156282001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
996fee11 15629
c9e60620
PJ
15630 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
15631 gnuemacs).
15632 (HAVE_BOXES): Fix typo in comment.
15633 (push_menu_pane): Fix typo in comment.
15634
3b552d56
PJ
15635 * xdisp.c: (display_prop_string_p): Remove unused local declaration
15636 of `Qwhen'.
15637 (single_display_prop_string_p): Remove unused local declarations
15638 of `Qwhen' and `Qmargin'.
15639 (string_buffer_position): Remove unused variable `around'.
15640 (store_frame_title): Remove unused variable `width'.
15641
15c565ac
PJ
15642 * window.c: Don't define max.
15643 (coordinates_in_window): Remove unused variable `uy'.
15644
a8818eb9
PJ
15645 * widget.c: Don't define max.
15646
996fee11
PJ
15647 * process.c: Don't define max.
15648 (create_process): Remove unused variable `buffer'.
15649
496e1a5b
GM
156502001-10-23 Gerd Moellmann <gerd@gnu.org>
15651
c2d53558 15652 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
496e1a5b 15653
5905ae8b
EZ
156542001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
15655
15656 * xfaces.c (Finternal_set_lisp_face_attribute)
15657 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
15658 frame is on a windowed display.
15659
24db49fb
GM
156602001-10-23 Gerd Moellmann <gerd@gnu.org>
15661
c2d53558
SM
15662 * dispnew.c (sync_window_with_frame_matrix_rows):
15663 Fix handling of windows which aren't full-width, fix handling
c51488cd
GM
15664 of marginal areas.
15665
c2d53558 15666 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
24db49fb 15667
f0487f05
EZ
156682001-10-23 Andreas Schwab <schwab@suse.de>
15669
15670 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
15671 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
15672
f0a48a01
GM
156732001-10-23 Gerd Moellmann <gerd@gnu.org>
15674
c2d53558 15675 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
f0a48a01
GM
15676 REAL_END. Notice if cursor gets overwritten.
15677 (notice_overwritten_cursor): Take X positions as parameters.
15678 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
15679 around call to x_draw_glyphs.
15680
f00691a3 156812001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
a50a10a0 15682
fc11dff0
PJ
15683 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
15684 instead of C) and usage.
a50a10a0 15685
fc11dff0
PJ
15686 * editfns.c (char-to-string): Fix argument names (use CHAR instead
15687 of C) and usage.
a50a10a0
PJ
15688
15689 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
15690 `left', `max_width' and `max_height'.
15691
8738febd
GM
156922001-10-23 Gerd Moellmann <gerd@gnu.org>
15693
15694 * xdisp.c (display_line): For a tab continued to the next line,
15695 set row's ends_in_middle_of_char_p.
15696
653c329b
GM
156972001-10-22 Gerd Moellmann <gerd@gnu.org>
15698
15699 * xdisp.c (display_line): Fix computation of continuation lines
15700 width for TABs.
15701
f00691a3 157022001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
f958c5ac 15703
7ba51063
PJ
15704 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
15705 `Qlaplace'.
15706
f958c5ac
PJ
15707 * fileio.c: Remove unused code.
15708
eb360291
MB
157092001-10-22 Miles Bader <miles@gnu.org>
15710
15711 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
15712 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
15713 Remove `DOC_STRINGS_IN_COMMENTS' cases.
15714
98515cf0
JR
157152001-10-21 Jason Rumney <jasonr@gnu.org>
15716
15717 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
15718
93026d88
EZ
157192001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
15720
15721 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
15722 (Finsert_string): Avoid the multi-line string literals warning.
15723
c9a95b79
MB
157242001-10-22 Miles Bader <miles@gnu.org>
15725
15726 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
15727 (Fdocumentation): Don't use it.
15728 (syms_of_doc): Don't initialize it.
15729
15730 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
15731 * print.c (Fwith_output_to_temp_buffer): Likewise.
15732 * window.c (Fsave_window_excursion): Likewise.
c2d53558 15733 * editfns.c (Fsave_excursion, Fsave_current_buffer)
c9a95b79 15734 (Fsave_restriction): Likewise.
c2d53558
SM
15735 * eval.c (Frun_hooks, Frun_hook_with_args)
15736 (Frun_hook_with_args_until_failure)
15737 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
15738 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
15739 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
c9a95b79
MB
15740 (Funwind_protect, Fcondition_case): Likewise.
15741 * coding.c (Ffind_operation_coding_system): Likewise.
15742 * keyboard.c (Ftrack_mouse): Likewise.
15743
a3b10252
MB
157442001-10-21 Miles Bader <miles@gnu.org>
15745
c2d53558 15746 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
a3b10252
MB
15747 (Fmake_hash_table): Add usage: string to doc string.
15748 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
c2d53558 15749 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
a3b10252
MB
15750 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
15751 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
15752 (Fml_prefix_argument_loop): Likewise.
15753
f00691a3 157542001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c6f73eec 15755
c2d53558 15756 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
888ebd13 15757
c6f73eec
PJ
15758 * sysdep.c (init_sys_modes): Change doc-string comments to `new
15759 style' [w/`doc:' keyword].
15760
15761 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
15762 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
15763 comments to `new style' [w/`doc:' keyword].
15764
3cf3436e
JR
157652001-10-21 Jason Rumney <jasonr@gnu.org>
15766
15767 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
15768
c169b8f1
JR
15769 * w32term.c (remember_mouse_glyph): New function.
15770 (w32_mouse_position): Use it.
15771 (note_mouse_movement): If the mouse moved off the glyph, remember
15772 its new position.
c2d53558 15773
4fdd691b
JR
15774 * w32term.h (struct w32_output): Correct spelling of x_compatible.
15775 (w32_display_info): Add mouse_face_overlay.
15776
c169b8f1
JR
15777 * w32term.c (notice_overwritten_cursor): Renamed from
15778 note_overwritten_text_cursor. Rewritten to take glyph widths into
15779 account.
15780 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
15781 (fast_find_string_pos): New function.
15782 (fast_find_position): Return the correct vpos. Add parameter
15783 STOP. In the final row, stop before glyphs having STOP as object.
15784 Don't consider glyphs that are not from a buffer.
15785 (fast_find_position) [0]: Add a presumably more correct version
15786 for after 21.1.
15787 (expose_window_tree, expose_frame): Don't compute intersections here.
15788 (expose_window): Do it here instead.
15789 (expose_window_tree, expose_window, expose_line): Return 1 when
15790 overwriting mouse-face.
15791 (expose_window): If W is the window currently being updated, mark
15792 the frame garbaged.
15793 (expose_frame): If mouse-face was overwritten, redo it.
15794 (x_use_underline_position_properties): New variable.
15795 (syms_of_xterm): DEFVAR_BOOL it.
15796 (x_draw_glyph_string): Add comment to use it in future.
15797 (x_draw_glyph_string): Restore clipping after drawing box.
15798 Fix a computation of the underline position.
15799 (w32_get_glyph_string_clip_rect): Minor cleanup.
15800 (x_fill_stretch_glyph_string): Remove an assertion.
15801 (x_produce_glyphs): Don't convert multibyte characters
15802 to unibyte characters in unibyte buffers.
15803 (cursor_in_mouse_face_p): New function.
15804 (x_draw_stretch_glyph_string): Use it to choose a different GC
15805 when drawing a cursor within highlighted text. Don't draw
15806 background again if it has already been drawn.
15807 (x_draw_glyph_string_box): Don't draw a full-width
15808 box just because the glyph row's full_width_p flag is set.
15809 (x_draw_glyphs): Fix computation of rightmost x for
15810 full-width rows.
15811 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
15812 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
f63fd14e 15813 change bottom shadow accordingly. Some cleanup.
c169b8f1
JR
15814 (x_update_window_end): Handle overwritten mouse face
15815 also for tool bar windows.
15816 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
15817 DRAW is DRAW_IMAGE_RAISED.
15818 (clear_mouse_face): Return 1 if text with mouse face was
2c568af5
SM
15819 actually redrawn. Make the function static.
15820 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
c169b8f1
JR
15821 optimize away highlighting if we pass over that same overlay again.
15822 (note_mouse_highlight): Call mouse_face_overlay_overlaps
15823 to detect a case where we have to highlight a different region
15824 despite not having left the currently highlighted region.
15825 Set mouse_face_overlay in the x_display_info. Avoid changing the
15826 mouse pointer shape when show_mouse_face has already done it, or
15827 there is no need. Handle mouse-face and help-echo in strings.
15828 (glyph_rect): New function.
15829 (w32_mouse_position): Use it to raise the threshold for mouse
15830 movement event generation.
15831 (w32_initialize_display_info): Initialize the x_display_info's
15832 mouse_face_overlay.
15833 (w32_set_vertical_scroll_bar): Don't clear a zero height
15834 or width area.
15835 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
15836 a widget to zero height.
15837
3cf3436e 15838 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
4fdd691b 15839 Protect unibyte strings created by replacing their multibyte
3cf3436e
JR
15840 equivalents in menu_items.
15841 (w32_menu_show): Don't overwrite an item's name with its key
15842 description in case the description is a multibyte string.
15843 (single_submenu): Some cleanup.
15844
15845 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
15846 (postprocess_image): New function.
15847 (lookup_image): Call it for all image types except PostScript.
15848 (x_kill_gs_process): Call postprocess_image.
15849 (tiff_error_handler, tiff_warning_handler): New functions.
15850 (tiff_load): Install them as handlers.
15851 (x_kill_gs_process): Recognize if someone has cleared the image
15852 cache under us.
15853 (valid_image_p): Protect better against invalid image
15854 specifications. Previous code could signal an error.
15855 (Fx_hide_tip, Fshow_tip): Doc fix.
15856 (Fv_max_tooltip_size): New variable.
15857 (syns_of_xfns): DEFVAR_LISP it.
15858 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
f63fd14e 15859 window buffer to *tip* right after creating the frame. Set frame's
3cf3436e
JR
15860 window_width. Use a maximum tooltip size specified by
15861 Vx_max_tooltip_size, if that has valid contents.
15862 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
15863 Make sure the tooltip is completely visible.
15864 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
15865 (Fx_create_frame): Adjust the frame's height for presence
15866 of the tool bar before calling x_figure_window_size.
15867 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
15868 when the window gets smaller.
15869 (x_set_foreground_color): Set frame's cursor_pixel.
15870 (x_set_foreground_color, x_set_background_color): Cleaned up.
15871 (x_set_font): Handle case of x_new_fontset returning the same name
15872 as before, although there was a change in fontsets.
15873
386ca361
MB
158742001-10-21 Miles Bader <miles@gnu.org>
15875
c2d53558 15876 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
386ca361
MB
15877 (Flogxor): Add usage: string to doc string.
15878 * charset.c (Fstring): Likewise.
15879 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
15880 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
15881
f00691a3 158822001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14ff1ee0 15883
03be2694
PJ
15884 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
15885
15886 * alloc.c: Reindent DEFUNs with doc: keywords.
15887
15888 * abbrev.c (Finsert_abbrev_table_description): Reindent.
15889
14ff1ee0
PJ
15890 * frame.c: Change doc-string comments to `new style' [w/`doc:'
15891 keyword].
15892
2f147815 15893See ChangeLog.9 for earlier changes.
6922b018
KH
15894
15895;; Local Variables:
49b3bd82 15896;; coding: iso-2022-7bit
6922b018 15897;; End:
2a34a036 15898
2f147815 15899 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
2a34a036
GM
15900 Copying and distribution of this file, with or without modification,
15901 are permitted provided the copyright notice and this notice are preserved.
ab5796a9
MB
15902
15903;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4