Add coding: tag and set it to iso-2022-7bit.
[bpt/emacs.git] / src / ChangeLog
CommitLineData
d0636839
KS
12005-04-19 Kim F. Storm <storm@cua.dk>
2
5827e9d4
KS
3 * xdisp.c (handle_stop): Set saved_face_id to current face if
4 selective_display_ellipsis_p so ellipsis will be shown in same
5 face as preceding text.
6 (setup_for_ellipsis): Don't set saved_face_id here.
7 (next_element_from_display_vector): Default to saved_face_id.
8
d0636839
KS
9 * fns.c (Fsafe_get): New function.
10 (syms_of_fns): Defsubr it.
11
12 * lisp.h (Fsafe_get): EXFUN it.
13
14 * xfaces.c (resolve_face_name): Use Fsafe_get to avoid redisplay
15 loops in case of bad face property lists. Limit number of face
16 alias lookups to 10 (in case of face alias loops).
17
e5c78c9d
KS
182005-04-18 Kim F. Storm <storm@cua.dk>
19
20 * dispextern.h (struct glyph_row): New member overlay_arrow_bitmap.
21 It replaces the corresponding member from struct window, as a
22 window may now show multiple overlay arrows.
23 Remove member overlay_arrow_p, superseeded by overlay_arrow_bitmap.
24
25 * dispnew.c (row_equal_p, update_window_line, scrolling_window):
26 Compare overlay_arrow_bitmap than overlay_arrow_p members.
27
28 * fringe.c (draw_fringe_bitmap): Use overlay_arrow_bitmap from row
29 rather than from window.
30 (update_window_fringes): Compare overlay_arrow_bitmap rather than
31 overlay_arrow_p members.
32 (Ffringe_bitmaps_at_pos): Return fringe overlay_arrow_bitmap name
33 if not default.
34
35 * window.h (struct window): Remove member overlay_arrow_bitmap.
36
37 * window.c (make_window): Don't initialize overlay_arrow_bitmap.
38
39 * xdisp.c (overlay_arrow_string_or_property): Remove PBITMAP arg.
40 Calls changed. Don't check for overlay-arrow-bitmap property here.
41 (overlay_arrow_at_row): Remove PBITMAP arg. Instead, if left
42 fringe is present, return Lisp integer for bitmap (or -1 for default).
43 Fix value of overlay-arrow-bitmap property to be a symbol, use
44 lookup_fringe_bitmap to parse it.
45 (display_line): Change call to overlay_arrow_at_row. Store integer
46 return value as overlay bitmap in row rather than window.
47 Only show overlay arrow if row displays text, or if no other overlay
48 arrow is seen in window (if overlay marker is at point-max).
49
7d603e3f
TTN
502005-04-18 Thien-Thi Nguyen <ttn@gnu.org>
51
52 * xfaces.c (realize_x_face) [!HAVE_WINDOW_SYSTEM]: Return NULL.
53
9942fa0c
LK
542005-04-18 Lute Kamstra <lute@gnu.org>
55
56 * lread.c (Vloads_in_progress): Static.
57 * fns.c (Vloads_in_progress): Remove extern.
58 (load_in_progress): Add extern.
59 (Frequire): Use load_in_progress instead of Vloads_in_progress.
60
999cdb8f
TTN
612005-04-18 Thien-Thi Nguyen <ttn@gnu.org>
62
63 * xmenu.c (Fx_popup_menu): Initialize error_name to NULL.
64
3f4413f8
YM
652005-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
66
67 * macterm.c (XTread_socket): Don't beep on keyboard input even if
68 no frame is visible.
69
60ec7b7e
DN
702005-04-16 Dan Nicolaescu <dann@ics.uci.edu>
71
72 * term.c (struct keys): Add support for shifted keys.
73
a8a1c0ee
RS
742005-04-16 Richard M. Stallman <rms@gnu.org>
75
76 * xdisp.c (with_echo_area_buffer): Delete WHICH < 0 case.
77 (set_message): Call with_echo_area_buffer with WHICH = 0.
78 (set_message_1): Erase the echo area buffer first thing.
79 (echo_area_display): Don't clear echo_message_buffer.
80
f3cf04d3
YM
812005-04-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
82
83 * Makefile.in (mac.o): Depend on charset.h and coding.h.
84
85 * mac.c: Include charset.h and coding.h.
86 [TARGET_API_MAC_CARBON] (Qutf_8): Remove extern.
87 [TARGET_API_MAC_CARBON] (cfstring_create_with_string): New
88 function.
89 [TARGET_API_MAC_CARBON] (Fmac_get_preference): Use it.
90
91 * macfns.c [TARGET_API_MAC_CARBON] (Fx_file_dialog): Likewise.
92
93 * image.c [MAC_OSX] (image_load_quartz2d): Likewise.
94
95 * macterm.c (x_autoselect_window_p): Remove variable.
96 (last_window): New variable.
97 (XTreassert_line_highlight, x_change_line_highlight): Remove
98 declarations.
99 (mac_focus_changed, x_detect_focus_change): New functions and
100 declarations.
101 (XTextExtents16, front_emacs_window): Remove function.
102 (mac_focus_frame): New function.
103 (XTmouse_position, do_menu_choice, do_zoom_window, XTread_socket)
104 (mac_check_for_quit_char): Use it instead of front_emacs_window.
105 (x_scroll_bar_report_motion): Obtain window from control owner.
106 (x_make_frame_invisible): Set window manager size hint.
107 (do_mouse_moved): Remove function.
108 (XTread_socket): Move its contents here. Generate select-window
109 event on mouse movement if needed. Use x_detect_focus_change on
110 activate/deactivate events. Don't deiconify frame or invalidate
111 window rectangle when dnd items are dropped. Don't
112 activate/deactivate root control.
113 (frame_highlight, frame_unhighlight): Activate/deactivate root
114 control here.
115 (syms_of_macterm): Delete DEFVAR_BOOL for x_autoselect_window_p.
116
117 * macterm.h (cfstring_create_with_string) [TARGET_API_MAC_CARBON]:
118 New extern.
119
9e5b2858
LT
1202005-04-15 Luc Teirlinck <teirllm@auburn.edu>
121
122 * Makefile.in: Define new macro TOOLTIP_SUPPORT.
123 (lisp): Use it.
124 (SOME_MACHINE_LISP): Add tooltip.
125
42c6741e
YM
1262005-04-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
127
128 * mac.c [!TARGET_API_MAC_CARBON]: Include MacLocales.h. Don't
129 include TextEncodingConverter.h.
130 (mac_system_script_code, Vmac_system_locale): New variables.
131 (syms_of_mac): Defvar them.
132 (mac_get_system_locale): New function.
133
134 * macfns.c (x_set_name, x_set_title) [!TARGET_API_MAC_CARBON]: Use
135 ENCODE_SYSTEM to encode title bar string.
136 (x_create_tip_frame): Apply 2005-03-18 change for xfns.c.
137 (Fx_file_dialog) [TARGET_API_MAC_CARBON && !MAC_OSX]: Use
138 CFStringGetSystemEncoding to get system default string encoding.
139
140 * macterm.c [!TARGET_API_MAC_CARBON]: Don't include
141 TextEncodingConverter.h.
142
0614c575
ST
1432005-04-13 Steven Tamm <steventamm@mac.com>
144
7e26f91b
KS
145 * macterm.c (syms_of_macterm): Remove redundant definition of
146 mac-pass-control-to-system.
0614c575 147
203eb0aa
SM
1482005-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
149
150 * window.c (Fset_window_configuration): Be careful when you choose
151 among several possible points for the new_current_buffer.
152
a56e6111
YM
1532005-04-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
154
155 * keyboard.c (poll_for_input) [SYNC_INPUT]: Don't call
156 poll_for_input_1. Set interrupt_input_pending to 1 instead.
b7461be9
YM
157 (Qlanguage_change) [MAC_OS]: New variable.
158 (syms_of_keyboard) [MAC_OS]: Intern and staticpro it.
203eb0aa 159 (kbd_buffer_get_event) [MAC_OS]: Make event for LANGUAGE_CHANGE_EVENT.
b7461be9
YM
160
161 * macterm.c (mac_keyboard_text_encoding)
162 (current_mac_keyboard_text_encoding): Remove variables.
7e26f91b
KS
163 (XTread_socket): Store language-change event if keyboard script change
164 is detected. Don't convert input to `mac_keyboard_text_encoding'.
203eb0aa 165 (syms_of_macterm): Delete DEFVAR_INT for mac-keyboard-text-encoding.
b7461be9 166
7e26f91b 167 * termhooks.h (enum event_kind) [MAC_OS]: Add LANGUAGE_CHANGE_EVENT.
a56e6111 168
6695c528
RS
1692005-04-10 Richard M. Stallman <rms@gnu.org>
170
171 * emacs.c (standard_args): Rename --bare-bones to --quick.
172 Add -D aka --basic-display.
173
174 * buffer.c (Fmake_indirect_buffer): Clear out some local variables.
175
18e2d91f
RS
1762005-04-09 Richard M. Stallman <rms@gnu.org>
177
178 * keymap.c (where_is_internal): Convert a string used as event type
179 into "(any string)".
180
181 * lread.c (Vloads_in_progress): Not static.
18e2d91f
RS
182 * fns.c (Vloads_in_progress): Add extern.
183 (Frequire): Don't do LOADHIST_ATTACH if Vloads_in_progress is nil.
184
1852005-04-09 Thien-Thi Nguyen <ttn@surf.glug.org>
186
187 * dispnew.c (mirror_line_dance): Avoid crash if W2 is null.
188
1cf21850
LK
1892005-04-09 Lute Kamstra <lute@gnu.org>
190
191 * print.c (PRINTPREPARE): Check if the marker PRINTCHARFUN is
192 within the accessible part of the buffer.
193
bfd93240
KS
1942005-04-09 Kim F. Storm <storm@cua.dk>
195
196 * lread.c (readevalloop): Add args START and END as region in
197 current buffer to read. Callers changed.
198 When specified, narrow to this region only when reading,
199 not during eval. Track next point to read from during eval.
200 Also restore point to "real" buffer position before eval.
201 (Feval_region): Don't save excursion and restriction here, and
202 don't narrow to region. Just pass region to readevalloop.
203 Note: Point is now preserved even when PRINTFLAG is nil.
204
9ba27690
KS
2052005-04-08 Kim F. Storm <storm@cua.dk>
206
207 * xdisp.c (syms_of_xdisp): Init overlay-arrow-string to "=>".
208
73f0d996
KS
2092005-04-06 Kim F. Storm <storm@cua.dk>
210
211 * emacs.c (standard_args): Add -Q, --bare-bones, -bare-bones.
212
369f76bb
YM
2132005-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
214
215 * mac.c (cfdate_to_lisp): Add `const' for variable `epoch_gdate'.
216 (Fmac_get_preference): Doc fix.
217
203eb0aa
SM
218 * macfns.c (Fx_create_frame, x_create_tip_frame):
219 Add "fontset-mac" to fallback font/fontsets.
369f76bb 220
2ba613a6
KS
2212005-04-04 Kim F. Storm <storm@cua.dk>
222
4d5ddddc
KS
223 * alloc.c (Fgarbage_collect): Call CHECK_CONS_LIST before and after gc.
224
2ba613a6
KS
225 * eval.c (Ffuncall): Always call CHECK_CONS_LIST on entry.
226 Call it again after autoload.
227
1673df2e
JD
2282005-04-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
229
230 * alloc.c (allocate_string_data): Call BLOCK_INPUT before calling
231 mallopt.
232
233 * ralloc.c (r_alloc_init): Ditto.
234
41639988
KH
2352005-04-01 Kenichi Handa <handa@m17n.org>
236
1cf21850
LK
237 * lisp.h (Vascii_upcase_table, Vascii_canon_table)
238 (Vascii_eqv_table): Extern them.
41639988
KH
239
240 * casetab.c (set_case_table): If standard is nonzero, setup
241 Vascii_upcase_table, Vascii_canon_table, and Vascii_eqv_table.
242
243 * search.c (looking_at_1): Use current_buffer->case_canon_table,
244 not DOWNCASE_TABLE.
245 (string_match_1): Likewise.
246 (fast_c_string_match_ignore_case): Use Vascii_canon_table, not
247 Vascii_downcase_table.
248 (fast_string_match_ignore_case): Likewise.
249 (search_buffer): Fix checking of boyer-moore usability.
203eb0aa
SM
250 (boyer_moore): Calculate translate_prev_byte1/2/3 in advance.
251 No need of tranlating characters in PAT. Fix calculation of
41639988
KH
252 simple_translate.
253
6ca53601
SM
2542005-03-31 Stefan Monnier <monnier@iro.umontreal.ca>
255
256 * xterm.c [HAVE_XAW3D]: Include ThreeD.h for XtNbeNiceToColormap.
257 (x_create_toolkit_scroll_bar): Test XtNbeNiceToColormap before using it.
258 Use XtNtopShadowPixel and XtNbottomShadowPixel.
259 (x_set_toolkit_scroll_bar_thumb): Remove ugly old hack that didn't
260 really work and that breaks with some versions of Xaw3d.
261
fafbb99d 2622005-03-31 Kenichi Handa <handa@m17n.org>
bf762c98
KH
263
264 * coding.c (syms_of_coding): Fix previous change.
265
6ca53601
SM
2662005-03-30 Stefan Monnier <monnier@iro.umontreal.ca>
267
268 * fileio.c (search_embedded_absfilename): Fix last change.
269
bf762c98
KH
2702005-03-25 Kenichi Handa <handa@m17n.org>
271
272 * coding.c (syms_of_coding): Suggest to use set-coding-category in
273 the docstring of coding-category-list.
274
f793f885
KS
2752005-03-31 Kim F. Storm <storm@cua.dk>
276
277 * keyboard.c (Qmouse_fixup_help_message): New var.
278 (syms_of_keyboard): Intern and staticpro it.
279 (show_help_echo): Apply mouse-fixup-help-message to help string.
280
c364fe19
KS
2812005-03-30 Kim F. Storm <storm@cua.dk>
282
283 * xdisp.c (display_line): Allow multiple overlay arrows in window.
284
c70a4df6
SM
2852005-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
286
287 * fileio.c (Fexpand_file_name): Use IS_DEVICE_SEP.
288 (file_name_absolute_p): New fun, extracted from Ffile_name_absolute_p.
289 (Ffile_name_absolute_p): Use it.
290 (search_embedded_absfilename): New fun, extracted from
291 Fsubstitute_in_file_name. Use file_name_absolute_p.
292 Free the pw data after use.
293 (Fsubstitute_in_file_name): Use it.
294 After cutting a prefix, re-check file-name-handler.
295
6e7d0438
JR
2962005-03-26 Lennart Borgman <lennart.borgman.073@student.lu.se>
297
6ca53601 298 * w32term.h (x_output): Add focus_state.
6e7d0438
JR
299
300 * w32term.c (x_focus_changed, w32_detect_focus_change): New functions.
301 (w32_read_socket) [WM_SETFOCUS]: Call w32_detect_focus_change.
302
65671706
SM
3032005-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
304
305 * minibuf.c (Fminibuffer_complete_and_exit, Fself_insert_and_exit):
306 Use Fexit_minibuffer.
307 (Fexit_minibuffer): Mark it as no-return, deactivate the mark.
308
0de4dad4
SM
3092005-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
310
781da985
SM
311 * dired.c (Ffile_attributes): Add a missing gcpro.
312
0de4dad4
SM
313 * alloc.c (make_number): The arg can be bigger than `int'.
314 * lisp.h (make_number): Make prototype more precise.
315
316 * process.c, dired.c (Vfile_name_coding_system)
317 (Vdefault_file_name_coding_system):
318 * callproc.c (Vdoc_file_name, Vfile_name_coding_system)
319 (Vdefault_file_name_coding_system): Remove unused declarations.
320
ff18668f
JD
3212005-03-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
322
323 * xmenu.c (create_and_show_popup_menu): Just remove menu and return
324 if it failed to pop up (Gnome "show pointer on ctrl" option makes
325 menus fail to pop up).
326
0de4dad4 3272005-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
66347da7
SM
328
329 * xdisp.c (get_next_display_element): Also use `\ ' & `\-' for latin-9.
0de4dad4 330 Just prepend a backslash without replacing the NBSP by an SPC.
66347da7 331
8df0ffbe
KS
3322005-03-22 Kim F. Storm <storm@cua.dk>
333
334 * xfaces.c (lookup_derived_face): Add arg SIGNAL_P.
335 * dispextern.h (lookup_derived_face): Fix prototype.
336 * msdos.c (XMenuActivate): Fix call to lookup_derived_face.
337
338 * xdisp.c (handle_single_display_spec): Derive left-fringe and
339 right-fringe face from fringe face.
340
341 * fringe.c (draw_fringe_bitmap_1, Fset_fringe_bitmap_face):
342 Derive face from fringe face.
343
6ca30ba4
JD
3442005-03-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
345
346 * xrdb.c (x_load_resources): Undo previous change (2005-03-18).
347
d615870a
DK
3482005-03-22 David Kastrup <dak@gnu.org>
349
350 * textprop.c (Fnext_char_property_change)
66347da7 351 (Fprevious_char_property_change): Allow marker as limit.
d615870a
DK
352 (Fnext_single_char_property_change)
353 (Fprevious_single_char_property_change): Check that limit is a
354 number in strings.
355 (Fnext_single_char_property_change): Coerce position to integer.
356 (Fprevious_single_char_property_change): Same here.
357
32b939ea
TTN
3582005-03-21 Thien-Thi Nguyen <ttn@gnu.org>
359
360 * s/openbsd.h (LD_SWITCH_SYSTEM_tmp): Define if undefined.
361
6027e473
SM
3622005-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
363
364 * frame.c (Fignore_event): Remove.
365 (syms_of_frame): Don't defsubr it.
366
367 * keyboard.c (keys_of_keyboard): Just use `ignore' instead of the
368 redundant `ignore-event'.
369
730f4d72
EZ
3702005-03-19 Eli Zaretskii <eliz@gnu.org>
371
372 * unexec.c (write_segment, unexec): Move these functions to avoid
373 forward references (which cause errors with "gcc -gcoff").
374
c7f6afd5
JD
3752005-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
376
6027e473 377 * xfns.c (x_create_tip_frame): Remove setting of Vx_resource_name so
9188be47 378 that it doesn't become "tooltip". The specbind is enough.
8d5980cf 379
c7f6afd5
JD
380 * xrdb.c (x_load_resources): Use different char *helv when I18N
381 is present.
382
db328182
KH
3832005-03-17 Kenichi Handa <handa@m17n.org>
384
66347da7 385 * coding.c (syms_of_coding): Docstring of coding-category-list fixed.
db328182 386
211f2210
SM
3872005-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
388
389 * xfaces.c (x_update_menu_appearance) [HAVE_X_I18N]:
390 Use xic_create_fontsetname even for non-Motif menus.
391 Don't forget to free the fontsetname.
392
393 * xfns.c (xic_create_fontsetname): Add a final catch-all font pattern.
394
c7bd5d57
RS
3952005-03-17 Richard M. Stallman <rms@gnu.org>
396
397 * dispnew.c (mirror_line_dance): Set W2 according to FRAME_FROM.
398
399 * fileio.c (Fcopy_file, Frename_file, Fadd_name_to_file)
400 (Fmake_symbolic_link): Use G to read the new file name.
401
402 * callint.c (Finteractive): Document G option.
403 (Fcall_interactively): Implement G option.
404
405 * buffer.c (buffer_lisp_local_variables): New function,
406 broken out from Fbuffer_local_variables.
407 (clone_per_buffer_values): Use buffer_lisp_local_variables.
408
888953f1
SM
4092005-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
410
3c916d65
SM
411 * xfns.c (xic_create_fontsetname): Add `motif' argument.
412 Always return a freshly allocated string.
413 (xic_create_xfontset): Adjust call.
414
415 * xfaces.c (x_update_menu_appearance) [USE_MOTIF]:
416 Use xic_create_fontsetname to create a fontset so utf-8 locales work.
417 (dump_realized_face): Fix warning.
418
9f9e5275
SM
419 * emacs.c (Fkill_emacs): YAILOM.
420
888953f1
SM
421 * frame.c (Fignore_event): Fix ancient obscure C-u handling bug.
422
48502d68
YM
4232005-03-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
424
425 * mac.c (HASHKEY_TERMINAL): Remove.
426 (HASHKEY_MAX_NID): New macro.
427 (xrm_q_get_resource_1): Rename from xrm_q_get_resource. Add extra
428 argument.
888953f1 429 (xrm_q_get_resource): Call xrm_q_get_resource_1 with extra argument.
48502d68
YM
430 (xrm_create_database, xrm_q_put_resource)
431 (xrm_merge_string_database, xrm_q_get_resource_1)
432 (xrm_q_get_resource): Change resource database representation so
433 that it may not use multiple hash tables for a single database.
434 [TARGET_API_MAC_CARBON] (xrm_cfproperty_list_to_value): YAILOM.
435
d5161e8c
SM
4362005-03-16 Stefan Monnier <monnier@iro.umontreal.ca>
437
11a646cd
SM
438 * xmenu.c (ENCODE_MENU_STRING) [HAVE_X_I18N]: Use ENCODE_SYSTEM.
439
440 * coding.h (ENCODE_SYSTEM, DECODE_SYSTEM) [!WINDOWSNT]: Use the
441 locale-coding-system, as was already done for WINDOWSNT.
442
d5161e8c
SM
443 * keyboard.c (read_char): Only do the 7-bit-meta -> 27-bit-meta
444 translation for chars in the 0-255 range.
445
568b6e41
LK
4462005-03-16 Lute Kamstra <lute@gnu.org>
447
448 * floatfns.c (Ffloor): Doc fix.
449
469fb3cf
YM
4502005-03-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
451
452 * mac.c: Include macterm.h instead of directly including Carbon.h.
453 [TARGET_API_MAC_CARBON] (Qstring, Qnumber, Qboolean, Qdate, Qdata)
454 (Qarray, Qdictionary): New variables.
455 (syms_of_mac) [TARGET_API_MAC_CARBON]: Initialize them.
456 [TARGET_API_MAC_CARBON] (Qutf_8): Add extern.
457 [TARGET_API_MAC_CARBON] (DECODE_UTF_8): New macro.
458 [TARGET_API_MAC_CARBON] (struct cfdict_context): New struct used
459 in callback for CFDictionaryApplyFunction.
460 [TARGET_API_MAC_CARBON] (cfdata_to_lisp, cfstring_to_lisp)
461 (cfnumber_to_lisp, cfdate_to_lisp, cfboolean_to_lisp)
462 (cfobject_desc_to_lisp, cfdictionary_add_to_list)
463 (cfdictionary_puthash, cfproperty_list_to_lisp): New functions.
464 [TARGET_API_MAC_CARBON] (Fmac_get_preference): New function.
465 (syms_of_mac) [TARGET_API_MAC_CARBON]: Defsubr it.
466 (P, LOOSE_BINDING, SINGLE_COMPONENT, HASHKEY_TERMINAL): New macro.
3d454340 467 (skip_white_space, parse_comment, parse_include_file)
469fb3cf
YM
468 (parse_binding, parse_component, parse_resource_name, parse_value)
469 (parse_resource_line, xrm_create_database, xrm_q_put_resource)
470 (xrm_merge_string_database, xrm_q_get_resource, xrm_get_resource)
d5161e8c
SM
471 (xrm_cfproperty_list_to_value, xrm_get_preference_database):
472 New functions.
469fb3cf
YM
473
474 * macfns.c (mac_get_rdb_resource): Remove function.
475 (x_get_string_resource): Use xrm_get_resource.
476
477 * macgui.h (XrmDatabase): Typedef to Lisp_Object.
478
479 * macterm.c (x_list_fonts): FONT-LIST-CACHE is now cadr part of
480 name_list_element.
481 (mac_make_rdb): Create resource database from preferences and
482 argument string.
483 (mac_term_init): Save resource database to cddr part of
484 name_list_element.
485
486 * macterm.h (xrm_merge_string_database, xrm_get_resource)
487 (xrm_get_preference_database): Add externs.
488 [TARGET_API_MAC_CARBON] (cfdata_to_lisp, cfstring_to_lisp)
489 (cfnumber_to_lisp, cfdate_to_lisp, cfboolean_to_lisp)
490 (cfobject_desc_to_lisp, cfproperty_list_to_lisp): Likewise.
491
492 * process.c (init_process): Change `#ifdef DARWIN' to `#if
493 defined (DARWIN) || defined (MAC_OSX)'
494
495 * s/darwin.h (DARWIN): Don't define.
496
6a3fac90
YM
4972005-03-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
498
499 * macfns.c (Qhyper, Qsuper, Qmeta, Qalt, Qctrl, Qcontrol, Qshift):
500 Remove unused variables.
501 (syms_of_macfns): Don't initialize them. Likewise for
502 Qface_set_after_frame_default. Defvar and initialize
503 Vx_window_horizontal_drag_shape.
504 (x_set_mouse_color): Change mouse pointer shape.
505 (mac_window) [!MAC_OSX]: Create root control.
469fb3cf 506 (Fx_create_frame): Remove initializations of mouse pointer shapes.
6a3fac90
YM
507 (hourglass_started): New function (from xfns.c).
508 (start_hourglass, cancel_hourglass): Put function body in #ifdef
509 MAC_OSX.
510 (show_hourglass) [TARGET_API_MAC_CARBON]: Create progress
511 indicator for each non-tooltip frame if needed, and show it.
d5161e8c 512 (hide_hourglass) [TARGET_API_MAC_CARBON]: Hide progress indicators.
6a3fac90
YM
513
514 * macgui.h [!TARGET_API_MAC_CARBON]: Include Appearance.h and
515 Controls.h. Use ThemeCursor instead of CursHandle.
516
d5161e8c
SM
517 * macterm.c (activate_scroll_bars, deactivate_scroll_bars):
518 Remove functions and declarations.
519 (mac_set_colors): Take argument for saving background color.
520 All callers changed.
6a3fac90
YM
521 (XDrawLine, XClearArea, mac_draw_bitmap, XFillRectangle)
522 (mac_draw_rectangle, mac_draw_string_common): Save and Restore
523 background color.
524 (x_update_end, mac_do_track_drag): Don't reset background color.
d5161e8c
SM
525 (mac_define_frame_cursor) [!TARGET_API_MAC_CARBON]:
526 Use SetThemeCursor.
6a3fac90
YM
527 (x_set_window_size) [TARGET_API_MAC_CARBON]: Move progress
528 indicator control to the upper-right corner of the window.
529 (arrow_cursor) [!TARGET_API_MAC_CARBON]: Remove variable.
530 (do_init_managers) [!TARGET_API_MAC_CARBON]: Don't initialize it.
531 (do_window_update): Update controls after updating content area.
532 (mac_handle_window_event): Remove unused extern.
533 (XTread_socket): Check both control handle and control part code
534 to determine whether a scroll bar is clicked. Activate/deactivate
535 root control instead of contained scroll bar controls.
536 (make_mac_terminal_frame): Use ThemeCursor constants.
537
d5161e8c
SM
538 * macterm.h (struct mac_output) [TARGET_API_MAC_CARBON]:
539 New member hourglass_control.
6a3fac90 540 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): New defines.
d5161e8c 541 (activate_scroll_bars, deactivate_scroll_bars): Remove declarations.
6a3fac90 542
a7321976
YM
5432005-03-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
544
545 * macterm.c (keycode_to_xkeysym_table): Change mapping so that it
6a3fac90 546 coincides with that in Apple X11 except `clear', `enter' on
a7321976
YM
547 laptops, and fn + `enter' on laptops.
548
f7b758bd
SM
5492005-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
550
551 * xmenu.c (ENCODE_MENU_STRING): Explicitly use string_make_unibyte.
552 (list_of_panes, list_of_items, Fx_popup_menu): Use XCAR/XCDR.
553 (digest_single_submenu, xmenu_show): Use ENCODE_MENU_STRING.
554
555 * xfns.c (xic_defaut_fontset): New constant.
556 (xic_create_fontsetname): New function.
557 Extracted from create_frame_xic. Try to generate a slightly
558 better fontset.
559 (xic_create_xfontset): Use it.
560 (create_frame_xic): Simplify.
561
dac24db4
SM
5622005-03-11 Stefan Monnier <monnier@iro.umontreal.ca>
563
564 * fileio.c (Fmake_symbolic_link): Fix last change.
565
e0402468
RS
5662005-03-11 Richard M. Stallman <rms@gnu.org>
567
568 * fileio.c (Frename_file, Fadd_name_to_file)
569 (Fmake_symbolic_link): If NEWNAME or LINKNAME is a directory,
570 expand the basename of FILE relative to it.
571
fa815b14
KH
5722005-03-11 Kenichi Handa <handa@m17n.org>
573
574 * fileio.c (Finsert_file_contents): Call Fcheck_coding_system
575 before calling setup_coding_system so that autoloading of a coding
576 system work.
577
817d354b
JD
5782005-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
579
68a505ef
JD
580 * xfns.c (hourglass_started): New function.
581
582 * dispextern.h: Declare hourglass_started.
583
584 * keyboard.c (Fexecute_extended_command): Restart hourglass
585 after call to Fcompleting_read if already started.
586
817d354b
JD
587 * gtkutil.c (xg_update_scrollbar_pos): Call x_sync so that the
588 GTK main loop is entered in xterm.c, thus doing the redraw.
589
b0a6f45c
KS
5902005-03-10 Kim F. Storm <storm@cua.dk>
591
592 * xdisp.c (pos_visible_p): Fix X value in last line of buffer.
593
ee5d57b0
KH
5942005-03-08 Kenichi Handa <handa@m17n.org>
595
596 * frame.c (x_set_font): Call set_default_ascii_font if an
597 available font is found.
598
599 * fontset.c (set_default_ascii_font): New function.
dac24db4 600 (syms_of_fontset): Don't set FONTSET_ASCII (Vdefault_fontset) here.
ee5d57b0
KH
601
602 * fontset.h (set_default_ascii_font): Extern it.
603
f30c4a5c
KS
6042005-03-07 Kim F. Storm <storm@cua.dk>
605
3fb26a86
KS
606 * xdisp.c (CLEAR_IMAGE_CACHE_COUNT): New const.
607 (clear_image_cache_count): New var.
608 (redisplay_internal): Don't clear face and image caches in the
609 middle of redisplay; do it afterwards.
610
a54595d4
KS
611 * blockinput.h (TOTALLY_UNBLOCK_INPUT): Avoid dangling else.
612
f30c4a5c
KS
613 * xdisp.c (notice_overwritten_cursor): Check that phys_cursor.vpos
614 is valid. If not, clear phys_cursor_on_p and return.
615
3d182f9d
AS
6162005-03-07 Andreas Schwab <schwab@suse.de>
617
618 * blockinput.h (UNBLOCK_INPUT_TO): Always call UNBLOCK_INPUT.
619
85d964de
RS
6202005-03-06 Richard M. Stallman <rms@gnu.org>
621
622 * keyboard.c (Ftop_level): Let Fthrow deal with UNBLOCK_INPUT.
623
624 * eval.c (unwind_to_catch): Use UNBLOCK_INPUT_TO.
625 (Feval, Ffuncall): Use CHECK_CONS_LIST.
626
627 * lisp.h (CHECK_CONS_LIST): New macro (two definitions).
628
629 * blockinput.h (UNBLOCK_INPUT_TO): New macro.
630 (TOTALLY_UNBLOCK_INPUT): Handle a pending signal if any.
631
3ff96c81
JL
6322005-03-05 Juri Linkov <juri@jurta.org>
633
634 * emacs.c (USAGE1): Replace Info node name "command arguments"
635 with "emacs invocation".
636 (USAGE3): Fix usage of `--color=MODE' which actually doesn't
637 allow arguments `--color' and `MODE' to be separated by space.
638 Add --no-blinking-cursor, -nbc.
639 (standard_args): Add -nbc, --no-blinking-cursor.
640
64eb0083
TTN
6412005-03-04 Thien-Thi Nguyen <ttn@gnu.org>
642
643 * s/vms.h: Define NO_HYPHENS_IN_FILENAMES.
644 * s/vms4-4.h, s/vms5-5.h: Undefine NO_HYPHENS_IN_FILENAMES.
645 * fileio.c (Fexpand_file_name) [VMS]:
646 Use NO_HYPHENS_IN_FILENAMES, not VMS4_4.
647 * doc.c (munge_doc_file_name) [VMS]: Likewise.
648 (Fsnarf_documentation): Call munge_doc_file_name.
649
ad708ae5
TTN
6502005-03-04 Thien-Thi Nguyen <ttn@gnu.org>
651
652 * s/vms.h (FILE_SYSTEM_CASE): New macro.
653 * fileio.c (Fexpand_file_name) [VMS]: Don't upcase the name
654 "manually"; this is now handled generally via FILE_SYSTEM_CASE.
655
ba025f6d
YM
6562005-03-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
657
658 * emacs.c (main): Change `#ifdef HAVE_CARBON' to `#if
659 defined (MAC_OSX) && defined (HAVE_CARBON)'.
ad708ae5 660
dac24db4 661 * image.c [!MAC_OSX && TARGET_API_MAC_CARBON]: Include QuickTime.h.
ba025f6d
YM
662
663 * mac.c [!MAC_OSX && HAVE_CARBON]: Include Carbon.h.
664 [!MAC_OSX] (select) [TARGET_API_MAC_CARBON]: Use ReceiveNextEvent.
dac24db4 665 (posix_pathname_to_fsspec, fsspec_to_posix_pathname): New functions.
ba025f6d
YM
666 (mac_clear_font_name_table): Move extern to macterm.h.
667
668 * macfns.c (install_window_handler): Move extern to macterm.h.
669 (Fx_file_dialog): Check STRINGP (default_filename) to see it is
670 valid. Don't check !NILP (dir) because it is already checked with
671 CHECK_STRING.
672 (Fx_file_dialog) [!MAC_OSX]: Use FSSpec instead of FSRef for
dac24db4 673 specifying the default location and obtaining the selected filename.
ba025f6d
YM
674
675 * macgui.h [!MAC_OSX && HAVE_CARBON]: Include Carbon.h.
676
2313f861 677 * macmenu.c [TARGET_API_MAC_CARBON]: Don't include headers that
ba025f6d
YM
678 are included via Carbon.h.
679
dac24db4
SM
680 * macterm.c [TARGET_API_MAC_CARBON && !MAC_OSX]:
681 Define USE_CARBON_EVENTS to 1.
2313f861 682 (qd) [__MRC__ && TARGET_API_MAC_CARBON]: Don't declare.
ba025f6d
YM
683 (x_free_frame_resources): Call remove_window_handler for
684 non-tooltip windows.
685 [TARGET_API_MAC_CARBON]: Don't include headers that are included
686 via Carbon.h.
687 [TARGET_API_MAC_CARBON] (mac_do_track_dragUPP)
688 (mac_do_receive_dragUPP): New variables.
689 (mac_handle_service_event, init_service_handler): Put declarations
690 and definitions in #ifdef MAC_OSX.
691 (install_window_handler) [TARGET_API_MAC_CARBON]: Create UPPs for
692 drag-and-drop handler functions and register them.
693 (remove_window_handler): New function.
dac24db4
SM
694 (do_ae_open_documents, mac_do_receive_drag) [!MAC_OSX]:
695 Use fsspec_to_posix_pathname.
ba025f6d
YM
696 (main): Change #if !TARGET_API_MAC_CARBON to #ifdef MAC_OS8.
697 (XTread_socket) [!MAC_OSX]: Don't pass keyboard events to TSM.
dac24db4
SM
698 [MAC_OS8] (make_mac_terminal_frame) [TARGET_API_MAC_CARBON]:
699 Set default cursors.
ba025f6d
YM
700 (mac_initialize) [USE_CARBON_EVENTS && !MAC_OSX] : Don't call
701 init_service_handler or init_quit_char_handler.
702 (mac_initialize) [!MAC_OSX]: Don't call MakeMeTheFrontProcess.
703
704 * macterm.h (install_window_handler, remove_window_handler)
705 (posix_pathname_to_fsspec, fsspec_to_posix_pathname)
706 (mac_clear_font_name_table): New externs.
ad708ae5 707
c1558952
TTN
7082005-03-03 Thien-Thi Nguyen <ttn@gnu.org>
709
710 * fileio.c (FILE_SYSTEM_CASE): Define macro if not already defined.
711 (Ffile_name_directory): Use FILE_SYSTEM_CASE unconditionally.
712 (Fexpand_file_name): Likewise.
713
fa439170
TTN
7142005-03-03 Thien-Thi Nguyen <ttn@gnu.org>
715
716 * emacs.c (Fkill_emacs): Use EXIT_SUCCESS;
717 no longer special-case VMS. Add bogus return value.
718
db2dacf6
KS
7192005-03-02 Kim F. Storm <storm@cua.dk>
720
721 * dispextern.h (XASSERTS): Define to 0 if not already defined.
722 (xassert) [!XASSERTS]: Define dummy version.
723
0870514c
KS
7242005-03-02 Kim F. Storm <storm@cua.dk>
725
726 * xdisp.c (redisplay_window): YABX (yet another bogus xassert).
727 Reported by David Kastrup.
728
6b640092
KS
7292005-03-01 Ehud Karni <ehud@unix.mvs.co.il>
730
731 * xdisp.c (get_next_display_element): Fix control and escape
732 glyph from display vector.
733
f4a5a485
SM
7342005-03-01 Stefan Monnier <monnier@iro.umontreal.ca>
735
736 * keyboard.c (Fposn_at_x_y): Check integerness of X and Y.
737
85d964de
RS
7382005-02-27 Richard M. Stallman <rms@gnu.org>
739
740 * xdisp.c (fast_find_position): Rename END to BEG.
741 (syms_of_xdisp) <menu-bar-update-hook>: Doc fix.
742
6e8db3ea
JD
7432005-02-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
744
f4a5a485 745 * gtkutil.c (xg_resize_outer_widget): Remove unneeded call to
6e8db3ea
JD
746 gtk_window_resize and x_wm_set_size_hint.
747
0f465b55
KS
7482005-02-25 Kim F. Storm <storm@cua.dk>
749
750 * dispextern.h (OVERLAY_STRING_CHUNK_SIZE): Increase from 3 to 16.
751
752 * xdisp.c (init_from_display_pos): Don't read past end of
753 it->overlay_strings array.
754
845a78b4
LK
7552005-02-25 Stephan Stahl <stahl@eos.franken.de> (tiny change)
756
757 * buffer.c (syms_of_buffer): Fix typo.
758
b02c3eed
LK
7592005-02-23 Lute Kamstra <lute@gnu.org>
760
761 * buffer.c (Foverlay_buffer): Doc fix.
762
c8500765
KS
7632005-02-22 Kim F. Storm <storm@cua.dk>
764
b686dd59
KS
765 * minibuf.c (Ftry_completion, Fall_completions): Allow both string
766 and symbol keys in alists and hash tables.
767
c8500765
KS
768 * xdisp.c (fast_find_position): Fix search for start of overlay.
769
81c85b53
KS
7702005-02-21 Kim F. Storm <storm@cua.dk>
771
772 * window.c (window_scroll_pixel_based): When scrolling backwards,
773 handle partial visible line at end of window even when we hit PT.
774
f4a5a485 7752005-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
9df747e1
SM
776
777 * keymap.h: Declare Fcurrent_active_maps, used in doc.c.
778
0dd5a842
KS
7792005-02-21 Kim F. Storm <storm@cua.dk>
780
781 * xdisp.c (move_it_vertically_backward): Eliminate two xasserts.
782 I think those asserts are bogus if buffer contains invisible text
783 or images.
784
19e05d1f
KS
7852005-02-21 David Kastrup <dak@gnu.org>
786
787 * gtkutil.c (xg_create_frame_widgets): UNBLOCK_INPUT on error.
788
0fba9f25
KS
7892005-02-20 Kim F. Storm <storm@cua.dk>
790
791 * xdisp.c (pos_visible_p): Be sure to move to the specified
792 position. Always get the full ascent / descent of the
793 corresponding row, to return reliable rtop and rbot values.
794 (back_to_previous_visible_line_start): Fix 2005-01-18 change.
795 Must look one character back, as back_to_previous_line_start
796 returns position after the newline.
797 (move_it_vertically_backward): Fix heuristic for when to move further
798 back in case line_height * 2/3 is larger than window height.
799 (cursor_row_fully_visible_p): Rename make_cursor_line_fully_visible_p
800 as it does not do anything anymore. Add arg current_matrix_p to
801 use current matrix rather than desired matrix when set.
802 (try_cursor_movement): Don't scroll to make cursor row fully
803 visible if cursor didn't move. This avoids unexpected recentering
804 in case of blinking cursor or accepting process output.
805 Use current matrix to check cursor row visibility.
806 (redisplay_window): Fix whether to recenter or move to top in case
807 cursor line is taller than window height.
808 (find_first_unchanged_at_end_row): Stop search if we reach a row
809 which not enabled (instead of abort).
810
b1c2adc3
KS
8112005-02-18 Kim F. Storm <storm@cua.dk>
812
c2ee48fb
KS
813 * xfaces.c (Finternal_set_lisp_face_attribute): Allow :color property
814 to be nil in a :box attribute value list; customize prints that
815 as lisp value when no box color is specified.
816
b1c2adc3
KS
817 * .gdbinit (pitx, pit): Pretty print display iterator.
818 (prowx, prow): Pretty print glyph row.
819 (pcursorx, pcursor): Pretty print a window cursor.
820 (pwinx, pwin): Pretty print struct window.
821
f102186f
SM
8222005-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
823
824 * alloc.c (BLOCK_BYTES): Harmless typo.
825
9b516537
AS
8262005-02-17 Andreas Schwab <schwab@suse.de>
827
828 * xfns.c (hack_wm_protocols): Use correct type for last parameter
829 of XGetWindowProperty to avoid aliasing issues.
830 (Fx_window_property): Likewise.
831
832 * xselect.c (Fx_disown_selection_internal): Use union of struct
f4a5a485 833 input_event and struct selection_input_event to avoid aliasing issues.
9b516537
AS
834
835 * xterm.c (handle_one_xevent): Use union of struct input_event and
836 struct selection_input_event to avoid aliasing issues.
837 (SET_SAVED_MENU_EVENT): Adapt reference to inev.
838
886b1418
KS
8392005-02-17 Kim F. Storm <storm@cua.dk>
840
841 * dispextern.h (enum it_method): New enum.
842 (GET_FROM_*): Its members.
843 (struct it): Change member method from function pointer to enum.
844
845 * xdisp.c (check_it, init_from_display_pos, handle_stop)
846 (setup_for_ellipsis, handle_single_display_spec)
847 (handle_composition_prop, next_overlay_string)
848 (get_overlay_strings, reseat_1, reseat_to_string)
849 (next_element_from_ellipsis, BUFFER_POS_REACHED_P)
850 (in_display_vector_p, display_line, get_next_display_element):
851 Change it->method from function pointer to enum.
852 (get_next_element): New array to map it->method to function.
853 (get_next_display_element): Use it.
854 (set_iterator_to_next): Use switch instead of if/else chain.
855
99ee2c6a 8562005-02-15 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
52c7f9ee
JR
857
858 * w32select.c: Summary: Thorough rework to implement Unicode
859 clipboard operations and delayed rendering.
860
861 Drop last_clipboard_text and related code, keep track of
f4a5a485 862 ownership via clipboard_owner instead. Drop old #if0 sections.
52c7f9ee
JR
863
864 (DEFAULT_LCID, ANSICP, OEMCP, QUNICODE, QANSICP, QOEMCP)
865 (clipboard_owner, modifying_clipboard, cfg_coding_system)
866 (cfg_codepage, cfg_lcid, cfg_clipboard_type, current_text)
867 (current_coding_system, current_requires_encoding)
f4a5a485
SM
868 (current_num_nls, current_clipboard_type, current_lcid):
869 New static variables.
52c7f9ee
JR
870
871 (convert_to_handle_as_ascii, convert_to_handle_as_coded)
872 (render, render_all, run_protected, lisp_error_handler)
873 (owner_callback, create_owner, setup_config)
f4a5a485
SM
874 (enum_locale_callback, cp_from_locale, coding_from_cp):
875 New local functions.
52c7f9ee
JR
876
877 (term_w32select, globals_of_w32select): New global functions.
878
879 (Fw32_set_clipboard_data): Ignore parameter FRAME, use
880 clipboard_owner instead. Use delayed rendering and provide
881 all text formats. Provide CF_LOCALE if necessary.
882
883 (Fw32_get_clipboard_data): Handle CF_UNICODETEXT and
884 CF_LOCALE. Fall back to CF_TEXT, if CF_UNICODETEXT is not
885 available. Force DOS line-ends for decoding.
886
887 (Fx_selection_exists_p): Handle CF_UNICODETEXT.
888
889 (syms_of_w32select): Init and register new variables.
890
891 * w32.h: Add prototypes for globals_of_w32select and
892 term_w32select. Make the neighboring K&R declarations into
893 prototypes, too.
894
895 * emacs.c: Include w32.h to get function prototypes.
896 (main): Call globals_of_w32select.
897
886b1418 898 * w32.c (term_ntproc): Call term_w32select.
52c7f9ee
JR
899
900 * s/ms-w32.h: Guard MSC-specific #pragmas with an #ifdef.
901
86e61586
KS
9022005-02-16 Kim F. Storm <storm@cua.dk>
903
904 * xdisp.c (BUFFER_POS_REACHED_P): Return true if pos reached and
905 at end of display vector.
906
6407f07b
RS
9072005-02-15 Richard M. Stallman <rms@gnu.org>
908
909 * xdisp.c (get_next_display_element): Fix escape-glyph criterion
910 for mode and header lines.
911
912 * lread.c (syms_of_lread) <user-init-file>: Doc fix.
913
914 * keymap.h (describe_map_tree): Change decl.
915
916 * keyboard.c (command_loop_1): Always use safe_run_hooks
917 to run Qdeferred_action_function.
918
919 * keymap.c (describe_map_tree): New arg MENTION_SHADOW. Calls changed.
920 (describe_map, describe_vector): Likewise. When it's 1,
921 don't omit shadowed bindings, instead mark them as shadowed.
922
923 * doc.c (Fsubstitute_command_keys): Compute list of shadowing maps
924 for describe_map_tree. Pass 1 for MENTION_SHADOW.
925
926 * data.c (Fsetq_default): Allow no arg case.
927
3bb917bf
KH
9282005-02-14 Kenichi Handa <handa@m17n.org>
929
930 * coding.c (encode_coding_string): Always return a unibyte string.
931 If NOCOPY is nonzero and there's no need of encoding, make STR
932 unibyte directly.
933
934 * xselect.c (lisp_data_to_selection_data): If OBJ is a non-ASCII
935 multibyte string, signal an error instead of aborting.
936
e31d908f
DN
9372005-02-12 Dan Nicolaescu <dann@ics.uci.edu>
938
939 * keyboard.c: If HAVE_FCNTL_H include fcntl.h.
940
48e029b6
KS
9412005-02-12 Kim F. Storm <storm@cua.dk>
942
943 * xdisp.c (expose_window): Don't fix overlaps for mode lines.
944
c10bb00a
KS
9452005-02-10 Kim F. Storm <storm@cua.dk>
946
947 * xdisp.c (try_window_id): Set first_unchanged_at_end_row to NULL
948 if it moves outside window or it doesn't display text.
949
9ca0f64a
KS
9502005-02-09 Kim F. Storm <storm@cua.dk>
951
952 * undo.c (Fprimitive_undo): Check that undo function does not
953 switch buffer.
954
b8d6f4af
JD
9552005-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
956
957 * xselect.c (selection_data_to_lisp_data): For the special case
958 type == XA_ATOM, data contains array of int, not array of Atom.
d5161e8c
SM
959 (x_property_data_to_lisp, selection_data_to_lisp_data):
960 Comment update: data must be array of int for format == 32.
b8d6f4af 961
3419757d
SM
9622005-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
963
964 * undo.c (Fprimitive_undo): Check veracity of delta,start,end.
965
3a441526
JD
9662005-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
967
fc34503b
JD
968 * xfns.c (Fx_change_window_property): Use long array when format is 32.
969 (Fx_window_property): If format is 32 and long is bigger than 32 bits,
970 convert long array returned from XGetWindowProperty to an int array.
bae45dc3
JD
971 (x_set_tool_bar_lines): Check that width and height is greater than
972 zero before clearing area.
fc34503b
JD
973
974 * xselect.c (x_reply_selection_request): Pass long array to
975 XChangeProperty so that 64 bit longs are handeled correctly.
976 (x_get_window_property): If format is 32 and long is bigger than 32
977 bits convert data from XGetWindowProperty from long array to int array.
978 (lisp_data_to_selection_data): When the input is a vector and the
979 format is 32, allocate a long array even if long is bigger than 32 bits.
980 (x_fill_property_data): Use char, short and long as the man page
981 for XChangeProperty specifies. This way the data returned is OK for
982 both 32 and 64 bit machines.
983 (x_handle_dnd_message): Calculate size correctly even for 64 bit
984 machines.
985 (Fx_send_client_event): Undo change from 2005-02-05,
986 x_fill_property_data now handles that case.
987
3419757d 988 * xfns.c (Fx_backspace_delete_keys_p): Add comment about the
3a441526
JD
989 reason for the approach in the code.
990
82ec225b
KS
9912005-02-07 Kim F. Storm <storm@cua.dk>
992
993 * undo.c (Fprimitive_undo): Record max one dummmy apply element.
994
ba2c991c
RS
9952005-02-06 Richard M. Stallman <rms@gnu.org>
996
997 * eval.c (Frun_hook_with_args)
998 (Frun_hook_with_args_until_success)
999 (Frun_hook_with_args_until_failure): Doc fixes.
1000
e120ea40
AS
10012005-02-05 Andreas Schwab <schwab@suse.de>
1002
3419757d 1003 * sysdep.c (sys_subshell): Properly terminate execlp argument list.
e120ea40 1004
31f16913
JD
10052005-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1006
1007 * xselect.c (Fx_send_client_event, x_handle_dnd_message): Handle
1008 the longs in a XClientMessageEvent correctly when long is 64 bits.
1009
6082a820
EZ
10102005-02-05 Eli Zaretskii <eliz@gnu.org>
1011
1012 * xfaces.c (face_color_supported_p): Use HAVE_WINDOW_SYSTEM
1013 instead of HAVE_X_WINDOWS, for non-X windowed sessions.
1014
0e95095b
JD
10152005-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1016
1017 * xmenu.c (menubar_selection_callback): Force out GTK buffered
1018 events so the menu event comes after them. This is to prevent sit-for
1019 from exiting on buffered events directly after a menu selection,
1020 lisp code for Help => About Emacs uses sit-for.
1021
1022 * gtkutil.c (create_menus): Connect selection-done event instead of
1023 the deactivate event to deactivate_cb. This will make the last
1024 leave event come before the call to deactivate_cb, so the leave
1025 event does not make sit-for exit after a menu selection.
1026
5bb6a3c1
KS
10272005-02-03 Kim F. Storm <storm@cua.dk>
1028
1029 * dispnew.c (build_frame_matrix_from_leaf_window)
1030 [!GLYPH_DEBUG]: Fix xassert.
1031
1032 * xfaces.c (x_free_gc) [!GLYPH_DEBUG]: Fix xassert.
1033
1034 * xfns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
1035
e9859e26
YM
10362005-02-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1037
1038 * mac.c: Use MAC_OS_X_VERSION_MAX_ALLOWED to conditionalize by
1039 the compiling OS version.
1040
1041 * macfns.c (x_create_tip_frame): Likewise.
1042
3419757d 1043 * macterm.c (mac_draw_string_common, x_make_frame_visible): Likewise.
e9859e26 1044
4e07258f
RS
10452005-02-03 Richard M. Stallman <rms@gnu.org>
1046
1047 * xterm.c (x_error_quitter): On GCC 3 and up, specify noinline.
1048
1049 * xdisp.c (echo_area_display): Clear echo_message_buffer.
1050
1051 * buffer.c (Fbury_buffer): Doc fix.
1052
4a34b529
ST
10532005-02-02 Steven Tamm <steventamm@mac.com>
1054
7e26f91b 1055 * macfns.c (unwind_create_frame): Fix compile error due to
f6c62d96 1056 xassert being uncondition, but predicate is.
7e26f91b 1057 * dispnew.c (update_window): Fix compile error due to
f6c62d96 1058 xassert being uncondition, but predicate is.
4a34b529 1059
d78f30b8
MB
10602005-02-02 Miles Bader <miles@gnu.org>
1061
1062 * dispextern.h (xassert): Enable unconditionally.
1063
b044278d
KS
10642005-02-02 Kim F. Storm <storm@cua.dk>
1065
1066 * undo.c (Fprimitive_undo): Fix dummy apply undo entry.
1067
56072160
KH
10682005-02-02 Kenichi Handa <handa@m17n.org>
1069
1070 * casefiddle.c (casify_object): Enable changing characters of
1071 different byte length.
1072 (casify_region): Fix loop condition, args to replace_range_2, and
1073 update opoint_byte.
1074
f4a5a485 1075 * insdel.c (replace_range_2): Fix bugs in adjusting markers and point.
56072160 1076
5e1674c5
KS
10772005-02-01 Kim F. Storm <storm@cua.dk>
1078
1079 * xdisp.c (back_to_previous_visible_line_start): Reset iterator
1080 stack before calling handle_display_prop.
1081
fb89c330
KS
10822005-01-31 Kim F. Storm <storm@cua.dk>
1083
1084 * undo.c (Qapply): New lisp var.
1085 (syms_of_undo): Intern and staticpro it.
1086 (Fprimitive_undo): Support formats (apply FUNNAME . ARGS) and
1087 (apply DELTA BEG END FUNNAME . ARGS) instead of (FUNNAME . ARGS).
1088
1089 * buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix.
1090
7bf72fa6
JH
10912005-01-30 Jesper Harder <harder@phys.au.dk>
1092
a050b1a9
KS
1093 * macterm.c (syms_of_macterm) <mac-reverse-ctrl-meta>
1094 <mac-emulate-three-button-mouse>: Fix docstring indentation.
7bf72fa6 1095
03c64f2e
LT
10962005-01-29 Luc Teirlinck <teirllm@auburn.edu>
1097
1098 * undo.c (syms_of_undo) <undo-outer-limit>: Doc update.
6de38aa3 1099 Increase value to 3 Meg.
03c64f2e 1100
49b8b5dc
JD
11012005-01-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1102
1103 * xfns.c (show_hourglass): Use FRAME_X_WINDOW as parent for GTK,
1104 button events are not received otherwise.
1105
5a92a9eb
RS
11062005-01-29 Richard M. Stallman <rms@gnu.org>
1107
1108 * buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix.
1109
1110 * undo.c (Fprimitive_undo): Handle (FUNNAME . ARGS) by calling FUNNAME.
1111
5c243ee4
SM
11122005-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
1113
1114 * keymap.c (access_keymap): YAILOM.
1115
caf533af
KS
11162005-01-27 Kim F. Storm <storm@cua.dk>
1117
1118 * xdisp.c (get_phys_cursor_geometry): New function to calculate
1119 phys cursor position and size for hollow cursor. Position is
1120 aligned with get_glyph_string_clip_rect and ensures that a hollow
1121 cursor is shown, even when the actual glyph is not visible.
1122
1123 * dispextern.h (get_phys_cursor_geometry): Add prototype.
1124
1125 * xterm.c (x_clip_to_row): Ensure y >= 0.
1126 (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
1127
1128 * w32term.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
1129
1130 * macterm.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
1131
043f7f73
SM
11322005-01-27 Stefan Monnier <monnier@iro.umontreal.ca>
1133
1134 * xterm.c (x_error_quitter): Add a prototype. Make it static again.
1135
889f3641
KS
11362005-01-27 Kim F. Storm <storm@cua.dk>
1137
1138 * xdisp.c (get_glyph_string_clip_rect): Always show a cursor
1139 glyph, even when row is only partially visible and actual cursor
1140 position is not visible.
1141
29099c2f
RS
11422005-01-24 Richard M. Stallman <rms@gnu.org>
1143
1144 * xterm.c (x_error_quitter): No longer static, and moved after
1145 x_error_handler.
1146
6adb6f01
KS
11472005-01-24 Kim F. Storm <storm@cua.dk>
1148
1149 * xdisp.c (move_it_by_lines): If we move forward after going too
1150 far back, cancel move if end position is same as start position.
1151
4d904fa0
ST
11522005-01-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1153
1154 * dispextern.h (struct glyph_string): New members clip_head and
1155 clip_tail.
6adb6f01 1156
4d904fa0
ST
1157 * xdisp.c (get_glyph_string_clip_rect): Restrict horizontal clip
1158 region to the area between clip_head and clip_tail.
1159 (draw_glyphs): Record the area that need to be actually redrawn to
1160 the new variables clip_head and clip_tail when there are
1161 overhangs. Set values of these variables to the corresponding
1162 members in struct glyph_string. Refine x coordinates for
1163 notice_overwritten_cursor using clip_head and clip_tail.
6adb6f01 1164
4d904fa0
ST
1165 * macgui.h (STORE_XCHARSETSTRUCT): New macro.
1166
1167 * macterm.c (mac_compute_glyph_string_overhangs): Implement with
1168 QDTextBounds.
1169 (x_draw_glyph_string): Don't fill the background of the successor
6adb6f01 1170 of a glyph with a right overhang if the successor will draw a cursor.
4d904fa0 1171 (XLoadQueryFont): Obtain font metrics using QDTextBounds.
6adb6f01 1172 (x_redisplay_interface): Add entry for compute_glyph_string_overhangs.
4d904fa0 1173
f2417699
KS
11742005-01-24 Kim F. Storm <storm@cua.dk>
1175
6f67f013
KS
1176 * window.c (window_scroll_pixel_based): Fix scrolling in the wrong
1177 direction if window height was smaller than next-screen-context-lines.
1178 Now always scroll at least one line in the requested direction.
1179 Ensure that we actually do scroll backwards when requested to do so.
1180
f2417699
KS
1181 * xdisp.c (redisplay_window): Only try to make cursor line fully
1182 visible once (to avoid redisplay loop).
1183
a354b72c
KS
11842005-01-23 Kim F. Storm <storm@cua.dk>
1185
6b3d88f7 1186 * window.c (Fpos_visible_in_window_p): Simplify return value for
8f958b40 1187 partially visible rows.
6b3d88f7
KS
1188 (window_scroll_pixel_based): Adapt to that change.
1189
5c20cae2
KS
1190 * window.c (window_scroll_pixel_based): Force moving to next line
1191 if scrolling doesn't move start point, e.g. if looking at tall image.
1192
a354b72c 1193 * xdisp.c (pos_visible_p): Return 0 if non-interactive.
5c20cae2
KS
1194 Clear last_height before calling line_bottom_y to get real height.
1195 Fix calculation of y.
a354b72c 1196
d9e7c622
ST
11972005-01-22 Steven Tamm <steventamm@mac.com>
1198
1199 * s/darwin.h: Removed PTY_ITERATION from here.
043f7f73 1200 (DARWIN): Define.
7e26f91b 1201
d9e7c622
ST
1202 * process.c (init_process): Default process-connection-type to
1203 nil on darwin 6 or less, t if it is 7 or higher. This way the
1204 broken pty behavior is still allowed on darwin 6 for interactive
1205 processes for people that know what they are doing.
1206
d00e399a
KS
12072005-01-22 Kim F. Storm <storm@cua.dk>
1208
1209 * window.c (auto_window_vscroll_p): New boolean.
1210 (syms_of_window): DEFVAR_BOOL it.
1211 (Fpos_visible_in_window_p): Extend return value to include RTOP
1212 and RBOT values if FULLY is nil.
1213 (window_scroll_pixel_based): Adjust vscroll for partially visible
1214 rows if auto_window_vscroll_p is set.
1215 (Fset_window_vscroll): Do nothing if vscroll is not modified.
1216
1217 * xdisp.c (pos_visible_p): Replace FULLY arg by RTOP and RBOT args
1218 to return number of partially invisible pixels at top and bottom
1219 of the dislay row at POS.
1220
1221 * lisp.h (pos_visible_p): Fix prototype.
1222
f95a20e7
RS
12232005-01-21 Richard M. Stallman <rms@gnu.org>
1224
1225 * fileio.c (Fcopy_file): Doc fix.
1226
eee141ce
JD
12272005-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1228
1229 * gtkutil.c (xg_tool_bar_detach_callback): Remove unused variable bw.
1230 (xg_get_file_name): Move declaration ofx_use_old_gtk_file_dialog to
1231 start of function for older compilers.
1232
6f771c32
RS
12332005-01-20 Richard M. Stallman <rms@gnu.org>
1234
1235 * editfns.c (Fmessage): If arg is "", return "" (as before).
1236
1237 * keymap.c (access_keymap): Protect from bad value of meta_prefix_char.
1238
1239 * .gdbinit (xgetptr, xgetint, xgettype): Copy $arg0 into a temp
1240 variable.
1241
a15252fd
ST
12422005-01-20 Steven Tamm <steventamm@mac.com>
1243
043f7f73 1244 * editfns.c (Voperating_system_release): Add.
a15252fd
ST
1245 (init_editfns): Assign new variable operating-system-release
1246 based on call to uname if available.
043f7f73 1247 (get_operating_system_release): Add function to
d00e399a 1248 allow c-level access to operating system release.
a15252fd
ST
1249
1250 * config.h: Regenerated.
1251
043f7f73
SM
1252 * s/darwin.h (PTY_ITERATION): Don't allow PTYs on darwin 6 or less.
1253 (MIN_PTY_KERNEL_VERSION): Define minimum kernel version for
a15252fd
ST
1254 using ptys as '7'.
1255
3d6a4b2d
KS
12562005-01-20 Kim F. Storm <storm@cua.dk>
1257
62fc9b0f
KS
1258 * alloc.c (STRING_MARKED_P, VECTOR_MARKED_P): Return boolean.
1259
c310aca4
KS
1260 * xterm.c (x_draw_glyph_string_box): Fix last_x for full width rows.
1261 Thanks to Chong Yidong <cyd@stupidchicken.com> for debugging this.
1262
1263 * macterm.c (x_draw_glyph_string_box): Likewise.
1264
1265 * w32term.c (x_draw_glyph_string_box): Likewise.
1266
3d6a4b2d
KS
1267 * indent.c (Fvertical_motion): Temporarily disable selective display.
1268
27c8be45
KS
12692005-01-19 Kim F. Storm <storm@cua.dk>
1270
77db5cf3
KS
1271 * xdisp.c (note_mode_line_or_margin_highlight): Fix :pointer
1272 image property.
1273
27c8be45
KS
1274 * fns.c (sweep_weak_table): Advance prev pointer when we keep a pair.
1275
81f498dc
KS
12762005-01-18 Kim F. Storm <storm@cua.dk>
1277
1278 * xdisp.c (fast_find_position): Backtrack to find first row if
1279 charpos is inside a display overlay that spans multiple lines.
1280
1cdb0707
KH
12812005-01-18 Kenichi Handa <handa@m17n.org>
1282
1283 * coding.c (decode_coding_iso2022): Translate invalid codes if
1284 translation-table is specified.
1285
677159ce
KS
12862005-01-18 Kim F. Storm <storm@cua.dk>
1287
1288 * xdisp.c (back_to_previous_visible_line_start): Undo 2004-12-28
1289 change. If handle_display_prop indicates newline is replaced by
1290 image or text, move back to start of relevant overlay or interval
1291 and continue scan from there. Simplify.
1292
977284cc
KS
12932005-01-17 Kim F. Storm <storm@cua.dk>
1294
043f7f73
SM
1295 * dispnew.c (mode_line_string, marginal_area_string):
1296 Fix off-by-one error in search for glyph.
977284cc 1297
e24531b7
KS
12982005-01-16 Kim F. Storm <storm@cua.dk>
1299
1300 * macterm.c (syms_of_macterm) <mac-allow-anti-aliasing>: Doc fix.
1301
5ddd7664
ST
13022005-01-16 Steven Tamm <steventamm@mac.com>
1303
043f7f73 1304 * macterm.c (mac_to_x_fontname): Remove spurious argument.
5ddd7664 1305
fc2ff44b
AS
13062005-01-16 Andreas Schwab <schwab@suse.de>
1307
1308 * macterm.c (mac_draw_string_common): Fix compilation on OSX 10.1.
1309
50af5100
JD
13102005-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1311
1312 * fringe.c (Fdefine_fringe_bitmap, init_fringe): When assigning
1313 fringe_faces, cast result from xmalloc/xrealloc to Lisp_Object *.
1314
a2d5fca0
JD
13152005-01-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1316
1317 * keyboard.c (READABLE_EVENTS_DO_TIMERS_NOW)
e24531b7
KS
1318 (READABLE_EVENTS_FILTER_EVENTS, READABLE_EVENTS_IGNORE_SQUEEZABLES):
1319 New flags for readable_events.
043f7f73 1320 (get_filtered_input_pending, readable_filtered_events): Remove.
a2d5fca0
JD
1321 (tracking_off): Call readable_events and get_input_pending with
1322 flag READABLE_EVENTS_DO_TIMERS_NOW.
1323 (readable_events): Move code from old readable_filtered_events here,
1324 but check new READABLE_EVENTS_* in argument flags instead of previous
1325 two boolean arguments do_timers_now and filter_events.
1326 If we are doing mouse tracking and the mouse moved, return only if
1327 READABLE_EVENTS_IGNORE_SQUEEZABLES is not set in flags.
1328 (swallow_events): Call get_input_pending with flag
1329 READABLE_EVENTS_DO_TIMERS_NOW.
e24531b7 1330 (get_input_pending): Move code from old get_filtered_input_pending
a2d5fca0
JD
1331 here. Replace boolean arguments do_timers_now, filter_events with
1332 flags, and pass flags to readable_events. Document new
1333 READABLE_EVENTS_* flags.
1334 (detect_input_pending_ignore_squeezables): New function.
1335 (detect_input_pending_run_timers): Call get_input_pending with flag
1336 READABLE_EVENTS_DO_TIMERS_NOW.
1337 (Finput_pending_p): Call get_input_pending with flags
1338 READABLE_EVENTS_DO_TIMERS_NOW and READABLE_EVENTS_FILTER_EVENTS.
1339
1340 * dispnew.c (update_window, update_frame_1): Replace calls to
1341 detect_input_pending with detect_input_pending_ignore_squeezables
e24531b7 1342 so that redisplay is not paused if the event queue contains only
a2d5fca0
JD
1343 mouse movements.
1344
1345 * lisp.h: Declare detect_input_pending_ignore_squeezables.
1346
42afbcda
ST
13472005-01-15 Steven Tamm <steventamm@mac.com>
1348
e24531b7
KS
1349 * macterm.c (Vmac_use_core_graphics): Declare variable for
1350 mac-allow-anti-aliasing.
1351 (syms_of_macterm): DEFVAR_LISP and initialize it.
743d0696 1352 (mac_draw_string_common): Use core graphics text rendering if
0530c679 1353 mac-allow-anti-aliasing is enabled.
743d0696 1354
42afbcda
ST
1355 * macfns.c (Fx_file_dialog): Save As dialog includes only the
1356 file name in the text box.
1357
9cdd4884
ST
13582005-01-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1359
043f7f73
SM
1360 * macfns.c (x_set_foreground_color, x_set_background_color):
1361 Sync with xfns.c.
9cdd4884
ST
1362 (mac_window, x_create_tip_frame): Use XSetWindowBackground.
1363 * macterm.c (XSetBackground, XSetWindowBackground): New functions.
1364 * macterm.h (XSetBackground, XSetWindowBackground): Add externs.
1365
88948d55
KS
13662005-01-14 Kim F. Storm <storm@cua.dk>
1367
1368 * keyboard.c (Fposn_at_x_y): Add optional arg WHOLE.
1369
20d6de82
RS
13702005-01-13 Richard M. Stallman <rms@gnu.org>
1371
1372 * keymap.c (Fcurrent_active_maps): Ignore Voverriding_local_map
1373 if Voverriding_terminal_local_map is non-nil.
1374
1375 * keyboard.c (syms_of_keyboard): Doc fix.
1376
f75a592e
KS
13772005-01-13 Kim F. Storm <storm@cua.dk>
1378
1379 * xdisp.c (Fformat_mode_line): Fix last change. Remove NO_PROPS arg
1380 (specify 0 for FACE instead). Reorder arg list. Doc fix.
1381
28f94a34
RS
13822005-01-12 Richard M. Stallman <rms@gnu.org>
1383
1384 * xdisp.c (Fformat_mode_line): New arg FACE specifies a default
1385 face property for characters that don't specify one.
1386
1387 * fns.c (Frequire): Record in load-history unconditionally.
1388
57a230b1
KS
13892005-01-10 Kim F. Storm <storm@cua.dk>
1390
1391 * dispextern.h (merge_faces): Rename from merge_into_realized_face.
1392
1393 * xfaces.c (merge_faces): Rename from merge_into_realized_face.
1394 Callers changed.
1395 Add support to merge with lisp face id too (if face_name is t).
1396
1397 * xdisp.c (get_next_display_element, next_element_from_display_vector):
1398 Don't lookup lface_id from display table glyphs here; instead use
1399 merge_faces to merge the lisp face id into current face.
1400
8ab2c119
KS
14012005-01-09 Kim F. Storm <storm@cua.dk>
1402
1403 * dispextern.h (struct it): New member dpvec_face_id.
1404 (merge_into_realized_face): Add prototype.
1405
1406 * xfaces.c (merge_into_realized_face): New function. Used to
1407 merge escape-glyph face or face from display table into current face.
1408
1409 * xdisp.c (Vshow_nonbreak_escape): New lisp var.
1410 (syms_of_xdisp): DEFVAR_LISP it.
1411 (escape_glyph_face): Remove var.
1412 (redisplay_window): Don't initialize it.
1413 (setup_for_ellipsis, get_next_display_element):
1414 Set it->dpvec_face_id to -1.
1415 (get_next_display_element): Test Vshow_nonbreak_escape.
1416 Do not setup escape_glyph_face.
1417 Properly merge escape-glyph face or face from display table with
043f7f73
SM
1418 current face for escape and control characters.
1419 Set it->dpvec_face_id to relevant face id instead of adding it to each
8ab2c119
KS
1420 element of display vector.
1421 (next_element_from_display_vector): If it->dpvec_face_id is set,
1422 use that instead of lface_id from glyph itself.
1423
e0910857
JD
14242005-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1425
1426 * xterm.h (struct x_output): New member, toolbar_detached.
1427
1428 * gtkutil.c (xg_create_frame_widgets): Set initial tool bar height to
1429 38.
1430 (xg_tool_bar_detach_callback): Set toolbar_detached to 1.
1431 (xg_tool_bar_attach_callback): Set toolbar_detached to 0.
1432 (xg_create_tool_bar): Initialize toolbar_detached.
1433 (update_frame_tool_bar): Only set FRAME_TOOLBAR_HEIGHT (f) if
1434 toolbar_detached is zero.
1435
ff59904a
JD
14362005-01-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1437
9b85e63d
JD
1438 * xmenu.c (create_and_show_popup_menu): Pass zero as button to
1439 gtk_menu_popup if not for_click, so callbacks for the menu are called.
1440
ff59904a
JD
1441 * gtkutil.c (xg_gtk_scroll_destroy, xg_create_scroll_bar)
1442 (xg_tool_bar_callback, xg_tool_bar_help_callback)
043f7f73 1443 (update_frame_tool_bar): Cast to EMACS_INT to avoid compiler warning.
ff59904a
JD
1444
1445 * xselect.c (x_get_foreign_selection, x_fill_property_data)
8ab2c119 1446 (Fx_get_atom_name, Fx_send_client_event): Replace XFLOAT with
ff59904a
JD
1447 XFLOAT_DATA to get extract number from Lisp object.
1448
f9a23a6f
KS
14492005-01-07 Kim F. Storm <storm@cua.dk>
1450
1451 * xdisp.c (set_iterator_to_next): Fix 2004-12-13 change.
1452 Set stop_charpos to current charpos instead of 0.
1453
28f94a34
RS
14542005-01-06 Nick Roberts <nickrob@snap.net.nz>
1455
1456 * xdisp.c (Fformat_mode_line): First arg now required.
1457
a6fffcdc
ST
14582005-01-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1459
1460 * macterm.c (XLoadQueryFont): Correctly handle 0 size
1461 font widths that are returned from some Japanese fonts.
1462
c35b0c6b
KS
14632005-01-06 Kim F. Storm <storm@cua.dk>
1464
1465 * fringe.c (fringe_faces): Change to Lisp_Object pointer.
1466 (draw_fringe_bitmap_1): Lookup user defined fringe faces here.
1467 (destroy_fringe_bitmap): Set fringe_faces element to nil.
1468 (Fdefine_fringe_bitmap, init_fringe): Change allocation of
1469 fringe_faces array and init elements to nil.
1470 (Fset_fringe_bitmap_face): Set fringe_faces to face name instead of
1471 non-persistent face id.
1472 (mark_fringe_data): New function for GC.
1473
1474 * alloc.c (mark_fringe_data): Declare extern.
1475 (Fgarbage_collect): Call mark_fringe_data.
1476
1477 * alloc.c (overrun_check_free): Invalidate freed memory if
1478 XMALLOC_CLEAR_FREE_MEMORY is defined.
1479
e0e76ab9
ST
14802005-01-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1481
1482 * macfns.c: Include sys/param.h.
1483 [TARGET_API_MAC_CARBON] (mac_nav_event_callback): New declaration
1484 and function.
1485 [TARGET_API_MAC_CARBON] (Fx_file_dialog): Use MAXPATHLEN for size
1486 of filename string. Set event callback function when creating
1487 dialog boxes. Add code conversions for filenames. Don't dispose
1488 apple event descriptor record if failed to create it.
1489
1490 * macterm.c: Include sys/param.h.
1491 [USE_CARBON_EVENTS] (mac_handle_window_event): Add handler for
1492 kEventWindowUpdate.
1493 (install_window_handler) [USE_CARBON_EVENTS]: Register it.
1494 (do_ae_open_documents) [TARGET_API_MAC_CARBON]: Get FSRef instead
1495 of FSSpec from apple event descriptor record.
1496 (do_ae_open_documents) [TARGET_API_MAC_CARBON]: Use MAXPATHLEN for
1497 size of filename string.
1498 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Likewise.
1499 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Return error when a
1500 file dialog is in action.
043f7f73
SM
1501 [TARGET_API_MAC_CARBON] (mac_do_track_drag): Likewise.
1502 Reject only when there are no filename items. Set background color
e0e76ab9 1503 before (un)highlighting the window below the dragged items.
2313f861 1504 (XTread_socket) [USE_CARBON_EVENTS]: Don't call do_window_update.
e0e76ab9 1505
043bc640
KH
15062005-01-05 Romain Francoise <romain@orebokech.com>
1507
1508 * term.c (encode_terminal_code): Fix buffer size computation.
1509
dd496df6
RS
15102005-01-04 Richard M. Stallman <rms@gnu.org>
1511
1512 * xdisp.c (Fformat_mode_line): Doc fix.
1513
026cdede
SM
15142005-01-04 Stefan Monnier <monnier@iro.umontreal.ca>
1515
1516 * alloc.c (refill_memory_reserve): Move.
1517 (emacs_blocked_free, emacs_blocked_malloc, emacs_blocked_realloc)
1518 (reset_malloc_hooks, uninterrupt_malloc) [SYNC_INPUT]: Don't define.
1519
d57c7572
RS
15202005-01-03 Richard M. Stallman <rms@gnu.org>
1521
1522 * window.c (window_scroll_pixel_based): Don't correct preserve_y
1523 for CURRENT_HEADER_LINE_HEIGHT when moving backwards.
1524
b14f868c
JR
15252005-01-03 Jason Rumney <jasonr@gnu.org>
1526
1527 * w32bdf.c (w32_load_bdf_font): Set fontp->average_width and
1528 fontp->space_width to FONT_WIDTH so they are valid.
1529
1530 * w32fns.c (w32_load_system_font): Set FONT_WIDTH to maximum, not
1531 average width. Set fontp->average_width and fontp->space_width to
1532 their appropriate values.
1533
1534 * w32term.c (x_new_font): Set FRAME_COLUMN_WIDTH to
1535 fontp->average_width, not FONT_WIDTH. Set FRAME_SPACE_WIDTH to
1536 fontp->space_width.
1537
e169f939
ST
15382005-01-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1539
1540 * macterm.c (x_new_font): Set FRAME_SPACE_WIDTH.
1541 (x_font_min_bounds, XLoadQueryFont): Use the correct font width
1542 metrics for max and min bounds.
1543 (x_load_font): Correctly calculate average font width metrics.
1544
19996af4
RS
15452005-01-02 Richard M. Stallman <rms@gnu.org>
1546
1547 * alloc.c (Fgarbage_collect): Don't truncate_undo_list on dead buffers.
1548
42d02da0
JD
15492004-12-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1550
1551 * xterm.c (handle_one_xevent): Clear area in expose event for GTK.
1552
1db7dd46
RS
15532004-12-31 Richard M. Stallman <rms@gnu.org>
1554
b437860a
RS
1555 * xdisp.c (setup_for_ellipsis, get_next_display_element):
1556 Set it->ellipsis_p to 1 or 0.
1557 (display_line): Record whether row ends in mid-ellipsis.
1558 (set_cursor_from_row): If ends in ellipsis. find start of it.
1559 (cursor_row_p): If PT's at the end of the ellipsis the row
1560 ends within, don't display cursor on this row.
1561
1562 * dispextern.h (struct it): New element ellipsis_p.
1563 (struct glyph_row): New element ends_in_ellipsis_p.
1564
1565 * xdisp.c (BUFFER_POS_REACHED_P): We haven't reached the specified
1566 position if we're reading from something other than the buffer.
1567
1db7dd46
RS
1568 * window.c (window_scroll_pixel_based): Only look at
1569 Vscroll_preserve_screen_position if the old PT can't be kept.
1570 (syms_of_window) <scroll-preserve-screen-position>: Doc fix.
1571
1225f637
KS
15722004-12-30 Kim F. Storm <storm@cua.dk>
1573
1574 * xdisp.c (get_line_height_property): New function extracted from
1575 original calc_line_height_property.
1576 (calc_line_height_property): Rework. Handle t and (nil . ratio).
1577 (x_produce_glyphs): Use them to handle line-height and
1578 line-spacing according to new height spec.
1579 (Qtotal): Remove.
33b2f4ea 1580 (syms_of_xdisp): Remove intern and staticpro for Qtotal.
1225f637 1581
c243063e
KH
15822004-12-30 Kenichi Handa <handa@m17n.org>
1583
1584 * fileio.c (Finsert_file_contents): Don't use
1585 current_buffer->buffer_file_coding_system even if REPLACE is
043f7f73 1586 non-nil. Call Qafter_insert_file_set_coding with the second arg VISIT.
c243063e
KH
1587
1588 * fontset.h (struct font_info): New members space_width and
1589 average_width.
1590
1591 * frame.h (struct frame): New member space_width.
1592 (FRAME_SPACE_WIDTH): New macro.
1593
1594 * xterm.h (struct x_display_info): New member Xatom_AVERAGE_WIDTH.
1595
1596 * xterm.c (x_new_font): Set FRAME_COLUMN_WIDTH to
1597 fontp->average_width, not FONT_WIDTH. Set FRAME_SPACE_WIDTH to
b14f868c 1598 fontp->space_width.
043f7f73 1599 (x_load_font): Calculate fontp->space_width and fontp->average_width.
c243063e
KH
1600 (x_term_init): Initialize dpyinfo->Xatom_AVERAGE_WIDTH.
1601
1602 * xdisp.c (x_produce_glyphs): Calculate tab width by
1603 FRAME_SPACE_WIDTH, not FRAME_COLUMN_WIDTH.
1604
456e761b
ST
16052004-12-29 Sanghyuk Suh <han9kin@mac.com>
1606
1607 * macterm.c (SelectionRange): Add Xcode position apple event struct.
043f7f73 1608 (do_ae_open_documents): Handle Xcode-style file position open events.
456e761b 1609
188577ce
LT
16102004-12-29 Luc Teirlinck <teirllm@auburn.edu>
1611
1612 * buffer.c (syms_of_buffer) <vertical-scroll-bar>: Correct typo.
1613
99ec74b9
RS
16142004-12-29 Richard M. Stallman <rms@gnu.org>
1615
1616 * buffer.c (syms_of_buffer) <vertical-scroll-bar>: Doc fix.
1617
30c92fab
ST
16182004-12-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1619
1620 * macfns.c (install_window_handler): Modify extern to return OSErr
1621 value.
1622 (mac_window): Handle return value of install_window_handler.
1623
1624 * macterm.c (reflect_byte): Remove function.
1625 (mac_create_bitmap_from_bitmap_data): Don't call reflect_byte.
1626 Lookup table instead.
1627 (mac_do_font_lists): Simplify calculation of the longest
1628 nonspecial string.
1629 (init_mac_drag_n_drop): Remove function and declaration.
1630 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
1631 init_mac_drag_n_drop.
1632 (mac_do_track_drag): New function and declaration.
1633 (install_window_handler): Return OSErr value.
043f7f73
SM
1634 (install_window_handler) [TARGET_API_MAC_CARBON]:
1635 Register handlers for tracking/receiving drag-and-drop items.
30c92fab 1636 (do_ae_open_documents): Generate unibyte strings for filenames.
043f7f73
SM
1637 (mac_do_receive_drag) [TARGET_API_MAC_CARBON] : Likewise.
1638 Reject only non-filename items. Set event modifiers, and return value.
30c92fab 1639
4b982924
DN
16402004-12-28 Dan Nicolaescu <dann@ics.uci.edu>
1641
1642 * coding.c (decode_coding): Fix previous change.
1643
93fdf45f
RS
16442004-12-28 Richard M. Stallman <rms@gnu.org>
1645
1646 * xdisp.c (back_to_previous_visible_line_start):
1647 Don't call handle_display_prop.
1648
5bdca8af
DN
16492004-12-28 Dan Nicolaescu <dann@ics.uci.edu>
1650
1651 * coding.c (decode_coding_XXX, decode_composition_emacs_mule)
1652 (decode_coding_emacs_mule, encode_coding_emacs_mule)
1653 (decode_coding_iso2022, encode_designation_at_bol)
1654 (encode_coding_iso2022, decode_coding_sjis_big5, decode_eol)
1655 (decode_coding): Constify arguments and local vars.
1656
33385c6f
JD
16572004-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1658
1659 * xmenu.c (popup_get_selection): Only pop down dialogs
1660 on C-g and Escape.
95bdef2e 1661 (popup_get_selection): Remove parameter down_on_keypress.
043f7f73
SM
1662 (create_and_show_popup_menu, create_and_show_dialog):
1663 Remove parameter down_on_keypress to popup_get_selection.
33385c6f 1664
b15325b2
ST
16652004-12-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1666
1667 * dispextern.h: Change HAVE_CARBON to MAC_OS.
1668 (struct glyph_string): Likewise.
a2c7e69a 1669
b15325b2
ST
1670 * emacs.c (main) [MAC_OS8]: Call mac_term_init instead of
1671 mac_initialize.
a2c7e69a 1672
b15325b2
ST
1673 * fileio.c (Fnext_read_file_uses_dialog_p, Fread_file_name):
1674 Change TARGET_API_MAC_CARBON to HAVE_CARBON.
a2c7e69a 1675
b15325b2 1676 * fns.c (vector): Change MAC_OSX to MAC_OS.
a2c7e69a 1677
b15325b2
ST
1678 * frame.c (x_set_frame_parameters, x_report_frame_params)
1679 (x_set_fullscreen): Remove #ifndef HAVE_CARBON.
043f7f73
SM
1680 (x_set_border_width, Vdefault_frame_scroll_bars):
1681 Change HAVE_CARBON to MAC_OS.
a2c7e69a 1682
b15325b2
ST
1683 * image.c [MAC_OS]: Include sys/stat.h.
1684 [MAC_OS && !MAC_OSX]: Include sys/param.h, ImageCompression.h, and
1685 QuickTimeComponents.h.
a2c7e69a 1686
b15325b2
ST
1687 * mac.c [!MAC_OSX] (mac_wait_next_event): Add extern.
1688 [!MAC_OSX] (select): Use mac_wait_next_event.
043f7f73 1689 [!MAC_OSX] (run_mac_command): Change EXEC_SUFFIXES to Vexec_suffixes.
b15325b2
ST
1690 [!MAC_OSX] (select, run_mac_command): Change `#ifdef
1691 TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
1692 (mac_clear_font_name_table): Add extern.
1693 (Fmac_clear_font_name_table): New defun.
1694 (syms_of_mac): Defsubr it.
1695 [MAC_OSX] (SELECT_POLLING_PERIOD_USEC): New define.
1696 [MAC_OSX] (select_and_poll_event): New function.
1697 [MAC_OSX] (sys_select): Use it.
1698 [MAC_OSX && SELECT_USE_CFSOCKET] (socket_callback): New function.
1699 [MAC_OSX && SELECT_USE_CFSOCKET]
1700 (SELECT_TIMEOUT_THRESHOLD_RUNLOOP, EVENT_CLASS_SOCK): New defines.
1701 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]: Use CFSocket and
1702 RunLoop for simultaneously monitoring two kinds of inputs, window
1703 events and process outputs, without periodically polling.
a2c7e69a 1704
b15325b2
ST
1705 * macfns.c (mac_initialized): Remove extern.
1706 (stricmp): Put in #if 0. All callers changed to use xstricmp in
1707 xfaces.c.
043f7f73
SM
1708 (strnicmp): Decrement `n' at the end of each loop, not the beginning.
1709 (check_mac): Use the term "Mac native windows" instead of "Mac OS".
b15325b2
ST
1710 (check_x_display_info, x_display_info_for_name): Sync with xfns.c.
1711 (mac_get_rdb_resource): New function (from w32reg.c).
1712 (x_get_string_resource): Use it.
1713 (install_window_handler): Add extern.
1714 (mac_window): New function.
043f7f73
SM
1715 (Fx_create_frame): Use it instead of make_mac_frame.
1716 Set parameter for Qfullscreen. Call x_wm_set_size_hint.
b15325b2
ST
1717 (Fx_open_connection, Fx_close_connection): New defuns.
1718 (syms_of_macfns): Defsubr them.
043f7f73
SM
1719 (x_create_tip_frame) [TARGET_API_MAC_CARBON]:
1720 Add kWindowNoUpdatesAttribute to the window attribute.
b15325b2
ST
1721 (x_create_tip_frame) [!TARGET_API_MAC_CARBON]: Use NewCWindow.
1722 (x_create_tip_frame): Don't call ShowWindow.
1723 (Fx_show_tip): Call ShowWindow.
1724 (Fx_file_dialog): Change `#ifdef TARGET_API_MAC_CARBON' to `#if
1725 TARGET_API_MAC_CARBON'.
1726 (mac_frame_parm_handlers): Set handlers for Qfullscreen.
1727 (syms_of_macfns) [MAC_OSX]: Initialize mac_in_use to 0.
a2c7e69a 1728
043f7f73 1729 * macgui.h [!MAC_OSX]: Don't include Controls.h. Include Windows.h.
b15325b2
ST
1730 (Window): Typedef to WindowPtr and move outside `#if
1731 TARGET_API_MAC_CARBON'.
1732 (XSizeHints): New struct.
a2c7e69a 1733
b15325b2
ST
1734 * macterm.c (x_update_begin, x_update_end)
1735 [TARGET_API_MAC_CARBON]: Disable screen updates during update of a
1736 frame.
1737 (x_draw_glyph_string_background, x_draw_glyph_string_foreground)
1738 [MAC_OS8]: Use XDrawImageString/XDrawImageString16.
1739 (construct_mouse_click): Put in #if 0.
1740 (x_check_fullscreen, x_check_fullscreen_move): Remove decls.
1741 (x_scroll_bar_create, x_scroll_bar_handle_click): Change `#ifdef
1742 TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
1743 (activate_scroll_bars, deactivate_scroll_bars)
1744 [!TARGET_API_MAC_CARBON]: Use ActivateControl/DeactivateControl.
1745 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Reposition window
1746 if the position is neither user-specified nor program-specified.
1747 (x_free_frame_resources): Free size_hints.
043f7f73 1748 (x_wm_set_size_hint): Allocate size_hints if needed. Set size_hints.
b15325b2
ST
1749 (mac_clear_font_name_table): New function.
1750 (mac_do_list_fonts): Initialize font_name_table if needed.
1751 (x_list_fonts): Don't initialize font_name_table. Add BLOCK_INPUT
1752 around mac_do_list_fonts.
1753 (mac_unload_font): New function.
1754 (x_load_font): Add BLOCK_INPUT around XLoadQueryFont.
1755 (init_mac_drag_n_drop, mac_do_receive_drag): Enclose declarations
1756 and definitions with #if TARGET_API_MAC_CARBON.
1757 [USE_CARBON_EVENTS] (mac_handle_window_event): Add decl.
1758 (install_window_handler): Add decl.
1759 (do_window_update): Add BeginUpdate/EndUpdate for the tooltip
1760 window. Use UpdateControls. Get the rectangle that should be
1761 updated and restrict the target of expose_frame to it.
043f7f73 1762 (do_grow_window): Set minimum height/width according to size_hints.
b15325b2
ST
1763 (do_grow_window) [TARGET_API_MAC_CARBON]: Use ResizeWindow.
1764 (do_zoom_window): Don't use x_set_window_size.
1765 [USE_CARBON_EVENTS] (mac_handle_window_event): New function.
1766 (install_window_handler): New function.
1767 [!USE_CARBON_EVENTS] (mouse_region): New variable.
1768 [!USE_CARBON_EVENTS] (mac_wait_next_event): New function.
1769 (XTread_socket) [USE_CARBON_EVENTS]: Move call to
1770 GetEventDispatcherTarget inside BLOCK_INPUT.
1771 (XTread_socket) [!USE_CARBON_EVENTS]: Use mac_wait_next_event.
1772 Update mouse_region when mouse is moved.
1773 (make_mac_frame): Remove.
043f7f73
SM
1774 (make_mac_terminal_frame): Put in #ifdef MAC_OS8.
1775 Initialize mouse pointer shapes. Change values of f->left_pos and
1776 f->top_pos. Don't use make_mac_frame. Use NewCWindow.
1777 Don't call ShowWindow.
b15325b2
ST
1778 (mac_initialize_display_info) [MAC_OSX]: Create mac_id_name from
1779 Vinvocation_name and Vsystem_name.
1780 (mac_make_rdb): New function (from w32term.c).
1781 (mac_term_init): Use it. Add BLOCK_INPUT. Error if display has
1782 already been opened. Don't pass argument to
1783 mac_initialize_display_info. Don't set dpyinfo->height/width.
1784 Add entries to x_display_list and x_display_name_list.
1785 (x_delete_display): New function.
1786 (mac_initialize): Don't call mac_initialize_display_info.
a2c7e69a
KS
1787 (syms_of_macterm) [!MAC_OSX]: Don't call Fprovide.
1788
b15325b2
ST
1789 * macterm.h (check_mac): Add extern.
1790 (struct mac_output): New member size_hints.
1791 (FRAME_SIZE_HINTS): New macro.
1792 (mac_unload_font): Add extern.
a2c7e69a 1793
b15325b2 1794 * xdisp.c (expose_window, expose_frame): Remove kludges for Mac.
a2c7e69a 1795
b15325b2
ST
1796 * xfaces.c (clear_font_table) [MAC_OS]: call mac_unload_font.
1797
92d2947b
RS
17982004-12-27 Richard M. Stallman <rms@gnu.org>
1799
043f7f73 1800 * buffer.c (Fbuffer_disable_undo): Delete (move to simple.el).
ebbd14f1
RS
1801 (syms_of_buffer): Don't defsubr it.
1802
1803 * process.c (list_processes_1): Set undo_list instead
1804 of calling Fbuffer_disable_undo.
1805
043f7f73 1806 * xdisp.c (single_display_spec_string_p): Rename from
92d2947b 1807 single_display_prop_string_p.
043f7f73 1808 (single_display_spec_intangible_p): Rename from
92d2947b 1809 single_display_prop_intangible_p.
043f7f73 1810 (handle_single_display_spec): Rename from handle_single_display_prop.
92d2947b
RS
1811 Rewritten to be easier to understand.
1812
a2c7e69a 1813 Change in load-history format. Functions now get (defun . NAME),
92d2947b
RS
1814 and variables get just NAME.
1815
1816 * data.c (Fdefalias): Use (defun . FN_NAME) in LOADHIST_ATTACH.
1817
1818 * eval.c (Fdefun, Fdefmacro): Use (defun . FN_NAME) in LOADHIST_ATTACH.
1819 (Fdefvaralias, Fdefvar, Fdefconst): Use just SYM in LOADHIST_ATTACH.
1820 (Qdefvar): Var deleted.
1821 (syms_of_eval): Don't initialze it.
1822
1823 * lread.c (syms_of_lread) <load-history>: Doc fix.
1824
9f6fcdc5
JD
18252004-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1826
1827 * xmenu.c (popup_get_selection): Pop down on C-g.
1828 (set_frame_menubar): Install translations for Lucid/Motif/Lesstif that
1829 pops down menu on C-g.
1830 (xdialog_show): If dialog popped down and no button in the dialog was
1831 pushed, call Fsignal to quit.
1832 (xmenu_show): In no toolkit version, if menu returns NO_SELECT call
1833 Fsignal to quit.
1834
1835 * xfns.c (Fx_file_dialog): Motif/Lesstif version: Pop down on C-g.
1836
1837 * gtkutil.c (xg_initialize): Install bindings for C-g so that
1838 dialogs and menus pop down.
1839
d8ca23a0
KH
18402004-12-27 Kenichi Handa <handa@m17n.org>
1841
1842 * coding.c (code_convert_region): Fix calculation of `ratio'.
1843
857ae68b
JD
18442004-12-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1845
133c0116
JD
1846 * gtkutil.c (update_frame_tool_bar): Make the value of
1847 tool-bar-button-margin control margins of images in tool bar.
1848
857ae68b
JD
1849 * alloc.c (check_depth): New variable.
1850 (overrun_check_malloc, overrun_check_realloc): Only add
1851 overhead and write check pattern if check_depth is 1 (to handle
1852 recursive calls). Increase/decrease check_depth in entry/exit.
1853 (overrun_check_free): Only check for overhead if check_depth is 1.
1854 Increase/decrease check_depth in entry/exit.
1855
bd55c35c
JD
18562004-12-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1857
1858 * keyboard.c (input_available_signal): Call SIGNAL_THREAD_CHECK
1859 before touching input_available_clear_time, to avoid accessing it
1860 from multiple threads.
1861
66354420
JR
18622004-12-23 Jason Rumney <jasonr@gnu.org>
1863
1864 * image.c (__WIN32__) [HAVE_NTGUI]: Define for correct behaviour
1865 of JPEG library.
1866
55f4edbc
RS
18672004-12-22 Richard M. Stallman <rms@gnu.org>
1868
1869 * emacs.c (main): If batch mode, set Vundo_outer_limit to nil.
1870
1871 * lisp.h (Vundo_outer_limit): Fix decl.
1872
1873 * undo.c (Vundo_outer_limit): Replaces undo_outer_limit.
1874 Uses changed.
1875 (syms_of_undo): Initialize appropriately.
1876 (truncate_undo_list): If it's nil, there's no limit.
1877
7a0ea9e3
KH
18782004-12-22 Kenichi Handa <handa@m17n.org>
1879
1880 * xselect.c (Fx_get_cut_buffer_internal): Return a unibyte string.
1881
fda2922a
RS
18822004-12-21 Richard M. Stallman <rms@gnu.org>
1883
1884 * eval.c (unwind_to_catch): Clear immediate_quit.
1885
1886 * xdisp.c (get_next_display_element): Display codes 8a0 and 8ad
1887 specially as `\ ' and `\-'.
1888
1889 * keyboard.c (kbd_buffer_store_event_hold):
1890 In the code for while-no-input, handle immediate_quit.
1891
1892 * alloc.c (Fgarbage_collect): Update call to truncate_undo_list.
1893 Call that at the very start.
043f7f73 1894 (undo_limit, undo_strong_limit, undo_outer_limit): Move to undo.c.
fda2922a
RS
1895 (syms_of_alloc): Don't define undo-limit,
1896 undo-strong-limit and undo-outer-limit here.
1897
1898 * undo.c (truncate_undo_list): Return void.
1899 Take just one argument, the buffer.
1900 Make it current, and inhibit recursive GC.
1901 Access and update the undo list directly; return void.
1902 Refer to the undo...limit variables directly.
1903 Test undo_outer_limit only after counting the whole current command.
1904 When it's exceeded, call the function in undo-outer-limit-function.
1905 (undo_limit, undo_strong_limit, undo_outer_limit): From alloc.c.
1906 (Vundo_outer_limit_function): New variable.
1907 (syms_of_undo): Define undo-limit, undo-strong-limit
1908 and undo-outer-limit here, and undo-outer-limit-function.
1909 Doc fixes.
1910
1911 * lisp.h (truncate_undo_list): Update decl.
1912
19132004-12-21 Piet van Oostrum <piet@cs.uu.nl>
1914
1915 * fileio.c (Fread_file_name): Delete duplicates in
1916 file-name-history when history_delete_duplicates is true.
1917
68c69027
ST
19182004-12-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1919
1920 * macterm.c (mac_do_list_fonts): Fix memory leak
1921
134579f2
RS
19222004-12-20 Richard M. Stallman <rms@gnu.org>
1923
1924 * regex.c (re_match_2_internal) <symend, wordend>:
1925 Fix calls to UPDATE_SYNTAX_TABLE_FORWARD.
1926
fbe6152f
ST
19272004-12-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1928
043f7f73
SM
1929 * macterm.c (endif, x_font_name_to_mac_font_name):
1930 Use maccentraleurroman instead of maccentraleuropean
fbe6152f
ST
1931 (mac_c_string_match, mac_do_list_fonts): Speed up font search by
1932 quickly finding a specific font without needing regexps.
1933
fecad3f6
JD
19342004-12-15 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1935
333f1b6f
JD
1936 * syssignal.h: Declare main_thread.
1937 (SIGNAL_THREAD_CHECK): New macro.
1938
1939 * keyboard.c (input_available_signal): Move thread checking code
1940 to macro SIGNAL_THREAD_CHECK and call that macro.
1941 (interrupt_signal): Call SIGNAL_THREAD_CHECK.
1942
1943 * alloc.c (uninterrupt_malloc): Move main_thread to emacs.c.
1944
1945 * emacs.c: Define main_thread.
1946 (main): Initialize main_thread.
1947 (handle_USR1_signal, handle_USR2_signal, fatal_error_signal)
1948 (memory_warning_signal): Call SIGNAL_THREAD_CHECK.
1949
1950 * floatfns.c (float_error): Call SIGNAL_THREAD_CHECK.
1951
1952 * dispnew.c (window_change_signal): Call SIGNAL_THREAD_CHECK.
1953
1954 * sysdep.c (select_alarm): Call SIGNAL_THREAD_CHECK.
1955
043f7f73
SM
1956 * process.c (send_process_trap, sigchld_handler):
1957 Call SIGNAL_THREAD_CHECK.
333f1b6f
JD
1958
1959 * data.c (arith_error): Call SIGNAL_THREAD_CHECK.
1960
1961 * atimer.c (alarm_signal_handler): Call SIGNAL_THREAD_CHECK.
1962
fecad3f6
JD
1963 * xterm.c (xg_scroll_callback): Update XG_LAST_SB_DATA before
1964 returning when xg_ignore_gtk_scrollbar is true.
1965
2a84c6da
KS
19662004-12-14 Kim F. Storm <storm@cua.dk>
1967
1968 * keyboard.c (read_char): Save and restore echo_string when
1969 handling input method.
1970
d9c1ce9d
RS
19712004-12-13 Richard M. Stallman <rms@gnu.org>
1972
1973 * eval.c (syms_of_eval) <quit-flag>: Doc fix.
1974
1975 * keyboard.c (Vthrow_on_input): New variable.
1976 (syms_of_keyboard): Defvar and initialize it.
1977 (kbd_buffer_store_event_hold): Handle Vthrow_on_input.
1978
1979 * lisp.h (QUIT): Check for Vthrow_on_input.
1980 (Vthrow_on_input): Declare it.
1981
a6495ed5
KS
19822004-12-13 Kim F. Storm <storm@cua.dk>
1983
1984 * xdisp.c (set_iterator_to_next): Reset stop_charpos after display
1985 vector.
1986
24a0e22f
RS
19872004-12-12 Richard M. Stallman <rms@gnu.org>
1988
1989 * indent.c (Fvertical_motion): Call move_it_by_lines even if LINES = 0.
1990
1991 * minibuf.c (Fall_completions): Add var `zero' and use it in loop.
1992 (Ftry_completion): Really use outer `zero'; eliminate inner one.
1993
d6d31e57
KH
19942004-12-12 Kenichi Handa <handa@m17n.org>
1995
1996 * term.c (encode_terminal_code): Fix previous change.
1997
6f8ffb88
SM
19982004-12-11 Stefan Monnier <monnier@iro.umontreal.ca>
1999
fb6f5cbf
SM
2000 * keyboard.c (handle_async_input): Remove pthread mutex handling.
2001 (input_available_signal): Move pthread thingy to !SYNC_INPUT branch.
2002
6f8ffb88
SM
2003 * syntax.c (Fforward_word): Avoid non-idempotent side-effects
2004 in macro arguments.
2005
2006 * minibuf.c (Ftry_completion, Fall_completions): Don't use
2007 XFASTINT blindly.
2008
2009 * emacs.c (main, Fdump_emacs): Don't touch malloc hooks if SYNC_INPUT.
2010
c83c9f9d
JD
20112004-12-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2012
2f25767f
JD
2013 * w32term.c (x_calc_absolute_position): Remove calculation of
2014 difference between inner and outer window. Don't subtract difference
2015 for left and top calculations.
2016
c83c9f9d
JD
2017 * xterm.c (x_calc_absolute_position): Don't subtract outer_pixel_diff
2018 for left and top calculations. Remove call to x_real_positions.
24a0e22f 2019 [Bug report by Drew Adams in November]
c83c9f9d
JD
2020 (x_check_expected_move): Do not set change_gravity to 1 when calling
2021 x_set_offset.
2022
cc1caa4e
RS
20232004-12-08 Richard M. Stallman <rms@gnu.org>
2024
2025 * xdisp.c (get_next_display_element): Use `escape-glyph' for
2026 control chars and escaped octal codes.
2027 (Qescape_glyph): New variable.
2028 (syms_of_xdisp): Initialize it.
2029 (escape_glyph_face): New variable.
2030 (redisplay_window): Initialize it.
2031
e0e30823
RS
20322004-12-07 Paul Eggert <eggert@cs.ucla.edu>
2033
2034 * image.c (our_fill_input_buffer, jpeg_load, CHECK_LIB_AVAILABLE)
2035 (init_image): Use 1 rather than TRUE. TRUE's not always defined.
2036
f415cacd
JD
20372004-12-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2038
cf435f39
JD
2039 * emacs.c (Fdump_emacs): Add ! defined (SYSTEM_MALLOC) around
2040 reset_malloc_hooks.
2041
6f8ffb88
SM
2042 * keyboard.c (handle_async_input, input_available_signal):
2043 Add ! defined (SYSTEM_MALLOC) around thread code.
cf435f39 2044
f415cacd
JD
2045 * alloc.c: Add comment about the reason for (UN)BLOCK_INPUT_ALLOC.
2046
043f7f73 20472004-12-07 Stefan Monnier <monnier@iro.umontreal.ca>
19b1f29a
SM
2048
2049 * eval.c (init_eval_once): Increase max_specpdl_size to 1000.
2050
2051 * config.in: Regenerate.
2052
ded997c1
JD
20532004-12-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2054
453a4f1b
JD
2055 * xmenu.c (Fx_popup_menu): Correct documentation about position.
2056 (xmenu_show): Do not call XTranslateCoordinates. Adjust position
2057 if not given by a mouse click to correspond with x-popup-menu
2058 documentation.
2059
9a38524c
JD
2060 * config.in: Regenerate.
2061
aa477689
JD
2062 * gtkutil.c: Include signal.h and syssignal.h.
2063 (xg_get_file_name): Block and unblock __SIGRTMIN if defined.
2064
2065 * alloc.c: If HAVE_GTK_AND_PTHREAD, include pthread.h,
2066 new variables main_thread and alloc_mutex,
2067 define (UN)BLOCK_INPUT_ALLOC to use alloc_mutex to protect
2068 emacs_blocked_* calls and only do (UN)BLOCK_INPUT in the main thread.
2069 If not HAVE_GTK_AND_PTHREAD, (UN)BLOCK_INPUT_ALLOC is the same as
2070 (UN)BLOCK_INPUT.
2071 (emacs_blocked_free, emacs_blocked_malloc)
2072 (emacs_blocked_realloc): Use (UN)BLOCK_INPUT_ALLOC.
2073 (uninterrupt_malloc): Initialize main_thread and alloc_mutex.
2074 (reset_malloc_hooks): New function.
2075
2076 * lisp.h: Declare reset_malloc_hooks.
2077
2078 * emacs.c (Fdump_emacs): Call reset_malloc_hooks.
2079
2080 * keyboard.c: Conditionally include pthread.h
6f8ffb88 2081 (handle_async_input, input_available_signalt): If not in the main
aa477689
JD
2082 thread, block signal, send signal to main thread and return.
2083
ded997c1 2084 * gtkutil.c (xg_get_file_with_chooser): Handle local files only.
6f8ffb88 2085 Set current folder in file chooser if default_filename is a directory.
ded997c1 2086
c72b0edd
SM
20872004-12-05 Stefan Monnier <monnier@iro.umontreal.ca>
2088
2089 * regex.c (GET_UNSIGNED_NUMBER): Signal an error when reaching the end.
2090 Remove redundant correctness checks.
2091 (regex_compile): Fix up error codes for \{..\} expressions.
2092
c721eee5
RS
20932004-12-05 Richard M. Stallman <rms@gnu.org>
2094
2095 * regex.c (regex_compile): Fix end-of-pattern case for space.
2096
d8f96db8
ST
20972004-12-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2098
6108209e
KS
2099 * macterm.h (cfstring_create_with_utf8_cstring): Add prototype.
2100 * mac.c (cfstring_create_with_utf8_cstring): Add to prevent
d8f96db8 2101 crashes with invalid characters.
6108209e
KS
2102 * macmenu.c (add_menu_item): Use it.
2103 * image.c (image_load_quartz2d): Likewise.
2104 * macfns.c (x_set_name, x_set_title): Likewise.
2105 (Fx_file_dialog): Likewise. Use constant CFRefs instead of
2106 creating them each time for labels.
d8f96db8 2107
ab67e8b6
RS
21082004-12-02 Richard M. Stallman <rms@gnu.org>
2109
2110 * config.in (RE_TRANSLATE_P): If make_number is not a macro,
2111 don't use it here.
2112
2113 * eval.c (Fcalled_interactively_p): Don't check INTERACTIVE.
2114 (interactive_p): Skip Scalled_interactively_p frames
2115 like Sinteractive_p frames.
b8217ea6 2116 (unwind_to_catch): Clear handling_signal.
ab67e8b6
RS
2117
2118 * data.c (Fmake_variable_buffer_local): Doc fix.
2119 (Fmake_local_variable): Doc fix.
2120
2121 * insdel.c (insert_from_string_before_markers)
2122 (insert_from_string): Don't modify buffer on empty insertion.
2123
2124 * window.c (Fget_lru_window, Fget_largest_window): Doc fixes.
2125
f86bdc80
ST
21262004-12-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2127
2128 * macmenu.c (add_menu_item): Fallback on MacRoman if encoding
2129 menu text as UTF8 fails.
2130
1cae6d39
KS
21312004-12-01 Kim F. Storm <storm@cua.dk>
2132
2133 * alloc.c: Add commentary for last change.
2134 (XMALLOC_PUT_SIZE, XMALLOC_GET_SIZE): New macros to handle
2135 sizeof(size_t) != 4.
2136 (overrun_check_malloc, overrun_check_realloc, overrun_check_free):
2137 Use them. Also clear header and trailer of freed memory.
2138 (GC_STRING_OVERRUN_COOKIE_SIZE): Rename from GC_STRING_EXTRA.
2139 (string_overrun_cookie): Rename from string_overrun_pattern.
2140 (GC_STRING_EXTRA): Define from GC_STRING_OVERRUN_COOKIE_SIZE.
2141
77ea0764
AS
21422004-12-01 Andreas Schwab <schwab@suse.de>
2143
2144 * lisp.h: Declare string_to_multibyte.
2145
2d5cd4e6
KH
21462004-12-01 Kenichi Handa <handa@m17n.org>
2147
2148 * w32console.c (w32con_write_glyphs): Decide coding here.
2149 Adjusted for the change of encode_terminal_code.
2150
2151 * term.c (encode_terminal_code): Don't make it "static".
2152
25a0994a
KH
21532004-11-30 Kenichi Handa <handa@m17n.org>
2154
19b1f29a 2155 * term.c (encode_terminal_buf, encode_terminal_bufsize): New variables.
25a0994a 2156 (encode_terminal_code): Argument changed. Encode all
19b1f29a
SM
2157 characters at once, and return a pointer to the result of encoding.
2158 (write_glyphs): Decide coding here. Adjusted for the above change.
25a0994a
KH
2159 (insert_glyphs): Likewise.
2160 (term_init): Initialize encode_terminal_bufsize to 0.
2161
2162 * coding.c (Vcode_conversion_workbuf_name): New variable.
2163 (syms_of_coding): Initialize and staticpro it.
2164 (set_conversion_work_buffer): New function.
2165 (run_pre_post_conversion_on_str): Use it.
2166 (run_pre_write_conversin_on_c_str): New function.
2167
2168 * coding.h (run_pre_write_conversin_on_c_str): Extern it.
2169
fc7a70cc
ST
21702004-11-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2171
2172 * keyboard.c: Don't undef SIGIO
2173 * s/darwin.h (NO_SOCK_SIGIO): Define NO_SOCK_SIGIO on carbon
2174 * Makefile.in (mac.o): Depend on blockinput.h and atimer.h.
2175 (macfns.o): Don't depend on ccl.h.
2176 * macfns.c (mac_frame_parm_handlers): Set handlers for
2177 Qleft_fringe and Qright_fringe.
2178 * macterm.c (mac_fill_rectangle_to_pixmap)
2179 (mac_draw_rectangle_to_pixmap, mac_copy_area_to_pixmap)
2180 (mac_copy_area_with_mask_to_pixmap, x_draw_image_foreground_1):
2181 Put in #if 0.
2182 (mac_scroll_area) [TARGET_API_MAC_CARBON]: Use ScrollWindowRect.
2183 (x_flush) [TARGET_API_MAC_CARBON]: Don't traverse frames.
2184 (XFlush) [TARGET_API_MAC_CARBON]: Define to an empty replacement.
2185 (x_draw_glyph_string_background, x_draw_glyph_string_foreground)
2186 [!MAC_OS8]: Added ifdef'd out code for os8. Don't use
2187 XDrawImageString. Always draw background and foreground separately.
2188 (x_draw_image_foreground): Use clipping instead of computing the
2189 intersection rectangle.
2190 (x_draw_image_glyph_string): Don't draw an image with mask to a
2191 pixmap.
2192 (x_redisplay_interface): Set flush_display_optional member to 0.
2193 (XTread_socket): Correctly reset the TEConverter
2194 object.
2195
fc368889
KS
21962004-11-30 Kim F. Storm <storm@cua.dk>
2197
2198 * lisp.h: New defines to enable buffer overrun checking.
2199 (GC_CHECK_STRING_OVERRUN, GC_CHECK_STRING_FREE_LIST)
2200 (XMALLOC_OVERRUN_CHECK, GC_CHECK_CONS_LIST): Add.
2201
2202 * alloc.c: Add more checks for buffer overruns.
2203 (XMALLOC_OVERRUN_CHECK_SIZE, xmalloc_overrun_check_header)
2204 xmalloc_overrun_check_trailer, overrun_check_malloc)
2205 overrun_check_realloc, overrun_check_free): Add.
2206 (GC_STRING_EXTRA, string_overrun_pattern): Add.
2207 (check_sblock, allocate_string_data, compact_small_strings):
2208 Set and check string_overrun_pattern if GC_CHECK_STRING_OVERRUN.
2209 (check_cons_list): Condition on GC_CHECK_CONS_LIST.
2210 (check_string_free_list): Add.
2211 (allocate_string, sweep_strings): Call check_string_free_list.
2212
2213 * emacs.c (malloc_initialize_hook): Don't free malloc_state_ptr if
2214 XMALLOC_OVERRUN_CHECK to avoid crash during load.
2215
0af8cfe1
KS
22162004-11-29 Kim F. Storm <storm@cua.dk>
2217
2218 * fns.c (concat): Use SAFE_ALLOCA.
2219
77220eeb
SM
22202004-11-29 Stefan Monnier <monnier@iro.umontreal.ca>
2221
2222 * sysdep.c (emacs_write): Don't use QUIT.
2223
a778cf63
KH
22242004-11-29 Kenichi Handa <handa@m17n.org>
2225
2226 * buffer.c (init_buffer): Set current_buffer->directory to a
2227 multibyte string made by string_to_multibyte.
2228
77220eeb 2229 * emacs.c (init_cmdargs): Set unibyte strings in Vcommand_line_args.
a778cf63 2230
e3177e43
AS
22312004-11-27 Andreas Schwab <schwab@suse.de>
2232
2233 * alloc.c (mark_stack): Call GC_MARK_SECONDARY_STACK if defined.
2234
2235 * s/gnu-linux.h: Enable no-op gcpros on ia64.
2236 (GC_MARK_SECONDARY_STACK) [__ia64__]: Define.
2237
77220eeb
SM
2238 * filelock.c (lock_file_1): Call get_boot_time early.
2239 Increase buffer size.
e3177e43 2240
ca5e6fef
EZ
22412004-11-27 Eli Zaretskii <eliz@gnu.org>
2242
2243 * lisp.h (DECL_ALIGN): Define non-trivially only if NO_DECL_ALIGN
2244 is not defined.
2245
e2811828
KS
22462004-11-27 Kim F. Storm <storm@cua.dk>
2247
2248 * search.c (syms_of_search) <search-spaces-regexp>: Move 'doc:'
2249 marker out of doc string.
2250
7a262394
SM
22512004-11-26 Stefan Monnier <monnier@iro.umontreal.ca>
2252
2253 * s/darwin.h (POSIX_SIGNALS): Undo the removal of 2002-08-25,
2254 which was not mentioned in the log.
2255
f33cc5a9
KS
22562004-11-26 Kim F. Storm <storm@cua.dk>
2257
048bb03f
KS
2258 * fringe.c (update_window_fringes): Prefer truncation bitmaps over
2259 angle bitmaps at top/bottom line.
2260
f33cc5a9
KS
2261 * xdisp.c: Undo recent changes for restoring saved_face_id. Instead,
2262 set it when it->method is set to next_element_from_display_vector.
2263 (setup_for_ellipsis): Add LEN argument. Callers changed.
2264 Set it->saved_face_id.
2265 (get_next_display_element): Use loop instead of recursion.
2266 Set it->saved_face_id. Combine duplicate code for ctr chars.
2267 (next_element_from_display_vector): Do not set it->saved_face_id.
2268 (next_element_from_ellipsis): Use setup_for_ellipsis.
2269
670e8906
EZ
22702004-11-26 Eli Zaretskii <eliz@gnu.org>
2271
2272 * eval.c (Fdefvar): Declare pdl from last change as `volatile' to
2273 prevent compiler warnings.
2274
275464e7
SM
22752004-11-25 Stefan Monnier <monnier@iro.umontreal.ca>
2276
1bf0e604
SM
2277 * keyboard.c (command_loop_1): Print a message describing the key
2278 the user just pressed when this key has no binding.
2279
275464e7
SM
2280 * sysdep.c (sys_signal): Don't use SA_RESTART if SYNC_INPUT is set.
2281 (emacs_open, emacs_read, emacs_write): Check QUIT when interrupted.
2282
2283 * lread.c (readchar): Check QUIT when `getc' is interrupted.
2284
261b01c6
RS
22852004-11-24 Richard M. Stallman <rms@gnu.org>
2286
2287 * coding.c (run_pre_post_conversion_on_str): Bind Qinhibit_read_only.
2288
2289 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>: Doc fix.
2290
a5bd504e
KS
22912004-11-24 Kim F. Storm <storm@cua.dk>
2292
2293 * xdisp.c (move_it_in_display_line_to, display_line):
2294 Restore saved_face_id also when truncate-lines or hscrolled.
2295
255e4140
JD
22962004-11-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2297
2298 * gtkutil.c (xg_get_file_name): Rename use-old-gtk-file-dialog to
2299 x-use-old-gtk-file-dialog.
2300
2301 * xfns.c: Define x_use_old_gtk_file_dialog.
2302 (syms_of_xfns): Rename use-old-gtk-file-dialog to x-... Move it
2303 outside ifdef USE_GTK.
2304
cab27d04
SM
23052004-11-23 Stefan Monnier <monnier@iro.umontreal.ca>
2306
2307 * coding.h (ENCODE_FILE, DECODE_FILE, ENCODE_SYSTEM, DECODE_SYSTEM):
2308 Don't use XFASTINT blindly.
2309
2310 * config.in (RE_TRANSLATE_P): Don't use XFASTINT blindly.
2311
2312 * indent.c (skip_invisible): Avoid non-idempotent side-effects
2313 in macro arguments.
2314
2315 * keymap.c (Flookup_key): Check INTEGERP before XINT.
2316
2317 * lread.c (oblookup): Don't use XFASTINT blindly.
2318
2319 * window.c (Fset_window_scroll_bars): Don't use XINT if it isn't int.
2320 (decode_next_window_args, window_loop): Don't use XFASTINT blindly.
2321
11e0be49
KS
23222004-11-23 Kim F. Storm <storm@cua.dk>
2323
4d721114
KS
2324 * dispextern.h (MATRIX_ROW_ENDS_IN_MIDDLE_OF_CHAR_P)
2325 (MATRIX_ROW_STARTS_IN_MIDDLE_OF_CHAR_P): Not if dpvec_index is zero.
2326
11e0be49
KS
2327 * xfaces.c (lookup_named_face): Add signal_p arg. Return -1 if
2328 signal_p is zero and face name is unknown.
2329 (Fx_list_fonts): Don't signal error in lookup_named_face.
2330 (Fface_font): Signal error in lookup_named_face.
2331 (ascii_face_of_lisp_face): Likewise.
2332
2333 * dispextern.h (lookup_named_face): Fix prototype.
2334
2335 * xdisp.c (handle_single_display_prop): Don't signal error in
2336 lookup_named_face for unknown fringe face name.
2337 (highlight_trailing_whitespace): Don't signal error in
2338 lookup_named_face if trailing-whitespace face unknown.
2339 (calc_line_height_property): Don't signal error in
2340 lookup_named_face if specified face name is unknown.
2341
2342 * fringe.c (update_window_fringes): Show top row indicator if
2343 window has header-line. Don't show arrow at bob and eob
2344 if the boundary indicators are not used.
2345 (Fset_fringe_bitmap_face): Signal error in lookup_named_face.
2346
2347 * window.c (set_window_buffer): Clear display_error_modiff.
2348
0960a582
KS
23492004-11-22 Kim F. Storm <storm@cua.dk>
2350
2351 * fringe.c (update_window_fringes): Provide sensible fall-back
2352 value for non-nil indicate-buffer-boundaries setting.
2353
b0e9bb28
MR
23542004-11-22 Markus Rost <rost@ias.edu>
2355
2356 * minibuf.c (Fminibuffer_complete_and_exit): Fix previous change.
2357
d0bce91e
SM
23582004-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
2359
2360 * eval.c (Fdefvar): Warn when var is let-bound but globally void.
2361
e1814672
KS
23622004-11-21 Kim F. Storm <storm@cua.dk>
2363
b7fd3518
KS
2364 * xdisp.c (erase_phys_cursor): Clear hollow cursor inside TEXT_AREA.
2365
2366 * xterm.c (x_clip_to_row): Add area arg. Callers changed.
2367 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
2368
2369 * w32term.c (w32_clip_to_row): Add area arg. Callers changed.
2370 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
2371
2372 * macterm.c (x_clip_to_row): Add area arg. Callers changed.
2373 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
2374
d0bce91e
SM
2375 * xdisp.c (move_it_in_display_line_to, display_line):
2376 Restore saved_face_id if overflow-newline-into-fringe is enabled and
2377 line is continued before or in middle of element from display vector.
f01d4d05 2378
f1a61389
KS
2379 * indent.c (Fvertical_motion): Fix last change. Use another
2380 method to detect if iterator moved too far ahead after reseat.
2381
e1814672
KS
2382 * xdisp.c (IT_EXPAND_MATRIX_WIDTH): New macro. Do not
2383 expand matrix width for overflow in zero-width area.
2384 (append_glyph, append_composite_glyph, produce_image_glyph)
2385 (append_stretch_glyph): Use it to avoid loop in redisplay.
2386 (note_mode_line_or_margin_highlight): Don't let help-echo from
2387 string override help-echo from image map.
2388
2dafe1c9
LT
23892004-11-20 Luc Teirlinck <teirllm@auburn.edu>
2390
d0bce91e 2391 * fns.c (Fyes_or_no_p): Call Fread_from_minibuffer with extra argument.
2dafe1c9
LT
2392 * callint.c (Fcall_interactively): Ditto.
2393
fd6866c8 23942004-11-20 Stefan Monnier <monnier@iro.umontreal.ca>
9961365e
RS
2395
2396 * minibuf.c (Fminibuffer_complete_and_exit):
2397 Fixup the case of the completed value, for case-indep completion.
2398
dedbac89
RS
23992004-11-20 Richard M. Stallman <rms@gnu.org>
2400
fd6866c8
RS
2401 * lisp.h (Fread_from_minibuffer): Add arg in decl.
2402
9d00469f 2403 * minibuf.c (read_minibuf): New arg KEEP_ALL. Callers changed.
ce8dd7ca 2404 (Fread_from_minibuffer): New arg KEEP_ALL. Callers changed.
9d00469f 2405
dedbac89 2406 * search.c (Vsearch_spaces_regexp):
d0bce91e 2407 Rename from Vsearch_whitespace_regexp. All uses changed.
dedbac89 2408
2f672bb5
TTN
24092004-11-20 Thien-Thi Nguyen <ttn@gnu.org>
2410
2411 * eval.c (init_eval_once): Increase `max_specpdl_size' to 650.
2412
f31a9a68
RS
24132004-11-19 Richard M. Stallman <rms@gnu.org>
2414
2415 * search.c (Vsearch_whitespace_regexp): New variable.
2416 (syms_of_search): Defvar it.
2417 (compile_pattern_1): Call re_set_whitespace_regexp with it.
2418 (search_buffer): No regexp is trivial if Vsearch_whitespace_regexp
2419 is non-nil.
6de891db
RS
2420 (struct regexp_cache): New element whitespace_regexp.
2421 (syms_of_search): Initialize whitespace_regexp elements.
2422 (compile_pattern): Compare whitespace_regexp elements.
2423 (compile_pattern_1): Set whitespace_regexp elements.
f31a9a68
RS
2424
2425 * regex.c (regex_compile): Substitute whitespace_regexp
2426 for spaces, if it is nonzero.
2427 (whitespace_regexp): New variable.
2428 (re_set_whitespace_regexp): New function.
2429
cbc34cb3
KS
24302004-11-19 Kim F. Storm <storm@cua.dk>
2431
2432 * indent.c (Fvertical_motion): Fix last change.
2433
b54a7539
KS
24342004-11-18 Kim F. Storm <storm@cua.dk>
2435
2436 * indent.c (Fvertical_motion): Undo 2004-11-16 change.
2437 Instead, move back again if reseating moves too far ahead.
2438
24392004-11-17 Luc Teirlinck <teirllm@auburn.edu>
802c6e56
LT
2440
2441 * xdisp.c (message3): Call clear_message.
2442
5ff504fe
KS
24432004-11-17 Kim F. Storm <storm@cua.dk>
2444
2445 * xdisp.c (erase_phys_cursor): Adjust cursor row visible height.
2446
5ae53dcf
JD
24472004-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2448
d0bce91e 2449 * gtkutil.c (xg_get_file_name): Typo in HAVE_GTK_FILE_SELECTION_NEW.
724cde0d 2450
6abf3a27 2451 * xmenu.c (x_menu_in_use): Remove.
5ae53dcf
JD
2452 (x_menu_set_in_use): Also set popup_activated_flag.
2453
5ff504fe 2454 * xfns.c (Fx_file_dialog): Call popup_activated instead of
5ae53dcf
JD
2455 x_menu_in_use. Call x_menu_set_in_use in Motif version also.
2456
6abf3a27 2457 * xterm.h: (x_menu_in_use): Remove.
5ae53dcf 2458
ee31cd78
RS
24592004-11-16 Richard M. Stallman <rms@gnu.org>
2460
6abf3a27
SM
2461 * keymap.c (Fmap_keymap): New arg SORT-FIRST.
2462 Use map-keymap-internal to implement that.
ee31cd78
RS
2463
2464 * indent.c (Fvertical_motion): In batch mode, use vmotion directly.
2465
6abf3a27
SM
24662004-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
2467
2468 * xdisp.c (get_glyph_string_clip_rect, init_glyph_string): Check it's
2469 a window before using XWINDOW.
2470
2471 * window.c (make_window, Fselect_window, make_dummy_parent)
2472 (save_window_save):
2473 * frame.c (make_frame):
2474 * fns.c (concat): Avoid side-effects inside XSETFASTINT's arguments.
2475
2476 * lisp.h (NILP): Use EQ rather than XFASTINT.
2477
b4d61105
KS
24782004-11-16 Kim F. Storm <storm@cua.dk>
2479
6abf3a27 2480 * fringe.c (Fdefine_fringe_bitmap): Always set 'h'. Simplify.
dda01a4c 2481
b4d61105
KS
2482 * indent.c (Fvertical_motion): Fix last change. Only reseat when
2483 moving backwards.
2484
24852004-11-16 Luc Teirlinck <teirllm@auburn.edu>
ce2bbf6a
LT
2486
2487 * dispextern.h: Extern reseat_at_previous_visible_line_start.
2488
ab5b02b0
KH
24892004-11-16 Kenichi Handa <handa@m17n.org>
2490
2491 * xdisp.c (display_mode_element): Fix previous change (calculate
2492 end position of substring to display correctly).
2493
c482cf97
KS
24942004-11-16 Kim F. Storm <storm@cua.dk>
2495
2496 * keyboard.c (Fposn_at_point): Remove extra */ after doc string.
2497 Reported by Andrew M. Scott.
2498
9f89426b
KS
24992004-11-15 Kim F. Storm <storm@cua.dk>
2500
2501 * fns.c (Fsafe_plist_get): New defun.
2502 (syms_of_fns): Defsubr it.
2503
2504 * lisp.h (Fsafe_plist_get): Add EXFUN.
2505
2506 * xdisp.c (store_mode_line_string, produce_stretch_glyph):
2507 Use Fsafe_plist_get.
2508 (note_mode_line_or_margin_highlight, note_mouse_highlight):
2509 Fix image map element parsing. Use Fsafe_plist_get.
2510
27418463
RS
25112004-11-15 Richard M. Stallman <rms@gnu.org>
2512
2513 * xdisp.c (get_next_display_element): Fix previous change.
2514
a130b901
JD
25152004-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2516
ef614e04
JD
2517 * window.c (shrink_windows): Handle special case of one window left
2518 when trying to shrink the final reminder. Grow windows if
2519 total_removed is less than total_shrink.
2520
a130b901
JD
2521 * xmenu.c (pop_down_menu): Remove global variable current_menu,
2522 extract pointer from arg with XSAVE_VALUE.
46303896
KS
2523 (create_and_show_popup_menu, create_and_show_dialog, xmenu_show):
2524 Construct arg to record_unwind_protect with make_save_value.
a130b901 2525
d9a03ad2
RS
25262004-11-13 Richard M. Stallman <rms@gnu.org>
2527
2528 * xdisp.c (reseat_at_previous_visible_line_start): No longer static.
2529 (get_next_display_element): Fix previous change to apply only to \n.
2530
2531 * indent.c (Fvertical_motion): Scan to PT from start of line to
2532 make iterator consistent.
2533
2534 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
2535
b3935289
JD
25362004-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2537
2538 * gtkutil.c (pop_down_file_dialog): Add BLOCK_INPUT.
2539
2540 * xfns.c (Fx_file_dialog): Call x_menu_in_use and x_menu_set_in_use.
2541 Record unwind with clean_up_file_dialog.
2542
78819ebb
KS
2543 * xterm.h (x_menu_in_use, x_menu_set_in_use, x_menu_wait_for_event):
2544 Declare.
b3935289
JD
2545
2546 * xmenu.c (x_menu_in_use, x_menu_set_in_use): New functions.
2547
af89e871
JD
25482004-11-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2549
457a8155 2550 * gtkutil.c (xg_file_sel_ok, xg_file_sel_cancel)
6abf3a27 2551 (xg_file_sel_destroy): Remove.
46303896
KS
2552 (xg_file_response_cb, pop_down_file_dialog)
2553 (xg_get_file_name_from_chooser, xg_get_file_name_from_selector):
457a8155 2554 New functions.
6abf3a27
SM
2555 (xg_get_file_with_chooser, xg_get_file_with_selection):
2556 Take new arg func, set it to xg_get_file_name_from_chooser/selector.
457a8155
JD
2557 Move common code to xg_get_file_name. Return widget created.
2558 (xg_get_file_name): Set name, transient for, modal and destroy
2559 with parent here. Connect response signal to xg_file_response_cb,
2560 connect delete-event to gtk_true. Record pop_down_file_dialog
2561 for unwind. Do event loop and call x_menu_wait_for_event in loop.
2562 (xg_create_widget): Make dialogs modal.
2563
af89e871
JD
2564 * xmenu.c (unuse_menu_items, pop_down_menu): Arg is of type
2565 Lisp_Object.
2566 (popup_get_selection): Move unwind protect ...
2567 (create_and_show_popup_menu, create_and_show_dialog): ... to here.
2568 Move destroy of widget to pop_down_menu.
2569 (popup_widget_loop): Move unwind protect ...
2570 (create_and_show_popup_menu, create_and_show_dialog): ... to here.
2571 Move destroy of widget to pop_down_menu.
2572 (pop_down_menu): BLOCK_INPUT and destroy widget/window.
6abf3a27 2573 (xmenu_show): Record unwind pop_down_menu. Move XMenuDestroy,
af89e871
JD
2574 x_mouse_leave and grabbed = 0 to pop_down_menu.
2575
5596fbf1
KS
25762004-11-13 Kim F. Storm <storm@cua.dk>
2577
2578 * xdisp.c (make_cursor_line_fully_visible_p): New variable.
2579 (syms_of_xdisp): DEFVAR_BOOL it.
2580 (make_cursor_line_fully_visible, try_cursor_movement)
2581 (try_window_id): Use it.
2582
b9de078a
KS
25832004-11-12 Kim F. Storm <storm@cua.dk>
2584
381f7091
KS
2585 * dispextern.h (struct glyph_row): New member extra_line_spacing.
2586 (struct it): New member max_extra_line_spacing.
2587 (MR_PARTIALLY_VISIBLE, MR_PARTIALLY_VISIBLE_AT_TOP)
2588 (MR_PARTIALLY_VISIBLE_AT_BOTTOM): New helper macros.
2589 (MATRIX_ROW_PARTIALLY_VISIBLE_P): Fix to return false if invisible
2590 part of last line is only extra line spacing (so the text on the
2591 line is fully visible). Use helper macros.
2592 Add W arg (to use them). All callers changed.
2593 (MATRIX_ROW_PARTIALLY_VISIBLE_AT_TOP_P)
2594 (MATRIX_ROW_PARTIALLY_VISIBLE_AT_BOTTOM_P): Use helper macros.
2595
6abf3a27
SM
2596 * window.c (window_scroll_pixel_based, Frecenter):
2597 Use move_it_vertically_backward directly.
381f7091
KS
2598 (Frecenter): Fix calculation of new start pos for negative arg.
2599 Before, the new start pos was sometimes chosen too far back, so
2600 the last line became only partially visible, and thus would be
2601 either only semi-visible or automatically scrolled to the middle
2602 of the window by redisplay.
2603
2604 * xdisp.c (init_iterator): Clear it.max_extra_line_spacing.
2605 (move_it_vertically_backward): Don't recure to move further back.
2606 (move_it_vertically): Remove superfluous condition.
2607 (move_it_by_lines): Clear last_height when moved 0 lines.
6abf3a27 2608 (resize_mini_window): Use it.max_extra_line_spacing.
381f7091
KS
2609 (display_tool_bar_line): Clear row->extra_line_spacing.
2610 (try_scrolling): Use move_it_vertically_backward directly.
2611 (redisplay_window): Likewise.
2612 (compute_line_metrics): Set row->extra_line_spacing.
2613 (display_line, display_string): Likewise.
2614 (x_produce_glyphs): Update it->max_extra_line_spacing.
2615
b9de078a
KS
2616 * xmenu.c (pop_down_menu): Return nil.
2617
c3438661
JD
26182004-11-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2619
2620 * xmenu.c (x_menu_wait_for_event): New function.
2621 (popup_get_selection, popup_widget_loop): Call x_menu_wait_for_event
2622 to handle timers.
df00f436
JD
2623 (popup_widget_loop): Add argument do_timers.
2624 (create_and_show_popup_menu, create_and_show_dialog): Pass 1 for
2625 do_timers to popup_widget_loop.
c3438661
JD
2626 (xmenu_show): Call XMenuActivateSetWaitFunction so that
2627 x_menu_wait_for_event is called by XMenuActivate.
b9de078a 2628 (create_and_show_popup_menu): Pass 1 for do_timers to
df00f436 2629 popup_get_selection.
f1d1cd24
JD
2630 (pop_down_menu): New function.
2631 (popup_get_selection, popup_widget_loop): Unwind protect to
2632 pop_down_menu.
2633 (popup_widget_loop): Add argument widget.
2634 (create_and_show_popup_menu, create_and_show_dialog): Pass new
2635 argument widget to popup_widget_loop.
c3438661 2636
32e2fb04
SM
26372004-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
2638
2639 * keymap.c (Fkeymap_prompt): Accept symbol keymaps.
2640
0faf6806
KS
26412004-11-09 Kim F. Storm <storm@cua.dk>
2642
2643 * xselect.c: Include <sys/types.h> and <unistd.h> (for getpid).
2644 Fix various comments referring to XEvents instead of input events.
2645 (x_queue_event): Fix format strings.
2646 (x_stop_queuing_selection_requests): Likewise.
2647
2648 * xdisp.c (produce_image_glyph): Remove unused variable 'face_ascent'.
2649 (pint2hrstr): Add extra braces to silence compiler.
2650
2651 * print.c (print_object): Fix format string.
2652
2653 * lread.c (read1): Fix next_char matching.
2654
2655 * lisp.h (Fdelete): Add EXFUN.
2656 (replace_range_2): Add prototype.
2657
2658 * keyboard.c (read_avail_input): Remove unused variable 'discard'.
2659
2660 * intervals.h (NULL_INTERVAL_P): Add separate version when
2661 ENABLE_CHECKING is not defined to silence compiler.
2662 (compare_string_intervals): Add prototype.
2663
2664 * fringe.c (destroy_fringe_bitmap): Fix return type.
2665 (Ffringe_bitmaps_at_pos): Remove unused var 'old_buffer'.
2666
2667 * emacs.c (Fdump_emacs): Fix format string.
2668
2669 * doc.c: Include <ctype.h>.
2670 (Fsubstitute_command_keys): Remove unused variable 'firstkey'.
2671
2672 * data.c (store_symval_forwarding): Remove unused variables.
2673
2674 * callint.c (Fcall_interactively): Remove unused variable 'funcar'.
2675
16bf4e32
JD
26762004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2677
2678 * Makefile.in (stamp-oldxmenu): If HAVE_GTK, don't add dependencies
2679 to ${OLDXMENU}.
2680
cdb805a9
KS
26812004-11-09 Kim F. Storm <storm@cua.dk>
2682
2683 * process.c (Fmake_network_process): Remove kludge for interrupted
2684 connects on BSD. If connect is interrupted, just close socket and
2685 start over rather than sleeping and retry with same socket.
2686
d87a9ab8 26872004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
0faf6806 2688
a8b16c80
JD
2689 * .cvsignore: Add buildobj.lst.
2690
d87a9ab8
JD
2691 * doc.c: New variable Vbuild_files.
2692 (Fsnarf_documentation): If Vbuild_files is nil, populate it with
2693 file names from buildobh.lst. Only attach docstrings from files
2694 that are in Vbuild_files.
2695 (syms_of_doc): Defvar Vbuild_files.
2696
2697 * Makefile.in (SOME_MACHINE_OBJECTS): Add fringe.o, image.o
2698 and w32*.o.
2699 (temacs${EXEEXT}): Generate buildobj.lst when temacs is linked.
6abf3a27 2700 (mostlyclean): Rm buildobj.lst
d87a9ab8
JD
2701
2702 * makefile.w32-in ($(TEMACS)): Generate buildobj.lst when temacs
2703 is linked.
2704
b6709e77
KS
27052004-11-09 Kim F. Storm <storm@cua.dk>
2706
2707 * fringe.c (update_window_fringes): Update fringe bitmaps if
2708 cur and row ends_at_zv_p differs. If bitmaps of a row is updated,
2709 also update previous row to get rid of misc. artifacts.
2710
bae9677d
KS
27112004-11-08 Kim F. Storm <storm@cua.dk>
2712
2713 * xdisp.c (fast_find_position): Fix start pos if header line present.
b7127aa8 2714 (note_mouse_highlight): Clear mouse face if we move out of text area.
bae9677d 2715
3f8ea68c
EZ
27162004-11-08 Eli Zaretskii <eliz@gnu.org>
2717
2718 * editfns.c: Move #include "systime.h" before <sys/resource.h>.
2719 Don't include <sys/time.h> explicitly.
2720 Include <stdio.h> unconditionally, not just on MacOS.
2721
a653f812
KH
27222004-11-08 Kenichi Handa <handa@m17n.org>
2723
2724 * fontset.c (fontset_pattern_regexp): Cancel my previous change;
2725 don't pay attention to '\' before '*'.
2726 (fontset_pattern_regexp): Change the meaning of the second arg.
2727 (Fnew_fontset): Call fs_query_fontset, not Fquery_fontset.
2728 (check_fontset_name): Try NAME as literal at first, and if it
2729 failes, try NAME as pattern.
2730
c37caf9d
JD
27312004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2732
2733 * emacs.c (Fdump_emacs): Only output warning on GNU/Linux.
2734
b72915a7
AS
27352004-11-07 Andreas Schwab <schwab@suse.de>
2736
78819ebb
KS
2737 * lisp.h (Fmsdos_downcase_filename): Declare.
2738 * dired.c (Fmsdos_downcase_filename): Don't declare here.
b72915a7
AS
2739 * fileio.c: Likewise.
2740
238a44a8
JD
27412004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2742
2743 * dosfns.c (Fdos_memget, Fdos_memput): Use integer variable offs in
2744 comparisons with integers instead of Lisp_Object address.
2745 (Fmsdos_set_keyboard): Declare argument allkeys.
2746
2747 * msdos.c (IT_set_frame_parameters): Use EQ, not ==, for Lisp_Object:s.
2748
78819ebb 2749 * dired.c (Fmsdos_downcase_filename): Declare extern on MSDOS to avoid
238a44a8
JD
2750 int/Lisp_Object mixup.
2751
2752 * fileio.c: Ditto.
2753
31141c13
ST
27542004-11-06 Steven Tamm <steventamm@mac.com>
2755
2756 * editfns.c: Need to include sys/time.h before resource.h on darwin.
2757
f28c1bd9
RS
27582004-11-06 Richard M. Stallman <rms@gnu.org>
2759
2760 * callint.c (Fcall_interactively): Avoid reusing EVENT for other data.
2761
2762 * xfaces.c (merge_named_face): GCPRO the face_name in the
2763 named_merge_point struct that we make.
2764 (merge_face_heights): Eliminate GCPRO arg. All callers changed.
2765
2766 * keyboard.c (command_loop_1): Change Vtransient_mark_mode
2767 before deciding whether to inactivate mark.
2768
59dede22
EZ
27692004-11-06 Lars Brinkhoff <lars@nocrew.org>
2770
2771 * config.in: Regenerate (add HAVE_GETRUSAGE).
6159c232
EZ
2772 * editfns.c (Fget_internal_run_time): New function.
2773 (syms_of_data): Defsubr it.
2774 * fns.c (sxhash): As far as possible, merge calculation of
2775 hash code for symbols and strings.
59dede22 2776
27540e81
EZ
27772004-11-06 Eli Zaretskii <eliz@gnu.org>
2778
2779 * frame.c (syms_of_frame): Fix the example in the doc string.
2780
df470e3b
JD
27812004-11-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2782
2783 * eval.c (Feval): Remove check for INPUT_BLOCKED_P.
2784
2785 * xmenu.c (popup_get_selection, create_and_show_popup_menu)
2786 (create_and_show_dialog): Revert change from 2004-10-31.
bae9677d 2787
4cc8522c
LT
27882004-11-05 Luc Teirlinck <teirllm@auburn.edu>
2789
2790 * macros.c (syms_of_macros) <defining-kbd-macro>: Doc fix.
2791
d4a42098
KS
27922004-11-05 Kim F. Storm <storm@cua.dk>
2793
a8490886
KS
2794 * print.c (print_object): Print Lisp_Misc_Save_Value objects.
2795
d4a42098
KS
2796 * fileio.c (Ffile_modes): Doc fix.
2797 (auto_save_1): Check for Ffile_modes nil value.
2798
36a2b04c
KS
27992004-11-05 Kim F. Storm <storm@cua.dk>
2800
2801 * xselect.c (struct selection_event_queue, selection_queue)
2802 (x_queue_selection_requests, x_queue_event)
2803 (x_start_queuing_selection_requests)
2804 (x_stop_queuing_selection_requests): Add new queue for selection
2805 input events to replace previous XEvent queue in xterm.c.
2806 (queue_selection_requests_unwind): Adapt to new queue.
32e2fb04
SM
2807 (x_reply_selection_request): Adapt to new queue.
2808 Unexpect wait_object in case of x errors (memory leak).
36a2b04c
KS
2809 (x_handle_selection_request, x_handle_selection_clear): Make static.
2810 (x_handle_selection_event): New function. May queue selection events.
2811 (wait_for_property_change_unwind): Use save_value instead of cons.
2812 Clear property_change_reply_object.
2813 (wait_for_property_change): Abort if already waiting.
2814 Use save_value instead of cons for unwind data.
2815 (x_handle_property_notify): Skip events already arrived, but don't
2816 free them, as "arrived" field is checked by wait_for_property_change,
2817 and it will be freed by unwind or explicit unexpect_property_change.
2818 (x_get_foreign_selection): Add to new queue.
2819 (receive_incremental_selection): Don't unexpect wait_object when done
2820 as it has already been freed by previous wait_for_property_change.
2821
2822 * xterm.h (x_start_queuing_selection_requests)
2823 (x_stop_queuing_selection_requests, x_handle_selection_request)
2824 (x_handle_selection_clear): Remove prototypes.
2825 (x_handle_selection_event): Add prototype.
2826
2827 * xterm.c (handle_one_xevent): Don't queue X selection events
2828 here, it may be too late if we start queuing after we have already
2829 stored some selection events into the kbd buffer.
2830 (struct selection_event_queue, queue, x_queue_selection_requests)
2831 (x_queue_event, x_unqueue_events, x_start_queuing_selection_requests)
2832 (x_stop_queuing_selection_requests): Remove/move to xselect.c.
2833 (x_catch_errors_unwind): Block input around final XSync.
2834
2835 * keyboard.h (kbd_buffer_unget_event): Add prototype.
2836
2837 * keyboard.c (kbd_buffer_store_event_hold): Remove obsolete code.
2838 (kbd_buffer_unget_event): New function.
2839 (kbd_buffer_get_event, swallow_events): Combine SELECTION events
2840 and use x_handle_selection_event.
2841 (mark_kboards): Don't mark x and y of SELECTION_CLEAR_EVENT.
2842
9c3ad9e1
JD
28432004-11-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2844
2845 * xselect.c (TRACE3): New debug macro.
2846 (x_reply_selection_request): Use it.
2847 (receive_incremental_selection): In call to TRACE0, the name of
2848 a symbol is in xname.
2849
a33b89de
KS
28502004-11-05 Kim F. Storm <storm@cua.dk>
2851
2852 * fontset.c (fontset_pattern_regexp): Use unsigned char.
2853
a872928c
JD
28542004-11-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2855
88208bb8
JD
2856 * fileio.c (Fnext_read_file_uses_dialog_p): New function.
2857
78819ebb 2858 * gtkutil.h (use_old_gtk_file_dialog): Declare.
0a4f23f3
JD
2859
2860 * gtkutil.c: Make use_old_gtk_file_dialog non-static.
32e2fb04 2861 (xg_initialize): Move DEFVAR_BOOL for use_old_gtk_file_dialog ...
0a4f23f3
JD
2862 * xfns.c (syms_of_xfns): ... to here.
2863
a872928c
JD
2864 * gtkutil.c (xg_get_file_with_chooser): Expand DEFAULT_FILENAME if
2865 it doesn't start with /.
2866
b912921c
KH
28672004-11-04 Kenichi Handa <handa@m17n.org>
2868
2869 * fontset.c (fontset_pattern_regexp): If '*' is preceded by '\',
2870 treat it as a literal character.
2871
c524d9a6
KS
28722004-11-03 Kim F. Storm <storm@cua.dk>
2873
2874 * .gdbinit (ppt): New function.
2875
8cfd0f36
JD
28762004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2877
a11e1dce
JD
2878 * xterm.c (x_window_to_scroll_bar): Only call
2879 xg_get_scroll_id_for_window if toolkit scroll bars are used.
2880
8cfd0f36
JD
2881 * gtkutil.c (xg_get_file_with_chooser): Use GTK_STOCK_OK instead
2882 of save.
2883
a93563fd
AS
28842004-11-02 Andreas Schwab <schwab@suse.de>
2885
2886 * window.c (Fscroll_right): Fix last change.
2887
2b2d59d8
KS
28882004-11-02 Kim F. Storm <storm@cua.dk>
2889
2890 * Makefile.in (callproc.o): Depend on blockinput.h atimer.h systime.h.
2891
28922004-11-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2893
2894 * callproc.c (Fcall_process): Block input around vfork.
2895
ca28104d
KS
28962004-11-02 Kim F. Storm <storm@cua.dk>
2897
2898 * eval.c (Fcalled_interactively_p): Rename from Fcall_interactive_p.
2899 (syms_of_eval): Defsubr it.
2900
29bb7127
RS
29012004-11-02 Richard M. Stallman <rms@gnu.org>
2902
2903 * insdel.c (replace_range_2): New function.
2904
2905 * casefiddle.c (casify_region): Handle changes in byte-length
2906 using replace_range_2.
2907
2908 * emacs.c (USAGE3): Delete --horizontal-scroll-bars, -hb.
2909
b6189c3b 2910 * xdisp.c (back_to_previous_visible_line_start):
29bb7127
RS
2911 Subtract 1 from pos when checking previous newline for invisibility.
2912
2913 * window.c (window_scroll_pixel_based): Update preserve_y
2914 for header line if any.
2915 (Fscroll_left, Fscroll_right): Don't call interactive_p;
2916 use a new second argument instead.
2917
2918 * eval.c (Fcall_interactive_p): New function.
2919 (interactive_p): Don't test INTERACTIVE here.
2920 (Finteractive_p): Doc fix.
2921
2922 * eval.c (Feval): Abort if INPUT_BLOCKED_P.
2923
b6189c3b 29242004-11-02 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
a3fe4aaf
JR
2925
2926 * w32fns.c (w32_font_match): Use fast_string_match_ignore_case for
b6189c3b 2927 comparing font names.
a3fe4aaf 2928
2a00cdb4
JD
29292004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2930
f9d64bb3
JD
2931 * fileio.c (Fread_file_name): Pass Qt as fifth parameter to
2932 Fx_file_dialog if only directories should be read.
2933
2934 * lisp.h: Fx_file_dialog takes 5 parameters.
2935
32e2fb04
SM
2936 * xfns.c (Fx_file_dialog): Both Motif and GTK version:
2937 Add parameter only_dir_p.
f9d64bb3
JD
2938 In Motif version, don't put DEFAULT_FILENAME in filter part of the
2939 dialog, just text field part. Do not add DEFAULT_FILENAME
2940 to list of files if it isn't there.
2941 In GTK version, pass only_dir_p parameter to xg_get_file_name.
2942
32e2fb04
SM
2943 * macfns.c (Fx_file_dialog): Add parameter only_dir_p.
2944 Check only_dir_p instead of comparing prompt to "Dired". When using
f9d64bb3
JD
2945 a save dialog, add option kNavDontConfirmReplacement, change title
2946 to "Enter name", change text for save button to "Ok".
2947
32e2fb04
SM
2948 * w32fns.c (Fx_file_dialog): Add parameter only_dir_p.
2949 Check only_dir_p instead of comparing prompt to "Dired".
f9d64bb3
JD
2950
2951 * gtkutil.c (xg_get_file_with_chooser)
2952 (xg_get_file_with_selection): New functions, only defined ifdef
2953 HAVE_GTK_FILE_CHOOSER_DIALOG_NEW and HAVE_GTK_FILE_SELECTION_NEW
2954 respectively.
2955 (xg_get_file_name): Add parameter only_dir_p.
2956 Call xg_get_file_with_chooser or xg_get_file_with_selection
2957 depending on HAVE_GTK_FILE* and the value of use_old_gtk_file_dialog.
2958 (xg_initialize): New DEFVAR_BOOL use_old_gtk_file_dialog.
2959
2960 * gtkutil.h (xg_get_file_name): Add parameter only_dir_p.
2961
2a00cdb4
JD
2962 * config.in: Rebuild (added HAVE_GTK_FILE_*).
2963
f6749d5d
KS
29642004-11-01 Kim F. Storm <storm@cua.dk>
2965
32e2fb04
SM
2966 * process.c (connect_wait_mask, num_pending_connects):
2967 Only declare and use them if NON_BLOCKING_CONNECT is defined.
bad49fc7 2968 (init_process): Initialize them if NON_BLOCKING_CONNECT defined.
f6749d5d
KS
2969 (IF_NON_BLOCKING_CONNECT): New helper macro.
2970 (wait_reading_process_output): Only declare and use local vars
2971 Connecting and check_connect when NON_BLOCKING_CONNECT is defined.
f6749d5d 2972
1a99fe1a
JR
29732004-11-01 Andy Petrusenco <Igrek@star-sw.com> (tiny change)
2974
2975 * w32term.c (x_scroll_run): Delete region objects after use.
2976
fcdb28b4
JD
29772004-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2978
495ef86b
JD
2979 * xmenu.c: Add prototypes for forward function declarations.
2980 (popup_get_selection): Remove parameter do_timers, remove call to
2981 timer_check.
32e2fb04
SM
2982 (create_and_show_popup_menu, create_and_show_dialog):
2983 Remove parameter do_timers from call to popup_get_selection.
495ef86b 2984
12e6566a
JD
2985 * xdisp.c (update_tool_bar): Pass a copy of f->tool_bar_items to
2986 tool_bar_items and assign the result to f->tool_bar_items if
2987 not equal. Move BLOCK/UNBLOCK_INPUT from around call to
2988 tool_bar_items to assignment of result.
2989
fcdb28b4
JD
2990 * atimer.c (alarm_signal_handler): Do not call set_alarm if
2991 pending_atmers is non-zero.
2992
1a1a0c4c
KS
29932004-10-31 Kim F. Storm <storm@cua.dk>
2994
2995 * dispnew.c (margin_glyphs_to_reserve): Don't use ncols_scale_factor.
2996
a36f1680
JW
29972004-10-28 Will <will@glozer.net>
2998
2999 * macterm.c: allow user to assign key modifiers to the Mac Option
3000 key via a 'mac-option-modifier' variable.
3001
32e2fb04 30022004-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
2d586478
SM
3003
3004 * xselect.c (Vx_lost_selection_functions, Vx_sent_selection_functions):
3005 Rename from Vx_lost_selection_hooks and Vx_sent_selection_hooks.
3006 (x_handle_selection_request, x_handle_selection_clear)
3007 (x_clear_frame_selections, syms_of_xselect): Adjust accordingly.
3008
4f71c13f
RS
30092004-10-28 Richard M. Stallman <rms@gnu.org>
3010
3011 * w32fns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
3012
3013 * xfns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
3014
068f3848
SM
30152004-10-27 Stefan Monnier <monnier@iro.umontreal.ca>
3016
3017 * syntax.c (scan_sexps_forward): Give precedence to a 2-char
3018 comment-starter over a 1-char one.
3019
4660a9e3
RS
30202004-10-27 Richard M. Stallman <rms@gnu.org>
3021
3022 * xdisp.c (get_next_display_element): In mode lines,
3023 treat newline and tab like other control characters.
3024
3025 * editfns.c (Fmessage): Doc fix.
3026
3027 * indent.c (vmotion): When moving up, check the newline before.
3028 Make prevline an int, not a Lisp_Object.
3029
233f3db6
KS
30302004-10-27 Kim F. Storm <storm@cua.dk>
3031
3032 * editfns.c (Fformat): Allocate discarded table with SAFE_ALLOCA.
3033 Only allocate info and discarded tables once.
3034
3035 * lisp.h (USE_SAFE_ALLOCA): Add and init sa_must_free integer.
3036 (SAFE_ALLOCA, SAFE_ALLOCA_LISP): Increment it when malloc is used.
3037 (SAFE_FREE): Test it to determine if we need to unwind to free.
3038 Remove size arg. All users changed.
3039 (SAFE_FREE_LISP) Remove. All users changed to use SAFE_FREE.
3040
1442465d
JD
30412004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3042
3043 * gtkutil.c: Put empty line between comment and function body.
068f3848
SM
3044 (xg_destroy_widgets): Rename from remove_from_container.
3045 Just destroy all widgets in list. Argument wcont removed.
1442465d
JD
3046 (xg_update_menubar, xg_update_submenu): Call xg_destroy_widgets
3047 instead of remove_from_container.
3048 (xg_display_close, xg_create_tool_bar, update_frame_tool_bar)
3049 (free_frame_tool_bar): Add comment.
3050
3051 * xfns.c (xic_create_xfontset): Check that FRAME_XIC_BASE_FONTNAME
3052 is not NULL before strcmp.
3053
c8636435
KS
30542004-10-26 Kim F. Storm <storm@cua.dk>
3055
3056 * callint.c (Fcall_interactively): Add 'U' code to get the
3057 up-event discarded by a previous 'k' or 'K' argument.
3058
5629f29b
DK
30592004-10-26 David Kastrup <dak@gnu.org>
3060
3061 * buffer.c (syms_of_buffer): Fix a few typos.
3062
4f2f546e
JD
30632004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3064
3065 * xsmfns.c: Put empty line between comment and function body.
3066 Use two spaces before comment end.
3067
fc1062f5
KH
30682004-10-25 Kenichi Handa <handa@m17n.org>
3069
3070 * fontset.c (fontset_pattern_regexp): Optimize for the case that
3071 PATTERN is full XLFD.
3072
be13f5e5
KH
30732004-10-24 Kenichi Handa <handa@m17n.org>
3074
3075 * regex.h (enum reg_errcode_t): New value REG_ERANGEX.
3076
3077 * regex.c (re_error_msgid): Add an entry for REG_ERANGEX.
3078 (regex_compile): Return REG_ERANGEX if appropriate.
3079
d0ee2ed3
KH
30802004-10-22 Kenichi Handa <handa@m17n.org>
3081
3082 * editfns.c (Ftranslate_region_internal): New function.
3083 (syms_of_editfns): Defsubr it.
3084
63ea8ea5
JD
30852004-10-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3086
3087 * xfns.c (xic_create_xfontset): Initialize missing_list to NULL.
3088
9ba27690 30892004-10-21 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
c27ed90a 3090
068f3848
SM
3091 * xterm.h (x_output): New member `xic_base_fontname'.
3092 (FRAME_XIC_BASE_FONTNAME): New macro.
3093 (xic_free_xfontset): Declare.
c27ed90a 3094
068f3848
SM
3095 * xfns.c (xic_create_xfontset): Share fontsets between frames
3096 based on base_fontname.
3097 (xic_free_xfontset): New function.
3098 (free_frame_xic): Use it.
3099 (xic_set_xfontset): Ditto.
c27ed90a 3100
068f3848 3101 * xterm.c (xim_destroy_callback): Ditto.
c27ed90a
JD
3102
3103
59508699
JR
31042004-10-20 B. Anyos <banyos@freemail.hu> (tiny change)
3105
3106 * w32term.c (x_draw_glyph_string): Use overline_color for overlines.
3107
dede2792
JD
31082004-10-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3109
3aca2078
JD
3110 * xterm.h (XSync): If USE_GTK, define XSync as process_all and then
3111 XSync.
3112
dede2792
JD
3113 * emacs.c (my_heap_start, heap_bss_diff, MAX_HEAP_BSS_DIFF):
3114 New variables and constant.
3115 (main): Calculate heap_bss_diff. If we are dumping and the
3116 heap_bss_diff is greater than MAX_HEAP_BSS_DIFF, set PER_LINUX32
3117 and exec ourself again.
3118 (Fdump_emacs): If heap_bss_diff is greater than MAX_HEAP_BSS_DIFF
3119 print a warning.
3120
3121 * lastfile.c: Make my_endbss and my_endbss_static available on all
3122 platforms.
3123
3124 * Makefile.in (RUN_TEMACS): Remove @SETARCH@.
3125 * config.in (HAVE_PERSONALITY_LINUX32): Regenerate.
3126
1dc5ba01
LT
31272004-10-19 Luc Teirlinck <teirllm@auburn.edu>
3128
3129 * data.c (Flocal_variable_if_set_p): Doc fix.
3130
950090be
JR
31312004-10-19 Jason Rumney <jasonr@gnu.org>
3132
3133 * w32.c (init_environment): Set emacs_dir correctly when running
3134 emacs from the build directory.
3135
8550b998
RS
31362004-10-19 Richard M. Stallman <rms@gnu.org>
3137
3138 * editfns.c (Fdelete_and_extract_region):
3139 If region is empty, return null string.
3140
08dedea6
JD
31412004-10-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3142
1dc5ba01 3143 * gtkutil.h (xg_update_scrollbar_pos): Remove arguments real_left
08dedea6 3144 and canon_width.
068f3848 3145 (xg_frame_cleared): Remove.
08dedea6 3146
068f3848
SM
3147 * gtkutil.c (xg_frame_cleared, xg_fixed_handle_expose)
3148 (xg_find_top_left_in_fixed): Remove.
08dedea6
JD
3149 (xg_create_scroll_bar): Put an event box widget between
3150 the scroll bar widget and the edit widget.
3151 (xg_show_scroll_bar): Show the parent widget (the event box).
3152 (xg_remove_scroll_bar): Destroy parent (the event box) also.
3153 (xg_update_scrollbar_pos): Remove arguments real_left and canon_width.
3154 Move the parent (the event box) widget inside the fixed widget.
3155 Move window clear to xterm.c.
3156
068f3848 3157 * gtkutil.h (xg_frame_cleared): Remove.
1dc5ba01 3158
08dedea6 3159 * xterm.c (x_clear_frame): Remove call to xg_frame_cleared
068f3848
SM
3160 (x_scroll_bar_create, XTset_vertical_scroll_bar):
3161 Remove arguments left and width to xg_update_scrollbar_pos.
08dedea6
JD
3162 (XTset_vertical_scroll_bar): Do x_clear_area for USE_GTK also.
3163
8550b998 31642004-10-19 Kenichi Handa <handa@m17n.org>
e3e55463
KS
3165
3166 * xdisp.c (display_mode_element): Fix display of wide chars.
e3e55463 3167
84338890
JD
31682004-10-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3169
3170 * gtkutil.c (xg_update_scrollbar_pos): Change XClearWindow to
3171 gdk_window_clear and move gdk_window_process_all_updates after
3172 clear so events are sent to the X server in correct order.
3173
6e1b0d8c
KH
31742004-10-18 Kenichi Handa <handa@m17n.org>
3175
3176 * fontset.c (fs_load_font): Use fast_string_match_ignore_case for
3177 comparing font names.
8550b998 3178 (fs_query_fontset): Use fast_string_match for comparing fontset names.
6e1b0d8c
KH
3179 (list_fontsets): Likewise.
3180
3181 * search.c (fast_string_match_ignore_case): New function.
3182
3183 * lisp.h (fast_string_match_ignore_case): Extern it.
3184
345e75a8
KS
31852004-10-17 Kim F. Storm <storm@cua.dk>
3186
3187 * xdisp.c (overlay_arrow_at_row): Return overlay string rather
3188 than bitmap if there is not left fringe.
3189 (get_overlay_arrow_glyph_row): Also used on windows system.
3190 (display_line): Display overlay string if no left fringe.
3191
be13cbb7
JR
31922004-10-16 Jason Rumney <jasonr@gnu.org>
3193
3194 * w32fns.c (w32_font_match): Encode font name being matched.
3195
c2e2ede7
RS
31962004-10-16 Richard M. Stallman <rms@gnu.org>
3197
3198 * window.c (Fspecial_display_p): Doc fix.
3199
043f7f73 32002004-10-15 Stefan Monnier <monnier@iro.umontreal.ca>
3584d95d
SM
3201
3202 * doc.c (Fsubstitute_command_keys): Fix remap-handling.
3203 Don't ignore menus, because where-is-internal already does it for us.
3204
699a0392
KS
32052004-10-15 Kim F. Storm <storm@cua.dk>
3206
b3c7a89b
KS
3207 * xdisp.c (redisplay_window): Only update fringes and vertical
3208 border on window frames.
699a0392 3209
4e382b0f
AS
32102004-10-14 Andreas Schwab <schwab@suse.de>
3211
3212 * m/ia64.h (DATA_SEG_BITS): Don't define.
3213
329a7be2
KS
32142004-10-14 Kim F. Storm <storm@cua.dk>
3215
3216 * xterm.h: Include Xutil.h after keysym.h to work around bug
dbb37962 3217 in some X versions.
329a7be2 3218
982241b1
SM
32192004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
3220
3221 * fns.c (map_char_table): Add missing gcpros.
3222
9238467d
SM
32232004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
3224
3225 * keymap.c (get_keymap): An autoload form is not a keymap.
3226
3227 * textprop.c (syms_of_textprop): Make `syntax-table' nonsticky.
3228
4440e3ca
KS
32292004-10-13 Kim F. Storm <storm@cua.dk>
3230
7cfdabde
KS
3231 * callproc.c (Fcall_process): Simplify handling of display arg.
3232 Resume `display_on_the_fly' once a coding system is determined.
3233
4440e3ca
KS
3234 * xdisp.c (redisplay_preserve_echo_area): Fix last change.
3235
1c8dec6a
KS
32362004-10-12 Kim F. Storm <storm@cua.dk>
3237
3238 * xdisp.c (redisplay_preserve_echo_area): Flush display in case
3239 caller, such as call-process, is not going to poll for input.
3240 (calc_line_height_property): Handle case where it->object is nil.
3241
3242 * xterm.c (x_redisplay_interface): Fix flush_display_optional.
3243
170b174c
KH
32442004-10-12 Kenichi Handa <handa@m17n.org>
3245
9238467d
SM
3246 * xdisp.c (get_next_display_element):
3247 If unibyte_display_via_language_environment is zero, display 8-bit
170b174c
KH
3248 chars in octal in unibyte buffer.
3249
b583964c
KS
32502004-10-12 Kim F. Storm <storm@cua.dk>
3251
3252 * doc.c (Fsubstitute_command_keys): Ignore remappings unless there
3253 are no ordinary bindings.
3254
29fabd8c
JD
32552004-10-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3256
9238467d 3257 * xfns.c (syms_of_xfns): Defsubr x-file-dialog for GTK also.
29fabd8c 3258
c3f4c690
ST
32592004-10-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3260
9238467d
SM
3261 * macterm.c (x_raise_frame): Add BLOCK_INPUT around SelectWindow.
3262 (x_lower_frame): Add BLOCK_INPUT around SendBehind.
c3f4c690 3263 (make_mac_frame): Add BLOCK_INPUT around the making of a
9238467d
SM
3264 terminal frame.
3265 (mac_initialize): Add BLOCK_INPUT around carbon initialization.
3266 * macgui.h (mktime): Use emacs_mktime.
c3f4c690
ST
3267 * macfns.c (Fx_file_dialog): Add BLOCK_INPUT around more code.
3268 Make a cancel file-open dialog be like C-g.
9238467d
SM
3269 * mac.c (mktime): Use emacs_mktime.
3270 (Fdo_applescript): Add BLOCK_INPUT around do_applescript.
3271 (Fmac_paste_function): Add better error handling for carbon cut/paste.
c3f4c690 3272
9688f9eb
KS
32732004-10-10 Kim F. Storm <storm@cua.dk>
3274
3275 * keyboard.c (timer_resume_idle): New function to resume idle
3276 timer without resetting timers on the idle list.
3277 (read_char): Use timer_resume_idle. Remove local var last_idle_start.
3278 (timer_start_idle, timer_stop_idle): Declare static.
3279 (read_key_sequence): Use timer_resume_idle instead of timer_start_idle.
3280
3281 * keyboard.h (timer_start_idle, timer_stop_idle): Remove prototypes.
3282
f7f3a65f
ST
32832004-10-08 Steven Tamm <steventamm@mac.com>
3284
9238467d 3285 * config.in (HAVE_MALLOC_MALLOC_H): Regenerate.
f7f3a65f 3286 * macterm.c (mac_check_for_quit_char): Remove warning for using
9238467d 3287 NULL where 0 should be used.
f7f3a65f
ST
3288 * unexmacosx.c: Use malloc/malloc.h on Tiger instead of
3289 objc/malloc.h
9238467d 3290 * mac.c: Include time.h for Tiger compatibility.
f7f3a65f 3291
3c7d999a
KS
32922004-10-07 Kim F. Storm <storm@cua.dk>
3293
3294 * xdisp.c (redisplay_window): Fix flicker on vertical line between
3295 windows. Update vertical line after drawing window fringes, but
3296 only if actually drawing any bitmaps--or there is no fringe.
3297
3298 * xterm.c (x_update_window_end): Likewise.
3299 * macterm.c (x_update_window_end): Likewise.
3300 * w32term.c (x_update_window_end): Likewise.
3301
3302 * fringe.c (draw_window_fringes): Return value now indicates if
3303 any fringe bitmaps were redrawn (or there are no fringes).
3304
3305 * dispextern.h (draw_window_fringes): Update prototype.
3306
bf06c82f
ST
33072004-10-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3308
3309 * macfns.c (mac_get_window_bounds): Add extern.
3310 (x_real_positions): Use mac_get_window_bounds.
3311
3312 * macmenu.c (update_submenu_strings): Apply 2004-09-07 change for
3313 xmenu.c (YAILOM).
3c7d999a 3314
bf06c82f
ST
3315 * macterm.c [!MAC_OSX]: Include Windows.h.
3316 (front_emacs_window): Rename from mac_front_window. All uses
3317 changed. Return the frontmost non-tooltip emacs window.
3318 (mac_get_window_bounds): New function.
3319 (x_calc_absolute_position): Use the difference of width and height
3320 between the inner and outer window.
3321 (x_set_offset): Specify window position by the coordinae of the
3322 outer window. Adjust the position if the title bar is completely
3323 outside the screen.
3324 (app_is_suspended, app_sleep_time): Remove unused variables.
3325 (do_app_resume, do_app_suspend): Remove their contents because
3326 window-activate/deactivate events will do the job.
3327 (do_zoom_window): Remove unused variables. Make compliant to the
3328 standard way of zooming. Set f->left_pos and f->top_pos.
3329 (XTread_socket): Don't use argument `expected'. Don't use
3330 FrontWindow to determine the clicked window. Exclude unprocessed
3331 mouseUp cases in the early stage. Add parentheses to fix operator
3332 precedence.
3333 (XTread_socket) [TARGET_API_MAC_CARBON]: Don't specify drag area.
3334
4cbbf6b7 33352004-10-05 Jan Dj\e,Ad\e(Brv. <jan.h.d@swipnet.se>
d8b43276
JD
3336
3337 * config.in: Regenerate.
3338
3339 * Makefile.in (RUN_TEMACS): Check HAVE_RANDOM_HEAPSTART instead of
3340 HAVE_EXECSHIELD.
3341
b90ee8b5
JD
33422004-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3343
3344 * xterm.c (x_find_modifier_meanings): Ignore any Super or Hyper for
3345 a row if Alt or Meta has been found for that row. Also stop scanning
3346 for Keysyms for that row.
3347
904db1a2
KS
33482004-10-04 Kim F. Storm <storm@cua.dk>
3349
0207b8ad
KS
3350 * fringe.c (Ffringe_bitmaps_at_pos): Change return value from cons
3351 to list. Include overlay arrow bitmap in return value.
3352
25f7220c
KS
3353 * xterm.c (XTset_vertical_scroll_bar): Improve handling of scroll
3354 bars with fractional column width. If scroll bar separates two
3355 windows, move it towards the window it belongs to. Only update
3356 the padding area below the scroll bar widget when necessary,
3357 i.e. when scroll bar widget is created, moved, or resized.
3358
562020fe
KS
3359 * xdisp.c (define_frame_cursor1): Do not change frame cursor
3360 while tracking/dragging mouse.
3361 (x_draw_vertical_border): Do not draw line if frame has scroll bars.
3362
37e34af7
KS
3363 * window.c (coordinates_in_window): Relax check for cursor
3364 on vertial border between mode lines.
3365 (Fset_window_fringes): Do not allow negative widths.
3366 (Fset_window_scroll_bars): Likewise.
3367
904db1a2
KS
3368 * .gdbinit (pp): Shorthand for p ARG + pr.
3369 (ff): New command: flush frame updates (X only).
3370
38fe4f64
MA
33712004-10-03 Michael Albinus <michael.albinus@gmx.de>
3372
3373 * fileio.c (auto_save_1) Call Ffile_modes for remote files.
3374
9de36315
KH
33752004-09-30 Kenichi Handa <handa@m17n.org>
3376
07c381ad 3377 * process.c (send_process): Free composition data.
9de36315 3378
07c381ad 3379 * fileio.c (Finsert_file_contents): Free composition data.
9de36315
KH
3380
3381 * coding.c (code_convert_region): Don't skip ASCIIs if there are
07c381ad
KH
3382 compositions to encode.
3383 (encode_coding_string): Likewise. Free composition data.
3384
b6189c3b 33852004-09-30 Florian Weimer <fw@deneb.enyo.de>
07c381ad
KH
3386
3387 * coding.c (code_convert_region): Free composition data.
9de36315 3388
f2a54fbc
KS
33892004-09-29 Kim F. Storm <storm@cua.dk>
3390
dc5d6435
KS
3391 * fringe.c: Remove limit on number of bitmaps.
3392 (fringe_bitmaps, fringe_faces): Change to pointers.
3393 (max_fringe_bitmaps): New var.
3394 (Fdefine_fringe_bitmap): Expand fringe_bitmaps and fringe_faces.
3395 (init_fringe): Allocate fringe_bitmaps and fringe_faces.
3396
3397 * dispextern.h (FRINGE_ID_BITS): Increase to 16 bits (64K bitmaps).
3398 (struct glyph_row): Reorder fringe_bitmap related fields.
3399 (struct it): Likewise.
3400
3401 * w32term.c (fringe_bmp): Change to pointer.
3402 (max_fringe_bmp): New var.
3403 (w32_define_fringe_bitmap): Expand fringe_bmp.
3404 (w32_draw_fringe_bitmap): Check max_fringe_bmp.
3405 (w32_destroy_fringe_bitmap): Likewise.
3406
34072004-09-29 Kim F. Storm <storm@cua.dk>
3408
3409 * fringe.c: Simplify last change.
f2a54fbc
KS
3410 (lookup_fringe_bitmap): New function.
3411 (valid_fringe_bitmap_p, resolve_fringe_bitmap): Remove.
3412 (Fdestroy_fringe_bitmap): Use lookup_fringe_bitmap.
3413 Keep standard bitmaps in Vfringe_bitmaps.
3414 (Fdefine_fringe_bitmap): Use lookup_fringe_bitmap.
3415 (Fset_fringe_bitmap_face): Likewise.
3416
3417 * dispextern.h (lookup_fringe_bitmap): Add prototype.
3418 (valid_fringe_bitmap_p): Remove prototype.
3419
3420 * xdisp.c (handle_single_display_prop): Use lookup_fringe_bitmap.
3421
841a8bca
KS
34222004-09-29 Kim F. Storm <storm@cua.dk>
3423
1f2da365
KS
3424 * fringe.c (destroy_fringe_bitmap, init_fringe_bitmap)
3425 (w32_init_fringe, w32_reset_fringes): Fix bootstrap (NULL rif).
3426
841a8bca
KS
3427 * dispextern.h (valid_fringe_bitmap_p): Fix prototype.
3428
3429 * fringe.c (Vfringe_bitmaps): New variable.
3430 (syms_of_fringe): DEFVAR_LISP it.
3431 (valid_fringe_bitmap_p): Rename from valid_fringe_bitmap_id_p.
3432 Change arg to Lisp_Object and fail if not an integer.
3433 (get_fringe_bitmap_name, resolve_fringe_bitmap)
3434 (destroy_fringe_bitmap): New functions.
9238467d
SM
3435 (Fdestroy_fringe_bitmap): Change arg to bitmap symbol.
3436 Use destroy_fringe_bitmap. Remove symbol from Vfringe_bitmaps and
841a8bca
KS
3437 clear its fringe property.
3438 (init_fringe_bitmap): Use destroy_fringe_bitmap instead of
3439 Fdestroy_fringe_bitmap.
3440 (Fdefine_fringe_bitmap): Add BITMAP arg specifying new or existing
3441 bitmap symbol; remove WHICH arg. Add symbol to Vfringe_bitmaps
3442 and set fringe property. Signal error if no free slots.
3443 (Fset_fringe_bitmap_face): Change arg to bitmap symbol.
3444 (Ffringe_bitmaps_at_pos): Return bitmap symbols instead of numbers.
3445
3446 * xdisp.c (handle_single_display_prop): Fringe bitmaps are now
3447 symbols with a fringe property.
3448
4d965590
KS
34492004-09-27 Kim F. Storm <storm@cua.dk>
3450
3451 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>:
3452 Doc fix. Format may now be a symbol or alist, not a cons.
3453
3454 * fringe.c (update_window_fringes): Handle new formats of
3455 indicate-buffer-boundaries (symbol or alist). No longer
3456 allow a simple cons.
3457 (Ffringe_bitmaps_at_pos): Use nil value for no bitmap.
3458
e888c2b3
JD
34592004-09-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3460
9238467d 3461 * config.in: Rebuild.
e888c2b3 3462
83f1cb94
JD
34632004-09-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3464
3465 * config.in: Rebuild.
3466
dd3b1d60 3467 * Makefile.in: Run setarch i386 ./temacs if exec-shield is present.
83f1cb94 3468
2c51754c
SM
34692004-09-18 Stefan Monnier <monnier@iro.umontreal.ca>
3470
3471 * xterm.c (x_term_init): Work around a bug in some X servers.
3472
3df5f8aa
RS
34732004-09-18 Richard M. Stallman <rms@gnu.org>
3474
557ca2c1
RS
3475 * buffer.c (syms_of_buffer) <default-major-mode>: Doc fix.
3476
3df5f8aa
RS
3477 * xdisp.c (try_window_reusing_current_matrix):
3478 Handle the case where we reach the old displayed text,
3479 out of sync with the old line boundary.
3480
9238467d 34812004-09-14 Stefan Monnier <monnier@iro.umontreal.ca>
4b70e2c9
SM
3482
3483 * fileio.c (Finsert_file_contents): Fix case of replacement in a
3484 narrowed buffer.
3485
bfa02563
KS
34862004-09-14 Kim F. Storm <storm@cua.dk>
3487
a25fe164
KS
3488 * puresize.h (PURESIZE_RATIO): Define based on BITS_PER_EMACS_INT.
3489
bfa02563
KS
3490 * xfaces.c (Qface_no_inherit): New var.
3491 (syms_of_xfaces): Intern and staticpro it.
3492 (Finternal_make_lisp_face, Finternal_set_lisp_face_attribute)
3493 (Finternal_copy_lisp_face, update_face_from_frame_parameter):
3494 Don't increment face_change_count when face has non-nil
3495 face-no-inherit property.
3496
126f9c02
SM
34972004-09-13 Stefan Monnier <monnier@iro.umontreal.ca>
3498
892a8eb5
SM
3499 * bytecode.c (BYTE_CODE_QUIT): Add missing AFTER_POTENTIAL_GC.
3500 (Fbyte_code): Remove dead code after `wrong_type_argument'.
3501
126f9c02 3502 * alloc.c (Fgarbage_collect): Mark keyboards, gtk data, and specpdl
9238467d 3503 before doing the mark_stack_check_gcpros since they're not on the stack.
126f9c02 3504
c0ad3b38
KS
35052004-09-12 Kim F. Storm <storm@cua.dk>
3506
3507 * editfns.c (Fformat): Handle format strings with multiple text
3508 properties. Reverse text property list from the format string,
3509 so the positions are in increasing order.
3510
844fc085
JD
35112004-09-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3512
3513 * xselect.c (x_reply_selection_request): XSync and UNBLOCK before
3514 x_uncatch_errors so that possible protocol errors are delivered.
3515
b106731c
EZ
35162004-09-10 Eli Zaretskii <eliz@gnu.org>
3517
21065c92
EZ
3518 * Makefile.in (msdos.o): Depend on buffer.h, commands.h, and
3519 blockinput.h.
3520 (dosfns.o): Depend on blockinput.h, window.h, dispextern.h,
3521 charset.h, and coding.h
9238467d 3522 (w16select.o): Depend on buffer.h, charset.h, coding.h, and composite.h.
21065c92
EZ
3523 (term.o): Depend on window.h and keymap.h.
3524 (abbrev.o): Depend on syntax.h.
3525 (callint.o): Depend on keymap.h.
3526 (casefiddle.o): Depend on charset.h and keymap.h.
3527 (category.o): Depend on keymap.h.
3528 (coding.o): Depend on dispextern.h.
3529 (cmds.o): Depend on keyboard.h and keymap.h.
3530 (dispnew.o): Depend on indent.h and intervals.h.
3531 (doc.o): Depend on keymap.h.
3532 (editfns.o): Depend on frame.h.
3533 (emacs.o): Depend on dispextern.h.
3534 (fileio.o): Don't depend on ccl.h.
3535 (filelock.o): Depend on charset.h and coding.h.
3536 (frame.o): Depend on w32term.h and macterm.h.
3537 (insdel.o): Depend on region-cache.h.
3538 (keyboard.o): Depend on keymap.h, w32term.h, and macterm.h.
3539 (minibuf.o): Depend on $(INTERVALS_SRC) and keymap.h.
3540 (search.o): Depend on $(INTERVALS_SRC).
3541 (syntax.o): Depend on keymap.h, regex.h, and $(INTERVALS_SRC).
3542 (window.o): Depend on keymap.h, blockinput.h, $(INTERVALS_SRC),
3543 xterm.h, w32term.h, and macterm.h.
3544 (xdisp.o): Depend on keyboard.h, $(INTERVALS_SRC), xterm.h,
3545 w32term.h, and macterm.h.
3546 (xfaces.o): Depend on keyboard.h, $(INTERVALS_SRC),
3547 region-cache.h, xterm.h, w32term.h, and macterm.h.
3548 (bytecode.o): Depend on dispextern.h, frame.h, and xterm.h.
3549 (data.o): Depend on frame.h.
3550 (fns.o): Depend on keymap.h, xterm.h, and blockinput.h.
3551 (print.o): Depend on termchar.h and $(INTERVALS_SRC).
3552 (lread.o): Depend on $(INTERVALS_SRC), termhooks.h, and coding.h.
3553 (intervals.o): Depend on keymap.h.
3554
9238467d
SM
3555 * msdos.c (msdos_set_cursor_shape, IT_display_cursor):
3556 Add debugging print-out to termscript.
b106731c 3557
64b7122d
RS
35582004-09-09 Richard M. Stallman <rms@gnu.org>
3559
3560 * xdisp.c (decode_mode_spec): Use current buffer for most purposes.
3561
5670531e
RS
35622004-09-08 Richard M. Stallman <rms@gnu.org>
3563
6cb4a892
RS
3564 * window.c (Fset_window_buffer): Doc fix.
3565
5670531e
RS
3566 * xdisp.c (Fformat_mode_line): New arg BUFFER says which buffer to use.
3567
7e388eb7
JL
35682004-09-08 Dan Nicolaescu <dann@ics.uci.edu>
3569
3570 * minibuf.c (history_delete_duplicates): New variable.
3571 (read_minibuf): Use it.
3572 (syms_of_minibuf): Create the corresponding lisp variable.
3573
370e3587
KS
35742004-09-08 Kim F. Storm <storm@cua.dk>
3575
3576 * xdisp.c (set_cursor_from_row): Also look at 'cursor' property in
3577 overlay just before point.
3578
f844ba4e
LT
35792004-09-07 Luc Teirlinck <teirllm@auburn.edu>
3580
3581 * buffer.h (struct buffer): Add auto_save_file_format field.
9238467d
SM
3582 * buffer.c (reset_buffer, init_buffer_once):
3583 Handle auto_save_file_format field.
f844ba4e
LT
3584 (syms_of_buffer): Add DEFVAR_PER_BUFFER for
3585 `buffer-auto-save-file-format'.
f844ba4e
LT
3586 * fileio.c: Delete declaration for removed Vauto_save_file_format.
3587 (build_annotations): Adapt to replacement of
3588 `auto-save-file-format' with the new buffer-local variable
3589 `buffer-auto-save-file-format'.
3590 (syms_of_fileio): Delete DEFVAR_LISP for auto-save-file-format.
3591
f0f90717
JR
35922004-09-07 Jason Rumney <jasonr@gnu.org>
3593
3594 * w32term.h (AppendMenuW_Proc): Move declaration from w32menu.c.
3595
9238467d
SM
3596 * w32fns.c (w32_wnd_proc) [WM_MEASUREITEM, WM_DRAWITEM]:
3597 Handle Unicode menu titles.
f0f90717 3598
4e14f66c
KS
35992004-09-07 Kim F. Storm <storm@cua.dk>
3600
3601 * xdisp.c (set_cursor_from_row): Fix last change. Only use 'cursor'
3602 property from text property or overlay strings at point.
3603
9238467d 36042004-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
1806714a
SM
3605
3606 * xmenu.c (update_submenu_strings): YAILOM.
3607 (set_frame_menubar): Make sure last_i is initialized.
3608
1f06d367
JR
36092004-09-03 Jason Rumney <jasonr@gnu.org>
3610
1806714a 3611 * w32menu.c (_widget_value): Add lname and lkey.
1f06d367
JR
3612 (digest_single_submenu): Set lname and lkey in widget_value
3613 instead of name and key.
3614 (update_submenu_strings): New function.
3615 (set_frame_menubar): Remove call to inhibit_garbage_collection,
3616 call update_submenu_strings.
3617
3618 * w32menu.c (globals_of_w32menu): Check for Unicode API.
3619 (digest_single_submenu, w32_menu_show): Encode menu strings as
3620 UTF-8 if Unicode API is available.
3621 (utf8to16): New function.
3622 (add_menu_item): Use it when calling Unicode API.
1806714a 3623
46540080
KS
36242004-09-03 Kim F. Storm <storm@cua.dk>
3625
3626 * xdisp.c (set_cursor_from_row): Look for non-nil `cursor' property
3627 in overlay or text-property strings; set cursor on corresponding
3628 glyph rather than at end of the string.
3629
9277ba61 36302004-09-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
46540080 3631
9277ba61 3632 * macfns.c (x_real_positions): Save the current window port and
1806714a
SM
3633 set a new one before obtaining the global coordinate.
3634 Use FRAME_MAC_WINDOW.
3635 (x_set_name, x_set_title): Encode title to UTF8.
3636 Use SetWindowTitleWithCFString.
9277ba61
ST
3637 (Fx_server_version): Get correct OS version.
3638
1806714a
SM
3639 * macmenu.c (add_menu_item): Remove unused variable `i'.
3640 Don't let separator items destroy refence constants of other menu items.
9277ba61
ST
3641
3642 * macterm.c (x_update_end): Move SetPortWindowPort to inside
3643 BLOCK_INPUT.
3644 (x_set_offset): Use FRAME_MAC_WINDOW.
3645
3646 * xdisp.c (note_mouse_highlight): Set the mouse pointer shape to
3647 nontext_cursor if it is on a scroll bar.
3648
3649 * s/darwin.h (LIBS_CARBON): New define to specify libraries for
3650 Carbon support.
1806714a
SM
3651 (LD_SWITCH_SYSTEM_TEMACS): Don't link with unused libstdc++.
3652 Use LIBS_CARBON.
9277ba61 3653
b10daec7
JD
36542004-09-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3655
3656 * xfns.c (x_set_name_internal): New function. Check if we shall call
3657 xfree before ENCODE_UTF_8.
3658 (x_set_name, x_set_title): Call x_set_name_internal.
3659
f7e22385
JR
36602004-08-31 NAKAMURA Toshikazu <nr-tkz@nifty.com> (tiny change)
3661
3662 * w32fns.c (w32_load_font): If a BDF font is already loaded, do not
3663 reload it.
3664
2bf436c3
JD
36652004-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3666
1806714a 3667 * macmenu.c (_widget_value): Add lname and lkey.
16ceacc2
JD
3668 (single_submenu): Set lname and lkey in widget_value
3669 instead of name and key.
3670 (update_submenu_strings): New function.
3671 (set_frame_menubar): Remove call to inhibit_garbage_collection,
3672 call update_submenu_strings.
3673
2bf436c3
JD
3674 * xmenu.c (digest_single_submenu): Set lname and lkey in widget_value
3675 instead of name and key.
3676 (update_submenu_strings): New function.
3677 (set_frame_menubar): Remove call to inhibit_garbage_collection,
ec867797 3678 call update_submenu_strings.
2bf436c3
JD
3679
3680 * gtkutil.h (_widget_value): Added lname and lkey.
3681
11715f92
ST
36822004-08-30 Steven Tamm <steventamm@mac.com>
3683
3684 * macmenu.c (mac_menu_show): Remove shadowing of menu variable
3685 by using different names for inner loop variables.
3686
5500be54
JD
36872004-08-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3688
059cd329
JD
3689 * xmenu.c (set_frame_menubar): Reintroduce inhibit_garbage_collection
3690 from 2002-07-15T00:01:34Z!raeburn@raeburn.org so that strings from ENCODE_UTF_8 isn't GC:ed before used.
3691
5500be54
JD
3692 * gtkutil.c (xg_create_frame_widgets): Compensate for tool bar when
3693 tool bar items is 0.
3694
383418e5
ST
36952004-08-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3696
3697 * macmenu.c (ENCODE_MENU_STRING): Added to handle multibyte
3698 strings in menu items.
3699 (single_submenu): Use ENCODE_MENU_STRING
3700 (mac_menu_show): Use ENCODE_MENU_STRING. Reset grabbed because
3701 button release isn't passed to event loop
3702 (add_menu_item): Use SetMenuItemWithCFString
3703
6eb3ee72
ST
37042004-08-26 Steven Tamm <steventamm@mac.com>
3705
3706 * fileio.c (Fread_file_name): Call x_file_dialog on carbon on
7e26f91b
KS
3707 tool-bar/menu click.
3708 * macfns.c (Fx_file_dialog): Implement using NavServices.
6eb3ee72 3709
10b43ac3
JD
37102004-08-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3711
2728b5d0
JD
3712 * xterm.c (x_catch_errors_unwind): Do not XSync if display has closed.
3713
10b43ac3
JD
3714 * xfns.c (x_window_to_frame, x_any_window_to_frame)
3715 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
3716 (x_top_window_to_frame): Return 0 if wdesc is None.
3717
2ee3b79e
RS
37182004-08-22 Richard M. Stallman <rms@gnu.org>
3719
3720 * process.c (process_send_signal) [SIGNALS_VIA_CHARACTERS,
3721 HAVE_TERMIOS]: If there's no char for this signal, drop through
3722 and use system calls.
3723
3724 * bytecode.c (Fbyte_code) <unwind-protect>: Cannot GC.
3725
9a1ba2ea
KS
37262004-08-20 Kim F. Storm <storm@cua.dk>
3727
3728 * process.c (wait_reading_process_output): Rename from
3729 wait_reading_process_input. All uses changed.
3730 (wait_reading_process_output_1): Rename from
3731 wait_reading_process_input_1. All uses changed.
3732
3733 * dispnew.c (Fsleep_for): Remove obsolete code.
3734
295f3b30
KH
37352004-08-20 Kenichi Handa <handa@m17n.org>
3736
3737 * syntax.c (skip_chars): Fix for unibyte case.
3738
27615979
SM
37392004-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
3740
3741 * syntax.c (char_quoted): Mixup byte/char pos.
3742 (back_comment): Fixup globals in all cases.
3743
00267f94
JD
37442004-08-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3745
3746 * xfns.c (x_set_name, x_set_title): Encode title to UTF8 before
3747 passing it to gtk_window_set_title.
3748
2439909e
KS
37492004-08-19 Kim F. Storm <storm@cua.dk>
3750
6ba0f14c
KS
3751 * process.c (wait_reading_process_input): Clean up.
3752 Add wait_for_cell, wait_proc, and just_wait_proc args
3753 to avoid overloading `read_kbd' and `do_display' args.
3754 Change read_kbd arg to int. All callers changed.
3755
2439909e
KS
3756 * process.c (process_send_signal): Use CDISABLE.
3757
3758 * sysdep.c (child_setup_tty, init_sys_modes): Use CDISABLE.
3759
101c421e
KS
37602004-08-18 Kim F. Storm <storm@cua.dk>
3761
3762 * process.c (Faccept_process_output): Add arg JUST-THIS-ONE;
3763 forward to wait_reading_process_input via DO_DISPLAY arg.
3764 (wait_reading_process_input): If DO_DISPLAY < 0 for a process
3765 object, only process output from that process; also inhibit
3766 running timers if DO_DISPLAY==-2.
3767
c438dc33
KS
37682004-08-17 Kim F. Storm <storm@cua.dk>
3769
3770 * process.c (process_send_signal): Fix last change--use
3771 _POSIX_VDISABLE instead of CVDISABLE when available.
3772
8afc13c6
RS
37732004-08-16 Richard M. Stallman <rms@gnu.org>
3774
3775 * sysdep.c (child_setup_tty) [SIGNALS_VIA_CHARACTERS]:
3776 Set VQUIT and VINTR chars to the standard ones if they are unset.
3777 [AIX]: Don't do that here. And don't force VINTR to standard
3778 when SIGNALS_VIA_CHARACTERS.
3779
c438dc33 3780 * process.c (process_send_signal)
8afc13c6
RS
3781 [SIGNALS_VIA_CHARACTERS, HAVE_TERMIOS]: Clean up.
3782 Do nothing if the character is CVDISABLE.
3783
3784 * xfaces.c (merge_face_ref): Specifying `unspecified' is a no-op.
3785
c438dc33 3786 * intervals.c (move_if_not_intangible):
8afc13c6
RS
3787 Force POSITION to be between BEGV and ZV.
3788
6dad1714
JPW
37892004-08-14 John Paul Wallington <jpw@gnu.org>
3790
3791 * buffer.c (Frestore_buffer_modified_p): Doc fix.
3792
3793 * fileio.c (Fread_file_name): Doc fix.
3794
3795 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
3796
2bd77330
LT
37972004-08-09 Luc Teirlinck <teirllm@auburn.edu>
3798
3799 * keymap.c (Fmake_keymap, Fmap_keymap, Fwhere_is_internal): Doc fixes.
3800
c90e7e43
LT
38012004-08-08 Luc Teirlinck <teirllm@auburn.edu>
3802
3803 * keyboard.c: Declare Qdisabled_command_function instead of
8392e138 3804 Qdisabled_command_hook.
c90e7e43 3805 (Fcommand_execute): Use Qdisabled_command_function instead of
8392e138 3806 Qdisabled_command_hook.
c90e7e43
LT
3807 (syms_of_keyboard): Ditto.
3808
81909a1a
LT
38092004-08-07 Luc Teirlinck <teirllm@auburn.edu>
3810
3811 * keymap.c (Flocal_key_binding, Fglobal_key_binding)
3812 (syms_of_keymap) <key-translation-map>: Doc fixes.
3813
0cedd530
SM
38142004-08-07 Stefan Monnier <monnier@iro.umontreal.ca>
3815
1725a7c9
SM
3816 * window.c (window_list_1): YAILOM.
3817
0cedd530
SM
3818 * fileio.c (make_temp_name): Handle multibyte prefixes.
3819
2515a131
LT
38202004-08-06 Luc Teirlinck <teirllm@auburn.edu>
3821
3822 * keyboard.c (syms_of_keyboard) <overriding-terminal-local-map>:
3823 Doc fix.
3824
c8b20fb7
KH
38252004-08-03 Kenichi Handa <handa@m17n.org>
3826
3827 * coding.c (decode_coding_string): Adjust coding->consumed, and
3828 etc. with shrinked_bytes.
3829
fb8b092b
KS
38302004-08-03 Kim F. Storm <storm@cua.dk>
3831
3832 * indent.c (compute_motion): Fix check for full width window
3833 in non-window case. Do not count left truncation glyph on
3834 window systems.
3835
df133612
LT
38362004-08-02 Luc Teirlinck <teirllm@auburn.edu>
3837
3838 * data.c (Finteractive_form): Doc fix.
3839
0f7a93c1
KS
38402004-08-02 Kim F. Storm <storm@cua.dk>
3841
3842 * indent.c (compute_motion): Use actual window width if WIDTH is -1,
3843 properly accounting for continuation glyph on non-window systems.
3844 (Fcompute_motion): Use actual window width if WIDTH is nil, and
3845 actual window width/height if TOPOS is nil, properly accounting for
3846 continuation glyphs on non-window systems, and optional header lines.
3847 (vmotion): Let compute_motion calculate actual window width.
3848
3849 * window.c (window_scroll_line_based): Let compute_motion
3850 calculate actual window width.
3851
f491e1ed
KS
38522004-08-02 Kim F. Storm <storm@cua.dk>
3853
3854 * process.c (read_process_output): Use whole read buffer.
3855 Don't trigger adaptive read buffering on errors.
3856
83f64226
LT
38572004-07-31 Luc Teirlinck <teirllm@auburn.edu>
3858
3859 * keymap.c (Fset_keymap_parent, Fdefine_prefix_command): Doc fixes.
3860
3861 * keyboard.c (syms_of_keyboard) <disable-point-adjustment>: Doc fix.
3862
3863 * callint.c (Fcall_interactively): Doc fix.
3864
8afc13c6
RS
38652004-07-30 Richard M. Stallman <rms@gnu.org>
3866
3867 * abbrev.c (Fexpand_abbrev): Undo previous change.
3868
7c111482
KS
38692004-07-30 Kim F. Storm <storm@cua.dk>
3870
3871 * editfns.c (Fformat): Allocate extra (dummy) element in info.
3872
ee945d08
LT
38732004-07-28 Luc Teirlinck <teirllm@auburn.edu>
3874
3875 * eval.c (Fdefvar, Fdefconst): Doc fixes.
3876
3f911c94
KS
38772004-07-27 Kim F. Storm <storm@cua.dk>
3878
3879 * xdisp.c (move_it_in_display_line_to): Check BUFFER_POS_REACHED_P after
3880 we have ensured that the glyph fits on the current line (or returned
3881 MOVE_LINE_CONTINUED otherwise).
3882
f29ff8c7
KS
38832004-07-26 Kim F. Storm <storm@cua.dk>
3884
3885 * xdisp.c (move_it_in_display_line_to): If overflow-newline-into-fringe
3886 is enabled, return MOVE_LINE_CONTINUED rather than MOVE_POS_MATCH_OR_ZV
3887 if target position is at end of display line but char is not a newline.
3888
81159bb9
RS
38892004-07-25 Richard M. Stallman <rms@gnu.org>
3890
ab431b61
RS
3891 * window.c (coordinates_in_window): Return ON_SCROLL_BAR
3892 instead of ON_VERTICAL_BORDER, when on scroll bar.
3893 (Fcoordinates_in_window_p): Handle ON_SCROLL_BAR--return nil.
3894
3895 * dispextern.h (enum window_part): Add ON_SCROLL_BAR.
3896
f29ff8c7 3897 * window.c (Fcoordinates_in_window_p):
81159bb9
RS
3898 Take account of FRAME_INTERNAL_BORDER_WIDTH.
3899
3900 * alloc.c (check_cons_list): New function (contents commented out).
3901
fc820cc5
LT
39022004-07-24 Luc Teirlinck <teirllm@auburn.edu>
3903
3904 * xfaces.c (Fcolor_supported_p): Doc fix.
3905
3906 * frame.c (Fselect_frame, Fset_frame_selected_window)
3907 (Fframe_visible_p, Fraise_frame): Doc fixes.
3908
289978b5
LT
39092004-07-24 Richard M. Stallman <rms@gnu.org>
3910
78819ebb 3911 * keyboard.h (not_single_kboard_state): Declare.
7630911d
RS
3912
3913 * fileio.c (Fwrite_region): Doc fix.
3914
3915 * window.c (Fwindow_at): Take account of FRAME_INTERNAL_BORDER_WIDTH.
3916
3917 * abbrev.c (Fexpand_abbrev): Run Qpre_abbrev_expand_hook
3918 only when a real abbrev is present.
3919
289978b5
LT
3920 * xfns.c (x_icon_verify): New function.
3921 (Fx_create_frame): Use it.
3922
63cc10ae
KS
39232004-07-22 Barry Fishman <barry_fishman@att.net> (tiny change)
3924
3925 * s/gnu-linux.h: Use GC_MARK_STACK if __amd64__ is defined.
3926
36f826d4
KS
39272004-07-21 Kim F. Storm <storm@cua.dk>
3928
3929 * window.h (struct glyph_matrix): New members nrows_scale_factor
3930 and ncols_scale_factor.
3931
3932 * window.c (make_window): Initialize nrows_scale_factor and
3933 ncols_scale_factor members.
3934
3935 * dispnew.c (margin_glyphs_to_reserve): Apply ncols_scale_factor.
3936 (allocate_matrices_for_frame_redisplay): Fix left/right margin mix-up.
3937 (required_matrix_height): Apply nrows_scale_factor.
3938 (required_matrix_width): Apply ncols_scale_factor.
3939
3940 * xdisp.c (display_line): Increment nrows_scale_factor and set
3941 fonts_changed_p if past last allocated row.
3942 (append_glyph, append_composite_glyph, produce_image_glyph)
3943 (append_stretch_glyph): Increment ncols_scale_factor and set
3944 fonts_changed_p if current area is full.
3945
5fc1c546
JD
39462004-07-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3947
3948 * widget.c (EmacsFrameDestroy): Don't abort if normal_gc is 0.
3949
cb7516e5
LT
39502004-07-19 Luc Teirlinck <teirllm@auburn.edu>
3951
3952 * window.c (Fpos_visible_in_window_p, Fset_window_hscroll)
3953 (Fwindow_inside_pixel_edges, Fwindow_end, Fset_window_point)
3954 (Fset_window_start, Fscroll_up, Fscroll_down)
3955 (Fother_window_for_scrolling, Fscroll_other_window)
3956 (Fsave_window_excursion, Fset_window_vscroll)
3957 (syms_of_window) <window-size-fixed>: Doc fixes.
3958
b6189c3b 39592004-07-19 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
dda741ec
JR
3960
3961 * w32fns.c (Fx_file_dialog): Use ENCODE_FILE instead of
3962 ENCODE_SYSTEM for filenames.
3963
bfcf6608
ST
39642004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3965
3966 * mac.c (sys_select): Block input around call to
3967 ReceiveNextEvent to prevent breakage. Correctly handle
3968 blocking on event queue only by calling ReceiveNextEvent
3969 instead of select (since GUI events aren't on an fd).
3970 (sys_read): Remove function
3971 * sysdep.c: Remove redefine of read to sys_read if HAVE_CARBON
3972
e082ac9d
ST
39732004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3974
3975 * mac.c (sys_select): Redo sys_select to use alarm-based
cb7516e5 3976 polling instead of 1 sec timeouts (like solaris).
e082ac9d 3977
cb7516e5 3978 * macterm.c (x_make_frame_visible): Comment in polling on
e082ac9d
ST
3979 frame creation.
3980
3981 * keyboard.c: Undef SIGIO on Carbon
3982
3983 * atimer.c (alarm_signal_handler): Call alarm handlers after
3984 scheduling.
3985
3986 * eval.c (Feval): Remove quit_char test
3987
3988 * process.c (wait_reading_process_input): Remove clearing
3989 stdin for select call on process input.
3990
4b9da0fb
LT
39912004-07-18 Luc Teirlinck <teirllm@auburn.edu>
3992
1204e81c
LT
3993 * xdisp.c (syms_of_xdisp) <window-scroll-functions>: Correct
3994 capitalization error in docstring.
4b9da0fb 3995
26503ad2
JB
39962004-07-17 Juanma Barranquero <lektu@terra.es>
3997
3998 * keyboard.c (not_single_kboard_state): Do nothing unless
3999 MULTI_KBOARD is defined.
4000
3751eb00
RS
40012004-07-17 Richard M. Stallman <rms@gnu.org>
4002
4003 * window.c (coordinates_in_window): Inside the window but outside
4004 its box to the L or R, return ON_VERTICAL_BORDER.
4005 (window_list_1): Rotate the list to start with WINDOW.
4006
4007 * print.c (print_preprocess): Test for print_depth at limit
4008 before entering in being_printed.
4009
4010 * keyboard.c (not_single_kboard_state): New function.
4011 (stuff_buffered_input): Now no-op only if no SIGTSTP.
4012
4013 * frame.c (Fdelete_frame): If we're in single_bboard_state on
4014 this kboard, and we delete its last frame, go to any_kboard_state.
4015
4016 * buffer.c (syms_of_buffer) <transient-mark-mode>: Doc fix.
4017
b6189c3b 40182004-07-15 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
62eb6ca9
JR
4019
4020 * w32fns.c (Fx_file_dialog): Encode strings in system coding
4021 system before passing them to OS functions for display.
4022
0f6af254
DK
40232004-07-15 David Kastrup <dak@gnu.org>
4024
f9253326
KS
4025 * search.c (syms_of_search): Staticpro `saved_last_thing_searched'.
4026 Apparently fixes an abort condition.
0f6af254 4027
386c8f42
LT
40282004-07-14 Luc Teirlinck <teirllm@auburn.edu>
4029
4030 * fileio.c (Fvisited_file_modtime): Return a list of two integers,
4031 instead of a cons.
4032
366511da
MB
40332004-07-14 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
4034
4035 * keyboard.c (echo_dash): Do nothing if there already is a dash
4036 at the end of the echo string.
4037
f85409d3
KS
40382004-07-12 Kim F. Storm <storm@cua.dk>
4039
4040 * alloc.c (mark_object): Only look at Lisp_Misc_Save_Value
4041 if GC_MARK_STACK.
4042
0ba2e87b
LT
40432004-07-10 Luc Teirlinck <teirllm@auburn.edu>
4044
da38045d
LT
4045 * buffer.c (Fswitch_to_buffer, Fpop_to_buffer): Doc fixes.
4046
0ba2e87b
LT
4047 * window.c (Fwindow_buffer, Fother_window, Fget_lru_window)
4048 (Fget_largest_window, Fget_buffer_window, Fdelete_windows_on)
4049 (Freplace_buffer_in_windows, Fset_window_buffer)
4050 (Fselect-window, Fdisplay-buffer, Fsplit_window): Doc fixes.
4051 (syms_of_window): Expand docstring of `display-buffer-function'.
4052
5668fbb8
LT
40532004-07-09 Luc Teirlinck <teirllm@auburn.edu>
4054
4055 * editfns.c (Ffloat_time, Fformat_time_string, Fdecode_time)
4056 (Fcurrent_time_string, Fcurrent_time_zone): Mention in docstrings
4057 that time values of the type (HIGH . LOW) are considered obsolete.
4058
a085bf9d
LT
40592004-07-06 Luc Teirlinck <teirllm@auburn.edu>
4060
669de2fb
LT
4061 * keyboard.c (syms_of_keyboard): Fix `keyboard-translate-table'
4062 docstring.
4063
bac66325 4064 * fns.c (Fclear_string): Declare `len' before call to CHECK_STRING.
a085bf9d 4065
8e975df9
JPW
40662004-07-06 John Paul Wallington <jpw@gnu.org>
4067
4068 * eval.c (Fdefmacro): Signal an error if NAME is not a symbol.
4069
fa164e6a
JPW
4070 * fns.c (Fclear_string): Signal an error if STRING is not a string.
4071
2bac9bb1
JD
40722004-07-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4073
4074 * macterm.c (mac_initialize_display_info): Use CGGetActiveDisplayList
4075 instead of CGMainDisplayID (only in OSX 10.2 and later).
4076
316ef0dc
JPW
40772004-07-04 John Paul Wallington <jpw@gnu.org>
4078
4079 * fileio.c (read_file_name_completion_ignore_case): New variable.
4080 (syms_of_fileio): Declare and initialise it.
4081 (Fread_file_name): Bind `completion-ignore-case' to respect it.
4082
2a1a35c6
EZ
40832004-07-03 Eli Zaretskii <eliz@gnu.org>
4084
4085 * msdos.c (dos_rawgetc): Use make_number to produce Lisp objects
4086 for event.x and event.y.
4087
33a72331
KH
40882004-07-01 Kenichi Handa <handa@m17n.org>
4089
4090 * w32select.c (Fw32_set_clipboard_data): Update `nbytes' correctly
4091 after getting a new string by pre-write-conversion.
4092
9238467d 40932004-06-30 Stefan Monnier <monnier@iro.umontreal.ca>
07a6ab76
SM
4094
4095 * xterm.c (x_detect_focus_change): Remove unused var `nr_events'.
4096 (x_calc_absolute_position): Remove unused var `child'.
4097
4098 * xfaces.c (x_supports_face_attributes_p)
4099 (Fdisplay_supports_face_attributes_p): YAILOM.
4100 (tty_supports_face_attributes_p): Remove unused var `i'.
4101
4102 * syntax.c (skip_chars): Remove unused labels fwd_unibyte_ok and
4103 back_unibyte_ok.
4104
4105 * search.c (match_limit, Fmatch_data, Fset_match_data): YAILOM.
4106
4107 * fontset.c (Fset_fontset_font): Remove unused vars `family' and `registry'.
4108
4109 * Makefile.in (${etc}DOC): Fix file name of make-docfile.
4110
f96ec754
AS
41112004-06-30 Andreas Schwab <schwab@suse.de>
4112
4113 * image.c (CHECK_LIB_AVAILABLE): Add third parameter LIBRARIES.
4114 (Finit_image_library): Pass LIBRARIES through to
4115 CHECK_LIB_AVAILABLE. Declare parameters. Doc fix.
4116 (lookup_image_type): Pass Qnil as second argument to
4117 Finit_image_library.
4118
78819ebb 4119 * lisp.h (Finit_image_library): Declare.
f96ec754 4120
59feca74 41212004-06-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
c8d09ad8 4122
31983645
AS
4123 * macterm.c (do_window_activate, do_window_deactivate): Remove.
4124 (XTread_socket): Send mouse button events to the toolbox
4125 dispatcher even when the mouse is grabbed. Don't process window
4126 activate events for non-Emacs windows. Replace function calls to
4127 do_window_activate and do_window_deactivate with their contents.
4128 Reset mouse grabbing status when a window is deactivated.
59feca74 4129
c61278bb
ST
41302004-06-29 Steven Tamm <steventamm@mac.com>
4131
4132 * macterm.c (mac_get_emulated_btn)
4133 (mac_event_to_emacs_modifiers): Fix emulated mouse button
4134 support to correctly mask out modifiers.
4135
c3762cbd
DK
41362004-06-29 David Kastrup <dak@gnu.org>
4137
4138 * search.c (Fset_match_data): Allow buffer before end of list
4139 which can happen if set-match-data is using a pre-consed list.
4140
c61278bb 41412004-06-28 Steven Tamm <steventamm@mac.com>
e439b925
ST
4142
4143 * macterm.c (XTread_socket): Correctly set the frame position
4144 after the window is moved.
4145
74cdfe05
JD
41462004-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4147
4148 * gtkutil.c (xg_get_image_for_pixmap): Call g_object_unref on
4149 gpix and gmask just before return to avoid memory leak.
03ecb80f
JD
4150 (xg_get_image_for_pixmap): Add workaround for monochrome displays
4151 so insensitive and activated icons look ok.
74cdfe05 4152
ef544dc8
JR
41532004-06-27 Jason Rumney <jasonr@gnu.org>
4154
4155 * w32fns.c (file_dialog_callback): Disable edit control if set
4156 to directories only on CDN_INITDONE message.
4157 (Fx_file_dialog): Default to directories only when prompt starts
4158 with "Dired".
4159
7b7990cc
KS
41602004-06-25 Kim F. Storm <storm@cua.dk>
4161
4162 * alloc.c (allocate_misc): Update total_free_markers.
4163 (free_misc): New function.
4164 (safe_alloca_unwind, free_marker): Use it.
4165
4166 * lisp.h (free_misc): Add prototype.
4167
4168 * fns.c (Fmapconcat, Fmapcar): Remove superfluous GCPROs.
4169
d8c379f8
RS
41702004-06-24 Richard M. Stallman <rms@gnu.org>
4171
4172 * emacs.c (Vsignal_USR1_hook, Vsignal_USR2_hook): Definitions deleted.
4173 (syms_of_emacs): Lisp variables deleted.
4174
559cdd07
DK
41752004-06-23 David Kastrup <dak@gnu.org>
4176
94939b84
DK
4177 * search.c (Freplace_match): Adjust the match-data more thoroughly
4178 when replacing strings in the buffer.
4179 (Fmatch_data): When INTEGERS is non-nil and the last match was in
4180 a buffer, add the buffer as last element to the match data.
4181 (Fset_match_data): If an additional element of the match-data is a
4182 buffer, restore it to last_thing_searched.
c8d09ad8 4183 (save_search_regs): Save last_thing_searched as part of the match data.
559cdd07
DK
4184 (restore_match_data): Restore it again.
4185
dce417e7
LT
41862004-06-23 Luc Teirlinck <teirllm@auburn.edu>
4187
4188 * keymap.c (Ftext_char_description): Doc fix.
4189 * doc.c (Fsnarf_documentation): Doc fix.
4190
ef54b2d0
KS
41912004-06-22 Kim F. Storm <storm@cua.dk>
4192
b5bc4d05
KS
4193 * fns.c (Fmapcar, Fmapconcat): GCPRO the args array.
4194
ef54b2d0
KS
4195 * lisp.h (struct Lisp_Save_Value): New member dogc.
4196 (SAFE_ALLOCA_LISP): Change second arg to number of elements.
4197 Set dogc member in Lisp_Save_Value object so it will be GC'ed.
4198 (SAFE_FREE_LISP): New macro.
4199
4200 * alloc.c (safe_alloca_unwind): Clear dogc and pointer members.
4201 (make_save_value): Init new dogc member.
4202 (mark_object): Mark Lisp_Save_Value pointer array if dogc is set.
4203
4204 * fns.c (Fmapconcat, Fmapcar): Use new SAFE_ALLOCA_LISP and
4205 SAFE_FREE_LISP macros.
4206
3d33d993
KS
42072004-06-22 Kim F. Storm <storm@cua.dk>
4208
4209 * lisp.h (SAFE_ALLOCA_LISP): New macro to allocate Lisp_Objects.
4210 Temporarily inhibits GC if memory is xmalloc'ed, as the Lisp_Objects
4211 in that memory area are unknown to GC. Add comments.
4212
4213 * fns.c (Fmapconcat, Fmapcar): Use SAFE_ALLOCA_LISP.
4214
5c917f98
KS
42152004-06-21 Kim F. Storm <storm@cua.dk>
4216
4217 * lisp.h (MAX_ALLOCA): Define here.
4218 (safe_alloca_unwind): Add prototype.
4219 (USE_SAFE_ALLOCA, SAFE_ALLOCA, SAFE_FREE): New macros.
4220
4221 * alloc.c (safe_alloca_unwind): New function.
4222
4223 * casefiddle.c (casify_object): Use SAFE_ALLOCA.
4224
4225 * charset.c (Fstring): Use SAFE_ALLOCA.
4226
4227 * coding.c (MAX_ALLOCA): Remove define.
4228
4229 * data.c (MAX_ALLOCA): Remove define.
4230 (Faset): Use SAFE_ALLOCA.
4231
4232 * editfns.c (Fformat, Ftranspose_regions): Use SAFE_ALLOCA.
4233
4234 * fns.c (string_make_multibyte, string_to_multibyte)
4235 (string_make_unibyte, Fmapconcat, Fmapcar): Use SAFE_ALLOCA.
4236 (MAX_ALLOCA): Remove define.
4237 (Fbase64_encode_region, Fbase64_encode_string)
4238 (Fbase64_decode_region, Fbase64_decode_string): Use SAFE_ALLOCA.
4239 (Fbase64_encode_region, Fbase64_encode_string): Fix potential
4240 memory leak if encoding fails.
4241
4242 * xdisp.c (add_to_log): Use SAFE_ALLOCA.
4243
9a09408e
EZ
42442004-06-21 Eli Zaretskii <eliz@gnu.org>
4245
4246 * print.c (Fwith_output_to_temp_buffer): Doc fix.
4247
376de739
RS
42482004-06-20 Richard M. Stallman <rms@gnu.org>
4249
4250 * xfaces.c (Finternal_copy_lisp_face): Small cleanup; doc fix.
4251
4252 * search.c (match_limit): Cleaner err msg when no match data available.
4253
4254 * window.c (syms_of_window): Doc fix.
4255
4256 * keyboard.c (command_loop_1): Handle values `only' and `identity'
4257 for Vtransient_mark_mode.
4258
4259 * buffer.c (syms_of_buffer): Doc fix.
4260
acd81db9
DK
42612004-06-21 David Kastrup <dak@gnu.org>
4262
4263 * minibuf.c (Ftry_completion, Fall_completions): Do lazy binding
4264 and unbinding of `case-fold-search' according to
4265 `completion-ignore-case' around calls of string-match and
4266 predicates, respectively. Should give satisfactory performance
4267 in all relevant cases.
4268
f303762d
JD
42692004-06-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4270
95911c74
JD
4271 * xterm.c (x_draw_image_foreground_1): Subtract slice.x/y from
4272 clip_x/y_origin.
4273
a6cb6b78
JD
4274 * fns.c (string_to_multibyte): Use xmalloc/xfree instead of alloca.
4275
f303762d
JD
4276 * macfns.c (Fx_display_color_cells): Do not limit return value to 256.
4277
4278 * macterm.c (mac_initialize_display_info): Initialize n_planes correctly
4279 on Mac OSX.
4280
bbdb2684
LT
42812004-06-16 Luc Teirlinck <teirllm@auburn.edu>
4282
4283 * buffer.c (syms_of_buffer): Clarify `fill-column' docstring.
4284
5ea48b1c
KS
42852004-06-16 Kim F. Storm <storm@cua.dk>
4286
4287 * dispextern.h (Vimage_types): Remove extern.
4288
803aac3e
MB
42892004-06-16 Miles Bader <miles@gnu.org>
4290
4291 * image.c (lookup_image_type): Initialize image type if necessary.
4292
cdc97764
KS
42932004-06-15 Kim F. Storm <storm@cua.dk>
4294
c4a5739c
KS
4295 * xdisp.c (try_cursor_movement): Exclude header line from scroll
4296 margin at top of window.
4297 (try_window_reusing_current_matrix): Calculate proper cursor position
4298 after scrolling up with non-zero scroll margin, as the old cursor
4299 position corresponds to value of PT before executing this command.
4300 (try_window_id): Consider scroll margin at bottom of window too;
4301 otherwise we fail to scroll when hl-line-mode is enabled.
4302
cdc97764
KS
4303 * syntax.c (skip_chars): Only recognize [:class:] when it has the
4304 proper format and class is a lower-case word.
4305
5b166323
JD
43062004-06-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4307
4308 * gtkutil.c (xg_get_image_for_pixmap): New function.
c8d09ad8 4309 (xg_get_gdk_pixmap_and_mask): Remove.
5b166323
JD
4310 (update_frame_tool_bar): Call xg_get_image_for_pixmap instead of
4311 xg_get_gdk_pixmap_and_mask.
cdc97764 4312
5b166323
JD
4313 * xterm.h (struct x_display_info): Typo in comment fixed.
4314
1ebd4f78
JB
43152004-06-14 Juanma Barranquero <lektu@terra.es>
4316
4317 * dispextern.h (Vimage_types): Make it conditional on
4318 HAVE_WINDOW_SYSTEM.
4319
4320 * image.c (Vimage_types): Move from xdisp.c.
4321 (Vimage_type_cache): New variable.
4322 (define_image_type): New argument indicating whether an image
4323 library was loaded; cache loaded status and return t on success,
4324 nil otherwise.
4325 (CACHE_IMAGE_TYPE, ADD_IMAGE_TYPE): New macros.
4326 (w32_delayed_load): New function to load an image library from a
4327 list of possible filenames.
4328 (init_xpm_functions, init_png_functions, init_jpeg_functions)
4329 (init_tiff_functions, init_gif_functions): Use `w32_delayed_load'.
c8d09ad8 4330 (CHECK_LIB_AVAILABLE): Call `define_image_library' with new argument.
1ebd4f78
JB
4331 (Finit_image_library): New function, extracted from `init_image'.
4332 Try to initialize an image library on demand and cache whether we
4333 were successful or not.
4334 (syms_of_image): Initialize `Vimage_types' and
4335 `Vimage_type_cache'. Add recognized image types to Vimage_types.
4336 Export `init-image-library'.
4337 (init_image): Remove initialization of all image types, except xbm
4338 and pbm.
4339
4340 * xdisp.c (Vimage_types): Delete (moved to image.c).
4341
904ee128
AS
43422004-06-14 Andreas Schwab <schwab@suse.de>
4343
4344 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
4345 Avoid calling specbind when completion-regexp-list is empty.
4346
092de21d
RS
43472004-06-13 Richard M. Stallman <rms@gnu.org>
4348
4349 * regex.h (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
4350 (re_wctype, re_iswctype, re_wctype_to_bit):
4351 Non-function definitions moved here from regex.c.
1ebd4f78 4352
092de21d
RS
4353 * regex.c (re_wctype, re_iswctype): Function defs longer static.
4354 (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
4355 (re_wctype, re_iswctype, re_wctype_to_bit):
4356 Non-function definitions moved to regex.h.
4357
4358 * window.c (Fselect_window): Doc fix.
4359
4360 * syntax.c: Include regex.h.
4361 (skip_chars): New arg HANDLE_ISO_CLASSES. Callers changed.
4362 If requested, make a list of classes, then check the scanned
4363 chars for membership in them.
4364 (in_classes): New function.
4365 Doc fix.
4366
4367 * keyboard.c (cmd_error): Don't call any_kboard_state
4368 if inside a recursive edit level.
4369
9ba27690 43702004-06-13 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
092de21d
RS
4371
4372 * keyboard.c (command_loop): Call any_kboard_state before
4373 command_loop_2 when at top level.
4374
3ebc0939
AS
43752004-06-13 Andreas Schwab <schwab@suse.de>
4376
cea5d0d4
AS
4377 * print.c (print_object): Always use %ld for printing EMACS_INT.
4378
4379 * keyboard.c (cancel_hourglass_unwind): Return a value.
4380 (modify_event_symbol): Always use %ld for printing EMACS_INT.
4381 (Fexecute_extended_command): Likewise.
4382
4383 * syntax.h (SYNTAX_ENTRY_FOLLOW_PARENT): Rename local variable to
4384 avoid clashes.
4385 (SYNTAX): Likewise.
4386 (SYNTAX_WITH_FLAGS): Likewise.
4387 (SYNTAX_MATCH): Likewise.
4388
4389 * syntax.c (char_quoted): Avoid warning about undefined operation.
4390 (find_defun_start): Likewise.
4391 (scan_lists): Likewise.
4392 (INC_FROM): Likewise.
4393 (scan_sexps_forward): Likewise.
4394
be8c4ce4
AS
4395 * image.c: Include <ctype.h>.
4396
3ebc0939
AS
4397 * xfaces.c (face_attr_equal_p): Declare parameters.
4398
6fb41b5b
KH
43992004-06-13 Kenichi Handa <handa@m17n.org>
4400
4401 * ccl.c (CCL_READ_CHAR): If hit EOF, set REG to -1.
4402
fc3095ce
EZ
44032004-06-12 Matthew Mundell <matt@mundell.ukfsn.org>
4404
4405 * eval.c (Fdefun): Signal an error if NAME is not a symbol.
4406
66189a40
KH
44072004-06-12 Kenichi Handa <handa@m17n.org>
4408
4409 * ccl.c (CCL_CALL_FOR_MAP_INSTRUCTION): Save eof_ic in
4410 ccl_prog_stack_struct and update it.
4411 (CCL_INVALID_CMD): If CCL_DEBUG is defined, call ccl_debug_hook.
4412 (CCL_READ_CHAR): Get instruction counter from eof_ic, not from
4413 ccl->eof_ic on EOF.
4414 (ccl_debug_hook): New function.
4415 (struct ccl_prog_stack): New member eof_ic.
4416 (ccl_driver): Handle EOF in subrountine call correctly.
4417
44182004-06-11 Kenichi Handa <handa@m17n.org>
4419
4420 * coding.c (decode_coding_string): Check CODING_FINISH_INTERRUPT.
4421
1da71023
KS
44222004-06-11 Kim F. Storm <storm@cua.dk>
4423
4424 * emacs.c (shut_down_emacs): Inhibit redisplay during shutdown.
4425
e9efcef4
JB
44262004-06-11 Juanma Barranquero <lektu@terra.es>
4427
4428 * keyboard.c (Fposn_at_point): Doc fix.
4429
9b9ceb61
DK
44302004-06-11 David Kastrup <dak@gnu.org>
4431
4432 * search.c (match_limit): Don't flag an error if match-data
4433 exceeding the allocated search_regs.num_regs gets requested, just
4434 return Qnil.
4435
6e87ac8f
MB
44362004-06-08 Miles Bader <miles@gnu.org>
4437
4438 * xfaces.c (push_named_merge_point): Return 0 when a cycle is detected.
4439
0b0dea7b
JB
44402004-06-07 Juanma Barranquero <lektu@terra.es>
4441
4442 * editfns.c (Fuser_login_name, Ffloat_time, Fencode_time)
4443 (Fcurrent_time_string, Fcurrent_time_zone)
4444 (Finsert_buffer_substring, Ftranspose_regions): Doc fixes.
4445
a0a23346
MB
44462004-06-07 Miles Bader <miles@gnu.org>
4447
08384afd 4448 * xfaces.c (struct named_merge_point): New type.
a0a23346
MB
4449 (push_named_merge_point): New function.
4450 (merge_named_face): New function.
4451 (merge_face_ref, face_at_buffer_position, face_at_string_position):
4452 Use `merge_named_face'.
4453 (merge_face_inheritance): Function removed.
c8d09ad8 4454 (merge_face_ref): Rename from `merge_face_vector_with_property'.
a0a23346
MB
4455 Add new `err_msgs' and `named_merge_points' args. Return error
4456 status. Only print error messages if ERR_MSGS is true. Don't try to
4457 do :inherit attribute validation.
4458 (merge_face_heights): Handle `unspecified' in both directions.
4459 (merge_face_vectors): Rename `cycle_check' arg to `named_merge_points'.
4460 Call `merge_face_ref' instead of `merge_face_inheritance'.
4461 (Fdisplay_supports_face_attributes_p, Fface_attributes_as_vector)
4462 (compute_char_face, face_at_buffer_position)
4463 (face_at_string_position): Call `merge_face_ref' instead of
4464 `merge_face_vector_with_property'.
4465
12d5b185
KH
44662004-06-07 Kenichi Handa <handa@m17n.org>
4467
4468 * coding.c (find_safe_codings): Check NILP (safe_codings) only at
4469 the necessary places.
4470
2e2d7ee6
KS
44712004-06-07 Kim F. Storm <storm@cua.dk>
4472
4473 * process.c (Fdelete_process): Undo 2004-05-28 change.
4474 Instead, call status_notify also for network process.
4475 (status_message): Use process instead of status as arg.
4476 Give messages "deleted" or "connection broken by remote peer" for
4477 an exited network process.
4478 (status_notify): Change call to status_message.
4479 (read_process_output): Increase readmax to 4096. Do not increase
4480 buffer size for datagram channels (default is now large enough).
4481
fcf0d299
ST
44822004-06-06 Steven Tamm <tamm@Steven-Tamms-Computer.local>
4483
4484 * macfns.c (x_create_tip_frame): Fix Mac OS X 10.1 compilation
4485 problem due to newly defined variable.
4486
0722292b
MB
44872004-06-06 Miles Bader <miles@gnu.org>
4488
4489 * xfaces.c (Fdisplay_supports_face_attributes_p): Give up
4490 immediately if non-interactive or not initialized.
4491
ddfb8369
RS
44922004-06-05 Richard M. Stallman <rms@gnu.org>
4493
4494 * minibuf.c (Fcompleting_read): Doc fix.
4495
57015754
AS
44962004-06-05 Andreas Schwab <schwab@suse.de>
4497
4498 * macfns.c (x_create_tip_frame): Fix declaration after statement.
4499
23715ea6
JB
45002004-06-05 Juanma Barranquero <lektu@terra.es>
4501
4502 * keymap.c (Fdescribe_vector): Fix docstring.
4503 (Fkey_description, Fglobal_key_binding): Fix typo in docstring.
4504
8e330b22
MB
45052004-06-05 Miles Bader <miles@gnu.org>
4506
4507 * xfaces.c (tty_supports_face_attributes_p): Make sure the specified
4508 attributes have different values than the default face.
4509
9742a3a6
EZ
45102004-06-04 Eli Zaretskii <eliz@gnu.org>
4511
4512 * xfaces.c (x_supports_face_attributes_p): Make this function
4513 conditional on HAVE_WINDOW_SYSTEM.
c8d09ad8
SM
4514 (Fdisplay_supports_face_attributes_p) [HAVE_WINDOW_SYSTEM]:
4515 Don't call x_supports_face_attributes_p if it was not compiled in.
9742a3a6 4516
9717e36c
MB
45172004-06-04 Miles Bader <miles@gnu.org>
4518
4519 * xfaces.c (tty_supports_face_attributes_p): New function, mostly
4520 from Ftty_supports_face_attributes_p.
4521 (x_supports_face_attributes_p): New function.
4522 (Ftty_supports_face_attributes_p): Function deleted.
4523 (Fdisplay_supports_face_attributes_p): New function.
4524 (syms_of_xfaces): Initialize Sdisplay_supports_face_attributes_p.
f9711de4 4525 (face_attr_equal_p): New function.
9717e36c
MB
4526 (lface_equal_p): Use it.
4527
52deb19f
JB
45282004-06-03 Juanma Barranquero <lektu@terra.es>
4529
4530 * w32fns.c (Fx_display_grayscale_p, Fw32_send_sys_command)
4531 (Vw32_color_map): Fix typo in docstring.
4532 (Fx_create_frame, Fw32_find_bdf_fonts, Fx_show_tip)
4533 (Fw32_unregister_hot_key, Fw32_reconstruct_hot_key):
4534 Make argument names match their use in docstring.
4535
86d373e6
JB
45362004-06-02 Juanma Barranquero <lektu@terra.es>
4537
4538 Work around bugs/problems with MinGW builds of graphics libraries
4539 called from MSVC builds of Emacs.
4540
4541 * image.c (lookup_image): Make pointer to img static.
4542 (png_read_from_memory): Disable "global" optimization.
4543
2fb0ce67
SM
45442004-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
4545
c8d09ad8
SM
4546 * eval.c (Fcondition_case): Fix usage. Simplify.
4547
2fb0ce67
SM
4548 * mem-limits.h (EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true.
4549
50bf7673
ST
45502004-05-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4551
4552 * macfns.c: Don't include ccl.h.
4553 [MAC_OSX]: Don't include QuickTime/QuickTime.h.
86d373e6
JB
4554 [!MAC_OSX]: Don't include alloca.h, Windows.h, Gestalt.h, or
4555 TextUtils.h.
c8d09ad8 4556 (Fx_create_frame): Sync with xfns.c. Initialize cursor descriptors.
50bf7673
ST
4557 (Fx_display_mm_height, Fx_display_mm_width): Calculate length from
4558 display height/width.
4559 (compute_tip_xy, Vx_max_tooltip_size): Declare.
4560 (unwind_create_tip_frame, compute_tip_xy): New functions.
4561 (x_create_tip_frame, Fx_show_tip, Fx_hide_tip): Sync with xfns.c.
4562 (syms_of_macfns): Initialize Qcancel_timer, Vx_max_tooltip_size,
4563 and last_show_tip_args.
2fb0ce67 4564
50bf7673
ST
4565 * macgui.h [!MAC_OSX]: Include Gestalt.h.
4566 (Cursor, No_Cursor): New defines.
c8d09ad8 4567 [!TARGET_API_MAC_CARBON] (SetPortWindowPort): New compatibility macro.
50bf7673
ST
4568 [!TARGET_API_MAC_CARBON] (arrow_cursor): Declare.
4569
4570 * macmenu.c (mac_menu_show, mac_dialog): Use SetPortWindowPort.
4571
4572 * macterm.c: Don't include Gestalt.h.
4573 (enum mouse_tracking_type, mouse_tracking_in_progress): Remove.
4574 (XDrawLine, XClearArea, XClearWindow, mac_draw_bitmap)
4575 (mac_set_clip_rectangle, mac_reset_clipping, XCreatePixmap)
4576 (XFillRectangle, mac_draw_rectangle, mac_draw_string_common)
4577 (mac_copy_area, mac_copy_area_with_mask, x_update_end)
4578 (construct_mouse_click, XTmouse_position)
4579 (x_scroll_bar_report_motion, x_calc_absolute_position)
4580 (do_mouse_moved, do_zoom_window, mac_do_receive_drag)
4581 (XTread_socket, make_mac_frame): Use SetPortWindowPort.
4582 (note_mouse_movement): Clear the mouse face and reset the pointer
4583 shape when the pointer goes outside the frame without grabbing.
4584 (mac_front_window): New function.
4585 (mac_window_to_frame): New macro.
4586 (XTmouse_position, x_scroll_bar_report_motion, do_window_update)
4587 (do_window_activate, do_window_deactivate, do_app_resume)
4588 (do_app_suspend, do_mouse_moved, do_menu_choice, do_grow_window)
4589 (do_zoom_window, mac_do_receive_drag, XTread_socket)
4590 (mac_check_for_quit_char): Use mac_front_window and/or
4591 mac_window_to_frame.
4592 (x_scroll_bar_handle_click): Set `(PORTION . WHOLE)' part in a
4593 scroll-bar click event.
4594 (mac_define_frame_cursor): Change the pointer shape.
c8d09ad8 4595 (x_free_frame_resources): Reset tip_window to NULL when it is disposed.
50bf7673 4596 [!TARGET_API_MAC_CARBON] (arrow_cursor): New variable.
c8d09ad8 4597 [!TARGET_API_MAC_CARBON] (do_init_managers): Initialize arrow_cursor.
50bf7673
ST
4598 (do_window_update): Don't do anything if the updated window is the
4599 tooltip window.
4600 (do_mouse_moved): Handle mouse movement events here (previously in
4601 XTread_socket). Clear the mouse face if
4602 dpyinfo->mouse_face_hidden is set.
4603 (do_os_event, do_events): Remove (now in XTread_socket).
4604 (XTread_socket): Immediately return if interrupt_input_blocked.
c8d09ad8
SM
4605 Loop until all the events in the queue are processed.
4606 Rearrange codes for mouse grabbing. Add tooltip support. Include the
50bf7673
ST
4607 contents of do_os_event and do_events. Remove mouse movement
4608 handling (now in do_mouse_moved). Add the case where
4609 Vmouse_highlight has an integer value.
4610 (NewMacWindow): Remove.
4611 (make_mac_frame): Do what NewMacWindow previously did. Don't do
4612 excess initializations.
4613 (make_mac_terminal_frame): Previous initializations in
4614 make_mac_frame are moved here.
c8d09ad8
SM
4615 (mac_initialize_display_info):
4616 Initialize dpyinfo->mouse_face_overlay and dpyinfo->mouse_face_hidden.
50bf7673
ST
4617
4618 * xdisp.c [MAC_OS] (No_Cursor): Remove variable.
4619 (define_frame_cursor1): Don't treat HAVE_CARBON as a special case.
4620
08fd1251
RS
46212004-05-29 Richard M. Stallman <rms@gnu.org>
4622
4623 * lisp.h (truncate_undo_list): Update decl.
4624
4625 * alloc.c (undo_outer_limit): New variable.
4626 (syms_of_alloc): Defvar it.
4627 (Fgarbage_collect): Pass undo_outer_limit to truncate_undo_list.
4628
4629 * undo.c (truncate_undo_list): New arg LIMITSIZE.
4630
4631 * alloc.c (lisp_align_malloc): Check for base == 0
4632 regardless of HAVE_POSIX_MEMALIGN.
4633 Clean up HAVE_POSIX_MEMALIGN handling of `err'.
4634
227ef0ff
SM
46352004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
4636
4637 * alloc.c: Undo Kim's recent changes and fix the same bug differently.
4638 (marker_blocks_pending_free): Remove.
4639 (Fgarbage_collect): Sweep after cleaning up undo-lists.
4640 Mark the undo lists after claning them up.
4641 Don't free block in marker_blocks_pending_free.
4642 (mark_buffer): Don't mark undo_list.
4643 (gc_sweep): Sweep hash-tables and strings first.
4644 Do free marker blocks that are empty.
4645
034a6113
SM
46462004-05-28 Jim Blandy <jimb@redhat.com>
4647
4648 * regex.c (print_partial_compiled_pattern): Add missing 'break'
4649 after 'case wordend'. For symbeg and symend, print to stderr,
4650 like the other cases.
4651
33594a8d
NF
46522004-05-28 Noah Friedman <friedman@splode.com>
4653
4654 * process.c (Fdelete_process): Do not call remove_process.
4655
ce50a847
SM
46562004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
4657
4658 * alloc.c (struct backtrace): Remove.
4659 (Fgarbage_collect): Use the new mark_backtrace.
4660
4661 * eval.c (mark_backtrace): New function.
4662
4663 * minibuf.c (run_exit_minibuf_hook): New function.
4664 (read_minibuf_unwind): Don't run exit-minibuffer-hook any more.
4665 (read_minibuf): Use separate unwind handler to run exit-minibuf-hook.
4666
1e8dae36
KS
46672004-05-27 Kim F. Storm <storm@cua.dk>
4668
4669 * xdisp.c (back_to_previous_visible_line_start): Skip backwards
4670 over display properties, e.g. images, that replace buffer text.
4671
846faa3b
KS
46722004-05-25 Kim F. Storm <storm@cua.dk>
4673
4674 * alloc.c (marker_blocks_pending_free): New var.
4675 (gc_sweep): Store free marker blocks on that list.
4676 (Fgarbage_collect): Free them after undo-list cleanup.
4677
4678 * process.c (wait_reading_process_input): Check connect_wait_mask
4679 before actually accepting connection in case it has already been
4680 accepted due to recursion.
4681
b6189c3b 46822004-05-23 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
6239a668 4683
ce50a847
SM
4684 * coding.c (Fset_safe_terminal_coding_system_internal):
4685 Set suppress_error in safe_terminal_coding, not terminal_coding.
6239a668 4686
71d5a208
RS
46872004-05-22 Richard M. Stallman <rms@gnu.org>
4688
4689 * alloc.c (Fmake_string): Doc fix.
4690
4691 * buffer.c (clone_per_buffer_values): Copy the alist of local vars,
4692 and the alist pairs too.
4693
4694 * casefiddle.c (casify_object): Return OBJ unchanged if not real char.
4695
4696 * emacs.c (main): Update copyright year.
4697
4698 * fileio.c (Fread_file_name): Expand DIR if not absolute.
4699
4700 * insdel.c (del_range_2, replace_range): Don't write an anchor
4701 if the gap is empty.
4702
4703 * xdisp.c (try_scrolling): If scroll-up-aggressively or
4704 scroll-down-aggressively is small but positive, put point
4705 near the screen edge.
4706
f63fd14e
JB
47072004-05-22 Juanma Barranquero <lektu@terra.es>
4708
4709 * keymap.c (Fdefine_key): Doc fix.
4710
4d12067c
KS
47112004-05-22 Kim F. Storm <storm@cua.dk>
4712
4713 * alloc.c (struct backtrace): Add debug_on_exit member.
4714 (Fgarbage_collect): Clear out buffer undo_list markers after gc_sweep.
4715 Identify those markers as Lisp_Misc_Free objects. Clear car and cdr of
4716 the removed cons cells.
4717 (mark_object): Undo previous change - disallow Lisp_Misc_Free objects.
4718 (gc_sweep): Clear cons_blocks before sweeping strings, so we don't have
4719 any cons cells pointing to unallocated stings.
4720 Do not lisp_free any marker blocks, as there may still be pointers
4721 to them from buffer undo lists at this stage of GC.
4722
4723 * keyboard.c (struct backtrace): Add debug_on_exit member.
4724 (Fcommand_execute): Clear it.
4725
931285e2
LT
47262004-05-20 Luc Teirlinck <teirllm@auburn.edu>
4727
4728 * intervals.c (lookup_char_property): Do not prematurely return nil.
4729
669fa600
SM
47302004-05-19 Jim Blandy <jimb@redhat.com>
4731
4732 Add support for new '\_<' and '\_>' regexp operators, matching the
f63fd14e 4733 beginning and end of symbols.
4d12067c 4734
669fa600
SM
4735 * regex.c (enum syntaxcode): Add Ssymbol.
4736 (init_syntax_once): Set the syntax for '_' to Ssymbol, not Sword.
4737 (re_opcode_t): New opcodes `symbeg' and `symend'.
4738 (print_partial_compiled_pattern): Print the new opcodes properly.
4739 (regex_compile): Parse the new operators.
ce50a847 4740 (analyse_first): Skip sym(beg|end) (they match only the empty string).
669fa600
SM
4741 (mutually_exclusive_p): `symend' is mutually exclusive with \s_ and
4742 \sw; `symbeg' is mutually exclusive with \S_ and \Sw.
4743 (re_match_2_internal): Match symbeg and symend.
4744
4745 * search.c (trivial_regexp_p): \_ is no longer a trivial regexp.
4746
0d8c2e5c
KS
47472004-05-19 Kim F. Storm <storm@cua.dk>
4748
4749 * .gdbinit (xsymbol): Fix last change.
4750
669fa600
SM
47512004-05-18 Stefan Monnier <monnier@iro.umontreal.ca>
4752
4753 * .gdbinit (xprintstr): New fun.
4754 (xstring, xprintsym): Use it.
4755
4756 * w32proc.c (create_child): Use INTMASK.
4757
4758 * alloc.c (Fgarbage_collect): Do all the marking before flushing
4759 unmarked elements of the undo list.
4760
9a6a4c40
DP
47612004-05-18 David Ponce <david@dponce.com>
4762
4763 * print.c (print): Reset print_depth before to call print_object.
4764
f3c4ec74
JR
47652004-05-18 Jason Rumney <jasonr@gnu.org>
4766
4767 * w32console.c: Prefix RIF functions with w32con_ to avoid
4768 namespace clash with functions in term.c and w32term.c.
4769
4770 * w32menu.c (add_menu_item, w32_menu_display_help)
4771 [USE_LISP_UNION_TYPE]: Cast from Lisp_Object using i member.
4772
0d8c2e5c 4773 * w32term.h (display_x_get_resource, vga_stdcolor_name): Add prototype.
f3c4ec74 4774
6be49c3a
EZ
47752004-05-18 Eli Zaretskii <eliz@gnu.org>
4776
4d0b9a0a
EZ
4777 * lisp.h (DECL_ALIGN): Remove restriction on MS-DOS systems.
4778
6be49c3a
EZ
4779 * msdos.c (syms_of_msdos): Initialize dos-unsupported-char-glyph
4780 with make_number.
4781 (IT_write_glyphs): Extract glyph from dos-unsupported-char-glyph
4782 with XINT.
4783
0bc90bba
KS
47842004-05-18 Kim F. Storm <storm@cua.dk>
4785
89d19988
KS
4786 * blockinput.h (INPUT_BLOCKED_P): New macros.
4787
4788 * keyboard.c (Frecursive_edit): Return immediately if input blocked.
4789 (Ftop_level): Unblock input if blocked.
4790
0bc90bba
KS
4791 * buffer.h (GET_OVERLAYS_AT): New macro.
4792 * msdos.c (IT_note_mouse_highlight): Use it.
4793 * textprop.c (get_char_property_and_overlay): Use it.
4794 * xdisp.c (next_overlay_change, note_mouse_highlight): Use it.
4795 * xfaces.c (face_at_buffer_position): Use it.
4796
4797 * print.c (print_object): Increase buf size.
4798
653bd0f6
JR
47992004-05-17 Jason Rumney <jasonr@gnu.org>
4800
4801 * w32fns.c (Fw32_register_hot_key, Fw32_unregister_hot_key)
4802 (Fw32_toggle_lock_key) [USE_LISP_UNION_TYPE]: Cast from
4803 Lisp_Object using i member.
4804 (w32_quit_key): Rename from Vw32_quit_key, and make an int.
4805 (syms_of_w32fns, globals_of_w32fns): Use Lisp_Object and int
4806 consistently.
4807
4808 * w32proc.c (create_child): Use make_number instead of masking pid.
4809
4810 * w32fns.c (w32_color_map_lookup): Return a Lisp_Object.
4811 (x_to_w32_charset, w32_to_x_charset, w32_to_all_x_charsets):
4812 Use EQ to compare Lisp_Objects.
4813 (w32_parse_hot_key): Use int for lisp_modifiers consistently.
4814
4815 * w32term.c (w32_num_mouse_buttons): Rename from
4816 Vw32_num_mouse_buttons and make it an int.
4817
4818 * w32.c (init_environment): Use it.
4819
4820 * w32fns.c (w32_wnd_proc): Likewise.
4821
4822 * w32proc.c (w32_pipe_read_delay): Rename from
4823 Vw32_pipe_read_delay and make it an int.
4824
4825 * w32.c (_sys_read_ahead): Use it.
4826
4827 * lisp.h (egetenv) [USE_CRT_DLL]: Remove condition.
4828
4829 * w32proc.c (create_child) [USE_LSB_TAG]: Don't try to mask pid.
4830
4831 * w32inevt.c (w32_console_mouse_position, do_mouse_event)
4832 (key_event): Don't mix Lisp_Object and int.
4833
4834 * w32heap.c (init_heap) [USE_LSB_TAG]: Don't check heap location.
4835
4836 * keyboard.c (kbd_buffer_get_event): Don't use event->code and
4837 modifiers in language change event.
4838
54b53ba7
KS
48392004-05-17 Kim F. Storm <storm@cua.dk>
4840
4841 * alloc.c (mark_object): Ignore Lisp_Misc_Free objects.
4842 Such objects may be freed markers which still exist on an undo list.
4843
6e86a75d
JB
48442004-05-16 Juanma Barranquero <lektu@terra.es>
4845
4846 * data.c (Fset_default): Make argument names match their use in
4847 docstring.
4848
fc80da24
AS
48492004-05-15 Andreas Schwab <schwab@suse.de>
4850
4851 * emacs.c (gdb_array_mark_flag): Define.
4852 * .gdbinit: Mask off gdb_array_mark_flag from vector sizes.
4853
c1380aa6
EZ
48542004-05-15 Eli Zaretskii <eliz@gnu.org>
4855
4856 * lisp.h (DECL_ALIGN) [MSDOS]: Don't define DECL_ALIGN to use
4857 __attribute__((__aligned__)), so that USE_LSB_TAG would not become
4858 defined for the MS-DOS build.
4859
89458937
SM
48602004-05-14 Stefan Monnier <monnier@iro.umontreal.ca>
4861
4862 * w32fns.c (Fw32_define_rgb_color): Avoid XSET.
4863
08020f9a
KH
48642004-05-14 Kenichi Handa <handa@m17n.org>
4865
4866 * ccl.c (Fccl_execute_on_string): Fix setting elements of STATUS.
4867
a433994a
ST
48682004-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4869
4870 * lisp.h (Vx_resource_name, Vx_resource_class): Move from xfns.c
4871 section to frame.c section.
4872 (Fxw_display_color_p, Fx_file_dialog): Declare if
89458937 4873 HAVE_WINDOW_SYSTEM defined.
0d8c2e5c 4874
a433994a 4875 * macfns.c (Fx_create_frame): Fix int/Lisp_Object mixup.
0d8c2e5c 4876
a433994a 4877 * macmenu.c (set_frame_menubar): Use NILP to test a lisp value.
0d8c2e5c 4878
a433994a
ST
4879 * macterm.c (mac_get_emulated_btn, mac_event_to_emacs_modifiers)
4880 (mac_get_mouse_btn): Use NILP and EQ to test/compare lisp values.
4881 (XTread_socket): Fix int/Lisp_Object mixup.
4882 (mac_check_for_quit_char): Fix pointer/Lisp_Object mixup.
0d8c2e5c 4883
a433994a
ST
4884 * macterm.h (struct frame, struct face, struct image)
4885 (display_x_get_resource, Fx_display_color_p)
89458937
SM
4886 (Fx_display_grayscale_p, Fx_display_planes, x_free_gcs):
4887 Add prototypes.
a433994a 4888
b51a51b9
KS
48892004-05-14 Kim F. Storm <storm@cua.dk>
4890
4891 * process.c (wait_reading_process_input): Make reentrant.
4892 Make Available and Connecting non-static. Save and restore value
4893 of waiting_for_user_input_p.
4894
2bde1dd8
KS
48952004-05-13 Kim F. Storm <storm@cua.dk>
4896
4897 * keyboard.c (mark_kboards): Don't mark x and y members
4898 that are overloaded in selection request events.
4899
a267ab4d
SM
49002004-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
4901
4902 * lisp.h (USE_LSB_TAG): Make it the default when it is known to work.
4903
eb15ce9e
GM
49042004-05-13 Glenn Morris <gmorris@ast.cam.ac.uk>
4905
4906 * window.c (Fdisplay_buffer, Fsplit_window)
4907 (split-height-threshold): Doc fix.
4908
7fc92635
JB
49092004-05-13 Juanma Barranquero <lektu@terra.es>
4910
4911 * xfaces.c (Ftty_supports_face_attributes_p)
4912 (Finternal_copy_lisp_face): Fix typo in docstring.
4913 (Finternal_get_lisp_face_attribute): Fix docstring.
4914
1ec2a572
JD
49152004-05-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4916
4917 * xfns.c (syms_of_xfns): Provide x-toolkit also for GTK.
4918
ae9292e0
ST
49192004-05-11 Steven Tamm <steventamm@mac.com>
4920
4921 * macfns.c (Fx_create_frame): Default to using tool-bar by
4922 setting tool-bar-lines to 1 in default-frame-alist.
4923
49242004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
ea1aaa6f
ST
4925
4926 * image.c (xpm_scan, xpm_make_color_table_v, xpm_put_color_table_v)
4927 (xpm_get_color_table_v, xpm_make_color_table_h)
4928 (xpm_put_color_table_h, xpm_get_color_table_h)
4929 (xpm_str_to_color_key, xpm_load_image, xpm_load)
4930 (syms_of_image): Support XPM on Carbon Emacs. Does not
a267ab4d 4931 depend on libXpm, but only supports XPM version 3 without extensions.
ea1aaa6f 4932
fe97e8df
ST
49332004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4934
a267ab4d 4935 * macterm.c (x_flush, XTframe_up_to_date): Use FRAME_MAC_P
fe97e8df
ST
4936 instead of FRAME_X_P
4937
b47e779e
KS
49382004-05-11 Kim F. Storm <storm@cua.dk>
4939
4940 * process.c (read_process_output): Grow decoding_buf when needed;
4941 this could cause a crash in allocate_string and compact_small_strings.
4942
cdc9b845
EZ
49432004-04-29 Jim Blandy <jimb@redhat.com>
4944
4945 * regex.c (mutually_exclusive_p): In 'case wordbeg', compare op2
4946 against proper opcode.
4947
aa7094ba
JB
49482004-05-10 Juanma Barranquero <lektu@terra.es>
4949
4950 * process.c (Fstart_process): Fix docstring.
4951
4952 * charset.c (Fget_unused_iso_final_char): Fix typos in docstring.
4953 (Fchar_bytes, Fchar_width, Fstring_width, Fchar_direction)
4954 (Fsplit_char, Fchar_charset): Make argument names match their use
4955 in docstring.
4956
e109331a
RS
49572004-05-10 Richard M. Stallman <rms@gnu.org>
4958
4959 * print.c (print_preprocess): Use being_printed, loop_count and
4960 halftail to detect overdeep nesting and cyclic cdr chains.
4961
9a28b921
AS
49622004-05-10 Andreas Schwab <schwab@suse.de>
4963
78819ebb 4964 * lisp.h (Fmake_symbolic_link): Declare.
9a28b921
AS
4965
4966 * fileio.c (Frename_file): Remove extra argument in call to
4967 Fmake_symbolic_link.
4968
e2c02c1a
KS
49692004-05-10 Kim F. Storm <storm@cua.dk>
4970
4971 * xdisp.c (calc_line_height_property): Use string position when
4972 object is a string.
4973
cfe9d13e
KH
49742004-05-10 Kenichi Handa <handa@m17n.org>
4975
a57e8159
KH
4976 * print.c (temp_output_buffer_setup): Bind inhibit-read-only and
4977 inhibit-modification-hooks to t temporarily before calling
4978 Ferase_buffer.
4979
4980 * xfns.c (x_create_tip_frame): Bind inhibit-read-only and
4981 inhibit-modification-hooks to t temporarily before calling
4982 Ferase_buffer.
4983
4984 * w32fns.c (x_create_tip_frame): Bind inhibit-read-only and
4985 inhibit-modification-hooks to t temporarily before calling
4986 Ferase_buffer.
4987
cfe9d13e
KH
4988 * fns.c (count_combining): Delete it.
4989 (concat): Don't check combining bytes.
4990
ceb96489
JR
49912004-05-09 Jason Rumney <jasonr@gnu.org>
4992
4993 * w32fns.c (Vw32_ansi_code_page): New Lisp variable.
4994 (globals_of_w32fns): Set it.
4995
b6189c3b 49962004-05-09 Piet van Oostrum <piet@cs.uu.nl>
b1c661c7
JB
4997
4998 * data.c (Fquo): Simplify.
4999
28712a21
JB
50002004-05-08 Peter Whaite <emacs@whaite.ca> (tiny change)
5001
5002 * data.c (Fquo): If any argument is float, do the computation in
5003 floating point.
5004
0f0af7a8
JB
50052004-05-08 Juanma Barranquero <lektu@terra.es>
5006
88214ef6
JB
5007 * process.c (Fwaiting_for_user_input_p, Fmake_network_process)
5008 (Fset_process_query_on_exit_flag, Vprocess_adaptive_read_buffering):
5009 Fix spelling of Emacs on docstring.
5010 (Fset_process_coding_system, Fprocess_coding_system)
5011 (Fset_process_filter_multibyte, Fprocess_filter_multibyte_p):
5012 Make argument names match their use in docstring.
5013 (Fprocess_id, Fprocess_query_on_exit_flag, Finterrupt_process):
5014 Fix docstring.
5015
0f0af7a8
JB
5016 * editfns.c (Finsert_buffer_substring): Make argument names match their
5017 use in docstring.
5018
5019 * syntax.c (Fmodify_syntax_entry): Fix docstring.
5020
2a316a84
ST
50212004-05-07 Steven Tamm <steventamm@mac.com>
5022
5023 * macterm.c (mac_check_for_quit_char): Adding BLOCK_INPUT
5024 around call to ReceiveEvent to avoid certain crashes.
5025
50262004-05-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
0d8c2e5c 5027
2a316a84
ST
5028 * macterm.c (mac_draw_line_to_pixmap, XCreatePixmapFromBitmapData)
5029 (mac_fill_rectangle_to_pixmap, mac_draw_rectangle_to_pixmap)
5030 (mac_copy_area_to_pixmap, mac_copy_area_with_mask_to_pixmap):
5031 Save/restore the current graphics port and device handle when
5032 drawing into an offscreen graphics world.
5033
5034 * image.c [MAC_OS] (XPutPixel, XGetPixel, image_load_qt_1)
5035 (gif_load): Likewise.
5036
ab80314b
JB
50372004-05-07 Juanma Barranquero <lektu@terra.es>
5038
5039 * window.c (Fset_window_buffer): Fix docstring.
5040
70646bb5
TTN
50412004-05-06 Thien-Thi Nguyen <ttn@gnu.org>
5042
5043 * emacs.c (main) [VMS]: Fix var ref.
5044
b6189c3b 50452004-05-06 Romain Francoise <romain@orebokech.com>
b03a4fdd
JB
5046
5047 * data.c (Fsetq_default): Fix docstring.
5048
279d3293
JR
50492004-05-06 Jason Rumney <jasonr@gnu.org>
5050
5051 * image.c (Display) [HAVE_NTGUI]: Redefine while loading xpm.h
5052 to avoid name clash.
5053
f72b5416
JD
50542004-05-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5055
5056 * fileio.c (barf_or_query_if_file_exists): Use lstat.
5057 (Frename_file): Handle renaming of symlinks across file systems.
440c7d00 5058 (Frename_file): Put symlink handling inside #ifdef S_IFLNK.
f72b5416 5059
6ab66799
KS
50602004-05-04 Kim F. Storm <storm@cua.dk>
5061
5062 * xdisp.c (Qtotal): New var.
5063 (syms_of_xdisp): Intern and staticpro it.
5064 (calc_line_height_property): New arg total. Set it if
5065 line-spacing property has format (total . VALUE).
5066 (x_produce_glyphs): Ignore line-spacing if line-height is 0.
5067 Handle total line-spacing property.
5068
ab2d724b
JD
50692004-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5070
5071 * gtkutil.c (xg_update_scrollbar_pos): Call XClearWindow to clear
5072 "under" scroll bar when size/position changes.
5073
238add5e
JR
50742004-05-03 Jason Rumney <jasonr@gnu.org>
5075
5076 * makefile.nt: Remove.
5077
1644f4e4
EZ
50782004-05-02 Eli Zaretskii <eliz@gnu.org>
5079
a267ab4d
SM
5080 * syntax.h (SET_RAW_SYNTAX_ENTRY, SYNTAX_ENTRY_INT):
5081 Avoid compiler warnings.
05fdbeb8 5082
1644f4e4
EZ
5083 * Makefile.in (region-cache.o): Depend on config.h.
5084
b6189c3b 50852004-05-02 Romain Francoise <romain@orebokech.com>
6cbc951e
SM
5086
5087 * indent.c (compute_motion): Save vpos in prev_vpos when dealing
5088 with continuation lines, too.
5089
2b98b088
TTN
50902004-05-02 Thien-Thi Nguyen <ttn@gnu.org>
5091
5092 * syssignal.h (init_signals): Move decl outside `#ifdef POSIX_SIGNALS'.
5093
d9bf7950
SM
50942004-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
5095
5096 * xdisp.c (calc_line_height_property): YAILOM (yet another
5097 int/Lisp_Object mixup).
5098
affa509c
EZ
50992004-05-01 Eli Zaretskii <eliz@gnu.org>
5100
5101 * msdos.c (top-level): Add "#pragma pack(0)" after <dir.h>, to
5102 undo bad effect of pack(4) in some versions of system headers.
5103
07c07cfe
JR
51042004-05-01 Jason Rumney <jasonr@gnu.org>
5105
5106 * w32term.c (x_draw_hollow_cursor): Sync with xterm.c
5107
e71caa4e
KS
51082004-04-30 Kim F. Storm <storm@cua.dk>
5109
5110 * buffer.c (syms_of_buffer) <line-spacing>: Allow float value.
b2b55d03 5111 (syms_of_buffer) <cursor-type>: Doc fix.
e71caa4e
KS
5112
5113 * dispextern.h (struct it): Remove member use_default_face.
5114 Add members override_ascent, override_descent, override_boff.
5115
5116 * xdisp.c (init_iterator): Handle line-spacing float value.
5117 Initialize override_ascent member.
5118 (append_space_for_newline): Reset override_ascent.
5119 Remove use_default_face.
5120 (calc_line_height_property): New function to calculate value of
5121 line-height and line-spacing properties. Look at overlays, too.
5122 Set override_ascent, override_descent, override_boff members when
5123 using another face than the current face. Float values are now
5124 relative to the frame default font, by default; accept a cons
5125 of ratio and face name to specify value relative to a specific face.
5126 (x_produce_glyphs): Use calc_line_height_property.
5127 Use override_ascent etc. when set to handle different face heights.
5128 A negative line-spacing property value is interpreted as a total
5129 line height, rather than inter-line spacing.
5130 (note_mouse_highlight): Allocate room for 40 overlays initially.
5131
0fddae66
SM
51322004-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
5133
5134 * data.c (Fsubr_name): New fun.
5135 (syms_of_data): Defsubr it.
5136
712d23dc
KS
51372004-04-29 Kim F. Storm <storm@cua.dk>
5138
5139 * xdisp.c (null_glyph_slice): New var.
5140 (append_glyph, append_composite_glyph, append_stretch_glyph):
5141 Use it to initialize glyph slice.
5142
033ad8c6
SM
51432004-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
5144
5145 * xdisp.c (x_produce_glyphs): Fix the proverbial int/Lisp_Object mixup.
5146 (on_hot_spot_p): Make sure we always return a value.
5147 (Flookup_image_map): Remove unused var ix and iy.
5148 (note_mode_line_or_margin_highlight): Remove unused var `image'.
5149
93397360
EZ
51502004-04-27 Eli Zaretskii <eliz@gnu.org>
5151
5152 * msdos.c (init_environment): If one of the TMP... environment
5153 variables is set to a drive letter without a trailing slash,
5154 append a slash.
5155
0c54865e
EZ
51562004-04-27 Matthew Mundell <matt@mundell.ukfsn.org>
5157
5158 * editfns.c (lisp_time_argument): Provide externally.
5159
5160 * fileio.c (Fset_file_times): New function.
5161 (syms_of_fileio): Intern and staticpro it.
5162
d3b111bd
KS
51632004-04-27 Kim F. Storm <storm@cua.dk>
5164
07dc1231
KS
5165 * xdisp.c (x_produce_glyphs): Fix last change; handle newline in
5166 header line strings.
5167
360fe9d2
KS
5168 * dispextern.h (struct it): New member use_default_face.
5169
d3b111bd
KS
5170 * xdisp.c (Qline_height): New variable.
5171 (syms_of_xdisp): Intern and staticpro it.
5172 (append_space_for_newline): Partially undo 2004-04-25 change;
5173 add default_face_p arg, and restore callers.
5174 Clear it->use_default_face after use.
5175 (x_produce_glyphs): Set default font for ascii char if
5176 it->use_default_font is set. Change line-spacing property to set
5177 just extra line spacing. Handle new line-height property.
5178
0448588b
AS
51792004-04-26 Andreas Schwab <schwab@suse.de>
5180
5181 * print.c (print_object): Print non-ascii characters in bool
5182 vector representation as octal escapes.
5183
5184 * lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define.
5185 * print.c (print_object): Use it instead of BITS_PER_CHAR for
5186 bool vectors.
5187 * lread.c (read1): Likewise.
5188 * alloc.c (Fmake_bool_vector): Likewise.
5189 * data.c (Faref, Faset): Likewise.
5190 * fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray)
5191 (mapcar1): Likewise.
d3b111bd 5192
536d6baa
ST
51932004-04-26 Steven Tamm <tamm@Steven-Tamms-Computer.local>
5194
7e26f91b 5195 * lread.c (init_lread): Fix typo in HAVE_CARBON test logic.
536d6baa 5196
ae11577a
MB
51972004-04-26 Miles Bader <miles@gnu.org>
5198
5199 * lisp.h (CYCLE_CHECK): Macro moved from xfaces.c.
5200
e198ba87
JB
52012004-04-26 Juanma Barranquero <lektu@terra.es>
5202
5203 * buffer.c (Fpop_to_buffer): Fix docstring.
5204
f3d5f92d 52052004-04-26 Steven Tamm <steventamm@mac.com>
e198ba87 5206
f3d5f92d
ST
5207 * lread.c (init_lread): Don't display missing lisp directory
5208 warnings with Carbon Emacs because self-contained bundled Emacs
e198ba87 5209 may be built without correct installation path.
f3d5f92d 5210
03e35edc
KS
52112004-04-25 Kim F. Storm <storm@cua.dk>
5212
9ff3aa31
KS
5213 * macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
5214
5215 * xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
5216
03e35edc
KS
5217 * xdisp.c (append_space_for_newline): Rename from append_space.
5218 Remove DEFAULT_FACE_P arg; always use current face. Callers changed.
5219 (x_produce_glyphs): Handle line-spacing property on newline char.
5220 If value is t, adjust ascent and descent to fit current row height.
5221 If value is an integer or float, set extra_line_spacing to integer
5222 value, or to float value x current line height.
5223
f24814e0
KH
52242004-04-23 Kenichi Handa <handa@m17n.org>
5225
5226 * fontset.c (Finternal_char_font): If POSITION is nil, return
5227 font for displaying CH with the default face.
5228
d814862a
JB
52292004-04-23 Juanma Barranquero <lektu@terra.es>
5230
5231 * makefile.w32-in: Add "-*- makefile -*-" mode tag.
5232
063a45c5
SM
52332004-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
5234
5235 * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]:
5236 Don't make assumptions about the relative place of i and val.
5237 (EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well.
5238
ae7ab2d3
KS
52392004-04-21 Kim F. Storm <storm@cua.dk>
5240
5241 * dispextern.h (struct glyph_slice): New struct.
5242 (struct glyph): New member slice.
5243 (GLYPH_SLICE_EQUAL_P): New macro.
5244 (GLYPH_EQUAL_P): Use it.
5245 (struct glyph_string): New member slice.
5246 (struct it_slice): New struct.
5247 (struct it): New member slice, add member to stack too.
5248 New member constrain_row_ascent_descent_p.
5249 (image_ascent): Add prototype.
5250
5251 * dispnew.c (buffer_posn_from_coords): Return full image width
5252 and height even for image slices (posn is relative to full image).
5253 (marginal_area_string): Adjust x0,y0 for image slice.
5254
5255 * image.c (image_ascent): Add slice arg; calculate ascent for
5256 image slice (or full image).
5257
5258 * keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns.
5259 (syms_of_keyboard): Defsubr them.
5260
5261 * lisp.h (pos_visible_p): Fix prototype.
5262
c62aec78 5263 * macterm.c (x_draw_relief_rect): Add top_p and bot_p args.
ae7ab2d3
KS
5264 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
5265 (x_draw_image_foreground, x_draw_image_relief)
5266 (x_draw_image_foreground_1, x_draw_image_glyph_string):
5267 Draw sliced images.
5268
5269 * w32term.c (w32_draw_relief_rect): Add top_p and bot_p args.
5270 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
5271 (x_draw_image_foreground, x_draw_image_relief)
5272 (w32_draw_image_foreground_1, x_draw_image_glyph_string):
5273 Draw sliced images.
5274
5275 * w32term.h (image_ascent): Remove prototype.
5276
5277 * window.c (Fpos_visible_in_window_p): Return pixel position if
5278 PARTIALLY arg is non-nil. Simplify. Doc fix.
5279 (Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg
5280 to return/set vscroll in pixels.
5281
5282 * window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
5283
5284 * xdisp.c (Qslice): New variable.
5285 (syms_of_xdisp): Intern and staticpro it.
5286 (pos_visible_p): Return pixel position in new x and y args.
5287 (init_iterator): Reset it->slice info.
5288 (handle_display_prop): Parse (slice ...) property.
5289 (push_it, pop_it): Save/restore slice info.
5290 (make_cursor_line_fully_visible): Fix 2004-04-14 change. Do not
5291 force repositioning of tall row if window is vscrolled, as that
5292 would reset vscroll.
5293 (append_space): Set it->constrain_row_ascent_descent_p to avoid
5294 increasing row height if row is non-empty.
5295 (fill_image_glyph_string): Copy slice info.
5296 (take_vertical_position_into_account): Simplify.
5297 (produce_image_glyph): Handle iterator slice info, setup glyph
5298 slice info. Do not force minimum line height.
5299 (x_produce_glyphs): If it->constrain_row_ascent_descent_p is set,
5300 do not increase height (ascent/descent) of non-empty row when
5301 adding normal character glyph; instead reduce glyph ascent/descent
5302 appropriately; if row is higher than current glyph, adjust glyph
5303 descent/ascent to reposition glyph within the existing row.
5304 Likewise, when char is newline, only set ascent/descent if row is
5305 currently empty.
5306 (note_mouse_highlight): Handle hotspots with sliced image.
5307
5308 * xterm.c (x_draw_relief_rect): Add top_p and bot_p args.
5309 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
5310 (x_draw_image_foreground, x_draw_image_relief)
5311 (x_draw_image_foreground_1, x_draw_image_glyph_string):
5312 Draw sliced images.
5313
5314 * xterm.h (image_ascent): Remove prototype.
5315
d58f8753
SM
53162004-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
5317
5318 * keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup.
5319
4ce2719d
JPW
53202004-04-20 John Paul Wallington <jpw@gnu.org>
5321
5322 * fns.c (Fassoc, Feql): Fix indentation.
5323
d58f8753 5324 * fontset.c (regularize_fontname): Rename from regulalize_fontname.
4ce2719d 5325
95f8c3b9
JPW
53262004-04-19 John Paul Wallington <jpw@gnu.org>
5327
5328 * fns.c (Feql): New function.
d58f8753 5329 (syms_of_fns): Defsubr it.
95f8c3b9 5330
b7e85537
JR
53312004-04-18 Jason Rumney <jasonr@gnu.org>
5332
5333 * w32select.c (Fw32_set_clipboard_data): Get sequence number
5334 after closing the clipboard.
5335
5a72efd4
LT
53362004-04-16 Luc Teirlinck <teirllm@auburn.edu>
5337
5338 * buffer.c (Fbuffer_base_buffer): Doc fix.
5339
20dc8583
KS
53402004-04-17 Kim F. Storm <storm@cua.dk>
5341
60962ec4
KS
5342 * keymap.c (Fkey_description): Add optional PREFIX arg.
5343 Combine prefix with KEYS to make up the full key sequence to describe.
5344 Correlate meta_prefix_char and following (simple) key to describe
5345 as meta modifier. All callers changed.
5346 (describe_map): Rename arg `keys' to `prefix'. Remove local
5347 `elt_prefix' var. Use Fkey_description with prefix instead of
5348 elt_prefix combined with Fsingle_key_description.
5349 (describe_vector): Declare static. Replace arg `elt_prefix' with
5350 `prefix'. Add KEYMAP_P arg. Add local var `elt_prefix'; use it
5351 if !KEYMAP_P. Use Fkey_description with prefix instead of
5352 Fsingle_key_description.
5353
5354 * keymap.h (Fkey_description): Fix prototype.
5355 (describe_vector): Remove prototype.
5356
409368b9
KS
5357 * xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0.
5358
20dc8583
KS
5359 * image.c (PNG_BG_COLOR_SHIFT): Remove.
5360 (png_load): Fix calculation of transparent background color on X
5361 and W32 platforms.
5362
75c5501b
JB
53632004-04-16 Juanma Barranquero <lektu@terra.es>
5364
5365 * xdisp.c (try_scrolling): Make sure `scroll-conservatively' is
5366 not too large before computing how much to scroll.
5367
da879ae8
SM
53682004-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
5369
5370 * dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler.
5371
d01ca4a8
LT
53722004-04-14 Luc Teirlinck <teirllm@auburn.edu>
5373
5374 * fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime):
5375 Add hyperlink to Elisp manual to the docstring.
5376
572943b3
SM
53772004-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
5378
5379 * callint.c (fix_command): Use XDCR.
5380
5e30a0fb
NR
53812004-04-14 Nick Roberts <nick@nick.uklinux.net>
5382
5383 * window.c (Fget_lru_window): Doc fix.
5384
a27ddfaf
KS
53852004-04-14 Kim F. Storm <storm@cua.dk>
5386
5387 * editfns.c (Fformat): Fix allocation size of precision array.
5388
5389 * dispnew.c (update_window): Only set changed_p if
5390 scrolling_window actually did scroll.
5391 (scrolling_window): Only return 1 if we actually did scroll.
5392
5393 * xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor
5394 height to glyph height when cursor row is not fully visible.
5395 (make_cursor_line_fully_visible): Add FORCE_P arg to return
5396 failure in case row is higher than window. Callers changed.
5397 (try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd).
5398 Try to scroll partially visible, higher-than-window cursor row.
5399 (redisplay_window): Always try to scroll partially visible,
5400 higher-than-window cursor row - both initially and again with
5401 centering_position = 0.
5402 Clear desired matrix before retrying with centering_position = 0.
5403
da879ae8
SM
54042004-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
5405
5406 * syntax.c (scan_lists): Simplify backward string scan.
5407 Fix off-by-one boundary check for string and comment fences.
5408
5fc16e8e
SM
54092004-04-13 Joe Buehler <jbuehler@hekimian.com>
5410
5411 * sheap.c, unexcw.c: New files.
5412
c9aac8e6
LT
54132004-04-12 Luc Teirlinck <teirllm@auburn.edu>
5414
5415 * buffer.c (Fmake_indirect_buffer): Throw an error if the intended
5416 base buffer has been killed. Correct the error message if the
5417 base buffer does not exist.
5418
1e88a355
SM
54192004-04-12 Joe Buehler <jbuehler@hekimian.com>
5420
5421 * s/cygwin.h: Changes for Cygwin unexec() support, changes in
5422 Cygwin itself. Add support for Xaw3d scrollbars.
5423
5424 * puresize.h: Set up PURE_P() for Cygwin unexec() support.
5425
5426 * lastfile.c: Define my_endbss[] for Cygwin unexec() support.
5427
5428 * gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(),
5429 before Cygwin unexec.
5430
5431 * Makefile.in: Link changes for Cygwin unexec() support.
5432
8dbff9a0
AS
54332004-04-12 Andreas Schwab <schwab@suse.de>
5434
5435 * buffer.c (Fmake_indirect_buffer): Check that NAME is a string.
5436
54dffe35
LT
54372004-04-11 Luc Teirlinck <teirllm@auburn.edu>
5438
5439 * buffer.c (Fgenerate_new_buffer_name): Return NAME argument if
5440 IGNORE argument equals NAME. Doc fix.
5441
99a72bdf
MY
54422004-04-11 Masatake YAMATO <jet@gyve.org>
5443
1e88a355 5444 * buffer.c (fix_start_end_in_overlays): Make overlays
99a72bdf
MY
5445 empty if they are backwards.
5446
40899d7b
SM
54472004-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
5448
5449 * xfaces.c (face_color_supported_p): Fix compilation without X11.
5450
f8f853de
SM
54512004-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
5452
5453 * doc.c (Fsnarf_documentation): Ignore new file name entries.
5454
c953fe1b
KS
54552004-04-06 Kim F. Storm <storm@cua.dk>
5456
661e85c1
KS
5457 * msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden.
5458 (dos_rawgetc): Set mouse_face_hidden after clearing highlight.
5459
5460 * w32term.c (w32_read_socket): Set mouse_face_hidden after
5461 clearing highlight.
5462
5463 * xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden.
5464
5465 * xterm.c (handle_one_xevent): Set mouse_face_hidden after
5466 clearing highlight.
5467
c953fe1b
KS
5468 * indent.c (vmotion): Do not reserve one column for continuation
5469 marks on window frames.
5470
c1994268
EZ
54712004-04-04 Eli Zaretskii <eliz@gnu.org>
5472
5473 * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings
5474 from GCC.
5475
9f691b0d
SM
54762004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
5477
5478 * .gdbinit-union: Remove.
5479
5480 * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION.
5481 (xgetptr, xgetint, xgettype): New funs. Use them everywhere.
5482 ($nonvalbits): Remove.
5483 ($valmask): Set it by calling xreload to avoid redundancy.
5484
5485 * emacs.c (gdb_use_union, gdb_use_lsb): New vars.
5486 (gdb_emacs_intbits): Remove.
5487
7a8560d7
JD
54882004-03-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5489
9f691b0d 5490 * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes.
7a8560d7 5491
3c8111fc
KH
54922004-03-30 Kenichi Handa <handa@m17n.org>
5493
5494 * editfns.c (Fformat): Fix initialization of the array info.
5495
48a0bce4
KS
54962004-03-30 Kim F. Storm <storm@cua.dk>
5497
5498 * xterm.c (x_mouse_click_focus_ignore_position): New var.
5499 (syms_of_xterm): DEFVAR_BOOL it.
5500 (ignore_next_mouse_click_timeout): New var.
5501 (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify.
5502 Use it to filter mouse clicks following focus event.
5503
1cd0066c
KS
55042004-03-29 David Ponce <david@dponce.com>
5505
5506 * callint.c (Fcall_interactively): Fix last change.
5507
adb3b353
SM
55082004-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
5509
5510 * eval.c (Fcommandp): Simplify.
5511
5512 * data.c (Finteractive_form): Rename from Fsubr_interactive_form.
5513 Extend to handle all kinds of functions.
5514
5515 * lisp.h (Finteractive_form): Declare.
5516
5517 * callint.c (Fcall_interactively): Use it.
5518
6fc4c9c9
KS
55192004-03-26 Kim F. Storm <storm@cua.dk>
5520
5521 * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error
5522 to catch errors in calc_pixel_width_or_height during redisplay.
5523
abdb9b83
MY
55242004-03-26 Masatake YAMATO <jet@gyve.org>
5525
b17856dd 5526 * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range.
abdb9b83 5527
b17856dd 5528 * lisp.h (fix_start_end_in_overlays): Likewise.
abdb9b83 5529
b17856dd 5530 * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays.
abdb9b83 5531
b17856dd 5532 * editfns.c (Ftranspose_regions): Likewise.
abdb9b83 5533
e8a84b6c
JD
55342004-03-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5535
b17856dd 5536 * xterm.c (handle_one_xevent): Do not pass key press events to GTK.
e8a84b6c 5537
36a3fd05
RS
55382004-03-19 Richard M. Stallman <rms@gnu.org>
5539
5540 * s/sol2-6.h: Delete previous change.
5541
ab24c127
KS
55422004-03-19 Kim F. Storm <storm@cua.dk>
5543
5544 * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
5545 to_charpos corresponds to newline in right fringe. Use local
5546 BUFFER_POS_REACHED_P macro.
5547
992126de
JD
55482004-03-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5549
5550 * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
5551 to compile on non-window system.
5552
45dbfc84
KS
55532004-03-19 Kim F. Storm <storm@cua.dk>
5554
5555 * dispextern.h (calc_pixel_width_or_height): Add prototype.
5556
5557 * image.c (Qcenter): Move to xdisp.c.
5558
5559 * xdisp.c (Qcenter): Declare here.
adb3b353 5560 (syms_of_xdisp): Intern and staticpro it.
45dbfc84
KS
5561 (handle_single_display_prop): Allow space display property on all
5562 platforms.
5563 (display_mode_line): Set mode_line_p before displaying line.
5564 (calc_pixel_width_or_height): Declare extern. Add separate :align-to
5565 handling. Remove complex cases for fringes and scroll-bars.
5566 Add left, right, and center alignment positions. Add text (area)
5567 width/height. Return width or height for image specs.
5568 (produce_stretch_glyph): Improve handling of :align-to. Is now
5569 relative to left of text area by default, but other base offsets
5570 can be specified -- also for text lines.
5571
5572 * term.c (produce_glyphs): Handle IT_STRETCH.
5573 (produce_stretch_glyph): New function to handle space width and
5574 align-to display properties on non-window systems.
5575
37264101
SM
55762004-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
5577
5578 * fileio.c (Fread_file_name): Set completion-ignore-case for
5579 case-insensitive systems.
5580
73bc43da
MY
55812004-03-14 Masatake YAMATO <jet@gyve.org>
5582
5583 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
5584 when keymap and cursor are setup.
5585
9062aa89
ST
55862004-03-14 Steven Tamm <steventamm@mac.com>
5587
b17856dd 5588 * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o.
9062aa89 5589
e4b1b5ab
KS
55902004-03-14 Kim F. Storm <storm@cua.dk>
5591
5592 * dispextern.h (x_find_image_file): Add prototype.
5593
5594 * image.c (x_find_image_file): Make extern.
5595
5596 * xfns.c (x_find_image_file): Remove prototype.
5597
a6eeaa81 55982004-03-13 Eli Zaretskii <eliz@gnu.org>
5109b06a 5599
37264101 5600 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
5109b06a 5601
37264101 5602 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
5109b06a 5603
e69cfac2
RS
56042004-03-12 Richard M. Stallman <rms@gnu.org>
5605
5606 * fns.c (internal_equal): New arg PROPS controls comparing
5607 text properties. All callers changed.
5608 (Fequal_including_properties): New function.
5609 (syms_of_fns): defsubr it.
5610
45034953
KS
56112004-03-12 Kim F. Storm <storm@cua.dk>
5612
5613 Fix image support on MAC. From YAMAMOTO Mitsuharu.
37264101 5614
45034953
KS
5615 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
5616 (image_background, image_background_transparent): Fix prototypes.
5617
37264101 5618 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
45034953
KS
5619
5620 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
5621 (x_query_font, x_find_ccl_program, x_set_window_size)
5622 (x_make_frame_visible, mac_initialize, XCreatePixmap)
5623 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
5624 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
5625
5626 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
5627 (x_query_font, x_find_ccl_program, x_set_window_size)
5628 (x_make_frame_visible, mac_initialize, XCreatePixmap)
5629 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
5630 (mac_draw_line_to_pixmap): Add prototypes.
5631
56322004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5633
5634 * macterm.c (XTread_socket): Fix mouse click on tool bar.
5635
a12d3d87
KS
56362004-03-11 Kim F. Storm <storm@cua.dk>
5637
d3ab1cf1
KS
5638 * dispextern.h: Move image related prototypes from xfns.c section
5639 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
5640 HAVE_X_WINDOWS.
37264101 5641
37de9f51 5642 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
37264101 5643 Move gtkutil.o to new GTK_OBJ list.
a12d3d87
KS
5644 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
5645 (GTK_OBJ) [USE_GTK]: New declaration.
5646 (obj): Add $(GTK_OBJ) to list.
5647
5243c06a 56482004-03-11 Steven Tamm <steventamm@mac.com>
5109b06a 5649
7e26f91b 5650 * image.c [MAC_OSX]: Include sys/stat.h.
5243c06a
ST
5651
5652 * macfns.c (syms_of_macfns): Remove definitions of things now
7e26f91b 5653 defined in image.c.
5243c06a 5654
c0f97789
KS
56552004-03-11 Kim F. Storm <storm@cua.dk>
5656
5657 The following changes consolidates the identical/similar image
5658 support code previously found in xfns.c, w32fns.c, and macfns.c
5659 into a new file image.c.
5660
5661 * makefile.w32-in (OBJ1): Add image.o.
5662 ($(BLD)/image.$(O)): Add dependencies.
5663
5664 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
5665 (image.o): Add dependencies.
37264101 5666
c0f97789
KS
5667 * image.c: New file with consolidated image support code.
5668 (COLOR_TABLE_SUPPORT): New define to control whether
5669 color table support is available (X only).
5670 (Bitmap_Record): Common name for x_bitmap_record,
5671 w32_bitmap_record, and mac_bitmap_record.
5672 (XImagePtr): Common name for pointer to XImage or equivalent.
5673 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
5674 to XImagePtr on X+MAC, and to HDC on W32.
5675 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
5676 (NO_PIXMAP): Common name for "None" or equivalent.
5677 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
5678 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
5679 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
37264101
SM
5680 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
5681 Define with suitable equivalents on W32 and MAC for code sharing.
c0f97789
KS
5682 (XDrawLine): Define on MAC for code sharing.
5683 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
5684 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
5685 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
5686 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
5687 (x_reference_bitmap, x_create_bitmap_from_data)
5688 (x_create_bitmap_from_file, x_destroy_bitmap)
5689 (x_destroy_all_bitmaps, x_create_bitmap_mask)
5690 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
5691 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
5692 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
5693 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
5694 (define_image_type, lookup_image_type, valid_image_p)
5695 (image_error, enum image_value_type, struct image_keyword)
5696 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
5697 (make_image, free_image, prepare_image_for_display, image_ascent)
5698 (four_corners_best, image_background, image_background_transparent)
5699 (x_clear_image_1, x_clear_image, x_alloc_image_color)
5700 (make_image_cache, free_image_cache, clear_image_cache)
5701 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
5702 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
5703 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
5704 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
5705 (init_image_func_pointer, image_load_quartz2d)
5706 (struct ct_color, init_color_table, free_color_table)
5707 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
5708 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
5709 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
5710 (x_disable_image, x_build_heuristic_mask)
5711 (XBM support, XPM support, PBM support, PNG support, JPEG support)
5712 (TIFF support, GIF support, Ghostscript support): Consolidate image
5713 code from xfns.c, w32fns.c, and macfns.c.
5714 (syms_of_image): Consolidate image related symbol setup here.
5715 (init_image): Consolidate image related initializations here.
37264101 5716
c0f97789
KS
5717 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
5718 and init_image. Remove call to init_xfns.
5719
37264101
SM
5720 * macterm.h (struct mac_bitmap_record): Add file member.
5721 Not currently used, but simplifies code sharing.
c0f97789
KS
5722
5723 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
5724 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
5725 (x_reference_bitmap, x_create_bitmap_from_data)
5726 (x_create_bitmap_from_file, x_destroy_bitmap)
5727 (x_destroy_all_bitmaps, x_create_bitmap_mask)
5728 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
5729 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
5730 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
5731 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
5732 (define_image_type, lookup_image_type, valid_image_p)
5733 (image_error, enum image_value_type, struct image_keyword)
5734 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
5735 (make_image, free_image, prepare_image_for_display, image_ascent)
5736 (four_corners_best, image_background, image_background_transparent)
5737 (x_clear_image_1, x_clear_image, x_alloc_image_color)
5738 (make_image_cache, free_image_cache, clear_image_cache)
5739 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
5740 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
5741 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
5742 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
5743 (init_image_func_pointer, image_load_quartz2d)
5744 (struct ct_color, init_color_table, free_color_table)
5745 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
5746 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
5747 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
5748 (x_disable_image, x_build_heuristic_mask)
5749 (XBM support, XPM support, PBM support, PNG support, JPEG support)
5750 (TIFF support, GIF support, Ghostscript support): Merge with image
5751 code from xfns.c and macfns.c into image.c.
5752 (syms_of_xfns): Move image related symbols to image.c.
5753 (init_external_image_libraries, init_xfns): Remove; initialization
5754 moved to init_image in image.c.
5755
5756 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
5757 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
5758 (x_reference_bitmap, x_create_bitmap_from_data)
5759 (x_create_bitmap_from_file, x_destroy_bitmap)
5760 (x_destroy_all_bitmaps, x_create_bitmap_mask)
5761 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
5762 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
5763 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
5764 (define_image_type, lookup_image_type, valid_image_p)
5765 (image_error, enum image_value_type, struct image_keyword)
5766 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
5767 (make_image, free_image, prepare_image_for_display, image_ascent)
5768 (four_corners_best, image_background, image_background_transparent)
5769 (x_clear_image_1, x_clear_image, x_alloc_image_color)
5770 (make_image_cache, free_image_cache, clear_image_cache)
5771 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
5772 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
5773 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
5774 (struct ct_color, init_color_table, free_color_table)
5775 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
5776 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
5777 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
5778 (x_disable_image, x_build_heuristic_mask)
5779 (XBM support, XPM support, PBM support, PNG support, JPEG support)
5780 (TIFF support, GIF support, Ghostscript support): Merge with image
5781 code from xfns.c and macfns.c into image.c.
5782 (syms_of_xfns): Move image related symbols to image.c.
5783 (init_external_image_libraries, init_xfns): Remove; initialization
5784 moved to init_image in image.c.
5785
5786 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
5787 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
5788 (x_reference_bitmap, x_create_bitmap_from_data)
5789 (x_create_bitmap_from_file, x_destroy_bitmap)
5790 (x_destroy_all_bitmaps, x_create_bitmap_mask)
5791 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
5792 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
5793 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
5794 (define_image_type, lookup_image_type, valid_image_p)
5795 (image_error, enum image_value_type, struct image_keyword)
5796 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
5797 (make_image, free_image, prepare_image_for_display, image_ascent)
5798 (four_corners_best, image_background, image_background_transparent)
5799 (x_clear_image_1, x_clear_image, x_alloc_image_color)
5800 (make_image_cache, free_image_cache, clear_image_cache)
5801 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
5802 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
5803 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
5804 (struct ct_color, init_color_table, free_color_table)
5805 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
5806 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
5807 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
5808 (x_disable_image, x_build_heuristic_mask)
5809 (XBM support, XPM support, PBM support, PNG support, JPEG support)
5810 (TIFF support, GIF support, Ghostscript support): Merge with
5811 w32fns.c and macfns.c image code into image.c.
5812 (syms_of_xfns): Move image related symbols to image.c.
5813 (init_xfns): Remove; initialization moved to init_image in image.c.
5814
5815 * lisp.h (syms_of_image, init_image): Add protoypes.
5816 (init_xfns): Remove prototype.
5817
5818 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
5819 (x_reference_bitmap, x_create_bitmap_from_data)
5820 (x_create_bitmap_from_file, x_destroy_bitmap)
5821 (x_create_bitmap_mask): Move prototypes from dispextern.h.
5822 (gamma_correct) [MAC_OS]: Add prototype.
5823
5824 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
5825 (x_reference_bitmap, x_create_bitmap_from_data)
5826 (x_create_bitmap_from_file, x_destroy_bitmap)
5827 (x_create_bitmap_mask): Move prototypes to dispextern.h.
5828
6eced09c
KH
58292004-03-09 Kenichi Handa <handa@etlken2>
5830
5831 * coding.c (decode_coding_emacs_mule): Handle insufficent source
5832 correctly.
5833
9a7e95f3
RS
58342004-03-04 Richard M. Stallman <rms@gnu.org>
5835
04a6e76b
RS
5836 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
5837
9a7e95f3
RS
5838 * window.c (Fdisplay_buffer): Doc fix.
5839
5840 * buffer.c (Fpop_to_buffer): Doc fix.
5841
6c2488df
KS
58422004-03-03 Kim F. Storm <storm@cua.dk>
5843
5844 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
5845
d8d95bc7
SM
58462004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
5847
5848 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
5849
357589bf
RS
58502004-03-02 Richard M. Stallman <rms@gnu.org>
5851
5852 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
5853
409949b5
KH
58542004-03-02 Kenichi Handa <handa@m17n.org>
5855
5856 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
5857
d24bc50f
KS
58582004-03-02 Kim F. Storm <storm@cua.dk>
5859
5860 * window.h (struct window): New member overlay_arrow_bitmap.
5861
5862 * window.c (make_window): Initialize overlay_arrow_bitmap.
5863
5864 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
5865 implement and integrate multiple overlay arrows with redisplay.
5866 (syms_of_xdisp): DEFVAR_LISP and initialize it.
5867 (last_arrow_position, last_arrow_string): Replace by properties.
5868 (Qlast_arrow_position, Qlast_arrow_string)
5869 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
5870 (syms_of_xdisp): Intern and staticpro them.
5871 (overlay_arrow_string_or_property, update_overlay_arrows)
5872 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
5873 (overlay_arrow_at_row): New functions for multiple overlay arrows.
5874 (redisplay_internal): Use them instead of directly accessing
5875 Voverlay_arrow_position etc. for multiple overlay arrows.
5876 (mark_window_display_accurate): Use update_overlay_arrows.
5877 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
5878 (try_window_id): Use overlay_arrows_changed_p.
5879 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
5880 (display_line): Use overlay_arrow_at_row to check multiple
5881 overlay arrows, and get relevant overlay-arrow-string and
d8d95bc7 5882 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
d24bc50f
KS
5883 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
5884 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
5885
5886 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
5887 (update_window_fringes): Remove unused code.
5888
c1464661
JR
58892004-03-01 Jason Rumney <jasonr@gnu.org>
5890
5891 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
5892
a64387ee
JB
58932004-03-01 Juanma Barranquero <lektu@terra.es>
5894
5895 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
5896
5897 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
5898
334faa08
JD
58992004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5900
5901 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
5902 how many colors can be displayed.
5903
bb62616f
KH
59042004-03-01 Kenichi Handa <handa@m17n.org>
5905
5906 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
5907 correctly.
5908
0fd16104
KS
59092004-02-28 Kim F. Storm <storm@cua.dk>
5910
5911 * dispnew.c (update_window): Update header line also if there are
5912 no other changes in window (move code after set_cursor label).
5913
5914 * lisp.h (mark_window_display_accurate): Remove prototype.
5915
5916 * window.c (window_loop, Fforce_window_update): Force mode line
5917 updates by setting prevent_redisplay_optimizations_p and
5918 update_mode_lines.
5919
b59dd9c8
JD
59202004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5921
d8d95bc7 5922 * xfns.c (x_window): Fix indentation.
b59dd9c8
JD
5923
5924 * xterm.c (x_calc_absolute_position): Call x_real_positions
5925 to get WM window sizes and use those to calculate position.
d8d95bc7 5926 (x_set_offset): Remove code commented out.
b59dd9c8 5927
a874691c
MB
59282004-02-28 Miles Bader <miles@gnu.org>
5929
5930 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
5931
3e0c6482
KS
59322004-02-28 Kim F. Storm <storm@cua.dk>
5933
5934 * keyboard.c (kbd_buffer_store_event_hold): New function to store
5935 an event into kbd fifo, but with special handling of quit event;
5936 a quit event is saved for later, and further events are discarded
5937 until the saved quit event has been processed.
5938 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
5939 (gen_help_event): Store help event in kbd fifo.
5940 (NREAD_INPUT_EVENTS): Remove.
5941 (read_avail_input): Adapt to new read_socket_hook interface.
5942 Remove allocation and initialization of local input_event buffer,
5943 as read_socket_hook stores events directly in fifo. Allocate and
5944 initialize local hold_quit event to handle postponed quit event
5945 (and store it if set by kbd_buffer_store_event_hold).
5946
5947 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
5948 (gen_help_event): Fix prototype.
5949
a64387ee 5950 * macterm.c (XTread_socket): Remove bufp_r and
3e0c6482 5951 numcharsp args. Add hold_quit arg.
f63fd14e 5952 Rework to use just one, local, inev input_event. Store inev
3e0c6482
KS
5953 directly in fifo using kbd_buffer_store_event_hold.
5954
5955 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
5956 (read_input_waiting): Adapt to new read_socket_hook interface.
5957 Remove allocation and initialization of local input_event buffer,
5958 as read_socket_hook stores events directly in fifo. Allocate and
5959 initialize local hold_quit event to handle postponed quit event
5960 (and store it if set by kbd_buffer_store_event_hold).
5961
a64387ee 5962 * term.c (read_socket_hook): Fix arg list.
3e0c6482
KS
5963
5964 * termhooks.h (read_socket_hook): Fix prototype.
5965
5966 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
5967 numcharsp args. Add hold_quit arg.
f63fd14e 5968 Rework to use just one, local, inev input_event. Store inev
3e0c6482
KS
5969 directly in fifo using kbd_buffer_store_event_hold.
5970
5971 * w32inevt.h (w32_console_mouse_position): Fix prototype.
5972
5973 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
f63fd14e
JB
5974 Add hold_quit arg. Rework to use just one, local, inev
5975 input_event. Store inev directly in fifo using
3e0c6482
KS
5976 kbd_buffer_store_event_hold. Update count in one place.
5977 Postpone call to gen_help_event until inev is stored; use new
5978 local do_help for this.
5979 Remove local emacs_event in handing of ButtonPress event; just use
5980 inev instead (so no reason to copy it later).
5981
5982 * xsmfns.c (x_session_check_input): Remove numchars arg.
5983
d8d95bc7
SM
5984 * xterm.c (x_focus_changed, x_detect_focus_change):
5985 Remove numchars arg. Always store event into bufp arg.
5986 Return nothing. Callers changed accordingly.
3e0c6482
KS
5987 (glyph_rect): Simplify.
5988 (STORE_KEYSYM_FOR_DEBUG): New macro.
5989 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
5990 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
5991 (current_hold_quit) [USE_GTK]: Add.
5992 (event_handler_gdk): Adapt to new handle_one_xevent.
5993 (handle_one_xevent): Remove bufp_r and numcharsp args.
f63fd14e
JB
5994 Add hold_quit arg. Rework to use just one, local, inev
5995 input_event. Store inev directly in fifo using
3e0c6482
KS
5996 kbd_buffer_store_event_hold. Update count in one place.
5997 Postpone call to gen_help_event until inev is stored; use new
5998 local do_help for this.
5999 Simplify handling of keysyms (consolidate common code). Fix bug
6000 where count was updated with nchars instead of nbytes.
6001 Remove local emacs_event in handing of ButtonPress event; just use
6002 inev instead (so no reason to copy it later).
6003 Remove `out' label. Rename label `ret' to `done'; add various
6004 `goto done' to clarify code flow in deeply nested blocks.
6005 (x_dispatch_event): Simplify as handle_one_xevent now calls
6006 kbd_buffer_store_event itself.
f63fd14e 6007 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
3e0c6482
KS
6008 arg. Call handle_one_xevent with new arglist. Store event from
6009 x_session_check_input in fifo.
6010 [USE_GTK]: Setup current_hold_quit.
6011 Decrement handling_signal before unblocking input.
6012 (x_initialize) [USE_GTK]: Initialize current_count.
6013
6014 * xterm.h (x_session_check_input): Fix prototype.
6015
e3564461 60162004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
a64387ee 6017
d8d95bc7 6018 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
a64387ee 6019
e3564461
ST
6020 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
6021 macgui.h).
a64387ee 6022
e3564461 6023 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
a64387ee 6024
e3564461
ST
6025 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
6026 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
6027 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
6028 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
6029 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
6030 (Bitmap): Remove typedef.
6031 (Pixmap): Change int to GWorldPtr.
6032
d8d95bc7 6033 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
a64387ee 6034
d8d95bc7
SM
6035 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
6036 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
6037 New #define to extract 16-bit depth color components from unsigned
e3564461
ST
6038 long representation.
6039 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
6040 colors used for masks.
6041 (struct mac_display_info): Add color_p. Remove n_cbits.
a64387ee 6042
e3564461
ST
6043 * macfns.c: Include sys/types.h and sys/stat.h.
6044 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
6045 Include QuickTime/QuickTime.h.
6046 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
6047 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
6048 functions defined in macterm.c.
6049 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
6050 (ZPixmap): New #define for compatibility with xfns.c.
6051 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
6052 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
d8d95bc7
SM
6053 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
6054 New functions.
e3564461 6055 (four_corners_best, x_create_x_image_and_pixmap)
d8d95bc7
SM
6056 (x_destroy_x_image, unwind_create_frame, x_disable_image)
6057 (x_edge_detection, init_color_table, colors_in_color_table)
e3564461
ST
6058 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
6059 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
6060 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
6061 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
6062 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
6063 long mixup.
6064 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
6065 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
6066 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
6067 (x_set_cursor_type, Fxw_color_values, valid_image_p)
6068 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
6069 (x_alloc_image_color, clear_image_cache, lookup_image)
6070 (x_find_image_file, xbm_read_bitmap_file_data)
6071 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
6072 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
6073 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
6074 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
6075 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
d8d95bc7 6076 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
e3564461
ST
6077 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
6078 #if 0.
6079 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
6080 #if 0. Free white_relief.gc and black_relief.gc.
d8d95bc7
SM
6081 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
6082 New functions (from xfns.c).
e3564461
ST
6083 (Fx_create_frame): Record unwind_create_frame.
6084 (Fxw_display_color_p): Use dpyinfo->color_p.
6085 (Fx_display_grayscale_p, Fx_display_planes): Don't use
6086 dpyinfo->n_cbits.
6087 (Fx_display_color_cells): Use dpyinfo->n_planes;
6088 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
6089 (Qheuristic, cross_disabled_images, emboss_matrix)
6090 (laplace_matrix): New variables (from xfns.c).
6091 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
6092 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
6093 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
d8d95bc7
SM
6094 (image_background_transparent): New function (from xfns.c).
6095 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
6096 (image_load_quicktime): Add declaration.
6097 [MAC_OSX] (image_load_quartz2d): Likewise.
6098 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
6099 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
d8d95bc7 6100 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
e3564461
ST
6101 (xbm_load_image_from_file, x_laplace_read_row)
6102 (x_laplace_write_row, pbm_read_file): Remove functions.
6103 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
6104 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
6105 (colors_in_color_table): Sync with xfns.c (although not used).
6106 (lookup_rgb_color): Don't lookup color table. Just do gamma
6107 correction.
6108 (COLOR_INTENSITY): New #define (from xfns.c).
d8d95bc7
SM
6109 (x_disable_image): New function (from xfns.c).
6110 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
6111 (x_build_heuristic_mask): Sync with xfns.c.
6112 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
6113 (HAVE_PBM): Remove #ifdef.
6114 (pbm_load): Sync with xfns.c. Set img->width and img->height
6115 before IMAGE_BACKGROUND.
d8d95bc7 6116 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
e3564461
ST
6117 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
6118 Don't enclose with #if HAVE_PNG.
6119 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
d8d95bc7
SM
6120 symbol _CGImageCreateWithPNGDataProvider is defined.
6121 Otherwise use image_load_quicktime.
e3564461 6122 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
d8d95bc7
SM
6123 [HAVE_PNG] (png_load): Sync with xfns.c.
6124 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
6125 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
6126 HAVE_JPEG.
6127 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
6128 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
6129 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
6130 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
6131 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
6132 (tiff_image_p, tiff_load): Don't enclose declarations with #if
6133 HAVE_TIFF.
6134 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
6135 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
6136 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
d8d95bc7
SM
6137 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
6138 New functions (from xfns.c).
e3564461 6139 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
d8d95bc7 6140 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
e3564461
ST
6141 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
6142 Don't enclose with #if HAVE_GIF.
6143 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
6144 animated gif. Otherwise use image_load_quicktime.
6145 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
6146 gif_DrawText to avoid conflict with QuickdrawText.h.
6147 [HAVE_GIF] (gif_load): Sync with xfns.c.
6148 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
6149 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
6150 Ghostscript is not supported yet).
6151 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
6152 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
6153 cross_disabled_images (from xfns.c). Remove #if 0 for supported
6154 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
6155 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
6156 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
d8d95bc7
SM
6157 HAVE_PNG. Call EnterMovies to support animated gifs.
6158 Call init_image_func_pointer to bind a symbol
e3564461 6159 _CGImageCreateWithPNGDataProvider if it is defined.
a64387ee 6160
d8d95bc7 6161 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
e3564461
ST
6162 (x_draw_bar_cursor): Sync declaration with xterm.c.
6163 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
6164 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
6165 graphics).
6166 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
6167 (mac_draw_line_to_pixmap, XCreatePixmap)
6168 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
d8d95bc7
SM
6169 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
6170 New functions.
6171 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
6172 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
6173 Cast bits to char *.
e3564461
ST
6174 (reflect_byte): New function (from w32fns.c).
6175 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
6176 due to byte alignment.
d8d95bc7
SM
6177 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
6178 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
e3564461
ST
6179 (XSetForeground): Remove static (now used in macfns.c).
6180 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
6181 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
6182 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
6183 (x_draw_glyph_string_box, x_draw_image_foreground)
6184 (x_draw_image_foreground_1, x_draw_image_glyph_string)
6185 (x_draw_stretch_glyph_string, x_draw_glyph_string)
6186 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
6187 Sync with xterm.c.
6188 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
6189 than the xterm.c version when a strictly horizontal or vertical
6190 line is drawn.
6191 (XTset_terminal_window): Add static.
6192 (x_make_frame_visible): Add UNBLOCK_INPUT.
6193 (x_free_frame_resources): New funcion (from xterm.c).
6194 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
6195 occurs in tool bar area.
d8d95bc7
SM
6196 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
6197 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
e3564461
ST
6198 Initialize image cache.
6199 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
6200 Enclose unused functions with #if 0.
6201 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
6202 (decode_mac_font_name): New function to apply code conversions
d8d95bc7 6203 from a mac font name to an XLFD font name according to its script code.
e3564461 6204 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
d8d95bc7 6205 font name to a mac font name according to REGISTRY and ENCODING fields.
e3564461
ST
6206 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
6207 whose name starts with `.'.
6208 (init_font_name_table): Use decode_mac_font_name. Add both
6209 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
6210 of a font is smJapanese.
6211 (mac_do_list_fonts): New function to list fonts that match a given
6212 pattern.
6213 (x_list_fonts, XLoadQueryFont): Use it.
6214 (XLoadQueryFont): Set rbearing field for each variable width
6215 character to avoid needless redraw.
6216 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
6217
446f5f3d
KS
62182004-02-26 Kim F. Storm <storm@cua.dk>
6219
af617d0f
KS
6220 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
6221 as read_socket_hook handler on X aborts if buffer is too small
6222 and W32 handler doesn't always check buffer limit.
6223
446f5f3d
KS
6224 * xdisp.c (handle_single_display_prop): Handle left-fringe and
6225 right-fringe similar to a display margin image. Specifically,
6226 the characters having the fringe prop are no longer shown, and
6227 we use IT_IMAGE/next_element_from_image with image_id = -1 to
6228 do this. Set fringe bitmap face_id in it->face_id.
6229 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
6230 still realize it->face (i.e. the fringe bitmap face).
6231
7d8a0b55
MB
62322004-02-25 Miles Bader <miles@gnu.org>
6233
6234 * xdisp.c (check_it): Check string/string_pos consistency.
6235 (init_iterator): Initialize string-related fields properly.
6236
62372004-02-11 Miles Bader <miles@gnu.org>
6238
6239 * xdisp.c (produce_image_glyph): Force negative descents to zero.
6240
62412004-02-10 Miles Bader <miles@gnu.org>
6242
6243 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
6244 BLOCK_INPUT can be nested, so it doesn't make much sense.
6245
a64387ee 62462004-02-24 Michael Mauger <mmaug@yahoo.com>
ce35edd1
JR
6247
6248 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
6249 (xbm_read_bitmap_data): Use unsigned char for image data.
6250
92f5fba2
LT
62512004-02-23 Luc Teirlinck <teirllm@auburn.edu>
6252
6253 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
6254
8565fb3d
JR
62552004-02-22 Jason Rumney <jasonr@gnu.org>
6256
6257 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
6258 correctly over other bitmaps.
6259
a6eeaa81 62602004-02-21 Eli Zaretskii <eliz@gnu.org>
f8125c39
EZ
6261
6262 * emacs.c (USAGE1): Split into two halves.
6263 (USAGE2): Second half of the old USAGE1.
d8d95bc7
SM
6264 (USAGE3): Rename from USAGE2.
6265 (USAGE4): Rename from USAGE3.
f8125c39 6266
4effffca
EZ
62672004-02-21 Juri Linkov <juri@jurta.org>
6268
6269 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
6270 Fix --multibyte. Move --help, --version to USAGE2. Add alias
6271 --file. Fix -f, -l. Sort options. Untabify.
6272 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
6273
923c1e6f
LT
62742004-02-19 Luc Teirlinck <teirllm@auburn.edu>
6275
6276 * category.c (Fdefine_category, Fcategory_docstring)
6277 (Fget_unused_category, Fset_category_table)
6278 (Fcategory_set_mnemonics): Doc fixes.
6279
b0e225fd
KS
62802004-02-20 Kim F. Storm <storm@cua.dk>
6281
6282 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
6283 The following changes are relative to the 2004-01-21 revision.
6284 (NREAD_INPUT_EVENTS): Define as max number of input events to read
6285 in one call to read_socket_hook. Value is 8.
6286 (read_avail_input): Separate and rework handling of read_socket_hook
6287 and non-read_socket_hook cases. Use smaller input_event buffer
d8d95bc7
SM
6288 in read_socket_hook case, and repeat if full buffer is read.
6289 Use new local variable 'discard' to skip input after C-g.
b0e225fd
KS
6290 In non-read_socket_hook case, just use a single input_event, and
6291 call kbd_buffer_store_event on the fly for each character.
6292
b15aa9f9
SM
62932004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
6294
6295 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
6296 Remove unused `gu' alternative.
6297
83c9aa95
AS
62982004-02-19 Andreas Schwab <schwab@suse.de>
6299
6300 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
6301 warning.
6302
cc808173
KS
63032004-02-18 Kim F. Storm <storm@cua.dk>
6304
6305 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
6306 Fix last change.
6307
ab90a54d
KS
63082004-02-17 Kim F. Storm <storm@cua.dk>
6309
b26f249f
KS
6310 * xdisp.c (fast_find_position): Fix return value of new version;
6311 it was inverted compared to the 21.1 version.
6312 (get_window_cursor_type): Don't look at glyph if NULL.
6313 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
0bf7d005 6314
ab90a54d
KS
6315 * keyboard.c: Rework previous change; it didn't consider that the
6316 buf array was allocated on the stack.
6317 (prev_read): Remove variable.
6318 (read_avail_input_buf): New static event buffer array.
b9568dfc 6319 (in_read_avail_input): New static variable to handle re-entrancy.
ab90a54d 6320 (read_avail_input): Change buf to pinter to read_avail_input_buf.
b9568dfc
KS
6321 Use in_read_avail_input to handle re-entrance; when re-entered,
6322 fully initialize and use tmp_buf array instead of read_avail_input_buf.
6323 Do not initialize read_avail_input_buf in full here; instead assume it
ab90a54d
KS
6324 is always cleared on entry. To ensure that, we clear (just) the
6325 entries that were used before we return.
6326 (init_keyboard): Initialize read_avail_input_buf here.
6327
b6189c3b 63282004-02-16 Jesper Harder <harder@ifa.au.dk>
4e039f3f
EZ
6329
6330 * cmds.c (Fend_of_line): Doc fix.
6331
7b5368c1
EZ
63322004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
6333
6334 * keyboard.c (prev_read): New static variable.
6335 (read_avail_input): Use it to zero out only those slots in buf[]
6336 that were used last time we were called.
6337
a6eeaa81 63382004-02-16 Eli Zaretskii <eliz@gnu.org>
ca4bc494
EZ
6339
6340 * Makefile.in (obj): Move fringe.o from here...
6341 (XOBJ, MAC_OBJ): ...to here.
6342
159c348e
SE
63432004-02-16 Stephen Eglen <stephen@gnu.org>
6344
6345 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
6346
d2f14999
SM
63472004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
6348
b15aa9f9
SM
6349 * data.c (Fbyteorder):
6350 * fringe.c (Fdefine_fringe_bitmap):
6351 * xdisp.c (handle_single_display_prop):
d2f14999
SM
6352 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
6353
8d50508a
JR
63542004-02-16 Jason Rumney <jasonr@gnu.org>
6355
6356 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
6357
dd4497dc
ST
63582004-02-15 Steven Tamm <steventamm@mac.com>
6359
6360 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
6361 controlling emulation of a three button mouse with option and
6362 command keys.
7e26f91b 6363 (Qreverse, mac_get_enumlated_btn): Handle the emulation.
b15aa9f9 6364 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
dd4497dc 6365
c9159cb3
KS
63662004-02-15 Kim F. Storm <storm@cua.dk>
6367
2cc52658
KS
6368 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
6369
c9159cb3
KS
6370 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
6371 Perform byte-swapping.
6372
12fde2dc
KS
63732004-02-14 Kim F. Storm <storm@cua.dk>
6374
6375 * dispextern.h (struct draw_fringe_bitmap_params): Change member
6376 bits from char to short to facilitate wider bitmaps.
6377 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
6378 member.
6379
6380 * fringe.c (struct fringe_bitmap): Change member bits from char to
6381 short to facilitate 16 bits wide bitmaps. Modify all standard
6382 bitmaps accordingly.
6383 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
6384 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
6385 (draw_fringe_bitmap): Ditto.
6386 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
6387 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
6388 handle up to 16 bits wide bitmaps.
6389 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
f21a7192 6390 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
12fde2dc
KS
6391
6392 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
6393 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
6394 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
6395
6396 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
6397 so it is no longer necessary to expand them here.
6398
6399 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
6400
9d7271e8
KS
64012004-02-12 Kim F. Storm <storm@cua.dk>
6402
6403 * window.c (Fwindow_fringes): Doc fix.
6404
706c1e4f
JD
64052004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6406
6407 * xselect.c (x_get_foreign_selection): Add new optional parameter
6408 time_stamp.
6409 (Fx_get_selection_internal): Ditto, pass time_stamp to
6410 x_get_foreign_selection.
6411
6412 * data.c (Fbyteorder): New function.
6413
c2d12b5d
JD
64142004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6415
6416 * atimer.c: Move include stdio.h to same place as in other files.
6417
6418 * region-cache.c: Ditto.
6419
6420 * sysdep.c: Ditto.
6421
6422 * xfaces.c: Ditto.
6423
4c1947b9
SS
64242004-02-09 Sam Steingold <sds@gnu.org>
6425
89458937 6426 * w32term.c (w32_draw_fringe_bitmap): Fix a typo in the last patch.
4c1947b9 6427
82722af3
KS
64282004-02-09 Kim F. Storm <storm@cua.dk>
6429
6430 * fringe.c: New file. Move original fringe related declarations
6431 and code from dispextern.h and xdisp.c here.
6432 Rework code to support user defined fringe bitmaps, redefining
6433 standard bitmaps, ability to overlay user defined bitmap with
6434 overlay arrow bitmap, and add faces to bitmaps.
6435 (Voverflow_newline_into_fringe): Declare here.
6436 (enum fringe_bitmap_align): New enum.
6437 (..._bits): All bitmaps are now defined without bitswapping; that
6438 is now done in init_fringe_once (if necessary).
6439 (standard_bitmaps): New array with specifications for the
6440 standard fringe bitmaps.
6441 (fringe_faces): New array.
6442 (valid_fringe_bitmap_id_p): New function.
6443 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
6444 (draw_fringe_bitmap): New function which draws fringe bitmap,
6445 possibly overlaying bitmap with cursor in right fringe or the
6446 overlay arrow in the left fringe.
6447 (update_window_fringes): Do not handle overlay arrow here.
6448 Compare and copy fringe bitmap faces.
6449 (init_fringe_bitmap): New function.
6450 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
6451 define and destroy user defined fringe bitmaps.
6452 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
6453 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
6454 (syms_of_fringe): New function. Defsubr new DEFUNs.
6455 DEFVAR_LISP Voverflow_newline_into_fringe.
6456 (init_fringe_once, init_fringe): New functions.
6457 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
4c1947b9 6458
82722af3
KS
6459 * Makefile.in (obj): Add fringe.o.
6460 (fringe.o): New dependencies.
6461
6462 * dispextern.h (FRINGE_ID_BITS): New definition for number of
6463 bits allocated to hold a fringe number. Increase number of bits
6464 from 4 to 8 to allow user defined fringe bitmaps.
6465 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
6466 left_user_fringe_face_id, right_user_fringe_bitmap,
6467 right_user_fringe_face_id.
6468 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
6469 Move to new file fringe.c.
6470 (MAX_FRINGE_BITMAPS): Define here.
6471 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
6472 and overlay_p. Change member which to int.
6473 (struct redisplay_interface): New members define_fringe_bitmap
6474 and destroy_fringe_bitmap.
6475 (valid_fringe_bitmap_id_p): Add prototype.
6476 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
6477
6478 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
6479 arrows.
6480 (update_frame): Do flush_display if force_flush_display_p to
6481 ensure display (specifically fringes) are updated in a timely
6482 manner when resizing the frame by dragging the mouse.
6483 (update_window_line): Update row if overlay arrow changed.
6484 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
6485 or overlay arrow changed.
6486
6487 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
6488 syms_of_fringe, and init_fringe.
6489
6490 * frame.h (struct frame): New member force_flush_display_p.
6491
6492 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
6493 Add prototypes.
6494
a3993cc8 6495 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
a64387ee 6496 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
a3993cc8
KS
6497 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
6498 Use cursor color for displaying cursor in fringe.
82722af3
KS
6499 (x_redisplay_interface): Add null handlers for
6500 define_fringe_bitmap and destroy_fringe_bitmap functions.
6501
6502 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
6503 xterm.c to handle overlayed fringe bitmaps and to use cursor color
6504 for displaying cursor in fringe.
6505 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
6506 specific functions to define and destroy fringe bitmaps in fringe_bmp.
6507 (w32_redisplay_interface): Add them to redisplay_interface.
6508 (w32_term_init): Call w32_init_fringe instead of explicitly
6509 defining fringe bitmaps in fringe_bmp array.
6510 (x_delete_display): Call w32_reset_fringes instead of explicitly
6511 destroying fringe bitmaps in fringe_bmp array.
6512
6513 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
6514 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
6515 (continued_bits, continuation_bits, ov_bits, first_line_bits)
6516 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
6517 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
6518 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
6519 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
6520 Move fringe handling vars and code to new file fringe.c.
6521 (handle_display_prop): Handle left-fringe and right-fringe
6522 display properties; store user fringe bitmaps in iterator.
6523 (move_it_in_display_line_to): Handle cursor in fringe at eob.
6524 (clear_garbaged_frames): Set force_flush_display_p if resized.
6525 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
6526 (display_line): Handle cursor in fringe at eob.
6527 (display_line): Set row user fringe bitmaps from iterator.
6528
6529 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
6530 Use cursor color for displaying cursor in fringe.
6531 (x_redisplay_interface): Add null handlers for
6532 define_fringe_bitmap and destroy_fringe_bitmap functions.
6533
030400eb
JD
65342004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6535
6536 * macfns.c (Fx_change_window_property): Make doc string and
6537 parameters same as for X version.
6538
6539 * w32fns.c (Fx_change_window_property): Ditto.
6540
3af55251
KS
65412004-02-07 Kim F. Storm <storm@cua.dk>
6542
ec110e9e
KS
6543 * xdisp.c (hscroll_window_tree): Position cursor near to right
6544 margin in hscrolled window when jumping to end of line (rather
6545 than centering cursor).
6546
3af55251
KS
6547 * process.c (wait_reading_process_input): Don't do adaptive read
6548 buffering if waiting for a specific process.
6549
b0c138ce
LT
65502004-02-05 Luc Teirlinck <teirllm@auburn.edu>
6551
6552 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
6553 (Fread_minibuffer, Feval_minibuffer)
6554 (Fread_string, Fread_no_blanks_input)
6555 (Fcompleting_read): Doc fixes.
6556 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
6557 completion-regexp-list. Define Qcase_fold_search and staticpro it.
6558 (read_minibuf): Fix initial comment.
6559 (Ftry_completion, Fall_completions, Ftest_completion): Bind
e8eeaed8 6560 case-fold-search to the value of completion-ignore-case when
b0c138ce
LT
6561 checking completion-regexp-list.
6562 (Fdisplay_completion_list): Make it handle arguments that are
6563 symbols. Doc fix.
6564
9676f5ad 65652004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
64d1e373 6566
9676f5ad 6567 * xterm.h: Add declaration of free_frame_menubar.
64d1e373 6568
9676f5ad
JD
6569 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
6570 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
b0c138ce 6571 (Fx_change_window_property): Add declaration of parameters type and
9676f5ad 6572 format. Remove unused variable cons.
5b698285
JD
6573
6574 * xselect.c: Include stdio,h.
6575
fc1d15f6
KH
65762004-02-05 Kenichi Handa <handa@m17n.org>
6577
ebaff4af
KH
6578 * fns.c (Fset_char_table_range): Fix previous change.
6579
fc1d15f6
KH
6580 * buffer.c (Fset_buffer_multibyte): Fix docstring.
6581
9676f5ad
JD
65822004-02-04 Luc Teirlinck <teirllm@auburn.edu>
6583
6584 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
6585
da75761f
SM
65862004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
6587
6588 * keymap.c (Vmouse_events): Rename from Vmenu_events.
6589 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
6590
13c5d120
KH
65912004-02-04 Kenichi Handa <handa@m17n.org>
6592
6593 * fns.c (Fset_char_table_range): Handle charsets ascii,
6594 eight-bit-control, and eight-bit-graphic correctly.
6595
2883d842
JR
65962004-02-03 Jason Rumney <jasonr@gnu.org>
6597
6598 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
6599
6600 * w32fns.c (x_to_w32_font): Likewise.
6601
69eff41f
JD
66022004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6603
6604 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
6605 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
6606
6607 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
6608 ClientMessages.
6609
6610 * xselect.c: Include termhooks.h and X11/Xproto.h
6611 (x_check_property_data, x_fill_property_data)
6612 (x_property_data_to_lisp, mouse_position_for_drop)
6613 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
da75761f 6614 (Fx_send_client_event): Move here from xfns.c.
69eff41f
JD
6615 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
6616
da75761f 6617 * xfns.c (x-send-client-message): Move to xselect.c
69eff41f
JD
6618 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
6619 OUTER_P.
6620 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
6621 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
6622 if vector_ret_p is true.
6623 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
69eff41f 6624
a6eeaa81 66252004-02-02 Eli Zaretskii <eliz@gnu.org>
dcdbbb5d
EZ
6626
6627 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
6628 basename of FILE relative to it, not FILE itself.
6629
09721b31
KH
66302004-02-02 Kenichi Handa <handa@m17n.org>
6631
6632 * coding.c (coding_restore_composition): Check invalid
6633 composition data more rigidly.
6634
eb996101
LT
66352004-01-30 Luc Teirlinck <teirllm@auburn.edu>
6636
6637 * fileio.c (Fread_file_name_internal): Correctly handle the case
6638 where insert-default-directory is nil.
6639 (Fread_file_name): Always return an empty string if the user exits
6640 with an empty minibuffer. Adapt the docstring accordingly.
6641 (syms_of_fileio): Adapt the docstring of insert-default-directory
6642 to the change in Fread_file_name.
6643
a6eeaa81 66442004-01-29 Eli Zaretskii <eliz@gnu.org>
a0367d42
EZ
6645
6646 * alloca.c [!alloca]: Fix the prototype for xfree.
6647
13f52ed8
KH
66482004-01-29 Kenichi Handa <handa@m17n.org>
6649
6650 * fns.c (string_char_to_byte): Optimize for ASCII only string.
6651 (string_byte_to_char): Likewise.
6652
d57625a0
JR
66532004-01-28 Peter Runestig <peter@runestig.com>
6654
6655 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
6656
a64387ee 66572004-01-27 Steven Tamm <steventamm@mac.com>
911c78b4
ST
6658
6659 * unexmacosx.c (unexec_copy): Do not copy more than was
6660 requested to prevent overwriting during unexec.
6661
eb37b8fd
JD
66622004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6663
ce38070a
JD
6664 * process.c (sigchld_handler): Add comment about not calling malloc.
6665
eb37b8fd
JD
6666 * process.h: Add extern to synch_process_termsig.
6667
a64387ee 66682004-01-27 Steven Tamm <steventamm@mac.com>
21a3e657 6669
da75761f
SM
6670 * macterm.c (make_mac_frame, make_mac_terminal_frame):
6671 Move setting of scroll bars from make_mac_frame to
6672 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
21a3e657 6673
d62a265d
RS
66742004-01-26 Richard M. Stallman <rms@gnu.org>
6675
6676 * search.c (Freplace_match): Handle nonexistent
6677 back-references properly.
6678
66792004-01-03 Richard M. Stallman <rms@gnu.org>
6680
6681 * window.c (decode_any_window): New function.
6682 (Fwindow_height, Fwindow_width, Fwindow_edges)
6683 (Fwindow_pixel_edges, Fwindow_inside_edges)
6684 (Fwindow_inside_pixel_edges): Use decode_any_window.
6685
ff236419
JD
66862004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6687
6688 * process.h: synch_process_termsig new variable.
6689
6690 * callproc.c: Define synch_process_termsig.
6691 (Fcall_process): Initiate synch_process_termsig to zero and
6692 check if non-zero and get signal name after subprocess has ended.
6693
6694 * process.c (sigchld_handler): Set synch_process_termsig
6695 if terminated by a signal. synch_process_death setting removed.
6696
6697 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
6698
41b867ea
AS
66992004-01-26 Andreas Schwab <schwab@suse.de>
6700
6701 * print.c (print_preprocess): Declare size as EMACS_INT to not
6702 lose bits.
6703 (print_object): Likewise.
6704 * alloc.c (Fpurecopy): Likewise.
6705
a08084ff
LT
67062004-01-25 Luc Teirlinck <teirllm@auburn.edu>
6707
6708 * window.c (Fwindow_minibuffer_p): Doc fix.
6709
b19ac475
JY
67102004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
6711
6712 * editfns.c (Fformat): Make both passes accept the same set of flags.
6713
fe905025
KH
67142004-01-23 Kenichi Handa <handa@m17n.org>
6715
6716 * fns.c (Fmd5): If OBJECT is a buffer different from the current
6717 one, set buffer to OBJECT temporarily.
6718
438fc6c0
SM
67192004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
6720
455316e2
SM
6721 * keyboard.c (kbd_buffer_gcpro): Remove.
6722 (kbd_buffer_store_event, clear_event, Fdiscard_input)
6723 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
6724 Don't initialize and/or maintain the variable any more. It was made
6725 redundant by my commit of 2003-06-15.
6726
438fc6c0
SM
6727 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
6728
5335a4ee
JD
67292004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6730
6731 * lisp.h: Add undef DECL_ALIGN.
6732
dcdaeebc
SM
67332004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
6734
6735 * process.c (wait_reading_process_input) [SYNC_INPUT]:
6736 Check interrupt_input_pending explicitly.
6737
6738 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
6739
6740 * keyboard.c (handle_async_input): New fun,
6741 extracted from input_available_signal.
6742 (input_available_signal, reinvoke_input_signal): Use it.
6743
9076a823
SM
67442004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
6745
d7107586
SM
6746 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
6747
6748 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
6749 manipulation macros for when tags are in the lower bits.
6750 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
6751 (DECL_ALIGN): New macro.
6752 (DEFUN): Use it.
6753
6754 * lisp.h [ENABLE_CHECKING]: Don't force union type.
6755
6756 * s/darwin.h (__attribute__): Remove outdated workaround.
6757
6758 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
6759
6760 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
6761 Don't check range of malloc address.
6762 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
6763
9076a823
SM
6764 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
6765
6766 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
6767
ba029065
KH
67682004-01-19 Kenichi Handa <handa@m17n.org>
6769
6770 * fontset.c (fontset_font_pattern): Fix previous change.
6771
7af0e8d7
MB
67722004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
6773
6774 * xdisp.c (Voverflow_newline_into_fringe)
6775 (move_it_in_display_line_to, redisplay_internal)
6776 (update_window_fringes, redisplay_window, display_line, window):
6777 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
6778 that it compiles without a window-system.
6779 * dispnew.c (direct_output_for_insert, update_window): Likewise.
6780
77a9cf69
KS
67812004-01-16 Kim F. Storm <storm@cua.dk>
6782
6783 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
6784
a64387ee 6785 * buffer.c (init_buffer_once): Set buffer_defaults and
77a9cf69
KS
6786 buffer_local_flags for indicate_buffer_boundaries.
6787 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
6788 default- variable for it.
6789
6790 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
6791 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
d7107586 6792 New members exact_window_width_line_p and cursor_in_fringe_p for
77a9cf69
KS
6793 overflowing newlines into right fringe.
6794 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
6795 and indicate_bottom_line_p for buffer boundaries and scrolling.
6796 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
6797 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
6798 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
6799 and HOLLOW_SQUARE_BITMAP.
6800 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
6801 Add prototypes.
6802
6803 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
6804 instead of related indicator fields.
6805 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
6806 (direct_output_for_insert): Handle exact width lines like
6807 contined lines. Call update_window_fringes.
6808 (update_window): Call update_window_fringes.
6809 (scrolling_window): Don't skip desired rows with changed bitmaps.
6810 Check if fringe bitmaps changes when assigning scrolled rows.
6811
6812 * xdisp.c (Voverflow_newline_into_fringe): New variable.
6813 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
6814 (move_it_in_display_line_to): Overflow newline into fringe for
6815 rows that are exactly as wide as the window.
6816 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
6817 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
6818 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
6819 (fringe_bitmaps): Add new bitmaps.
6820 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
6821 Select proper bitmap for cursor in fringe when appropriate.
6822 Handle alignment of bitmap to top or bottom of row.
6823 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
6824 done by update_window_fringes.
6825 (update_window_fringes, draw_window_fringes): New functions.
6826 (redisplay_internal): Call update_window_fringes in case only
6827 cursor row is updated.
6828 (redisplay_window): Call update_window_fringes.
6829 Explicitly call draw_window_fringes if redisplay was done using
6830 the current matrix or the overlay arrow is in the window.
6831 (try_window_reusing_current_matrix): Mark scrolled rows for
6832 fringe update (to update buffer-boundaries / scrolling icons).
6833 (find_last_unchanged_at_beg_row): Handle exact width lines line
6834 continued lines.
6835 (display_line): Overflow newline into fringe for rows that are
6836 exactly as wide as the window. Don't append space for newline
d7107586 6837 in this case.
77a9cf69
KS
6838 (notice_overwritten_cursor): Explicitly clear cursor bitmap
6839 in fringe as if it had been overwritten.
6840 (erase_phys_cursor): Erase cursor bitmap in fringe.
d7107586 6841 (syms_of_xdisp): Mark show-trailing-whitespace and
77a9cf69
KS
6842 void-text-area-pointer as user options.
6843 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
d7107586 6844
77a9cf69
KS
6845 * xterm.c (x_update_window_end): Call draw_window_fringes.
6846 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
6847 in row instead of actually drawing fringe bitmaps.
6848 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
6849 (x_draw_window_cursor): Draw cursor in fringe.
6850
6851 * w32term.c (x_update_window_end): Call draw_window_fringes.
6852 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
6853 in row instead of actually drawing fringe bitmaps.
6854 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
6855 (w32_draw_window_cursor): Draw cursor in fringe.
6856
6857 * macterm.c (x_update_window_end): Call draw_window_fringes.
6858 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
6859 in row instead of actually drawing fringe bitmaps.
6860 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
6861 (mac_draw_window_cursor): Draw cursor in fringe.
6862
a633a954
JD
68632004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6864
6865 * xterm.c (handle_one_xevent): Don't handle characters that are part
6866 of an old style (XLookupString) compose sequence.
6867
80460525
KH
68682004-01-15 Kenichi Handa <handa@m17n.org>
6869
6870 * search.c (Freplace_match): Use make_multibyte_string or
6871 make_unibyte_string according to the buffer multibyteness.
6872
7fc34f85
SM
68732004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
6874
6875 * alloc.c (struct interval_block, struct string_block)
6876 (struct symbol_block, struct marker_block, live_string_p)
6877 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
6878 Better preserve alignment for objects in blocks.
6879 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
6880
6881 * lread.c (defvar_per_buffer): Remove dead declaration.
6882
6883 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
6884 space size.
6885
66070bd1
JD
68862004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6887
6888 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
6889 if a key press should pop down. Only pop down if a key is pressed
6890 outside the menu/dialog.
6891 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
6892 popup_get_selection.
6893 (create_and_show_dialog): Pass 1 for down_on_keypress to
6894 popup_get_selection.
6895
de7515d6
JD
68962004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6897
6898 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
6899 BLOCK/UNBLOCK_INPUT.
6900
160b1b50
JD
69012004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6902
6903 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
6904 specified.
6905
3a9f36e6
KH
69062004-01-08 Kenichi Handa <handa@m17n.org>
6907
6908 * editfns.c (Fformat): Fix '&' to '&&'.
6909
3803eb32
AS
69102004-01-08 Andreas Schwab <schwab@suse.de>
6911
6912 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
6913 size if PSEUDOVECTOR_FLAG is set.
6914
9da88f37
KH
69152004-01-07 Kenichi Handa <handa@m17n.org>
6916
74ac5074
KH
6917 * charset.c (Fdeclare_equiv_charset): Fix docstring.
6918
9da88f37
KH
6919 * fontset.c (fontset_ref_via_base): Fix previous change.
6920
05faee07
KS
69212004-01-07 Kim F. Storm <storm@cua.dk>
6922
6923 * process.c (read_process_output): Only activate adaptive
6924 buffering if we read less than 256 bytes at a time.
6925
634910c8
KS
69262004-01-06 Kim F. Storm <storm@cua.dk>
6927
6928 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
6929 object and image object. Return glyph width and height.
6930 (mode_line_string, marginal_area_string): Ditto.
6931
6932 * dispextern.h (buffer_posn_from_coords, mode_line_string)
6933 (marginal_area_string): Fix prototypes.
6934
6935 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
f63fd14e 6936 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
634910c8
KS
6937 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
6938
6939 * keyboard.c (make_lispy_position): Use modified mode_line_string,
6940 buffer_posn_from_coords, and marginal_area_string functions to
6941 include both string object and image object in the lispy position.
6942 Also add actual glyph width and height to position.
6943 (read_key_sequence): Use real buffer position from mouse
6944 event to find keymap property even when click is in marginal area.
6945
6946 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
6947 mode_line_string and marginal_area_string functions to handle
6948 both string object and image object properties.
d7107586 6949
57951c2e
AS
69502004-01-06 Andreas Schwab <schwab@suse.de>
6951
6952 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
6953 character.
6954
181e6a61
AS
69552004-01-02 Andreas Schwab <schwab@suse.de>
6956
d7107586
SM
6957 * macterm.c (emacs_options, x_initialized, same_x_server):
6958 Remove unused (and duplicated) definitions.
181e6a61 6959
31e0fbdd
KS
69602004-01-02 Kim F. Storm <storm@cua.dk>
6961
6962 * process.h (struct Lisp_Process): New members for adaptive read
6963 buffering: adaptive_read_buffering, read_output_delay, and
6964 read_output_skip.
6965
6966 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
6967 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
6968 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
6969 (process_output_delay_count, process_output_skip): New vars.
6970 (Vprocess_adaptive_read_buffering): New variable.
6971 (make_process): Initialize adaptive read buffering members.
6972 (Fstart_process): Set adaptive_read_buffering member.
6973 (deactivate_process): Cleanup adaptive read buffering.
6974 (wait_reading_process_input): Temporarily omit delayed
6975 subprocesses from the set of file descriptors to read from;
6976 adjust the select timeout if we skipped any subprocesses.
6977 (read_process_output): Increase adaptive read buffering delay if
6978 we read less than a full buffer; reduce delay when we read a
6979 full buffer.
6980 (send_process): Simplify using local Lisp_Process var.
6981 Reset adaptive read buffering delay after write.
6982 (init_process): Initialize process_output_delay_count and
6983 process_output_skip.
6984 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
6985
68c6a789
JR
69862004-01-01 Jason Rumney <jasonr@gnu.org>
6987
d7107586 6988 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
68c6a789 6989
3f70fe82
LT
69902003-12-30 Luc Teirlinck <teirllm@auburn.edu>
6991
6992 * print.c (Ferror_message_string): Add hyperlink in the docstring
6993 to the definition of `signal' in the Elisp manual.
6994 * eval.c (Fsignal): Ditto.
6995
b6189c3b 69962003-12-29 James Clark <jjc@jclark.com>
c2be49ed
EZ
6997
6998 * fns.c (internal_equal): Return t for two NaN arguments.
6999
7abd90ea
RS
70002003-12-29 Richard M. Stallman <rms@gnu.org>
7001
7002 * data.c (store_symval_forwarding): Handle setting
7003 default-fill-column, etc., by changing the value in
7004 buffers that use the default.
7005
7006 * minibuf.c (Fset_minibuffer_window): Doc fix.
7007
7008 * fileio.c (choose_write_coding_system): Ignore auto_saving
7009 if using the visited file for auto saves.
7010 (Fwrite_region): Don't update SAVE_MODIFF
7011 if auto-saving in visited file.
7012
3e7cfcdc
KH
70132003-12-29 Kenichi Handa <handa@m17n.org>
7014
7015 * dispextern.h (face_font_available_p): Extern it.
7016
7017 * fontset.c (Voverriding_fontspec_alist): New variable.
7018 (lookup_overriding_fontspec): New function.
d7107586 7019 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
3e7cfcdc
KH
7020 (fontset_font_pattern): Likewise.
7021 (regulalize_fontname): New function.
7022 (Fset_fontset_font): Call regulalize_fontname.
7023 (Fset_overriding_fontspec_internal): New function.
d7107586
SM
7024 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
7025 Defsubr Sset_overriding_fontspec_internal.
3e7cfcdc
KH
7026
7027 * xfaces.c (face_font_available_p): New function.
7028
7abd90ea
RS
70292003-12-28 Richard M. Stallman <rms@gnu.org>
7030
7031 * buffer.c (Fother_buffer): Don't crash if BUF is nil
7032 or if its name is nil.
7033
7034 * buffer.c (Fkill_buffer): Don't delete auto-save file
7035 if it's the same as the visited file.
7036
de1d1a40
LT
70372003-12-28 Luc Teirlinck <teirllm@auburn.edu>
7038
7039 * coding.c (Fcheck_coding_system): Doc fix.
7040
204fb75e
KS
70412003-12-28 Kim F. Storm <storm@cua.dk>
7042
7043 * Makefile.in (eval.o): Depend on dispextern.h.
7044
7045 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
7046 image glyph using image's ascent.
7047 (mode_line_string): Return image glyph as object clicked on.
7048 Adjust y0 for image glyph using image's ascent.
7049
7050 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
7051 (struct glyph): New members, ascent and descent. Used to save
7052 this glyph's ascent and descent, instead of having.
7053 (struct glyph): Declare member face_id using FACE_ID_BITS.
7054 (find_hot_spot): Add prototype.
7055
7056 * keyboard.c (Qimage): Remove extern (now in lisp.h).
7057 (QCmap): Declare extern.
7058 (make_lispy_position): When position is inside image hot-spot,
7059 use hot-spot element's id as posn element.
7060
7061 * lisp.h (IMAGEP): New macro to test for image object type.
7062 (Qimage): Declare extern.
7063
7064 * macfns.c (Qimage): Remove extern (now in lisp.h).
7065 (valid_image_p, parse_image_spec): Use IMAGEP macro.
7066
7067 * macterm.c (Qface, Qmouse_face): Remove unused externs.
7068
7069 * w32fns.c (Qimage): Remove extern (now in lisp.h).
7070 (valid_image_p, parse_image_spec): Use IMAGEP macro.
7071
7072 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
7073
7074 * w32term.c (Qface, Qmouse_face): Remove unused externs.
7075
7076 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
7077 pointer types.
7078 (Qrelative_width, Qalign_to): Remove unused variables.
7079 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
7080 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
7081 image maps.
d7107586 7082 (x_y_to_hpos_vpos): Return glyph relative coordinates through
204fb75e
KS
7083 new dx and dy args.
7084 Remove buffer_only_p arg (always 0). Simplify code accordingly.
7085 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
7086 than row's ascent and height, to get sensible height on tall rows.
7087 (build_desired_tool_bar_string): Remove Qimage extern.
7088 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
7089 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
7090 image glyph is alone on the last line.
7091 (append_glyph, append_composite_glyph, produce_image_glyph)
d7107586 7092 (append_stretch_glyph): Set glyph's ascent and descent.
204fb75e 7093 (on_hot_spot_p): New function to check if position is inside an
d7107586 7094 rectangular, circular, or polygon-shaped image hot-spot,
204fb75e
KS
7095 (find_hot_spot): New function to search for image hot-spot.
7096 (Flookup_image_map): New defun to search for image hot-spot.
7097 (define_frame_cursor1): New aux function to determine frame pointer.
7098 (note_mode_line_or_margin_highlight, note_mouse_highlight):
7099 Handle `pointer' text property and :pointer image property to
7100 control frame pointer shape. Detect image hot-spots for pointer
7101 and help_echo properties. Use define_frame_cursor1.
7102 (note_mouse_highlight): Use Vvoid_text_area_pointer.
f63fd14e 7103 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
204fb75e
KS
7104 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
7105
7106 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
7107
7108 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
7109 (Qimage): Remove extern (now in lisp.h).
7110 (valid_image_p, parse_image_spec): Use IMAGEP macro.
7111
7112 * xmenu.c (show_help_event): Remove unused code.
7113
7114 * xterm.c (Qface, Qmouse_face): Remove unused externs.
7115 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
7116 row's ascent and descent, to get a sensible height on tall rows.
7117
fc052137
LT
71182003-12-25 Luc Teirlinck <teirllm@auburn.edu>
7119
7120 * minibuf.c (Fcompleting_read): Undo previous change.
7121
a64387ee 71222003-12-25 Lars Hansen <larsh@math.ku.dk>
b9148500
LH
7123
7124 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
7125 Arguments GCPRO'ed in call to file name handler.
7126
56ffd194
TTN
71272003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
7128
7129 * termcap.c (tgetst1): Scan for "%pN"; if all
7130 N are continuous in [1,9], remove all "%pN".
7131
5202d23d
JD
71322003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7133
f26fab36
JD
7134 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
7135
5202d23d
JD
7136 * xfaces.c (lface_fully_specified_p): Take into account that
7137 MAC OS always have unspecified stipple.
7138
8babaa59
TTN
71392003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
7140
7141 * tparam.c (tparam1): Add handling for `%pN', which
7142 means use param N for the next substitution.
7143
2d176448
TTN
71442003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
7145
7146 * xfaces.c (Fcolor_gray_p): Fix omission bug:
7147 In case `frame' is nil, consult the selected frame.
7148 (Fcolor_supported_p): Likewise.
7149
adb0708c
LT
71502003-12-23 Luc Teirlinck <teirllm@auburn.edu>
7151
000eeb15
LT
7152 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
7153 Doc fixes.
0dc72b11
LT
7154
7155 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
7156 and an integer. Adapt the introductory comment accordingly.
adb0708c
LT
7157 (Fread_from_minibuffer): Delete code moved into read_minibuf.
7158 Doc fix.
7159 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
7160 read_minibuf.
7161 (Fcompleting_read): Delete code moved into read_minibuf.
d7107586 7162 (Ftest_completion): Make it handle obarrays and hash tables correctly.
adb0708c 7163
2e4d132b
KH
71642003-12-03 Kenichi Handa <handa@m17n.org>
7165
7166 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
7167 encoding sequence.
7168
3999c705
KH
71692003-12-01 Kenichi Handa <handa@m17n.org>
7170
7171 * composite.c (syms_of_composite): Don't make the compostion hash
7172 table week.
7173
d344ecbb
LT
71742003-11-30 Luc Teirlinck <teirllm@auburn.edu>
7175
7176 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
7177 * textprop.c (Fget_char_property_and_overlay): New function.
7178 (syms_of_textprop): Defsubr it.
7179
03d6484e
JD
71802003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7181
019b1f0e
JD
7182 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
7183 to compile on terminal configuration.
7184
03d6484e
JD
7185 * fileio.c (Fread_file_name): Check use_file_dialog also before
7186 calling Fx_file_dialog.
7187
7188 * fns.c: use_file_dialog: New variable.
7189 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
7190
442d3fd0
KS
71912003-11-29 Kim F. Storm <storm@cua.dk>
7192
7193 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
7194 (syms_of_msdos): Don't intern and staticpro them.
7195
0f6a07a8
KS
71962003-11-27 Kim F. Storm <storm@cua.dk>
7197
7198 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
7199 coordinates relative to glyph at posn. If glyph is an image,
7200 return that as object at posn. Callers changed.
7201 (mode_line_string, marginal_area_string): Calculate and return
7202 pixel coordinates relative to glyph. Callers changed.
7203
7204 * dispextern.h (buffer_posn_from_coords, mode_line_string)
7205 (marginal_area_string): Fix prototypes.
7206 (window_box_left_offset, window_box_right_offset): Add prototypes.
7207
7208 * frame.h (get_specified_cursor_type, get_window_cursor_type):
7209 Remove prototypes.
7210
7211 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
7212
7213 * keyboard.c (make_lispy_position): Add x and y coordinates
7214 relative to the current glyph as 7th element of position.
7215 If glyph is an image, return it in the object element.
7216 (read_key_sequence): Skip checks for keymap property in cases
7217 where POSN_STRING is not a string (e.g. an image).
7218
7219 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
7220 (Vshow_text_cursor_in_void): New variable.
7221 (glyph_to_pixel_coords): Don't use negative hpos.
7222 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
7223 (append_stretch_glyph): Change ascent arg to be actual value
f63fd14e 7224 in pixels rather than ratio to height. Callers changed.
0f6a07a8
KS
7225 (calc_pixel_width_or_height): New aux function, implementing
7226 pixel based artihmetic for glyph widths and heights.
7227 (produce_stretch_glyph): Use calc_pixel_width_or_height for
7228 :width, :height, :align-to, and :ascent, thus allowing these to
7229 be specified in pixels as well as multiples of characters.
7230 Don't produce stretch glyphs with zero width or height.
7231 (get_specified_cursor_type): Declare static.
7232 (get_window_cursor_type): Declare static. Add glyph arg to be
7233 able to know when cursor is on an image; always substitute
7234 hollow-box cursor for filled-box cursor on images, to avoid
7235 negative images and flicker when blinking the cursor.
7236 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
7237 (note_mode_line_or_margin_highlight): Use non-text cursor rather
7238 than vertical scroll-bar cursor in display margins.
7239 (note_mouse_highlight): Use non-text cursor rather than text
7240 cursor in fringes and over images in the text area.
7241 Use non-text cursor when mouse pointer is outside editable text,
7242 i.e. in the void after end-of-line or end-of-buffer; this was
7243 already done for W32, but is now standard for all systems --
7244 user can toggle show-text-cursor-in-void to get old behaviour.
7245 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
7246 Vdisplay_pixels_per_inch.
7247
00498bfc
AS
72482003-11-25 Andreas Schwab <schwab@suse.de>
7249
7250 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
7251 EMACS_INT to not lose bits.
7252 (Ffillarray): Don't set bits beyond the size of a bool vector.
7253
edaa824d
KS
72542003-11-25 Kim F. Storm <storm@cua.dk>
7255
7256 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
7257 define this defun on systems that cannot use stderr as lvalue.
7258
74d6f539
GM
72592003-11-24 Gerd Moellmann <gerd@gnu.org>
7260
7261 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
7262 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
7263 ld's default is incompatible with unexec.
7264
6a1ff3ba
KS
72652003-11-23 Kim F. Storm <storm@cua.dk>
7266
63dc7c6b
KS
7267 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
7268 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
7269 (Fforce_window_update): New defun.
7270 (syms_of_window): Defsubr it.
7271 (Fset_window_margins, Fset_window_fringes): Doc fix.
7272
6a1ff3ba
KS
7273 * print.c (Fredirect_debugging_output): New defun.
7274 (syms_of_print): Defsubr it.
7275
aef109b7
LT
72762003-11-22 Luc Teirlinck <teirllm@auburn.edu>
7277
7278 * fns.c (Fset_char_table_parent): Doc fix.
7279
6a1ff3ba 72802003-11-22 Kim F. Storm <storm@cua.dk>
63ccbe21
KS
7281
7282 * dispnew.c (buffer_posn_from_coords): Return actual row/column
7283 for glyph clicked on, rather than (unused) pixel positions.
7284 (mode_line_string, marginal_area_string): Change X and Y args to
7285 pointers for returning actual row/column for glyph clicked on.
7286 Simplify and optimize loops.
7287
aef109b7
LT
7288 * dispextern.h (mode_line_string, marginal_area_string):
7289 Update prototypes.
63ccbe21
KS
7290
7291 * keyboard.c (make_lispy_position): New function for generating
7292 mouse click positions from frame and pixel coordinates.
7293 Enhanced to return buffer position and actual row/column for
7294 events outside the text area using updated mode_line_string and
7295 marginal_area_string functions.
7296 Return left-fringe and right-fringe clicks as such, rather than
7297 clicks in text area.
7298 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
7299 pixel_to_glyph_coords, as we never use the results.
7300 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
7301 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
7302 Eliminate unused code in WHEEL_EVENT handling.
7303 (make_lispy_movement): Use make_lispy_position.
7304
7305 * window.c (coordinates_in_window): Remove redundant tests.
7306 Fix returned X pixel value for left-margin.
7307
7308 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
7309 mode_line_string and marginal_area_string parameters.
7310
a64387ee 73112003-11-22 Lars Hansen <larsh@math.ku.dk>
930a9995 7312
d7107586
SM
7313 * w32.c (struct the_group, getgrgid): Add.
7314 * mac.c (struct my_group, getgrgid): Add.
aef109b7 7315
3dbf3426
LT
73162003-11-21 Luc Teirlinck <teirllm@auburn.edu>
7317
7318 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
7319
cae8ddbb 73202003-11-21 Lars Hansen <larsh@math.ku.dk>
ded4064f 7321
d7107586
SM
7322 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
7323 include in call to file name handler. Optionally translate numeric
7324 UID and GID to strings. Update docstring.
7325 (directory_files_internal): Add parameter ID-FORMAT.
7326 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
7327 include in call to file name handler and call to
7328 directory_files_internal. Update Docstring.
7329 (Fdirectory_files): Add dummy parameter in call to
7330 directory_files_internal.
7331 * lisp.h (Qinteger): Add.
7332 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
7333 (Ffile_attributes): Add parameter.
7334 * data.c (Qinteger): Export.
cae8ddbb 7335
2550b848
LT
73362003-11-21 Luc Teirlinck <teirllm@auburn.edu>
7337
3dbf3426 7338 * fns.c (Freverse, Fnreverse): Doc fixes.
2550b848 7339
88380018
KS
73402003-11-19 Kim F. Storm <storm@cua.dk>
7341
7342 * xdisp.c (init_iterator): Initialize it->start to position
7343 before reseating (in case start position is invisible).
7344 (init_to_row_start): Set it->start to row-start.
7345 (redisplay_window): Accept optional_new_start if start position
7346 is invisible (in which case IT_CHARPOS overshoots PT).
7347 (display_line): Setup row->start from it->start (rather than
7348 it->current which is wrong if first char on line is invisible).
7349 When done, reseat it->start to it->current (= start of next row).
7350 (expose_area): Fix exposure of text area when first char (e.g. TAB)
7351 is only partially visible.
7352
7353 * dispextern.h (struct it): New member start.
7354
854c1a59
SM
73552003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
7356
455316e2
SM
7357 * alloc.c (make_float, Fcons): Clear the markbit at init time.
7358 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
7359 of block_index outside of the macro call.
7360 (Fgarbage_collect): Remove null code.
7361
7362 * m/amdx86-64.h: Don't redefine XPNTR.
7363
854c1a59
SM
7364 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
7365 of VALMASK.
7366
7367 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
7368 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
7369 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
7370
7371 * lisp.h (VALMASK): Only define for non-union type.
7372 (MARKBIT): Remove.
7373 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
7374 (XTYPE): Define unconditionally.
7375 (XSETTYPE): Remove one more remnant.
7376 (EQ): Define differently for the union and non-union cases.
7377 (INTMASK): New bit mask.
7378 (struct Lisp_Marker): Move down to prepare for upcoming patch.
7379 (GC_EQ): Delegate to EQ.
7380
7381 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
7382
a0c6ef2d
JD
73832003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7384
7385 * xterm.c (x_window_to_scroll_bar): Move check of display to
7386 where window_id is compared.
7387
859492c4
KS
73882003-11-17 Kim F. Storm <storm@cua.dk>
7389
7390 * dispextern.h (struct it): New member first_vpos.
7391
7392 * xdisp.c (start_display): Set it->first_vpos.
7393 (try_window_id): Use first_vpos to start display in first _text_
7394 line if no reusable lines at start of window with header line.
7395
810f2256
JD
73962003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7397
7c402969 7398 * w32fns.c (XPutPixel):
854c1a59
SM
7399 * w32bdf.c (w32_init_bdf_font):
7400 * sunfns.c (sel_read):
7401 * process.c (Fmake_network_process):
7402 * frame.c (store_frame_param):
7403 * fontset.c (Fset_fontset_font):
7404 * emacs.c (shut_down_emacs):
a64387ee 7405 * ccl.c (ccl_driver): Remove period at end of error message.
7c402969 7406
a32e9bfd
JD
7407 * config.in: Regenerate.
7408
810f2256
JD
7409 * xfns.c (x_window_to_frame, x_any_window_to_frame)
7410 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
7411 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
7412 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
7413 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
7414
7415 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
7416
7417 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
7418 (XTmouse_position, handle_one_xevent): Pass Display* to
7419 x_window_to_scroll_bar.
7420 (x_window_to_scroll_bar): Take a Display* argument.
7421 Check that display for frame is equal to Display* argument.
854c1a59 7422 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
810f2256
JD
7423 x_display_info_for_display instead. Use Display in xev instead
7424 of GDK_DISPLAY.
7425 (x_dispatch_event): Call x_display_info_for_display.
f63fd14e 7426 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
810f2256
JD
7427 (x_connection_closed): Call xg_display_close for GTK.
7428 (x_term_init): Call xg_display_open for additional displays.
7429 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
7430 for GTK.
7431
7432 * xmenu.c (single_menu_item, mouse_position_for_popup)
7433 (x_activate_menubar): Formatting adjustments.
7434
7435 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
7436 adjustments.
7437
7438 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
7439 (xg_display_close, xg_create_default_cursor)
7440 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
7441 handling.
854c1a59
SM
7442 (xg_left_ptr_cursor): Remove.
7443 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
810f2256
JD
7444 cursor here.
7445 (xg_win_to_widget): Take Display* argument, call
7446 gdk_xid_table_lookup_for_display.
7447 (xg_create_frame_widgets, xg_get_file_name, create_menus)
7448 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
7449 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
7450 in FRAME_X_DISPLAY_INFO.
7451 (xg_get_scroll_id_for_window): Take Display* argument.
7452 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
854c1a59 7453 (xg_initialize): Remove xg_left_ptr_cursor.
810f2256 7454
78819ebb
KS
7455 * gtkutil.h (xg_get_scroll_id_for_window, xg_win_to_widget): Add
7456 Display* argument.
7457 (xg_display_open, xg_display_close, xg_create_default_cursor): Declare.
810f2256 7458
0b03cc78
JD
74592003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7460
7461 * xterm.c (x_detect_focus_change): Do not change focus frame for
7462 Enter/LeaveNotify if the current focus frame has explicit focus.
7463
77e688fa
KS
74642003-11-14 Kim F. Storm <storm@cua.dk>
7465
7466 * dispnew.c (update_text_area): Fix redisplay error when hscroll
7467 is active and first glyph is only partially visible.
854c1a59 7468
dd429b03
KH
74692003-11-13 Kenichi Handa <handa@m17n.org>
7470
7471 * xdisp.c (select_frame_for_redisplay): New function.
7472 (redisplay_internal): Record also selected_frame for
7473 unwind_redisplay. Call select_frame_for_redisplay before
7474 redrawing each frame.
7475 (unwind_redisplay): Argument changed to a cons.
7476
6d9266f4
LT
74772003-11-12 Luc Teirlinck <teirllm@auburn.edu>
7478
7479 * fns.c (Fstring_to_multibyte): Doc fix.
7480
80060eb3
KH
74812003-11-11 Kenichi Handa <handa@m17n.org>
7482
7483 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
7484
74305183
JD
74852003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7486
7487 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
7488 program specified positions.
7489
cfda993e
JD
74902003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7491
7492 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
7493
df211069
KH
74942003-11-08 Kenichi Handa <handa@m17n.org>
7495
7496 * Makefile.in (lisp): Add kannada.el.
7497 (shortlisp): Likewise.
7498
4307d534
KH
74992003-11-07 Kenichi Handa <handa@m17n.org>
7500
854c1a59
SM
7501 * coding.c (coding_allocate_composition_data):
7502 Reset coding->composing to COMPOSITION_NO.
4307d534
KH
7503 (coding_restore_composition): Detect invalid composition data.
7504 Give Fstring and Fvector a Lispy integer, not C int.
7505
854c1a59
SM
75062003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
7507
7508 * floatfns.c (Flogb): Don't use VALMASK.
7509
7510 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
7511 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
7512
7513 * lisp.h (XINT): Move the cast to clarify what is going on.
7514 (GCTYPEMASK, XSETTYPE): Remove.
7515 (XGCTYPE): Make it an alias of XTYPE.
7516
d04103a1
JD
75172003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7518
7519 * xterm.c (x_term_init): Fix formatting.
7520
da18b5ac
JD
75212003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7522
78819ebb
KS
7523 * gtkutil.h (xg_have_tear_offs): Declare.
7524 (xg_keep_popup, xg_did_tearoff): Remove.
da18b5ac
JD
7525
7526 * gtkutil.c: Remove variable xg_did_tearoff.
7527 (xg_have_tear_offs): New function.
7528 (tearoff_remove): Just decrease xg_detached_menus.
7529 (tearoff_activate): Increase xg_detached_menus and call
7530 tearoff_remove when tearoff is removed.
854c1a59 7531 (xg_keep_popup): Remove function.
da18b5ac
JD
7532 (create_menus): Give add_tearoff_p as argument to recursive
7533 call to create_menus.
7534 (xg_create_widget): Use variables instead of multiple
7535 strcmp. Tell create_menus to create tear off only for
7536 menu bar menus.
7537 (xg_update_menubar): Change title for a detached menu also.
7538 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
7539 of deep_p.
7540 (xg_initialize): Initialize xg_detached_menus, remove
7541 initialization of xg_did_tearoff.
7542
7543 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
7544 xg_have_tear_offs returns non-zero.
7545 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
7546 call to xg_keep_popup.
7547
64d4923e
AC
75482003-11-01 Andrew Choi <akochoi@shaw.ca>
7549
7550 * macterm.c (XTread_socket): Handle menubar selection and grow
7551 window only for mouseDown events.
854c1a59 7552
6cc8bc07
JD
75532003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7554
7555 * xterm.c (x_term_init): For GTK part, increase x_initialized
7556 to check for more than one display. Use error instead of return 0.
7557
043131c4
AC
75582003-10-31 Andrew Choi <akochoi@shaw.ca>
7559
854c1a59 7560 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
043131c4
AC
7561 (copy_dysymtab): Call it.
7562
bdda99a1
LT
75632003-10-31 Luc Teirlinck <teirllm@auburn.edu>
7564
7565 * eval.c (Fdefvaralias): Doc fix.
7566
800f42ff 75672003-10-26 Luc Teirlinck <teirllm@auburn.edu>
0d11571e
LT
7568
7569 * data.c (Fsetplist): Doc fix.
7570
ef35b389
LK
75712003-10-14 Lute Kamstra <lute@gnu.org>
7572
7573 * window.c (Fset_window_fringes): Clarify docstring.
07107abc 7574
ef35b389 75752003-10-14 Kim F. Storm <storm@cua.dk>
854c1a59 7576
07107abc
KS
7577 * window.c (Fset_window_margins): Simplify arg checking.
7578
f7005886
RS
75792003-10-13 Richard M. Stallman <rms@gnu.org>
7580
7581 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
7582 (print_partial_compiled_pattern): Replace assert with a printout.
7583 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
7584
7585 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
7586
7587 * window.c (Fset_window_margins): Allow only integers as args.
7588 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
7589 Doc fixes.
7590
9c0c2af5
LK
75912003-10-13 Lute Kamstra <lute@gnu.org>
7592
7593 * window.c (Fset_window_fringes): Elaborate docstring.
7594
3f080e4e
AC
75952003-10-12 Andrew Choi <akochoi@shaw.ca>
7596
854c1a59 7597 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
a4887377 7598
3f080e4e
AC
7599 * s/darwin.h (GC_MARK_STACK): Define.
7600
0aa513ed
JD
76012003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7602
7603 * window.c (shrink_windows): New function.
7604 (size_window): Call shrink_windows to calculate window sizes when
7605 shrinking frame with more than one window.
7606
6aa8858a
KS
76072003-10-12 Kim F. Storm <storm@cua.dk>
7608
7609 * xdisp.c (compute_fringe_widths): Doc fix.
7610
c2164d91
KH
76112003-10-08 Kenichi Handa <handa@m17n.org>
7612
854c1a59 7613 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
c2164d91 7614
f82ac129
KH
76152003-10-07 Kenichi Handa <handa@m17n.org>
7616
7617 * coding.c (Qcoding_system_define_form): New variable.
7618 (syms_of_coding): Intern and staticpro it.
7619 (Fcheck_coding_system): Try to autoload the definition of
7620 CODING-SYSTEM.
7621
9296c947
LT
76222003-10-05 Luc Teirlinck <teirllm@auburn.edu>
7623
7624 * fns.c (Frequire): Doc fix.
7625
c1f0671a
JD
76262003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7627
3d8c3826
JD
7628 * xfns.c (Fx_send_client_event): New function as a base for
7629 manipulating extended window manager hints.
6dc15d98 7630 (Fx_send_client_event): Remove unused variable s.
3d8c3826 7631
068ae0fd
JD
7632 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
7633 that function is removed.
7634
7635 * xterm.c (x_set_offset): Use move_offset_left/top instead of
7636 x/y_pixels_outer_diff.
7637 (x_check_expected_move): Calculate move_offset_left/top.
7638
7639 * xterm.h (struct x_output): New members: move_offset_top/left.
7640
854c1a59 7641 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
068ae0fd
JD
7642 call x_set_offset directly.
7643
7644 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
7645
96f09305
JD
7646 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
7647
7648 * xterm.c (x_delete_display): Free font names and font_encoder
7649 in dpyinfo->font_table.
7650
854c1a59
SM
7651 * xfns.c (Fx_close_connection): Only call XFreeFont here.
7652 Move xfree of font names to x_delete_display.
96f09305 7653
c1f0671a
JD
7654 * xterm.h (struct x_display_info): New member, wm_type.
7655 (struct x_output): New members, expected_top/left and
7656 check_expected_move.
7657
7658 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
7659 is received.
854c1a59
SM
7660 (handle_one_xevent): Rename x_check_expected_move from
7661 x_check_fullscreen_move.
c1f0671a
JD
7662 (x_set_offset): Only add WM decoration sizes to modified_top/left
7663 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
854c1a59 7664 (x_check_expected_move): Rename from x_check_fullscreen_move.
c1f0671a
JD
7665 Removed fullscreen specific code. Use check_expected_move,
7666 expected_left/top instead. Also, set wm_type.
7667 (x_term_init): Initialize wm_type to unknown.
7668
7669 * frame.c (x_fullscreen_move): Remove addition of WM decoration
7670 sizes to move_x/y.
7671
be2fdba9
KH
76722003-10-03 Kenichi Handa <handa@m17n.org>
7673
7674 * macterm.c (x_load_font): Clear all members of FONTP before start
7675 filling them.
7676
76772003-10-02 Kenichi Handa <handa@m17n.org>
7678
7679 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
7680 before calling find_ccl_program_func. Call find_ccl_program_func
7681 only when fontp->font_encoder is not NULL.
7682
7683 * xterm.c (x_load_font): Clear all members of FONTP before start
7684 filling them.
7685
26a6e439
JPW
76862003-10-03 John Paul Wallington <jpw@gnu.org>
7687
7688 * keymap.c (map_keymap): Don't abort when binding is a vector.
7689
0d4c2dc2
JR
76902003-10-02 Jason Rumney <jasonr@gnu.org>
7691
854c1a59
SM
7692 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
7693 Sync dependencies with Makefile.in.
a63cf46f
JR
7694 (alloca.o): Remove.
7695
0d4c2dc2
JR
7696 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
7697 filling them.
7698
7699 * w32bdf.c (w32_load_bdf_font): Likewise.
7700
ab8f7d5c
RS
77012003-09-30 Richard M. Stallman <rms@gnu.org>
7702
7703 * term.c (set_tty_color_mode): Calculate current_mode_spec
7704 regardless of value of VAL.
7705
854c1a59 7706 * intervals.c (graft_intervals_into_buffer):
ab8f7d5c
RS
7707 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
7708 Handle over_used when splitting UNDER.
7709
a64387ee 77102003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
ab8f7d5c
RS
7711
7712 * regex.c (regex_compile): Free the stack when returning from function.
7713
3413f972
KH
77142003-09-28 Kenichi Handa <handa@m17n.org>
7715
7716 * fontset.c (Finternal_char_font): Change return value to
7717 cons (FONT-NAME . GLYPH-CODE).
7718
a6eeaa81 77192003-09-28 Eli Zaretskii <eliz@gnu.org>
40409f05
EZ
7720
7721 * term.c (tty_setup_colors): Treat any negative argument as -1.
7722
f98ddc99
KH
77232003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
7724
7725 * process.c (send_process): Delete unused temp_buf.
7726
66c8f1a8
DL
77272003-09-26 Dave Love <fx@gnu.org>
7728
7729 * xterm.c (x_bitmap_mask): Declare.
7730
ca716c26
DL
77312003-09-25 Dave Love <fx@gnu.org>
7732
7733 * Makefile.in (fns.o): Depend on md5.h.
7734
fbe57420
KS
77352003-09-25 Kim F. Storm <storm@cua.dk>
7736
7737 * window.c (set_window_buffer): Fix redisplay problems when
7738 switching between buffers with different display margin widths.
7739
ef6ae4ff
KS
77402003-09-23 Kim F. Storm <storm@cua.dk>
7741
7742 * process.c (set_socket_option): Fix :bindtodevice option.
7743 (Fset_network_process_option): Update process contact list when
7744 setting option succeeds.
7745 (Fmake_network_process): Doc fix.
7746
68e03c1c
DL
77472003-09-23 Dave Love <fx@gnu.org>
7748
7146d1c1 7749 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
68e03c1c 7750
a6eeaa81 77512003-09-22 Eli Zaretskii <eliz@gnu.org>
2f809aae
EZ
7752
7753 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
7754 color mode is an integer number (it could be -1).
7755
8fe7d8c8
RS
77562003-09-22 Richard M. Stallman <rms@gnu.org>
7757
7758 * intervals.c (graft_intervals_into_buffer): Correct the main loop
7759 in the case where OVER is longer than UNDER.
7760
2f71b5ea
MY
77612003-09-22 Masatake YAMATO <jet@gyve.org>
7762
7146d1c1 7763 * window.c (Fset_window_scroll_bars): Validate the value of
2f71b5ea 7764 `vertical_type'.
7146d1c1 7765
0c4da023
KS
77662003-09-21 Kim F. Storm <storm@cua.dk>
7767
7768 * frame.c (Vdefault_frame_scroll_bars): New variable.
7769 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
7770 (syms_of_frame): DEFVAR_LISP it, and initialize according to
7771 window-system default scroll bar position.
7772
b648413b
KS
7773 * window.c (Fwindow_scroll_bars): Doc fix.
7774
8f5b9e34
JD
77752003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7776
854c1a59 7777 * xterm.c (x_set_offset): Take window manager decorations into account.
8f5b9e34 7778
b0f23edf
RS
77792003-09-19 Richard M. Stallman <rms@gnu.org>
7780
7781 * atimer.h: Don't include lisp.h.
7782 (P_): Define it here (as well as elsewhere).
7783
7784 * print.c (Fprin1_to_string): Move the PRINTPREPARE
7785 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
7786
7787 * data.c (Fvariable_binding_locus): New function.
7788 (syms_of_data): defsubr it.
7789 (Flocal_variable_p): Delete duplicate call to indirect_variable.
7790
e1283999
DL
77912003-09-18 Dave Love <fx@gnu.org>
7792
ad5f3636
DL
7793 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
7794
e1283999
DL
7795 * process.c (Fnetwork_interface_info): Fix type error.
7796 (Fnetwork_interface_list): Doc fix.
7797 (read_process_output, read_process_output): Delete unused var.
7798
b8c7fd71
KS
77992003-09-17 Kim F. Storm <storm@cua.dk>
7800
7801 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
7802 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
7803 (Fnetwork_interface_info): Check that ifreq struct has required
7804 fields before accessing them; this requires that those fields are
7805 defined as macros, which may be too restrictive on some platforms,
7806 but it is better than failing on other platforms.
7807 (syms_of_process): Only defsubr above fns when included.
7808
11e0a411
DL
78092003-09-17 Dave Love <fx@gnu.org>
7810
7811 * unexalpha.c: Don't include varargs.h.
7812
e9c50801
KS
78132003-09-17 Kim F. Storm <storm@cua.dk>
7814
7815 * process.c (Fset_process_sentinel): Add sentinel to childp plist
7816 for network process.
7817 (socket_options): Add `:' prefix to option names. Add optbit field.
7818 (set_socket_option): Remove no_error arg and special handling of s < 0.
7819 Return 1<<optbit for known option, 0 for unknown.
7820 Do not interpret 0 as false for boolean option (only nil).
7821 Pass failed option and value to report_file_error.
7146d1c1 7822 (Fset_network_process_options): Replace by Fset_network_process_option.
e9c50801
KS
7823 (Fset_network_process_option): New function to set just one option.
7824 (Fmake_network_process): Allow :coding arg to be a cons.
7825 Allow :server arg to be an integer specifying backlog size.
7826 Remove :options arg, and allow options to be specified directly
7827 as :KEY, VALUE pairs. Parse these options before binding socket.
7828 As before, :reuseaddr t is default for a server process, but this
7829 can now be disabled by specifying :reuseaddr nil.
7830 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
7831 (init_process): Availability of network options is now checked with
7832 simpler syntax (featurep 'make-network-process :OPTION); use loop to
7833 setup features.
7834 (syms_of_process): Fix defsubr's for the replaced functions.
7835
a0fc3644
DL
78362003-09-16 Dave Love <fx@gnu.org>
7837
7838 * Makefile.in: Depend on coding.h.
7839
6df2a645
KS
78402003-09-14 Kim F. Storm <storm@cua.dk>
7841
7842 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
7843 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
7844 (syms_of_process): Defsubr them.
7845
7846 * config.in: Regenerate.
7146d1c1
SM
7847
78482003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
7849
7850 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
7851 * m/news-r6.h (XUNMARK): Remove.
7852 * m/mips.h (XUNMARK): Remove.
7853 * m/mips-siemens.h (XUNMARK): Remove.
7854 * m/iris4d.h (XUNMARK): Remove.
7855 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
7856
0930c1a1
SM
78572003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
7858
31003b9e
SM
7859 * lisp.h (VALBITS): Don't remove 1 for the markbit.
7860 (union Lisp_Object): Use unsigned int for types. Remove markbit.
7861 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
7862 (XTYPE): Use unsigned right-shift.
7863 (XMARKBIT, XMARK, XUNMARK): Remove.
7864
0930c1a1
SM
7865 * alloc.c (init_intervals, init_symbol, init_marker):
7866 Don't preallocate anything.
7867 (Fgarbage_collect, mark_object): Ignore the markbit.
7868
7869 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
7870
19bb0fcd 78712003-09-08 Lute Kamstra <lute@gnu.org>
5df034de
LK
7872
7873 * xdisp.c (pint2hrstr): New function.
7874 (decode_mode_spec): Add `%i' and `%I' specs.
7875 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
7876 for `mode-line-format'.
7877
03bb6a06
AS
78782003-09-07 Andreas Schwab <schwab@suse.de>
7879
7880 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
7881 avoid warning.
7882
a6eeaa81 78832003-09-07 Eli Zaretskii <eliz@gnu.org>
2063d89c 7884
0930c1a1 7885 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
2063d89c 7886
ed159bbf
KS
78872003-09-03 Kim F. Storm <storm@cua.dk>
7888
7889 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
7890 change (superseded by 2002-08-30 change); the default blink-off
7891 cursor is now again "no cursor".
7892
fe64a394
JR
78932003-09-01 Jason Rumney <jasonr@gnu.org>
7894
7895 * makefile.w32-in (alloca.o): Remove.
7896 (coding.o): Depend on intervals.h
7897 (emacs.o, bytecode.o): Depend on window.h
7898
c0175e24
DL
78992003-09-01 Dave Love <fx@gnu.org>
7900
7901 * Makefile.in (alloca.o): Remove commands.
7902 (coding.o): Depend on intervals.h composite.h window.h.
7903 (emacs.o): Depend on window.h keyboard.h keymap.h.
7904 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
7905 (bytecode.o): Depend on window.h.
7906
a24d4cb2
JR
79072003-08-31 Jason Rumney <jasonr@gnu.org>
7908
4bc2315e
JR
7909 * w32term.c (w32_per_char_metric): Allow cached metrics to be
7910 returned even when font_type is unknown.
7911
a24d4cb2
JR
7912 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
7913
9d35adc7
JD
79142003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7915
7916 * xterm.c (x_term_init): Initialize new fields in x_display_info.
7917
7918 * xterm.h (struct x_display_info): Add red/green/blue_bits and
7919 *_offset.
7920
7921 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
7922 calculate pixel value.
7923
6f68b035
GM
79242003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
7925
0930c1a1
SM
7926 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
7927 Don't tell redisplay display is accurate when it's actually been
7928 paused for pending input.
6f68b035 7929
4828b4d7
RS
79302003-08-29 Richard M. Stallman <rms@gnu.org>
7931
7932 * dispnew.c (adjust_glyph_matrix): Call window_box
7933 whenever W is nonzero.
7934
7935 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
7936 (Fkill_local_variable, Fmake_variable_frame_local)
0930c1a1 7937 (Flocal_variable_p, Flocal_variable_if_set_p):
4828b4d7
RS
7938 Use indirect_variable to trace thru variable aliases.
7939
7940 * config.in: Updated.
7941
7942 * callint.c (Fcall_interactively): Save and restore
7943 Vthis_command, Vthis_original_command, real_this_command,
7944 and current_kboard->Vlast_command.
7945
7946 * abbrev.c (Fexpand_abbrev): Insert before deleting.
7947
e019878d
GM
79482003-08-29 Gerd Moellmann <gerd@gnu.org>
7949
7950 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
7951
85478bc6
KH
79522003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
7953
0930c1a1 7954 * coding.c (decode_coding_iso2022): Initialize local variable c2.
85478bc6
KH
7955 (decode_coding_sjis_big5): Likewise.
7956
07ce82d3
JR
79572003-08-27 Jason Rumney <jasonr@gnu.org>
7958
d3703de3
JR
7959 * w32.c (sys_pipe): Protect against file descriptor overflow.
7960
ee4a01d1
JR
7961 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
7962
07ce82d3
JR
7963 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
7964
a64387ee 79652003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
72d19c66
LK
7966
7967 * xfns.c (Vgtk_version_string): New variable.
7968 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
7969
a6eeaa81 79702003-08-24 Eli Zaretskii <eliz@gnu.org>
5459e42a 7971
0930c1a1 7972 * term.c (term_init): Remove `const' from buffer_size's declaration.
3d8714e7 7973
5459e42a
EZ
7974 * Makefile.in (msdos.o): Depend on intervals.h.
7975
0930c1a1 7976 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
5459e42a 7977
231d6cfb
JD
79782003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7979
7980 * xterm.h (struct x_display_info): New fields: client_leader_window
7981 and Xatom_wm_client_leader.
7982
7983 * xterm.c (x_initialize): Move call to x_session_initialize to ...
7984 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
7985
7986 * xsmfns.c (create_client_leader_window): New function.
7987 (x_session_initialize): Call create_client_leader_window, take
7988 dpyinfo as argument.
7989
7990 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
7991
7992 * Makefile.in (xsmfns.o): Add more depenedencies.
7993
afa88464
DL
79942003-08-21 Dave Love <fx@gnu.org>
7995
7996 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
7997
f730033e
KH
79982003-08-21 Kenichi Handa <handa@m17n.org>
7999
8000 * term.c (term_init): Fix previous change; don't rely on the
8001 length of `buffer' if TERMINFO is defined.
8002
6dca786c
DL
80032003-08-20 Dave Love <fx@gnu.org>
8004
8005 * atimer.h: Include lisp.h.
8006
8007 * lisp.h (EMACS_LISP_H): New.
8008 (popup_activated_flag): Don't declare.
8009
8010 * alloca.c: Some merging with gnulib. Change logic and doc
8011 concerning (x)malloc/(x)free -- no longer Emacs-specific.
8012 [DO_BLOCK_INPUT]: Don't include lisp.h.
8013 (xmalloc, xfree): Declare.
8014 (malloc): Don't declare.
8015
0930c1a1 8016 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
6dca786c
DL
8017 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
8018 atimer.h, blockinput.h.
8019
8020 * alloc.c (lisp_align_malloc): Change type of `aligned'.
8021
78819ebb 8022 * alloca.s: Remove.
6dca786c 8023
3a06a6d9
RS
80242003-08-19 Gerd Moellmann <gerd@gnu.org>
8025
8026 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
8027 use -lncurses.
8028
8029 * term.c (term_init): Use a buffer of size 4096 for tgetent since
8030 FreeBSD returns something longer than 2044. Abort if the end of
8031 the buffer is overwritten.
8032
27eeee55
MB
80332003-08-19 Miles Bader <miles@gnu.org>
8034
8035 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
8036
2f297815
GM
80372003-08-19 Gerd Moellmann <gerd@gnu.org>
8038
f4446bbf
GM
8039 * alloc.c (lisp_align_malloc): Check for memory full when
8040 allocating ablocks, which also avoids freeing a pointer into an
8041 ablocks structure.
8042
8043 * puresize.h (BASE_PURESIZE): Increase to 1100000.
8044
0930c1a1 8045 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
2f297815 8046
0e7d7aae
RS
80472003-08-16 Richard M. Stallman <rms@gnu.org>
8048
8049 * editfns.c (Fencode_time): Doc fix.
8050
80512003-08-16 David Ponce <david@dponce.com>
8052
8053 * fileio.c (Fwrite_region): Fix conditional expression to issue
8054 the right message.
8055
b6189c3b 80562003-08-16 Juri Linkov <juri@jurta.org>
0e7d7aae
RS
8057
8058 * syntax.c (Fforward_word): Argument changed to optional.
0930c1a1 8059 Set default value to 1.
0e7d7aae 8060
5d551295
KH
80612003-08-15 Kenichi Handa <handa@m17n.org>
8062
8063 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
8064 what autoscaled.
8065 (best_matching_font): Once we find a better scalable font, set
8066 non_scalable_has_exact_height_p to 1.
8067 (try_font_list): Call try_alternative_families to try any family
8068 with the given registry.
8069
1661e56b
AS
80702003-08-09 Andreas Schwab <schwab@suse.de>
8071
f29181dc
AS
8072 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
8073
1661e56b
AS
8074 * print.c (print_string): Fix printing of multibyte string with
8075 nontrivial printcharfun.
8076
465aa50a
JD
80772003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8078
8079 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
8080
8081 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
8082
e430e5ba
KH
80832003-07-31 Kenichi Handa <handa@m17n.org>
8084
8085 * process.c (read_process_output): Return the actually read bytes
8086 instead of the result of decoding.
8087
97e7188e
KH
80882003-07-31 Kenichi Handa <handa@m17n.org>
8089
8090 * xterm.h (struct x_bitmap_record): New member have_mask.
8091
8092 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
8093 to 0.
8094 (x_create_bitmap_from_file): Likewise.
8095 (x_destroy_bitmap): Check have_mask member before freeing a mask.
8096 (x_destroy_all_bitmaps): Likewise.
8097 (x_create_bitmap_mask): Set have_mask member to 1.
8098
b53094d6
RS
80992003-07-30 Richard M. Stallman <rms@gnu.org>
8100
8101 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
8102
631f2082
JD
81032003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8104
8105 * gtkutil.c (xg_mark_data): Update calls to mark_object.
8106
c855f2ca
RS
81072003-07-29 Richard M. Stallman <rms@gnu.org>
8108
8109 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
8110 Conditionalize XIM code on HAVE_XIM.
8111
8112 * fns.c (Fclear_string): New function.
8113 (syms_of_fns): defsubr it.
8114
b6189c3b 81152003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
17e6d491 8116
0930c1a1 8117 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
17e6d491 8118
29ea8ae9
SM
81192003-07-22 Stefan Monnier <monnier@cs.yale.edu>
8120
8121 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
8122
8123 * buffer.c (delete_all_overlays): New function.
8124 * buffer.h (delete_all_overlays): Declare.
8125 * coding.c (run_pre_post_conversion_on_str):
8126 * print.c (temp_output_buffer_setup):
8127 * fileio.c (Finsert_file_contents):
8128 * minibuf.c (get_minibuffer): Use it.
8129
1dd7ccf2
AC
81302003-07-22 Andrew Choi <akochoi@shaw.ca>
8131
8132 * unexmacosx.c (unexec_regions_sort_compare):
8133 (unexec_regions_merge): New functions. Sort and merge unexec
8134 regions before dumping them.
8135
f57bd967
DL
81362003-07-22 Dave Love <fx@gnu.org>
8137
8138 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
8139
7cdee936
SM
81402003-07-21 Stefan Monnier <monnier@cs.yale.edu>
8141
8142 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
8143 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
8144 MARKBIT as the gcmarkbit for strings.
8145
e50886d3
RS
81462003-07-21 Richard M. Stallman <rms@gnu.org>
8147
8148 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
8149
29ea8ae9 8150 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
e50886d3
RS
8151 (syms_of_fns): Corresponding change.
8152
8153 * alloc.c (syms_of_alloc): Doc fixes.
8154
81552003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
8156
8157 * s/netbsd.h: Use -Wl syntax.
8158
fdc39b59
RS
81592003-07-17 Richard M. Stallman <rms@gnu.org>
8160
8161 * xterm.c (xim_initialize): Redo 6/24 change.
8162
9c53385f
SM
81632003-07-15 Stefan Monnier <monnier@cs.yale.edu>
8164
8165 * buffer.c (copy_overlays): Use EMACS_INT for positions.
8166 (Fswitch_to_buffer): Don't signal an error when switching to the same
8167 buffer in a dedicated window.
8168
8169 * alloc.c: Use bitmaps for cons, as was done for floats.
8170 (init_float, init_cons): Let the normal code allocate the first block.
8171 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
8172 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
8173 New macros.
8174 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
8175 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
8176 (live_cons_p): Check the pointer is not past the `conses' array.
8177 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
8178 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
8179 (survives_gc_p): Use CONS_MARKED_P and simplify.
8180 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
8181
dde13196
PE
81822003-07-13 Paul Eggert <eggert@twinsun.com>
8183
8184 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
8185 puts it into BSS instead, at least on Solaris 8 and 9.
8186 This is a valid optimization, and it may occur on other platforms,
8187 so Emacs should not assume that initializing a static variable to
8188 zero puts it into data.
8189 * alloc.c (pure, staticvec):
8190 Initialize these arrays to nonzero, so that they're not
8191 put into BSS by that optimization.
8192
a801bc34
SM
81932003-07-13 Stefan Monnier <monnier@cs.yale.edu>
8194
8195 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
8196 (lisp_align_malloc): Use posix_memalign is available.
8197 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
8198 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
8199 for consistency. Update users.
8200
0c8b2afa
RS
82012003-07-13 Richard M. Stallman <rms@gnu.org>
8202
8203 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
8204
668c2ab0
JB
82052003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
8206
8207 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
8208 and use the Gtk+ function gtk_window_icon_from_file if available.
8209
8210 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
8211 handle mask of bitmaps.
8212 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
8213 mask property.
8214 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
8215
8216 * xterm.h (xg_set_icon): New function.
8217
800bebe3
RS
82182003-07-12 Paul Eggert <eggert@twinsun.com>
8219
8220 * unexelf.c (unexec): Consider a section to precede the .bss
8221 section if its addresses overlap that of .bss.
8222
69e38995
RS
82232003-07-12 Richard M. Stallman <rms@gnu.org>
8224
8225 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
8226
8227 * config.in (HAVE_CRTIN): Add #undef.
8228 (INLINE): Really inline only if OPTIMIZE is defined.
8229
8230 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
8231 END_FILES_1.
8232 (START_FILES_1, END_FILES_1): New macros (conditional).
a801bc34 8233 (LD_SWITCH_SYSTEM_TEMACS): Define.
69e38995
RS
8234
8235 * s/openbsd.h: Don't include bsd4-3.h.
a801bc34
SM
8236 (TERMINFO): Define.
8237 (LIBS_TERMCAP): Define.
8238 (LD_SWITCH_SYSTEM): Define (two definitions).
69e38995
RS
8239
8240 * xfns.c: Include libpng/png.h instead of png.h.
8241
f1d0c238
AS
82422003-07-11 Andreas Schwab <schwab@suse.de>
8243
8244 * buffer.c (modify_overlay): Update prototype.
8245 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
8246 Likewise.
8247
5f6bf5fe
SM
82482003-07-09 Stefan Monnier <monnier@cs.yale.edu>
8249
8250 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
8251 (struct interval): Move to intervals.h.
8252 (struct Lisp_Marker): Use EMACS_INT for position info.
8253 (forward_point): Remove prototype of defunct function.
8254 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
8255 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
8256 (syms_of_textprop, set_text_properties): Remove prototypes that are
8257 already in intervals.h.
8258
8259 * intervals.h (struct interval): Move from lisp.h.
8260 Use EMACS_INT for position and size info.
8261
8262 * coding.c: Include intervals.h for Fset_text_properties.
8263
8264 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
8265 position and length information.
8266
2765b457
SM
82672003-07-09 Stefan Monnier <monnier@cs.yale.edu>
8268
8269 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
8270 position and length information.
8271
2410d73a
SM
82722003-07-09 Stefan Monnier <monnier@cs.yale.edu>
8273
8274 Change overlays_after and overlays_before so the overlays themselves
8275 are linked into lists, rather than using cons cells. After all each
8276 Lisp_Misc already occupies 5 words, so we can add a `next' field to
8277 Lisp_Overlay for free and save up one cons cell per overlay (not
8278 to mention one indirection when traversing the list of overlay).
8279
8280 * lisp.h (struct Lisp_Overlay): New field `next'.
8281
8282 * buffer.h (struct buffer): Change overlays_before and overlays_after
8283 from Lisp lists of overlays to pointers to overlays.
8284
8285 * buffer.c (overlay_strings, recenter_overlay_lists):
8286 Fix typo in eassert in last commit.
8287 (unchain_overlay): New function.
8288 (add_overlay_mod_hooklist): Use AREF.
8289 (copy_overlays, reset_buffer, overlays_at, overlays_in)
8290 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
8291 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
8292 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
8293 (report_overlay_modification, evaporate_overlays, init_buffer_once):
8294 Adjust to new type of overlays_(before|after).
8295
8296 * alloc.c (mark_object): Mark the new `next' field of overlays.
8297 (mark_buffer): Manually mark the overlays_(after|before) fields.
8298
8299 * coding.c (run_pre_post_conversion_on_str):
8300 * editfns.c (overlays_around):
8301 * xdisp.c (load_overlay_strings):
8302 * fileio.c (Finsert_file_contents):
8303 * indent.c (current_column):
8304 * insdel.c (signal_before_change, signal_after_change):
8305 * intervals.c (set_point_both):
8306 * print.c (temp_output_buffer_setup): Use new type for
8307 overlays_(before|after).
8308
04812929
SM
83092003-07-08 Stefan Monnier <monnier@cs.yale.edu>
8310
8311 * buffer.c (report_overlay_modification): Don't run hooks while
8312 traversing the list of overlays.
8313
8314 * buffer.h (struct buffer): Use an int for overlay_center.
8315 (overlays_at, evaporate_overlays, recenter_overlay_lists)
8316 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
8317
8318 * buffer.c (reset_buffer, recenter_overlay_lists)
8319 (adjust_overlays_for_insert, adjust_overlays_for_delete)
8320 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
8321 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
8322 (overlays_at, evaporate_overlays, recenter_overlay_lists)
8323 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
8324
8325 * xdisp.c (fast_find_position): Remove unused var.
8326
8327 * cmds.c (Qexpand_abbrev): New sym.
8328 (syms_of_cmds): Initialize it.
8329 (internal_self_insert): Use it to call expand-abbrev.
8330
2e7ecf15
KS
83312003-07-09 Kim F. Storm <storm@cua.dk>
8332
f9711de4 8333 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if Emacs
2e7ecf15 8334 was configured with --without-xim.
42f81f64 8335 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
2e7ecf15 8336
c6de56a0
RS
83372003-07-07 Richard M. Stallman <rms@gnu.org>
8338
8339 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
8340
8341 * alloc.c (Fgarbage_collect): Doc fix.
8342
b6189c3b 83432003-07-07 Nozomu Ando <nand@mac.com>
b93fb365
KH
8344
8345 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
8346
bfe1a3f7
SM
83472003-07-06 Stefan Monnier <monnier@cs.yale.edu>
8348
04812929
SM
8349 * minibuf.c (read_minibuf): UNGCPRO before returning.
8350 (Ftry_completion, Fall_completions): Doc fix.
8351
bfe1a3f7
SM
8352 * alloc.c (live_float_p): Check that p is not past the `floats' array,
8353 now that `floats' is not the last element of the struct any more.
8354
ee79d1aa
JR
83552003-07-06 Jason Rumney <jasonr@gnu.org>
8356
8357 * w32term.h (ClipboardSequence_Proc): New type.
8358
8359 * w32fns.c (clipboard_sequence_fn): New variable.
8360 (globals_of_w32fns): Initialize it.
8361
8362 * w32select.c (last_clipboard_sequence_number): New variable.
8363 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
8364 number if possible.
8365
49723c04
SM
83662003-07-06 Stefan Monnier <monnier@cs.yale.edu>
8367
4698665f
SM
8368 * m/amdx86-64.h (MARKBIT):
8369 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
8370 MARKBIT and ARRAY_MARK_FLAG any more.
8371
8372 * m/hp800.h (XSETMARKBIT):
8373 * m/sr2k.h (XSETMARKBIT):
8374 * lisp.h (XSETMARKBIT): Remove unused macro.
8375
49723c04
SM
8376 * lisp.h (mark_object): Change prototype.
8377
8378 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
8379 (last_marked): Change accordingly.
8380 (mark_interval, mark_maybe_object, mark_maybe_pointer)
8381 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
8382 (mark_buffer): Update calls to mark_object.
8383
8384 * bytecode.c (mark_byte_stack):
8385 * fns.c (sweep_weak_table):
8386 * keyboard.c (mark_kboards): Update calls to mark_object.
8387
1d660eca
JR
83882003-07-06 Jason Rumney <jasonr@gnu.org>
8389
8390 * alloc.c (struct ablock): Only include padding when there is some.
8391
618b5ae4
SM
83922003-07-04 Stefan Monnier <monnier@cs.yale.edu>
8393
8394 * alloc.c (ALIGN): Add casts to simplify usage.
8395 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
8396 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
8397 (struct ablock, struct ablocks): New types.
8398 (free_ablock): New global var.
8399 (lisp_align_malloc, lisp_align_free): New functions.
8400 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
8401 (struct float_block): Reorder and add gcmarkbits.
8402 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
8403 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
8404 (init_float, make_float): Use lisp_align_malloc.
8405 (free_float, live_float_p): Don't use `type' any more.
8406 (make_float): Use FLOAT_UNMARK to access to mark bit.
8407 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
8408 Use FLOAT_MARKED_P to access the mark bit.
8409 (pure_alloc): Simplify use of ALIGN.
8410 (mark_object): Use FLOAT_MARK to access the mark bit.
8411 (gc_sweep): Use new macros to access the float's mark bit.
8412 (init_alloc_once): Init free_ablock.
8413
8414 * lisp.h (struct Lisp_Float): Remove unused field `type'.
8415
3ef06d12
SM
84162003-06-27 Stefan Monnier <monnier@cs.yale.edu>
8417
8418 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
8419 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
8420 (allocate_buffer): Move.
8421 (string_bytes): Don't mask markbit of `size_byte'.
8422 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
8423 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
8424 Use the `size' field of buffers (rather than the `name' field) for
8425 the mark bit, as is done for all other vectorlike objects.
8426 Use the new macros to access the mark bit of vectorlike objects.
8427
e81043aa
RS
84282003-06-26 Richard M. Stallman <rms@gnu.org>
8429
8430 * puresize.h (BASE_PURESIZE): Increment base size.
8431
8432 * xdisp.c (fast_find_position): Enable Gerd's new definition.
8433
8434 * xterm.c (xim_initialize): Undo previous change.
8435
2d0834cc
SM
84362003-06-26 Stefan Monnier <monnier@cs.yale.edu>
8437
8438 * alloc.c (survives_gc_p): Simplify.
8439
8440 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
8441
8442 * window.c (Fset_window_dedicated_p): Simplify.
8443 (display_buffer_1): Don't raise the win from which minibuf was entered.
8444 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
8445 (Fminibuffer_selected_window): Simplify.
8446
8447 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
8448
8449 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
8450 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
8451
8452 * insdel.c (check_markers, adjust_markers_for_delete)
8453 (adjust_markers_for_insert, adjust_markers_for_replace)
8454 (prepare_to_modify_buffer, RESTORE_VALUE):
8455 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
8456 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
8457 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
8458 * alloc.c (Fmake_marker, free_marker, gc_sweep):
8459 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
8460 * editfns.c (save_excursion_restore, transpose_markers):
8461 * window.c (delete_window):
8462 * xdisp.c (message_dolog): Update for new types.
8463
d54ae3d8
JD
84642003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8465
a5f696ac
JD
8466 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
8467 (realize_default_face): Use default_face_done_p for the force_p
2d0834cc 8468 argument to set_lface_from_font_name. Set default_face_done_p to one.
a5f696ac
JD
8469
8470 * frame.c (make_frame): Initialize default_face_done_p.
8471
8472 * frame.h (struct frame): Add default_face_done_p.
8473
d54ae3d8
JD
8474 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
8475 will be defined.
8476
2336fe58
SM
84772003-06-25 Stefan Monnier <monnier@cs.yale.edu>
8478
8479 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
8480 Initialize the new field `gcmarkbit'.
8481 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
8482 (mark_interval_tree): Don't mark the tree separately from the nodes.
8483 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
8484 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
8485 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
8486
8487 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
8488 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
8489 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
8490 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
8491 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
8492
bcea31c2
DL
84932003-06-24 Dave Love <fx@gnu.org>
8494
8495 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
8496
8497 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
8498 from gnulib.
8499
2601f59e
RS
85002003-06-21 Richard M. Stallman <rms@gnu.org>
8501
8502 * fileio.c (Fwrite_region): Alternate messages
8503 for append and partial write.
8504
8505 * keyboard.c (read_key_sequence): When converting upcase fn key to
8506 downcase, update fkey and keytran so `backspace' gets translated.
8507
8508 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
8509
8510 * process.c (wait_reading_process_input): Don't signal SIGIO
8511 in batch mode.
8512
b5d2c621
KH
85132003-06-17 Kenichi Handa <handa@m17n.org>
8514
8515 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
8516 composite.h.
8517
8518 * xselect.c: Don't include charset.h, coding.h, composite.h.
8519 (Qforeign_selection): New variable.
8520 (syms_of_xselect): Intern and static it.
8521 (selection_data_to_lisp_data): Return a unibyte string made from
8522 data with `foreign-selection' text property.
8523
6793bc63
SM
85242003-06-15 Stefan Monnier <monnier@cs.yale.edu>
8525
8526 * termhooks.h (EVENT_INIT): New macro.
8527
8528 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
8529
8530 * alloc.c (mark_kboards): Move to keyboard.c.
8531
8532 * keyboard.c (record_asynch_buffer_change, read_avail_input):
8533 * xterm.c (x_dispatch_event):
8534 * xmenu.c (find_and_call_menu_selection):
8535 * xdisp.c (handle_tool_bar_click):
8536 * w32menu.c (menubar_selection_callback):
8537 * sysdep.c (kbd_input_ast, read_input_waiting):
8538 * msdos.c (dos_rawgetc):
8539 * macterm.c (mac_check_for_quit_char):
8540 * macmenu.c (menubar_selection_callback):
8541 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
8542 data to kbd_buffer_store_event.
8543
b3ea810c
KS
85442003-06-15 Kim F. Storm <storm@cua.dk>
8545
8546 * xdisp.c (x_fix_overlapping_area): Always use area relative X
6793bc63 8547 to fix redisplay problem with tall characters (such as \e,AC\e(B).
b3ea810c 8548
b8f75eda
KG
85492003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
8550
8551 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
8552
ba92ce48
KH
85532003-06-12 Kenichi Handa <handa@m17n.org>
8554
8555 * fileio.c (Fwrite_region): Save and restore restriction.
8556
b80263be
DL
85572003-06-12 Dave Love <fx@gnu.org>
8558
8559 * alloca.c (alloca): Declare arg as size_t.
8560
6793bc63
SM
8561 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
8562 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
b80263be 8563
b23c0a83
DL
85642003-06-11 Dave Love <fx@gnu.org>
8565
8566 * search.c (shrink_regexp_cache): Use xrealloc.
8567 (syms_of_search): Use xmalloc.
8568
700e47c2
KS
85692003-06-10 Kim F. Storm <storm@cua.dk>
8570
8571 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
8572 Adjust phys_cursor.x to be relative to window box, rather than
8573 text area before checking -- to ensure cursor is redrawn when
8574 exposing window.
8575 Note: This also fixes a similar (older) bug if display margins
8576 are present.
8577
f11aa0b2
KH
85782003-06-06 Kenichi Handa <handa@m17n.org>
8579
8580 * coding.c (encoding_buffer_size): If coding->type is
8581 coding_type_ccl, double magnification on CRLF encoding.
8582
3d143690
JR
85832003-06-06 Jason Rumney <jasonr@gnu.org>
8584
8585 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
8586 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
8587
8588 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
8589 Mac too.
8590
f16205ca
DL
85912003-06-05 Dave Love <fx@gnu.org>
8592
b23c0a83
DL
8593 * strftime.c: Merge changes from gnulib.
8594
f16205ca
DL
8595 * mktime.c (__mktime_internal): Merge changes from gnulib
8596 involving year 69 and dst2.
8597
8598 Changes to merge with gnulib version and be consistent with the
8599 autoconf test:
8600
6793bc63
SM
8601 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
8602 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
f16205ca
DL
8603 [HAVE_LOCALE_H]: Include locale.h.
8604 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
8605
9b87a0bc
KS
86062003-06-05 Kim F. Storm <storm@cua.dk>
8607
8608 * window.c (coordinates_in_window): Convert X and Y to window
8609 relative coordinates inside mode-line and header-line parts.
8610 Convert X and Y to margin area relative coordinates inside left
8611 and right display margin parts.
8612
5a8a15ec
JR
86132003-06-05 Jason Rumney <jasonr@gnu.org>
8614
8615 * w32fns.c (add_system_logical_colors_to_map): New function.
8616 (Fx_open_connection): Use it.
8617
01ed8ff1
SM
86182003-06-04 Stefan Monnier <monnier@cs.yale.edu>
8619
8620 * process.c (allocate_pty): Revert part of the previous patch.
8621 (Faccept_process_output): Simplify.
8622
b427b65d
JR
86232003-06-04 Jason Rumney <jasonr@gnu.org>
8624
8625 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
8626
8627 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
8628 (lispy_mouse_wheel_names): Remove.
8629 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
8630 Always define drag_and_drop_syms.
8631
8632 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
8633 WHEEL_EVENT events.
8634
914a8c47
SM
86352003-06-03 Stefan Monnier <monnier@cs.yale.edu>
8636
01ed8ff1
SM
8637 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
8638
914a8c47
SM
8639 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
8640
adcb132c
JD
86412003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8642
8643 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
8644 menu item label.
8645
be781fa7
RS
86462003-06-03 Richard M. Stallman <rms@gnu.org>
8647
8648 * window.c (Fwindow_edges): Doc fix.
8649 (Fwindow_pixel_edges, Fwindow_inside_edges)
8650 (Fwindow_inside_pixel_edges): New functions.
8651 (syms_of_window): defsubr them.
8652
8653 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
8654 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
8655
914a8c47
SM
86562003-06-02 Stefan Monnier <monnier@cs.yale.edu>
8657
8658 * dispnew.c (Fsit_for): Don't lie about the number of args.
8659
5b07197a
DL
86602003-06-02 Dave Love <fx@gnu.org>
8661
8662 * callproc.c: Use HAVE_FCNTL_H, not USG5.
8663 (syms_of_callproc) <process-environment>: Doc fix.
8664
8665 * doc.c: Use HAVE_FCNTL_H, not USG5.
8666
8667 * xfaces.c (font_rescale_ratio): Fix for K&R.
8668
8669 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
8670
8671 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
8672
8673 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
8674
8675 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
8676 (xg_create_frame_widgets): Use ENCODE_UTF_8.
8677
d7107586 8678 * xterm.c (Qutf_8): Move to coding.c
5b07197a
DL
8679
8680 * xmenu.c (ENCODE_MENU_STRING): New.
8681 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
8682 Use it.
8683
8684 * coding.h (ENCODE_UTF_8): New.
8685 (Qutf_8): Declare.
8686
8687 * coding.c (Qutf_8): New.
8688 (syms_of_coding): Intern it.
8689
8690 * fns.c: Doc fixes.
8691
7335b336
KH
86922003-06-02 Kenichi Handa <handa@m17n.org>
8693
8694 * buffer.c (Fset_buffer_multibyte): Fix previous change.
8695
914a8c47
SM
86962003-06-01 Stefan Monnier <monnier@cs.yale.edu>
8697
8698 * lread.c (openp): Make sure STR is a string.
8699
9862c135
JR
87002003-06-01 David Ponce <david@dponce.com>
8701
cab27d04 8702 * termhooks.h (enum event_kind): Add new WHEEL_EVENT event.
9862c135
JR
8703 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
8704
8705 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
8706 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
8707 (discard_mouse_events): Discard WHEEL_EVENT events too.
8708 (lispy_wheel_names, wheel_syms): New.
8709 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
cab27d04 8710 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX defined.
914a8c47 8711 (make_lispy_event): Add WHEEL_EVENT handler.
9862c135
JR
8712
8713 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
8714 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
8715 WHEEL_EVENT events.
8716
f984e73e
JPW
87172003-05-31 John Paul Wallington <jpw@gnu.org>
8718
8719 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
8720 timer are in lisp/emacs-lisp.
8721
1efcd78f
KH
87222003-05-31 Kenichi Handa <handa@m17n.org>
8723
458c8af4
KH
8724 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
8725 region when a buffer is changed to unibyte.
8726
1efcd78f
KH
8727 * charset.h (VALID_LEADING_CODE_P): New macro.
8728 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
8729
778e2804
KH
8730 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
8731 is nonzero, accept multibyte form of eight-bit-control chars.
8732 (decode_composition_emacs_mule): Likewise.
8733 (decode_coding_emacs_mule): Likewise.
8734 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
8735 multibyte form of eight-bit-control chars.
8736
8737 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
8738 (Finsert_file_contents): If coding-system-for-read is bound to
8739 Qauto_save_coding, use the coding system emacs-mule with special
8740 setting for recovering a file.
8741 (choose_write_coding_system): On auto saving, use the coding
8742 system emacs-mule with special setting for auto saving.
8743 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
8744
034060e4
KH
87452003-05-30 Kenichi Handa <handa@m17n.org>
8746
8747 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
8748 properly before calling ccl_driver.
8749
778e2804 8750 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
034060e4 8751
cab27d04 8752 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is nonzero.
034060e4
KH
8753 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
8754 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
8755
595f5aa5
GM
87562003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
8757
8758 * xfaces.c (realize_default_face): Do not abort if lface is
8759 non-existent - reverts change from 2003-05-19.
8760
103e0180
KH
87612003-05-29 Kenichi Handa <handa@m17n.org>
8762
8763 * coding.c (decode_coding_iso2022): Pay attention to the byte
8764 sequence of CTEXT extended segment, and retain those bytes as is.
8765
87662003-05-28 Kenichi Handa <handa@m17n.org>
8767
cab27d04 8768 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjust for the name change
103e0180
KH
8769 of CODING_REPLACEMENT_CHARACTER.
8770 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
8771 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
8772 check this flag on encoding.
cab27d04
SM
8773 (encode_coding_sjis_big5):
8774 Check CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
8775 (Fset_terminal_coding_system_internal):
8776 Set CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
8777 instead of setting CODING_FLAG_ISO_SAFE flag in terminal_coding.flags.
8778
8779 * coding.h (CODING_REPLACEMENT_CHARACTER): Rename from
103e0180
KH
8780 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
8781 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
8782
ff6a3bfb 87832003-05-28 Richard M. Stallman <rms@gnu.org>
45f266dc 8784
ff6a3bfb
RS
8785 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
8786
8787 * eval.c (unbind_to): Move init of this_binding to separate statement.
45f266dc 8788
1963c428
KS
87892003-05-28 Kim F. Storm <storm@cua.dk>
8790
8791 * xdisp.c (expose_window): Fix error in calculation of
8792 window relative coordinates of area to redisplay.
8793
2b5d4601
JR
87942003-05-27 Jason Rumney <jasonr@gnu.org>
8795
8796 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
8797
1c64a4a2
JB
87982003-05-27 David Ponce <david@dponce.com>
8799
8800 Handle W32 mouse wheel events as mouse click events, like in X.
8801
8802 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
8803 MOUSE_WHEEL_EVENT anymore.
8804
8805 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
8806 Scrolling down/up the mouse wheel is respectively mapped to mouse
8807 button 4 and 5.
8808 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
8809 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
8810 WM_MOUSEWHEEL events.
8811
2d031b89
AS
88122003-05-27 Andreas Schwab <schwab@suse.de>
8813
20464fdf
AS
8814 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
8815
2d031b89
AS
8816 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
8817 partially visible line.
8818
8819 * alloc.c (Fgarbage_collect): Fix last change.
8820
97bc76d4
JPW
88212003-05-26 John Paul Wallington <jpw@gnu.org>
8822
8823 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
8824
56613f06
SM
88252003-05-25 Stefan Monnier <monnier@cs.yale.edu>
8826
8827 * window.c (Fset_window_buffer): Add type of `keep_margins'.
8828 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
8829
8830 * window.h (window_box_text_cols): Declare.
8831
8832 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
8833 (x_draw_vertical_border): Remove unused var `f'.
8834
8835 * xfaces.c (build_scalable_font_name): Remove `unused var
8836 pixel_size' warning.
8837
8838 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
8839
8840 * unexelf.c (unexec): Remove `unused var n' warning.
8841
8842 * strftime.c (my_strftime_localtime_r): Remove `defined but
8843 unused' warning.
8844
8845 * process.c (allocate_pty): Remove `unused var stb' and
8846 `cp might be used uninitialized' warnings.
8847
8848 * dispnew.c (mode_line_string): Remove unused var `f'.
8849
8850 * coding.c (find_safe_codings): Remove unused var `i'.
8851
8852 * bytecode.c (Fbyte_code): Remove `unused val' warning.
8853
8854 * buffer.c (Fkill_buffer): Remove unused var `list'.
8855
8856 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
8857
93421a1f
JD
88582003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8859
8860 * frame.c (make_frame): Condition want_fullscreen with
8861 HAVE_WINDOW_SYSTEM.
8862
c4b8aebc
JB
88632003-05-25 Juanma Barranquero <lektu@terra.es>
8864
8865 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
8866 (Fwindow_scroll_bars): Fix typo in docstring.
8867
0416870b
KS
88682003-05-24 Kim F. Storm <storm@cua.dk>
8869
8870 The following changes serve several purposes:
8871
8872 1) Swap the position of fringes and display margins in windows, i.e.
8873 the fringes are now displayed between the margins and the text area
8874 (by default).
8875
8876 2) Allow fringe and scroll bar parameters to be set per-buffer and
8877 per-window (like display margins). Such settings are now stored
8878 in window configurations, preserved when frames are resized, and
9018a88e 8879 copied when windows are split vertically or horizontally.
0416870b
KS
8880 Several bugs related to display margins have been fixed.
8881
8882 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
9018a88e 8883
0416870b
KS
8884 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
8885 rather than FRAME_WIDTH (FRAME_FONT (f)).
8886
8887 5) Introduce a consistent naming of variables, members and macros
8888 depending on whether their value is measured in pixels or in
8889 canonical columns/lines. Pixel dimensions are named *_width and
8890 *_height, while canonical columns/lines are named *_cols and
8891 *_lines. Pixel positions are named *_x and *_y, while column/line
8892 positions are named *_col and *_line.
8893
8894 6) Consolidate more of the X, W32, and MAC gui code by moving
8895 common data into struct frame, and generalize it for the non-gui
8896 case by using suitable defaults.
8897
8898 7) Cleanup and consolidate the macros controlling frame and window
8899 layout into frame.h and window.h, and generalize the use of the
8900 various window_box_* functions (enhanced to handle the new fringe
8901 position and the per-window fringe and scroll bar settings).
8902
8903 * frame.h (struct frame): Rename members height to text_lines,
8904 width to text_cols, window_height to total_lines, window_width to
8905 total_cols, new_height to new_text_lines, new_width to
8906 new_text_cols. All uses changed.
8907 (struct frame): New members which consolidate common members of
8908 x_output, w32_output, and mac_output structures: left_pos,
8909 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
8910 win_gravity, size_hint_flags, border_width, internal_border_width,
8911 line_height, fringe_cols, left_fringe_width, right_fringe_width,
8912 want_fullscreen. All uses changed.
8913 (struct frame): New member column_width contaning the canonical
8914 column width, analogue to line_height. All uses changed.
8915 (struct frame): Rename members scroll_bar_pixel_width to
8916 config_scroll_bar_width, and scroll_bar_cols to
8917 config_scroll_bar_cols. All uses changed.
8918 (struct frame): New member scroll_bar_actual_width which
8919 consolidates and renames the vertical_scroll_bar_extra member of
8920 x_output, w32_output, and mac_output structures. All uses changed.
cab27d04 8921 (FRAME_PIXEL_HEIGHT): Rename from PIXEL_HEIGHT and moved
0416870b
KS
8922 from x/w32/macterm.h files. All uses changed. Also change code
8923 which referred to f->output_data...->pixel_height.
cab27d04 8924 (FRAME_PIXEL_WIDTH): Rename from PIXEL_WIDTH and moved
f63fd14e 8925 from x/w32/macterm.h files. All uses changed. Also change code
0416870b 8926 which referred to f->output_data...->pixel_width.
cab27d04 8927 (FRAME_LINES): Rename from FRAME_HEIGHT. All uses changed.
0416870b 8928 Also change code which referred to f->height.
cab27d04 8929 (FRAME_COLS): Rename from FRAME_WIDTH. All uses changed.
0416870b
KS
8930 Also change code which referred to f->width.
8931 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
8932 to update new_text_lines and new_text_cols members directly.
cab27d04 8933 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Rename from
0416870b 8934 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
cab27d04 8935 (FRAME_CONFIG_SCROLL_BAR_COLS): Rename from
0416870b
KS
8936 FRAME_SCROLL_BAR_COLS. All uses changed.
8937 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
cab27d04 8938 Rename from FRAME_LEFT_SCROLL_BAR_WIDTH and
0416870b
KS
8939 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
8940 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
8941 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
cab27d04
SM
8942 (FRAME_TOTAL_COLS): Rename from FRAME_WINDOW_WIDTH.
8943 (SET_FRAME_COLS): Rename from SET_FRAME_WIDTH.
8944 (FRAME_TOTAL_COLS_ARG): Rename from FRAME_WINDOW_WIDTH_ARG.
0416870b
KS
8945 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
8946 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
cab27d04
SM
8947 (FRAME_LINE_HEIGHT): Rename from CANON_Y_UNIT.
8948 Unconditionally return line_height member (it now has proper value
8949 also for non-window frames).
8950 (FRAME_COLUMN_WIDTH): Rename from CANON_X_UNIT. Unconditionally
0416870b
KS
8951 return new column_width member (rather than the default font width).
8952 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
cab27d04 8953 (FRAME_RIGHT_FRINGE_WIDTH): Rename from FRAME_X_... and moved
0416870b
KS
8954 from x/w32/macterm.h files. Unconditionally return corresponding
8955 member of frame structure (they now have proper values also for
8956 non-window frames).
cab27d04 8957 (FRAME_TOTAL_FRINGE_WIDTH): Rename from FRAME_FRINGE_WIDTH.
0416870b
KS
8958 Calculate return value from left and right widths.
8959 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
8960 internal_border_width member (has proper value for non-window frame).
cab27d04
SM
8961 (FRAME_PIXEL_X_FROM_CANON_X): Rename from PIXEL_X_FROM_CANON_X.
8962 (FRAME_PIXEL_Y_FROM_CANON_Y): Rename from PIXEL_Y_FROM_CANON_Y.
8963 (FRAME_CANON_X_FROM_PIXEL_X): Rename from CANON_X_FROM_PIXEL_X.
8964 (FRAME_CANON_Y_FROM_PIXEL_Y): Rename from CANON_Y_FROM_PIXEL_Y.
8965 (FRAME_LINE_TO_PIXEL_Y): Rename from CHAR_TO_PIXEL_ROW,
0416870b 8966 consolidated from xterm.h, macterm.h, and w32term.h.
cab27d04 8967 (FRAME_COL_TO_PIXEL_X): Rename from CHAR_TO_PIXEL_COL,
0416870b 8968 consolidated from xterm.h, macterm.h, and w32term.h.
cab27d04 8969 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Rename from
0416870b 8970 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
cab27d04 8971 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Rename from
0416870b 8972 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
cab27d04 8973 (FRAME_PIXEL_Y_TO_LINE): Rename from PIXEL_TO_CHAR_ROW
0416870b 8974 consolidated from x/mac/w32term.h.
cab27d04 8975 (FRAME_PIXEL_X_TO_COL): Rename from PIXEL_TO_CHAR_COL
0416870b 8976 consolidated from x/mac/w32term.h.
cab27d04 8977 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Rename from
0416870b 8978 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
cab27d04 8979 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Rename from
0416870b
KS
8980 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
8981
8982 * window.h (struct window): Rename members left to left_col,
8983 top to top_line, height to total_lines, width to total_cols,
8984 left_margin_width to left_margin_cols, right_margin_width to
8985 right_margin_cols, orig_height to orig_total_lines, orig_top to
8986 orig_top_line. All uses changed.
8987 (struct window): New members left_fringe_width, right_fringe_width,
8988 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
8989 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
8990 New macros primarily used to simplify other macros.
8991 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
8992 referred to XINT (w->width).
8993 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
8994 referred to XINT (w->height).
8995 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
8996 referred to XINT (w->width) * canon_x_unit.
8997 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
8998 referred to XINT (w->height) * canon_y_unit.
8999 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
9000 referred to XINT (w->left).
cab27d04 9001 (WINDOW_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_EDGE. Change
0416870b
KS
9002 all uses and code that referred to XINT (w->left) + XINT (w->width).
9003 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
9004 referred to XINT (w->top).
9005 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
9006 referred to XINT (w->top) + XINT (w->height).
9007 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
9008 referred to XINT (w->left) * canon_x_unit.
9009 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
9010 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
9011 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
9012 referred to XINT (w->top) * canon_y_unit.
9013 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
9014 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
9015 (WINDOW_LEFTMOST_P): New macro.
cab27d04 9016 (WINDOW_BOX_LEFT_EDGE_COL): Rename from WINDOW_LEFT_MARGIN.
0416870b 9017 All uses changed.
cab27d04 9018 (WINDOW_BOX_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_MARGIN.
0416870b 9019 All uses changed.
cab27d04 9020 (WINDOW_BOX_LEFT_EDGE_X): Rename from
0416870b
KS
9021 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
9022 Do not exclude left fringe width.
cab27d04 9023 (WINDOW_BOX_RIGHT_EDGE_X): Rename from
0416870b
KS
9024 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
9025 Do not exclude fringe widths.
9026 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
9027 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
9028 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
9029 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
9030 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
9031 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
9032 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
9033 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
9034 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
9035 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
9036 New macros. Change code which referenced corresponding
9037 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
9038 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
9039 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
9040 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
9041 allow per-window scroll-bar settings.
9042 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
9043 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
9044 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
9045 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
9046 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
9047 FRAME_SCROLL_BAR_WIDTH.
9048 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
9018a88e 9049 (WINDOW_SCROLL_BAR_AREA_X): New macros.
cab27d04 9050 (WINDOW_HEADER_LINE_HEIGHT): Rename from
0416870b 9051 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
cab27d04 9052 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Rename from
0416870b 9053 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
cab27d04 9054 (WINDOW_BOX_TEXT_HEIGHT): Rename from
0416870b
KS
9055 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
9056 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
9057 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
cab27d04
SM
9058 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Move here from dispextern.h.
9059 (WINDOW_LEFT_MARGIN_WIDTH): Rename from
0416870b 9060 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
cab27d04 9061 (WINDOW_RIGHT_MARGIN_WIDTH): Rename from
0416870b
KS
9062 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
9063 (window_from_coordinates): Update prototype.
9064 (Fset_window_buffer): Update EXFUN.
9065 (set_window_buffer): Update prototype.
9018a88e 9066
0416870b 9067 * dispextern.h (struct glyph_matrix): Rename members window_left_x
9018a88e 9068 to window_left_col, window_top_y to window_top_line. All uses
0416870b
KS
9069 changed.
9070 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
9071 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
9072 internal_border_width is now set to 0 for non-window frames.
9073 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
9074 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
9075 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
9076 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
9077 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
9078 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
9079 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
9080 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
9081 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
9018a88e 9082 Move to window.h and renamed [see window.h changes].
0416870b
KS
9083 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
9084 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
9018a88e
SM
9085 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
9086 Use WINDOW_TOTAL_LINES.
0416870b
KS
9087 (frame_update_line_height): Remove prototype.
9088
9089 * buffer.h (struct buffer): Rename members measured in columns:
9090 left_margin_width to left_margin_cols, right_margin_width to
9091 right_margin_cols. All uses changed.
9092 New members left_fringe_width, right_fringe_width,
9093 fringes_outside_margins for per-buffer fringe settings.
9094 New members scroll_bar_width and vertical_scroll_bar_type for
9095 per-buffer scroll bar settings.
9096
9097 * buffer.c (init_buffer_once): Set buffer_defaults and
9098 buffer_local_flags for new buffer-local variables
9099 left_fringe_width, right_fringe_width, fringes_outside_margins,
9100 scroll_bar_width, and vertical_scroll_bar_type.
9101 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
9102 default-* variables for them.
9103
9104 * dispnew.c: Make (many) trivial substitutions for renamed and
9105 new macros in dispextern.h, frame.h and window.h.
9106 (mode_line_string): No need to adjust width for mode lines, as it
9107 is already adjusted by the caller.
9108 (marginal_area_string): Handle fringes inside/outside margins.
9018a88e 9109
0416870b
KS
9110 * frame.c: Make (many) trivial substitutions for renamed and
9111 new macros in dispextern.h, frame.h and window.h.
9112 (make_frame): Initialize left_fringe_width, right_fringe_width,
9113 fringe_cols, scroll_bar_actual_width, border_width,
9114 internal_border_width, column_width, line_height, x_pixels_diff,
9115 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
9116 members with values suitable for a non-window frames.
9117
9118 * gtkutil.c: Make (many) trivial substitutions for renamed and
9119 new macros in dispextern.h, frame.h and window.h.
9018a88e 9120
0416870b
KS
9121 * indent.c: Make (few) trivial substitutions for renamed and
9122 new macros in dispextern.h, frame.h and window.h.
9123
9124 * keyboard.c: Make (many) trivial substitutions for renamed and
9125 new macros in dispextern.h, frame.h and window.h.
9126 (make_lispy_event): Use window positions returned from
9127 window_from_coordinates when constructing the lisp event for
9128 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
9129 (incorrect) values locally.
9130 (make_lispy_movement): Use window positions returned from
9131 window_from_coordinates when constructing the lisp event, rather
9132 than calculating (incorrect) values locally.
9133
9134 * scroll.c: Make (some) trivial substitutions for renamed and
9135 new macros in dispextern.h, frame.h and window.h.
9136
9137 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
9138 scroll-bars.
9139
9140 * sysdep.c: Make (few) trivial substitutions for renamed and
9141 new macros in dispextern.h, frame.h and window.h.
9142
9143 * term.c: Make (some) trivial substitutions for renamed and
9144 new macros in dispextern.h, frame.h and window.h.
9145
9146 * widget.c: Make (few) trivial substitutions for renamed and
9147 new macros in dispextern.h, frame.h and window.h.
9148
9149 * window.c: Make (many) trivial substitutions for renamed and
9150 new macros in dispextern.h, frame.h and window.h.
9151 (make_window): Initialize new members
9152 left_margin_cols, right_margin_cols, left_fringe_width,
9153 right_fringe_width, fringes_outside_margins, scroll_bar_width,
9154 and vertical_scroll_bar_type.
cab27d04 9155 (coordinates_in_window): Adapt to new fringe/margin positions
9018a88e 9156 and per-window fringes and scroll-bars.
0416870b 9157 Fix bug related to incorrectly adjusting coordinates by
9018a88e 9158 frame's internal_border_width (the effect normally negible since
0416870b
KS
9159 the internal_border_width is typically 0 or 1 pixel, but very
9160 noticeable for an internal_border_width of e.g. 25 pixels).
9161 Upon successful return (other than ON_NOTHING), the coordinates
9162 are now always properly converted to window relative for the
9163 given display element.
9164 (window_from_coordinates): Add new parameters wx and wy to
9165 return the window relative x and y position in the returned
9166 window and part. A null arg means, don't return the position.
9167 All callers changed.
9168 (adjust_window_margins): New function which may reduce the width
9169 of the display margins if a window's text area is too small after
9170 resizing or splitting windows.
9171 (size_window): Fix bug that did not account for display margin
9172 widths when checking the minimum width of a window; use
9173 adjust_window_margins.
9174 (set_window_buffer): Call Fset_window_fringes and
9175 Fset_window_scroll_bars to setup per-window elements.
9176 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
9177 existing display margin, fringe widths, and scroll bar settings
9018a88e
SM
9178 (e.g. after splitting a window or resizing the frame).
9179 All callers changed.
0416870b
KS
9180 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
9181 (Fsplit_window): Duplicate original window's display margin,
9182 fringe, and scroll-bar settings; then call Fset_window_buffer with
9183 KEEP_MARGINS non-nil. This fixes a bug which caused a split
9184 window to only preserve the display margins in one of the windows.
c4b8aebc 9185 When splitting horizontally, call adjust_window_margins on both
0416870b 9186 windows to ensure that the text area of the new windows is non too
f9711de4 9187 narrow. This fixes a bug which could cause Emacs to trap if the
0416870b
KS
9188 width of the split window was less than the width of the display
9189 margins.
cab27d04 9190 (window_box_text_cols): Rename from window_internal_width.
9018a88e 9191 All uses changed. Adapt to per-window fringes and scroll bars.
0416870b
KS
9192 Fix bug that caused vertical separator to be subtracted also on
9193 window frames. Fix another bug that did not reduce the returned
9194 value by the columns used for display margins.
9195 (window_scroll_line_based): Fix bug related to scrolling too much
9196 when display margins are present (implicitly fixed by the fix to
9197 window_box_text_cols).
9198 (scroll_left, scroll_right): Fix bug related to scrolling too far
9199 by default when display margins are present (implicitly fixed by
9200 the fix to window_box_text_cols).
9201 (struct saved_window): Rename members left to left_col, top to
9202 top_line, width to total_cols, height to total_lines, orig_top to
9203 orig_top_line, orig_height to orig_total_lines. All uses changed.
9204 New members left_margin_cols, right_margin_cols,
9205 left_fringe_width, right_fringe_width, fringes_outside_margins,
9206 scroll_bar_width, and vertical_scroll_bar_type for saving
9207 per-window display elements.
9208 (Fset_window_configuration): Restore display margins, fringes,
9209 and scroll bar settings. This fixes a bug which caused display
9210 margins to be discarded when saving and restoring a window
9211 configuration.
9212 (save_window_save): Save display margins, fringes, and scroll bar
9213 settings. This fixes a bug which caused display margins to be
9214 discarded when saving and restoring a window configuration.
9215 (Fset_window_margins): Do nothing if display margins are not
9216 really changed. Otherwise, call adjust_window_margins to ensure
9217 the text area doesn't get too narrow. This fixes a bug which
f9711de4 9218 could cause Emacs to trap if setting display margins wider than
0416870b
KS
9219 the width of the window.
9220 (Fset_window_fringes): New defun to allow user to specifically set
9221 this window's fringe widths and position vs. display margins.
cab27d04 9222 (Fwindow_fringes): New defun to return window's actual fringe settings.
0416870b
KS
9223 (Fset_window_scroll_bars): New defun to allow user to specifically
9224 set this window's scroll bar width and position.
9225 (Fwindow_scroll_bars): New defun to return window's actual scroll
9226 bar settings.
9227 (compare_window_configurations): Also compare display margins,
9228 fringes, and scroll bar settings.
9229 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
9230
9231 * xdisp.c: Make (many) trivial substitutions for renamed and
9232 new macros in dispextern.h, frame.h and window.h.
9233 (window_box_width): Adapt to per-window fringes and scroll bars,
f63fd14e 9234 and new fringe vs. display margin position. Note that returned
0416870b
KS
9235 value is no longer guaranteed to be a whole multiple of the frame
9236 column width, since per-window fringes may now be any width.
9237 (window_box_left_offset): New function like window_box_left, but
9238 value is relative to left border of window (rather than frame).
9239 (window_box_right_offset): New function like window_box_right,
9240 but value is relative to left border of window.
9241 (window_box_left): Adapt to per-window fringes and scroll bars,
9242 and new fringe vs. display margin position. Simplify by using
9243 WINDOW_LEFT_EDGE_X and window_box_left_offset.
9244 (window_box): Allow null args for unnecessary return values;
9245 change/simplify relevant callers.
9246 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
9018a88e
SM
9247 and new fringe vs. display margin position.
9248 Use window_box_left_offset and window_box_right_offset
0416870b 9249 (get_glyph_string_clip_rect): Adapt to per-window fringes and
9018a88e
SM
9250 scroll bars, and new fringe vs. display margin position.
9251 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
0416870b
KS
9252 (draw_fringe_bitmap): Rework to handle per-window fringes and new
9253 fringe vs. display margin position.
9254 (hscroll_window_tree): Use window_box_width instead of window_box.
a64387ee
JB
9255 (redisplay_window): Adapt to per-window scroll bars.
9256 (draw_glyphs): Rework to handle per-window fringes and scroll
9018a88e
SM
9257 bars, and new fringe vs. display margin position.
9258 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
a64387ee 9259 (x_clear_end_of_line): Adapt to per-window fringes and scroll
0416870b
KS
9260 bars, and new fringe vs. display margin position. Fix bug which
9261 increased total width of full_width rows by width of scroll bars
9262 although window's total width already includes that.
9263 (x_fix_overlapping_area): Simplify using window_box_left_offset.
9264 (expose_area): Simplify using window_box_left_offset.
9265 (x_draw_vertical_border): Handle per-window scroll bar settings,
9266 mixing windows with left, right and no scroll bars.
9267
9268 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
9269 where it's used in x_list_fonts (for clarity).
9270 (frame_update_line_height): Remove unused function; functionality
9271 is now done directly when setting the default font in x_set_font.
9272
9273 * xfns.c: Make (many) trivial substitutions for renamed and
9274 new macros in dispextern.h, frame.h and window.h.
9275
9276 * xmenu.c: Make (some) trivial substitutions for renamed and
9277 new macros in dispextern.h, frame.h and window.h.
9278
9279 * xterm.h (struct x_output): Move members left_pos, top_pos,
9280 border_width, pixel_height, pixel_width, line_height,
9281 internal_border_width, vertical_scroll_bar_extra,
9282 left_fringe_width, right_fringe_width, fringe_cols,
9283 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
9284 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
9285 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
9286 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
9287 (PIXEL_WIDTH, PIXEL_HEIGHT)
9288 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
cab27d04 9289 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
0416870b
KS
9290 frame.h and renamed [see frame.h changes].
9291 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
9292 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
cab27d04 9293 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
0416870b 9294 and renamed [see frame.h changes].
9018a88e 9295
0416870b
KS
9296 * xterm.c: Make (several) trivial substitutions for renamed and
9297 new macros in dispextern.h, frame.h and window.h.
cab27d04 9298 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
0416870b
KS
9299 (scroll_run): Adapt to new fringe position.
9300 (glyph_rect): Use window coordinates returned from
9301 window_from_coordinates rather than frame_to_window_pixel_xy.
9302 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
9303 scroll-bars.
9304 (handle_one_xevent): Simplify a USE_GTK conditional.
9305 (x_clip_to_row): Remove superfluous whole_line_p arg and code
9306 (fringes are now inside margins, i.e. always in the clipping area).
9307 All callers changed.
9308 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
9309 directly, then call compute_fringe_widths. Don't call
9310 frame_update_line_height.
9311
9312 * w32term.h (struct w32_output): Move members left_pos, top_pos,
9313 border_width, pixel_height, pixel_width, line_height,
9314 internal_border_width, vertical_scroll_bar_extra,
9315 left_fringe_width, right_fringe_width, fringe_cols,
9316 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
9317 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
9318 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
9319 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
9320 (PIXEL_WIDTH, PIXEL_HEIGHT)
9321 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
cab27d04 9322 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
0416870b
KS
9323 frame.h and renamed [see frame.h changes].
9324 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
9325 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
cab27d04 9326 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
0416870b 9327 and renamed [see frame.h changes].
9018a88e 9328
0416870b
KS
9329 * w32term.c: Make (several) trivial substitutions for renamed and
9330 new macros in dispextern.h, frame.h and window.h.
cab27d04 9331 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
0416870b
KS
9332 (glyph_rect): Use window coordinates returned from
9333 window_from_coordinates rather than frame_to_window_pixel_xy.
9334 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
9335 scroll-bars.
9336 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
9337 (fringes are now inside margins, i.e. always in the clipping area).
9338 All callers changed.
9339 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
9340 directly, then call compute_fringe_widths. Don't call
9341 frame_update_line_height.
9342
9343 * w32console.c: Make (few) trivial substitutions for renamed and
9344 new macros in dispextern.h, frame.h and window.h.
9345
9346 * w32fns.c: Make (many) trivial substitutions for renamed and
9347 new macros in dispextern.h, frame.h and window.h.
9348
9349 * w32menu.c: Make (few) trivial substitutions for renamed and
9350 new macros in dispextern.h, frame.h and window.h.
9351
9352 * macterm.h (struct mac_output): Move members left_pos, top_pos,
9353 border_width, pixel_height, pixel_width, line_height,
9354 internal_border_width, vertical_scroll_bar_extra,
9355 left_fringe_width, right_fringe_width, fringe_cols,
9356 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
9357 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
9358 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
9359 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
9360 (PIXEL_WIDTH, PIXEL_HEIGHT)
9361 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
cab27d04 9362 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
0416870b
KS
9363 frame.h and renamed [see frame.h changes].
9364 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
9365 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
cab27d04 9366 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
0416870b 9367 and renamed [see frame.h changes].
9018a88e 9368
0416870b
KS
9369 * macterm.c: Make (several) trivial substitutions for renamed and
9370 new macros in dispextern.h, frame.h and window.h.
cab27d04 9371 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
0416870b
KS
9372 (glyph_rect): Use window coordinates returned from
9373 window_from_coordinates rather than frame_to_window_pixel_xy.
9374 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
9375 scroll-bars.
9376 (x_clip_to_row): Remove superfluous whole_line_p arg and code
9377 (fringes are now inside margins, i.e. always in the clipping area).
9378 All callers changed.
9379 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
9380 directly, then call compute_fringe_widths. Don't call
9381 frame_update_line_height.
9382
9383 * macfns.c: Make (several) trivial substitutions for renamed and
9384 new macros in dispextern.h, frame.h and window.h.
9018a88e 9385 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
0416870b
KS
9386
9387 * macmenu.c: Make (few) trivial substitutions for renamed and
9388 new macros in dispextern.h, frame.h and window.h.
9389
9390 * msdos.h (struct x_output): Remove members left_pos, top_pos,
9391 and line_height, and use corresponding new members in struct
9392 frame. All uses changed.
9393 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
9394 superseeded by corresponding macros in frame.h.
9395
9396 * msdos.c: Make (several) trivial substitutions for renamed and
9397 new macros in dispextern.h, frame.h and window.h.
9398 (IT_note_mouse_highlight): Use updated window coordinates returned
9018a88e 9399 by window_from_coordinates, rather than adjusting them locally.
0416870b
KS
9400 (internal_terminal_init): No need to initialize line_height here;
9401 it now defaults to 1.
9402
9018a88e
SM
94032003-05-24 Stefan Monnier <monnier@cs.yale.edu>
9404
9405 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
9406 dropping `down' events.
9407
016bd3c0
AS
94082003-05-24 Andreas Schwab <schwab@suse.de>
9409
9410 * coding.c (find_safe_codings): Fix last change.
9411
4dacadcc
TTN
94122003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
9413
9414 * xfns.c (x_window): Fix typo from 2003-05-21 change.
9415
319830ce
SM
94162003-05-23 Stefan Monnier <monnier@cs.yale.edu>
9417
9018a88e
SM
9418 * xdisp.c (display_mode_element): Increase max depth.
9419 Simplify the error handling code. Use a different error string
9420 for the case where we hit the depth limit.
9421
319830ce
SM
9422 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
9423
9424 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
9425
94262003-05-21 Stefan Monnier <monnier@cs.yale.edu>
9427
9428 * intervals.c (get_local_map): Don't get char-property of previous
9429 point any more: get_pos_property already does it and better.
9430
c67de8ba
DL
94312003-05-21 Dave Love <fx@gnu.org>
9432
9433 [Merged from unicode branch.]
9434
9435 * xfns.c (x_window, x_window): Use use_xim.
9436
9437 * xterm.c (use_xim): Initialize.
9438 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
9439 (x_term_init): Maybe set use_xim.
9440
9441 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
9442
edd3ff1d
JR
94432003-05-21 Jason Rumney <jasonr@gnu.org>
9444
9445 * unexw32.c (_start): Remove _fmode initialization.
9446
9447 * emacs.c (main) [WINDOWSNT]: Move it here.
9448
463f55ee
DL
94492003-05-20 Dave Love <fx@gnu.org>
9450
9451 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
9452
af253914
RS
94532003-05-19 Richard M. Stallman <rms@gnu.org>
9454
9455 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
9456 as value for QCfont attribute.
9457 (realize_default_face): lface should already exist; crash if not.
9458 Specify 0 for FORCE_P when calling set_lface_from_font_name.
9459
9460 * frame.c (Fignore_event): Doc fix.
9461
1d211019
KH
94622003-05-19 Kenichi Handa <handa@m17n.org>
9463
9464 * coding.c (decode_coding_string): Handle post-read-conversion
9465 even if the coding doesn't require decoding.
9466
4dd68254
RS
94672003-05-18 Richard M. Stallman <rms@gnu.org>
9468
9469 * callproc.c (Fcall_process_region): Doc fix.
9470
14d87dc9
SM
94712003-05-17 Stefan Monnier <monnier@cs.yale.edu>
9472
deca5d96
SM
9473 * lread.c (Fload): Print a message if package is obsolete.
9474
14d87dc9
SM
9475 * window.c (Fselect_window): Add optional `norecord' arg.
9476 (select_window_1): Fold into Fselect_window.
9477 (select_window_norecord): New function.
9478 (temp_output_buffer_show): Use it. Preserve current buffer.
9479
9480 * window.h (Fselect_window): Update declaration.
9481
9482 * window.c (delete_window, Fother_window, Fset_window_configuration):
9483 * minibuf.c (read_minibuf):
9484 * macterm.c (x_new_focus_frame):
9485 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
9486 * callint.c (Fcall_interactively):
9487 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
9488
9489 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
9490
78f52183
DK
94912003-05-17 David Kastrup <dak@gnu.org>
9492
9493 * process.c (read_process_output): Back out change from 2003-03-09.
9494
14d87dc9
SM
94952003-05-17 Stefan Monnier <monnier@cs.yale.edu>
9496
9497 * editfns.c (get_pos_property): Don't assume that `object' = nil.
9498
9499 * textprop.c (text_property_stickiness): New arg `buffer'.
9500
9501 * intervals.h (text_property_stickiness): New arg `buffer'.
9502 (get_pos_property): Declare.
9503
9504 * intervals.c (get_local_map): Use get_pos_property, to obey
9505 stickiness and empty overlays.
9506 (create_root_interval, graft_intervals_into_buffer): Use BEG.
9507 (merge_properties, intervals_equal, merge_properties_sticky):
9508 Use XCAR, XCDR.
9509 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
9510
1fd1cc2f
RS
95112003-05-17 Richard M. Stallman <rms@gnu.org>
9512
4f9f637a
RS
9513 * minibuf.c (read_minibuf): If buffer is empty, record the default
9514 in the history.
9515 (Fminibuffer_complete_word): When deleting the overlap, take account
9516 of its real position.
9517
9518 * fns.c (map_char_table): Fix previous change.
9519
1fd1cc2f
RS
9520 * syntax.c (find_defun_start):
9521 When open_paren_in_column_0_is_defun_start,
9522 return beginning of buffer.
9523
9524 * lisp.h (map_char_table): Declare added arg.
9525
9526 * fns.c (map_char_table): New arg TABLE gets the master table.
9527 All calls changed.
9528 Process default and inheritance, resorting to Faref if necessary.
9529
9530 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
9531 (Faccessible_keymaps): Pass new arg to map_char_table.
9532
9533 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
9534
9535 * casetab.c (set_case_table): Pass new arg to map_char_table.
9536
9537 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
9538
9539 * lisp.h (specbinding_func): New typedef.
9540 (struct specbinding): Use specbinding_func, to put the `volatile'
9541 in the right place.
9542
9543 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
9544 to avoid GCC warning.
14d87dc9 9545
b6189c3b 95462003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org>
b4bd27c5 9547
14d87dc9 9548 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
b4bd27c5 9549
35fb885d
SM
95502003-05-15 Stefan Monnier <monnier@cs.yale.edu>
9551
9552 * keyboard.c (apply_modifiers): Don't fill the other cache.
9553
9a274fbd
SM
95542003-05-14 Stefan Monnier <monnier@cs.yale.edu>
9555
c55b5fad
SM
9556 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
9557
9a274fbd
SM
9558 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
9559 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
9560 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
9561 (Fset_window_configuration, Fcurrent_window_configuration)
9562 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
9563 (Fpos_visible_in_window_p, mark_window_cursors_off)
9564 (window_internal_height, window_internal_width, Frecenter)
9565 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
9566 (replace_buffer_in_all_windows, init_window_once, init_window)
9567 (syms_of_window, keys_of_window): Move from lisp.h.
9568 * lisp.h: Move window.c declarations to window.h.
9569
9570 * bytecode.c: Include window.h.
9571 * emacs.c: Include window.h.
9572
14d87dc9 9573 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
9a274fbd
SM
9574 (keyremap): Add `parent' field.
9575 (keyremap_step): Use it. Remove `parent' argument.
9576 (read_key_sequence): Setup and use the new `parent' field.
9577
fd93e331
SM
95782003-05-11 Stefan Monnier <monnier@cs.yale.edu>
9579
9580 * keyboard.c (adjust_point_for_property): Ensure termination.
9581
1c4001a1
SM
95822003-05-10 Stefan Monnier <monnier@cs.yale.edu>
9583
9584 * keyboard.c (follow_key): Remove dead variable `did_meta'.
9585 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
9586 duplicated handling of function-key-map and key-translation-map
9587 in read_key_sequence.
9588 (read_key_sequence): Use them.
9589
9590 * keyboard.c (adjust_point_for_property): Try harder to move point
9591 to the non-sticky end of an invisible property.
9592
9593 * xdisp.c (single_display_prop_intangible_p): Make `space' display
9594 property intangible as well.
9595
780379b1
AS
95962003-05-10 Andreas Schwab <schwab@suse.de>
9597
9598 * xmenu.c (single_menu_item): Change last parameter to void* to
9599 avoid warning.
9600
ca2de342
RS
96012003-05-09 Richard M. Stallman <rms@gnu.org>
9602
9603 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
9604 Bind Qinhibit_modification_hooks to t so there will be no GC.
9605 Rename local `tem' to `save_deactivate_mark'.
9606
9607 * eval.c (specpdl_ptr): Declare volatile.
9608 (unbind_to): Copy the whole binding and decrement specpdl_ptr
9609 before doing the work of unbinding it.
9610
9611 * lisp.h (struct specbinding): Declare elements volatile.
9612 (specpdl_ptr): Declare volatile.
9613
9614 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
9615
9616 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
9617 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
9618
347003be
DL
96192003-05-08 Dave Love <fx@gnu.org>
9620
9621 * coding.c (Vlast_coding_system_used): Doc fix.
9622
5adcec23
JR
96232003-05-07 Jason Rumney <jasonr@gnu.org>
9624
9625 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
9626 when system does not support them.
9627
5fe3b8a4
SM
96282003-05-05 Stefan Monnier <monnier@cs.yale.edu>
9629
9630 * fileio.c (Qwrite_region_annotate_functions): New var.
9631 (build_annotations): Use it to process the global part of the hook.
9632 (syms_of_fileio): Init and staticpro it.
9633
9634 * keyboard.c (safe_run_hooks_error): Display a message instead of
9635 silently ignoring the error.
9636
96372003-05-03 Stefan Monnier <monnier@cs.yale.edu>
9638
9639 * keyboard.c (input_available_signal): Mark static.
9640 (menu_bar_items): Use map_keymap.
9641 (menu_bar_one_keymap): Remove.
9642 (menu_bar_item): Adjust arglist (for use in map_keymap).
9643 Properly hide a second binding when not both are keymaps.
9644
9645 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
9646 (single_keymap_panes): Use it and map_keymap.
9647 (single_menu_item): Use skp as well.
9648
9649 * keymap.h (map_keymap_function_t): New type.
9650 (map_keymap): Declare.
9651
9652 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
9653 (map_keymap_call, Fmap_keymap): New functions.
9654 (syms_of_keymap): Defsubr map-keymap.
9655
4b1b4443
JD
96562003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9657
9658 * gtkutil.c (create_dialog, make_widget_for_menu_item)
9659 (make_menu_item, create_menus, xg_update_menu_item): Don't call
9660 ..._with_mnemonic functions for menu items.
9661
1f816871
KH
96622003-05-01 Kenichi Handa <handa@m17n.org>
9663
9664 * coding.c (coding_system_accept_latin_extra_p): Delete this
9665 function.
9666 (find_safe_codings): Pay attention to
9667 the property tranlsation-table-for-encode of each codings.
9668 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
9669
5ed6ba5b
SM
96702003-05-01 Stefan Monnier <monnier@cs.yale.edu>
9671
9672 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
9673
32c06229
SM
96742003-04-30 Stefan Monnier <monnier@cs.yale.edu>
9675
9676 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
9677
9678 * lisp.h (CHECK): Wrap args in parenthesis.
9679 (specbind): Fix doc: symbol = Qnil is not supported any more.
9680
9681 * bytecode.c (Fbyte_code) <unwind-protect>:
9682 Use Fprogn rather than 0 and Qnil.
9683
9684 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
9685 `double', and `triple' modifiers as well.
9686
ed3c3314
RS
96872003-04-30 Richard M. Stallman <rms@gnu.org>
9688
9689 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
9690
9691 * alloc.c (abort_on_gc): New variable.
9692 (Fgarbage_collect): Abort if abort_on_gc is set.
9693
9694 * lisp.h (abort_on_gc): Add decl.
9695
9696 * eval.c (Fsignal): Clear abort_on_gc.
9697
9698 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
32c06229 9699 Reinit FORMAT_START and END before second scan.
ed3c3314
RS
9700
9701 * xdisp.c (move_it_vertically_backward): Do the final big else
9702 even if nlines is 0.
9703
9704 * xdisp.c (redisplay_internal): Finish the per-frame loop
9705 even if redisplay is suspended by input.
9706
0b325c12
AC
97072003-04-24 Andrew Choi <akochoi@shaw.ca>
9708
9709 * macterm.c (x_list_fonts): Return all fonts that match if
9710 maxnames = -1.
9711
4e837cd0
KH
97122003-04-25 Kenichi Handa <handa@m17n.org>
9713
9714 * syntax.c (skip_chars): Fix previous change.
9715
9af7511a
KH
97162003-04-24 Kenichi Handa <handa@m17n.org>
9717
9718 * syntax.c (skip_chars): Make the code faster by using the common
9719 technique of *p, *stop, and *endp.
9720
e3b2c21f
JD
97212003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9722
9723 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
32c06229 9724 tool_bar_items so GTK tool bar expose callback does not access items
e3b2c21f
JD
9725 being updated.
9726
32c06229
SM
97272003-04-19 Stefan Monnier <monnier@cs.yale.edu>
9728
9729 * eval.c (Fapply): Undo last change and add a comment about why.
9730
c6464167
MB
97312003-04-18 Miles Bader <miles@gnu.org>
9732
9733 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
9734 pickier PARSE_MULTIBYTE_SEQ.
9735
e509f168
SM
97362003-04-17 Stefan Monnier <monnier@cs.yale.edu>
9737
9738 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
9739 Use XCDR, XCAR, CONSP.
9740 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
9741 (Fapply): Remove unnecessary GCPRO.
9742
9743 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
9744
9745 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
9746
9747 * buffer.h: Don't hardcode BEG==1.
9748
9749 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
9750
5ceea398
RS
97512003-04-16 Richard M. Stallman <rms@gnu.org>
9752
9753 * xdisp.c (try_window, try_window_reusing_current_matrix):
9754 When at end of window, set window_end_pos to Z-ZV.
9755
9756 * buffer.c (Foverlay_recenter): Doc fix.
9757
e509f168
SM
97582003-04-14 Stefan Monnier <monnier@cs.yale.edu>
9759
9760 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
9761
d243e605
AC
97622003-04-14 Andrew Choi <akochoi@shaw.ca>
9763
9764 * macterm.c (mac_check_for_quit_char): Don't check more often than
9765 once a second.
9766
6901b111
SM
97672003-04-11 Stefan Monnier <monnier@cs.yale.edu>
9768
9769 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
9770 specially, so that they can't hide an implicit switch-frame event.
9771 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
9772 (head_table): Use switch-frame as event_kind for select-window.
9773 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
9774
9775 * editfns.c (Fformat): Lisp_Object/int mixup.
9776 (format2): Remove unused var numargs.
9777
e301806f 97782003-04-11 Kenichi Handa <handa@m17n.org>
aa95b710 9779
6901b111 9780 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
aa95b710
KH
9781 (Qafter_insert_file_set_coding): New variable.
9782 (syms_of_fileio): Initialize and staticpro it. Delete declaration
9783 for after-insert-file-adjust-coding-function.
9784 (Finsert_file_contents): Call Qafter_insert_file_set_coding
9785 instead of Vafter_insert_file_adjust_coding_function.
9786
38914424
KH
97872003-04-11 Kenichi Handa <handa@m17n.org>
9788
9789 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
9790
9791 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
9792 string. Callers changed.
9793
97942003-04-10 Kenichi Handa <handa@m17n.org>
a288d979 9795
6901b111 9796 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
a288d979 9797 (syms_of_fileio): Declare it as a lisp variable.
6901b111
SM
9798 (Finsert_file_contents):
9799 Call Vafter_insert_file_adjust_coding_function before calling
a288d979
KH
9800 decode-format.
9801
f979dc05
JD
98022003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9803
9804 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
9805 get GtkAdjustment as widget now is a GtkRange.
9806
9807 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
9808 GtkRange to avoid memory leak.
9809
f8c6b4c2 98102003-04-09 Kenichi Handa <handa@m17n.org>
cb98871c 9811
50ebc53d
KH
9812 * xfaces.c (Vface_font_rescale_alist): New variable.
9813 (struct font_name): New member rescale_ratio.
9814 (font_rescale_ratio): New function.
6901b111 9815 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
50ebc53d
KH
9816 (better_font_p): On comparing point sized, pay attention to
9817 recale_ratio member of fonts.
9818 (build_scalable_font_name): Reflect font->rescale_ratio in the
9819 font name.
6901b111 9820 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
50ebc53d 9821
cb98871c
KH
9822 * lread.c (read1): Before calling index, check if the 2nd
9823 arguemnt is in ASCII range.
9824
4773b8ca
RS
98252003-04-08 Richard M. Stallman <rms@gnu.org>
9826
b0ada147
RS
9827 * fileio.c (Ffile_symlink_p): Doc fix.
9828
9829 * editfns.c (Fformat): Translate positions of text properties
9830 in the format string to apply them to the result.
9831
4773b8ca
RS
9832 * fileio.c (Finsert_file_contents): Doc fix.
9833 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
9834
98352003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
6901b111 9836
4773b8ca
RS
9837 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
9838
e8f25745 98392003-04-08 Steven Tamm <steventamm@mac.com>
b0ada147 9840
e8f25745
ST
9841 * mac.c (init_mac_osx_environment): Switch libexec and bin so
9842 that self-contained application finds libexec files.
9843
f8c6b4c2 98442003-04-08 Kenichi Handa <handa@m17n.org>
2310d84c 9845
6901b111
SM
9846 * coding.c (code_convert_region_unwind):
9847 Set Vlast_coding_system_used to the argument.
2310d84c
KH
9848 (code_convert_region): If post-read-conversion function changed
9849 the value of last-coding-sytem, keep the new value in
9850 coding->symbol so that it won't be overridden.
9851 (run_pre_post_conversion_on_str): Likewise.
7c086845
KH
9852 (coding_system_accept_latin_extra_p): New function.
9853 (find_safe_codings): Pay attention to characters registered in
9854 latin-extra-code-table.
2310d84c 9855
39c9a034
TTN
98562003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
9857
9858 * Makefile.in (md5.o): Add missing dependency info.
9859
eb67c5d6
RS
98602003-04-06 Richard M. Stallman <rms@gnu.org>
9861
9862 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
9863
9864 * marker.c (verify_bytepos): New function.
9865
9866 * intervals.c (set_intervals_multibyte_1): When becoming
9867 multibyte, adjust right and left child sizes to a whole set of
9868 characters. If an interval gets zero total-length, delete it.
9869 If an interval consists of just its children, delete one of them.
9870
9871 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
9872 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
39c9a034 9873
eb67c5d6
RS
9874 * alloc.c: (VALIDATE_LISP_STORAGE): Macro deleted.
9875 All calls deleted.
9876 (lisp_malloc): Do the work here directly.
9877
b1f81fc5
JB
98782003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
9879
9880 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
9881 char tables.
9882
98832003-04-04 Kenichi Handa <handa@m17n.org>
aa8b70ae
KH
9884
9885 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
9886 destructively change "%S" to "%s".
9887
774666fb
MB
98882003-04-03 Miles Bader <miles@gnu.org>
9889
9890 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
9891 always set.
9892
19c37f01
DL
98932003-04-01 Dave Love <fx@gnu.org>
9894
9895 * xfns.c (xpm_lookup_color): Grok "opaque".
9896
2f4b24c3
AC
98972003-03-31 Andrew Choi <akochoi@shaw.ca>
9898
9899 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
9900 parent window ID.
9901
9902 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
9903
9904 * macterm.h (struct mac_output): Define x_pixels_diff and
9905 y_pixels_diff.
b1f81fc5 9906
9443fcf6
JB
99072003-03-31 Juanma Barranquero <lektu@terra.es>
9908
9909 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
9910 blockinput.h and files included from it.
9911
e072891b
KS
99122003-03-31 Kim F. Storm <storm@cua.dk>
9913
9914 The following changes consolidates the common code related to
9915 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
9916 files into frame.c.
9443fcf6 9917
e072891b
KS
9918 * frame.c: Include blockinput.h.
9919 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
9920 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
9921 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
9922 related vars here.
9923 (struct frame_parm_table, frame_parms): New table for describing
9924 frame parameters and their associated Q-variable.
9925 The order of the parameters corresponds to the sequence of the
9926 frame_parm_handlers table in redisplay_interface.
9927 (x_fullscreen_move, x_set_frame_parameters)
9928 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
9929 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
9930 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
9931 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
9932 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
9933 Generic functions for processing of frame parameters.
9934 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
9935 (display_x_get_resource, x_get_resource_string): Functions for
9936 generic access to X resources.
9937 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
9938 (x_default_parameter, Fx_parse_geometry): Functions for generic
9939 access to frame parameters.
6901b111
SM
9940 (x_figure_window_size): Generic calculation of frame size.
9941 Fixed to add space needed for tool bar. Also setup size_hint_flags.
e072891b
KS
9942 (syms_of_frame): Intern and staticpro frame parameter variables.
9943 Defvar_lisp Vx_resource_class and Vx_resource_name here.
9944 Defsubr Sx_get_resource and Sx_parse_geometry.
9443fcf6 9945
e072891b
KS
9946 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
9947 parameter related vars defined in frame.c.
9948 (EMACS_CLASS): Define here.
9949 (enum FULLSCREEN_*): Define here.
9950 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
9951 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
9952 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
9953 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
9954 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
9955 (x_set_visibility, x_set_autoraise, x_set_autolower)
9956 (x_set_unsplittable, x_set_vertical_scroll_bars)
9957 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
9958 (x_figure_window_size): Add prototypes.
9959
9960 * dispextern.h (frame_parm_handler): New typedef.
9961 (struct redisplay_interface): New member frame_parm_handlers.
9962 (enum resource_types): Move declaration here.
9963 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
9964 (x_default_parameter): Add prototypes.
9965
9966 * window.c: Remove extern decl for frame parameter vars.
9967 (change_window_heights): New generic function;
9968 replaces x_change_window_heights. All users changed.
9969
9970 * window.h (change_window_heights): Add prototype.
9971
9972 * xfaces.c: Remove extern decl for frame parameter vars.
9973
9974 * xterm.h (EMACS_CLASS): Remove. Use generic define.
9975 (struct w32_display_info): Fix type of xrdb member.
9976 (enum FULLSCREEN_*): Remove.
9977 Remove prototypes for generic functions (in frame.h).
9978
9979 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
9980 parameters now defined in frame.h and frame.c.
f63fd14e 9981 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
9982 (enum x_frame_parms): Remove (bogus, unused enum).
9983 (check_x_display_info): Make non-static (for frame.c).
9984 (struct x_frame_parm_table, x_frame_parms): Remove.
9985 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
9986 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
9987 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
9988 (x_change_window_heights, x_set_autoraise, x_set_autolower)
9989 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
9990 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
9991 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
9992 Remove. Use generic functions instead.
9993 (enum resource_types): Remove.
9994 (x_set_scroll_bar_default_width): New global function (for frame.c).
9995 (Fx_create_frame): Depend on x_figure_window_size to add space for
9996 toolbar and setup size_hint_flags.
9997 (x_frame_parm_handlers): New table for redisplay_interface.
9998 (syms_of_xfns): Don't intern/staticpro removed vars.
9443fcf6 9999
e072891b 10000 * xterm.c: Remove unnecessary extern declarations.
f63fd14e 10001 (x_fullscreen_adjust): Remove. Use generic instead.
e072891b
KS
10002 (x_redisplay_interface): Add x_frame_parm_handlers member.
10003
10004 * w32gui.h (XrmDatabase): New (dummy) typedef.
10005
10006 * w32term.h (EMACS_CLASS): Remove. Use generic define.
10007 (struct w32_display_info): Fix type of xrdb member.
10008 (enum FULLSCREEN_*): Remove.
10009 (x_fullscreen_adjust): Remove prototype.
10010
10011 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
10012 parameters now defined in frame.h and frame.c.
f63fd14e 10013 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
10014 (enum x_frame_parms): Remove (bogus, unused enum).
10015 (check_x_display_info): Make non-static (for frame.c).
10016 (struct x_frame_parm_table, x_frame_parms): Remove.
10017 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
10018 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
10019 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
10020 (x_change_window_heights, x_set_autoraise, x_set_autolower)
10021 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
10022 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
10023 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
10024 Remove. Use generic functions instead.
10025 (enum resource_types): Remove.
10026 (x_set_scroll_bar_default_width): New global function (for frame.c).
10027 (Fx_create_frame): Depend on x_figure_window_size to add space for
10028 toolbar and setup size_hint_flags.
10029 (w32_frame_parm_handlers): New table for redisplay_interface.
10030 (syms_of_w32fns): Don't intern/staticpro removed vars.
9443fcf6 10031
e072891b
KS
10032 * w32term.c: Remove unnecessary extern declarations.
10033 (x_fullscreen_adjust): Remove. Use generic instead.
10034 (x_redisplay_interface): Add w32_frame_parm_handlers member.
10035
10036 * w32reg.c (x_get_string_resource): Use XrmDatabase.
10037
10038 * macgui.h (XrmDatabase): New (dummy) typedef.
10039
10040 * macterm.h (EMACS_CLASS): Remove.
10041 (struct mac_display_info): Add xrdb member.
10042 (struct mac_output): Add want_fullscreen member.
10043
10044 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
10045 parameters now defined in frame.h and frame.c.
f63fd14e 10046 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
10047 (check_x_display_info): Make non-static (for frame.c).
10048 (struct x_frame_parm_table, x_frame_parms): Remove.
10049 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
10050 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
10051 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
10052 (x_change_window_heights, x_set_autoraise, x_set_autolower)
10053 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
10054 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
10055 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
10056 Remove. Use generic functions instead.
10057 (enum resource_types): Remove.
10058 (x_set_scroll_bar_default_width): New global function (for frame.c).
10059 (mac_frame_parm_handlers): New table for redisplay_interface.
10060 (syms_of_macfns): Don't intern/staticpro removed vars.
9443fcf6 10061
e072891b
KS
10062 * macterm.c: Remove unnecessary extern declarations.
10063 (x_redisplay_interface): Add mac_frame_parm_handlers member.
10064
3e6a560b
KS
10065 * Makefile.in (frame.o): Add dependency on blockinput.h and files
10066 included from it (atimer.h and systime.h).
10067
7b7b454e
AS
100682003-03-30 Andreas Schwab <schwab@suse.de>
10069
10070 * xdisp.c (x_insert_glyphs): Fix swapped width and height
10071 parameters for shift_glyphs_for_insert.
10072
10073 * macterm.c (x_redisplay_interface): Add missing entry for
10074 draw_vertical_window_border.
10075
beb402de
KG
100762003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
10077
10078 * fileio.c (Fexpand_file_name): In the no-handler case, after
10079 expanding, look again for a handler and invoke it. This is needed
10080 for filenames like "/foo/../user@host:/bar/../baz" -- the first
10081 expansion produces "/user@host:/bar/../baz" which needs to be
10082 expanded again for the finame result "/user@host:/baz".
10083
b676f356
JD
100842003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10085
10086 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
10087 of area to be redrawn for better performance.
10088
3c671a56
SM
100892003-03-28 Stefan Monnier <monnier@cs.yale.edu>
10090
10091 * xterm.c (take_vertical_position_into_account): Remove.
10092 (xt_action_hook): Call set_vertical_scroll_bar if needed.
10093 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
10094 (xm_scroll_callback, x_create_toolkit_scroll_bar)
10095 (x_set_toolkit_scroll_bar_thumb): Simplify.
10096 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
10097 (XTread_socket): Remove unused var.
10098 (x_make_frame_invisible): Replace goto with else.
10099
10100 * xdisp.c (set_vertical_scroll_bar): New fun.
10101 (redisplay_window): Use it.
10102
84f2e615
RS
101032003-03-26 Richard M. Stallman <rms@gnu.org>
10104
10105 * xdisp.c (update_tool_bar): Recompute tool bar if
10106 update_mode_lines is set. Set w->update_mode_line
10107 only if the tool bar contents actually change.
10108 (update_menu_bar): Undo previous change.
10109
70b6104c
JD
101102003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10111
5fd6f727
JD
10112 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
10113 (xg_frame_set_char_size): Calculate scroll bar width before frame
10114 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
10115 (xg_separator_p): Check for all documented separator types.
10116 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
10117 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
10118
70b6104c
JD
10119 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
10120 so tool bar gets updated.
10121
d9b36d19
SM
101222003-03-26 Stefan Monnier <monnier@cs.yale.edu>
10123
10124 * data.c (store_symval_forwarding): Re-instate part of the code
10125 that was deleted with too much enthusiasm.
10126
101272003-03-25 Stefan Monnier <monnier@cs.yale.edu>
10128
10129 * data.c (store_symval_forwarding): Delete special read-only
10130 hack for type == -1, since we now use ->constant instead.
10131 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
10132
10133 * buffer.c (overlays_in): Declare static.
10134 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
10135 `constant' field rather than the variable's `type' field.
10136
365fa1b3
AC
101372003-03-24 Andrew Choi <akochoi@shaw.ca>
10138
10139 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
10140
10141 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
10142
10143 * fns.c [MAC_OSX]: Do not redefine vector.
10144
10145 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
10146
10147 * macgui.h: Remove definition of No_Cursor.
10148
d9b36d19 10149 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
365fa1b3
AC
10150
10151 * xdisp.c: Define No_Cursor.
10152 (x_write_glyphs, notice_overwritten_cursor)
10153 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
10154 (note_mouse_highlight): Remove Mac-specific code.
10155 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
d9b36d19 10156
c0bcce6f
JPW
101572003-03-24 John Paul Wallington <jpw@gnu.org>
10158
10159 * xdisp.c (redisplay_window): If mini window's buffer is not
10160 empty, then redisplay it like other windows.
10161
a526b96c
KS
101622003-03-23 Kim F. Storm <storm@cua.dk>
10163
10164 * w32term.c (w32_draw_window_cursor): Fix last change.
10165
37ab321e
KH
101662003-03-23 Kenichi Handa <handa@m17n.org>
10167
a526b96c
KS
10168 * alloc.c (make_string_from_bytes, make_specified_string):
10169 Add `const' for the arg CONTENTS.
37ab321e
KH
10170
10171 * lisp.h (make_string_from_bytes, make_specified_string):
10172 Prototypes adjusted.
10173
7863d625
JD
101742003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10175
a526b96c 10176 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
fd4c9408 10177
7863d625
JD
10178 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
10179 (XG_SB_RANGE): New define.
10180
10181 * gtkutil.c (xg_fixed_handle_expose): New function.
10182 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
10183 expose events.
10184 (xg_update_scrollbar_pos): Take two more arguments, left and width
10185 of scroll bar including borders.
10186 Clear left and right part outside scroll bar separately as some
10187 themes have bars that are not an even number of pixels.
d9b36d19 10188 Don't set reallocate_redraws, don't call
7863d625
JD
10189 gdk_window_process_all_updates.
10190 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
10191 so no need to change it. Calculate size and value with XG_SB_RANGE.
10192
d9b36d19
SM
10193 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
10194 Pass left and width of scroll bar including borders to
7863d625
JD
10195 xg_update_scrollbar_pos.
10196
af0ad939
TTN
101972003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
10198
10199 * Makefile.in: Make sure space precedes end-of-line backslashes.
10200
b22139fd
KS
102012003-03-22 Kim F. Storm <storm@cua.dk>
10202
10203 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
10204 Add generic versions here. Remove system specific versions
10205 defined elsewhere.
10206
10207 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
10208 Add prototypes.
10209
6e6410cf
KS
10210 * xterm.h (STORE_NATIVE_RECT): New macro.
10211
5c9cc435
KS
102122003-03-21 Kim F. Storm <storm@cua.dk>
10213
00c64fab
SM
10214 * xdisp.c (get_glyph_string_clip_rect):
10215 Use FRAME_INTERNAL_BORDER_WIDTH.
5c9cc435
KS
10216
10217 * dispextern.h (struct redisplay_interface): Add active_p
10218 argument to draw_window_cursor member. All uses changed.
10219
acd37560
KS
102202003-03-21 Kim F. Storm <storm@cua.dk>
10221
10222 The following changes consolidate code related to writing and
10223 inserting glyphs, exposing frame, the tool bar, the mouse face,
10224 the output cursor, and help echo from xterm.c, w32term.c and
10225 macterm.c into xdisp.c. It also generalizes the use of the
10226 window_part enum instead of using numeric values throughout.
af0ad939 10227
acd37560
KS
10228 * xdisp.c: Consolidate gui-independent code here.
10229 Include keymap.h.
10230 (Qhelp_echo): Import.
10231 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
10232 (help_echo_string, help_echo_window, help_echo_object)
10233 (previous_help_echo_string, help_echo_pos): Declare here.
10234 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
10235 (estimate_mode_line_height): Define here. Handle windowing
10236 systems directly (without using estimate_mode_line_height_hook).
10237 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
10238 (update_window_cursor, update_cursor_in_window_tree)
10239 (fast_find_position, fast_find_string_pos)
10240 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
10241 (expose_area, expose_line, expose_overlaps, expose_window)
10242 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
10243 declared static as they are only used locally in xdisp.c.
10244 (draw_glyphs): Rename from x_draw_glyphs and make static.
10245 (tool_bar_item_info, notice_overwritten_cursor): Make static.
10246 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
10247 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
af0ad939 10248 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
acd37560
KS
10249 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
10250 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
10251 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
10252 (note_mouse_highlight, x_clear_window_mouse_face)
10253 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
10254 (x_intersect_rectangles): New generic functions for use by xdisp.c
10255 and GUI front-ends.
10256 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
10257 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
10258
10259 * dispextern.h (Display_Info): Generic typedef for *_display_info.
10260 (NativeRectangle): Generic typedef for rectangle type.
10261 (enum window_part): Move here from window.c.
10262 (struct redisplay_interface): New members flush_display_optional,
10263 define_frame_cursor, clear_frame_area, draw_window_cursor,
10264 draw_vertical_window_border, shift_glyphs_for_insert.
10265 Rename member clear_mouse_face to clear_window_mouse_face.
10266 (estimate_mode_line_height_hook): Remove hook.
10267 (auto_raise_tool_bar_buttons_p): Don't declare extern.
10268 (tool_bar_item_info): Remove prototype.
10269 (help_echo_string, help_echo_window, help_echo_object)
10270 (previous_help_echo_string, help_echo_pos)
10271 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
10272 (x_stretch_cursor_p, output_cursor): Declare extern.
10273 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
10274 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
10275 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
10276 (display_and_set_cursor, set_output_cursor, x_cursor_to)
10277 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
10278 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
10279 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
10280 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
10281 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
10282 Add prototypes.
10283 (mode_line_string, marginal_area_string): Fix prototypes.
10284
10285 * window.c (enum window_part): Move to dispextern.h.
10286 (coordinates_in_window): Use enum window_part member names
10287 instead of numbers to describe return value.
10288 (struct check_window_data): Change part member to window_part.
10289 (check_window_containing): Return window_part unaltered.
10290 (window_from_coordinates): Change part arg from int to enum
10291 window_part. Allow part arg to be null. All users changed.
10292
10293 * window.h (window_from_coordinates): Fix prototype.
10294
10295 * term.c (estimate_mode_line_height): Move to xdisp.c.
10296
10297 * keyboard.c (make_lispy_event): Use enum window_part.
10298
10299 * dispnew.c (mode_line_string, marginal_area_string): Use enum
10300 window_part instead of int in arg list. Users changed.
10301
10302 * xterm.h (No_Cursor): Declare as None for X.
10303 (struct mac_output): Replace member cross_cursor by hand_cursor.
af0ad939 10304
acd37560
KS
10305 * xterm.c: Remove consolidated defines and code.
10306 (BETWEEN): Remove unused macro.
10307 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
10308 (x_define_frame_cursor, x_clear_frame_area)
10309 (x_draw_window_cursor): New X-specific functions for RIF.
10310 (x_redisplay_interface): Add new members.
10311
10312 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
10313
10314 * w32term.h (struct w32_output): Remove cross_cursor member.
10315
10316 * w32term.c: Remove consolidated defines and code.
10317 (BETWEEN): Remove unused macro.
10318 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
10319 (w32_define_frame_cursor, w32_clear_frame_area)
10320 (w32_draw_window_cursor): New W32-specific functions for RIF.
10321 (w32_redisplay_interface): Add new members.
10322
a64387ee 10323 * w32gui.h (No_Cursor): Define as 0 for W32.
acd37560
KS
10324 (XRectangle): Add X compatible rectangle type.
10325 (NativeRectangle): Declare as RECT for W32.
10326 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
10327
10328 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
10329
10330 * w32console.c: Remove consolidated defines and code.
af0ad939 10331
acd37560
KS
10332 * msdos.h (Display_Info): Add generic typedef.
10333
10334 * msdos.c: Remove consolidated defines and code.
10335 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
10336
10337 * macterm.h (struct mac_output): Replace member cross_cursor by
10338 hand_cursor.
10339 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
10340
10341 * macterm.c: Remove consolidated defines and code.
10342 (BETWEEN): Remove unused macro.
10343 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
10344 (mac_define_frame_cursor, mac_clear_frame_area)
10345 (mac_draw_window_cursor): New Mac-specific functions for RIF.
10346 (x_redisplay_interface): Add new members.
10347
10348 * macgui.h (No_Cursor): Define as 0 for Mac.
10349 (XRectangle): Add X compatible rectangle type.
10350 (NativeRectangle): Declare as Rect for Mac.
10351 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
10352
204ccab1
KS
10353 * macfns.c (x_set_mouse_color): Setup hand_cursor.
10354 (x_set_cursor_color): Use x_display_and_set_cursor.
acd37560 10355
9443fcf6 10356 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
acd37560
KS
10357 included from it. Add dependency on keymap.h.
10358
10359 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
10360
8ba01a70 103612003-03-21 Kenichi Handa <handa@m17n.org>
3f817c73
KH
10362
10363 * fileio.c (Fexpand_file_name): Fix previous change.
10364
8ba01a70 103652003-03-19 Kenichi Handa <handa@m17n.org>
4f497b0a
KH
10366
10367 * fileio.c (Ffile_name_directory): Reconstruct file name by
10368 make_specified_string.
10369 (Ffile_name_nondirectory, Ffile_name_as_directory)
10370 (Fdirectory_file_name, Fexpand_file_name)
10371 (Fsubstitute_in_file_name): Likewise.
10372 (Fread_file_name): Compare decoded homedir with DIR and
10373 DEFAULT_FILENAME.
10374
10375 * alloc.c (make_specified_string): If NCHARS is negative, count
10376 the number of characters.
10377
19536747
JD
103782003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10379
de38ae5a
JD
10380 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
10381 all widgets.
10382
19536747
JD
10383 * gtkutil.h: Removed xg_ignore_next_thumb.
10384
37ab321e 103852003-03-18 Kenichi Handa <handa@m17n.org>
cb0d4562
KH
10386
10387 * coding.c (Vchar_coding_system_table): Remove this variable.
10388 (Vcoding_system_safe_chars): New variable.
10389 (intersection): Remove this function.
10390 (find_safe_codings): Don't use Vchar_coding_system_table, but try
10391 all codings in SAFE_CODINGS.
00c64fab 10392 (Ffind_coding_systems_region_internal): Adjust for the change of
cb0d4562
KH
10393 find_safe_codings. Get generic coding systems from
10394 Vcoding_system_safe_chars.
10395 (Fdefine_coding_system_internal): New function.
10396 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
10397 Initialize and staticpro Vcoding_system_safe_chars.
10398
17097258
JD
103992003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10400
2a2071c3
JD
10401 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
10402 equal old values before updating.
10403
17097258
JD
10404 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
10405
10406 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
10407
104082003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10409
10410 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
10411 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
10412 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
10413 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
10414 (xg_create_scroll_bar): Pass bar to button event callback.
10415 (xg_find_top_left_in_fixed): New function.
10416 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
10417 whole scroll bar area. Get old position with
10418 xg_find_top_left_in_fixed, calculate and only clear needed areas.
10419 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
10420 dragging is in progress. Calculate whole as for Motif.
10421 Remove code that saved last values. Call gtk_range functions to
10422 set scroll bar sizes.
10423
10424 * gtkutil.h: Removed xg_ignore_next_thumb.
10425
8cb9dfbf
JB
104262003-03-17 Juanma Barranquero <lektu@terra.es>
10427
10428 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
10429 and files included from it.
10430
00c64fab
SM
104312003-03-18 Stefan Monnier <monnier@cs.yale.edu>
10432
10433 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
10434 multiple occurrences of the same keymap under different prefixes.
10435 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
10436
c45bb3b2
JR
104372003-03-16 Jason Rumney <jasonr@gnu.org>
10438
10439 * w32gui.h: Use HDC for Display.
10440
10441 * w32term.c (w32_encode_char): Prevent double-byte chars from
10442 crashing Emacs.
10443
10444 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
10445 as binary.
10446
2a6d0874
JB
104472003-03-16 Juanma Barranquero <lektu@terra.es>
10448
10449 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
10450
03eb5fab
KS
104512003-03-16 Kim F. Storm <storm@cua.dk>
10452
10453 The following changes consolidate some of the gui-independent
10454 parts of the processing and drawing of "glyph strings" from
10455 xterm.c, w32term.c, and macterm.c into xdisp.c.
2a6d0874 10456
03eb5fab
KS
10457 * dispextern.h (struct glyph): Reduce face_id member from 22 to
10458 21 bits (this reduces number of faces from 4M to 2M).
10459 Replace W32 specific w32_font_type member (2 bits) by generic
10460 font_type member (3 bits) for portability.
10461 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
10462 (enum draw_glyphs_face): Define here.
10463 (struct glyph_string): Define here. Merge W32 and X versions.
10464 (struct redisplay_interface): New members per_char_metric,
10465 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
10466 (VCENTER_BASELINE_OFFSET): Define here.
10467 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
10468 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
10469
10470 * xdisp.c: Consolidate gui-independent "glyph string" code here.
10471 (dump_glyph_string): Moved here.
10472 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
10473 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
10474 (fill_composite_glyph_string, fill_glyph_string)
10475 (fill_image_glyph_string, fill_stretch_glyph_string)
10476 (left_overwritten, left_overwriting, right_overwritten)
10477 (right_overwriting, get_char_face_and_encoding)
10478 (set_glyph_string_background_width, compute_overhangs_and_x)
10479 (append_glyph, append_composite_glyph, produce_image_glyph)
10480 (take_vertical_position_into_account, append_stretch_glyph)
10481 (produce_stretch_glyph): New generic functions (based on X version).
10482 Call platform specific functions through rif.
10483 (INIT_GLYPH_STRING): New macro, hides W32 details.
10484 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
10485 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
10486 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
10487 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
10488 (notice_overwritten_cursor):
10489 Generic functions exported to platform modules. Users changed.
10490
10491 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
10492 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
10493 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
fad49844 10494 New macros for consolidated code.
2a6d0874 10495
03eb5fab
KS
10496 * xterm.c: Remove consolidated defines and code.
10497 (x_per_char_metric, x_encode_char)
10498 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
10499 (x_redisplay_interface): Add new members.
10500
10501 * w32gui.h (Display): Add dummy typedef for consolidation.
10502 (XChar2b): Define alias for wchar_t for consolidation.
10503 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
10504
10505 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
2a6d0874 10506 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
03eb5fab
KS
10507 New macros for consolidation.
10508
fad49844 10509 * w32term.c: Remove consolidated defines and code.
03eb5fab
KS
10510 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
10511 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
10512 (w32_per_char_metric): Change font_type arg to int for RIF.
10513 (w32_encode_char): Return int according to RIF requirements.
10514 (w32_compute_glyph_string_overhangs): Adapt to RIF.
10515 (w32_get_glyph_overhangs): New function for RIF. Uses generic
10516 x_get_glyph_overhangs.
10517 (w32_redisplay_interface): Add new members.
10518
10519 * macgui.h (XChar2b): Move typedef here for consolidation.
10520 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
10521
10522 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
10523 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
10524 consolidation.
10525
10526 * macterm.c: Remove consolidated defines and code.
10527 (mac_per_char_metric): New function for RIF.
00c64fab 10528 (mac_encode_char): Adapt to new RIF requirements.
03eb5fab
KS
10529 (mac_compute_glyph_string_overhangs): Adapt for RIF.
10530 (x_redisplay_interface): Add new members.
10531
00c64fab
SM
105322003-03-15 Stefan Monnier <monnier@cs.yale.edu>
10533
10534 * keymap.c (Vmenu_events): New var.
10535 (syms_of_keymap): Initialize it.
10536 (where_is_internal): Check more carefully what is a menu event.
10537
225c7a07
RS
105382003-03-14 Richard M. Stallman <rms@gnu.org>
10539
10540 * lread.c (read1): After #!, exit loop on eof.
10541
cea9be54
JD
105422003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10543
9ea0e54d
JD
10544 * gtkutil.h: Add declaration for xg_frame_cleared.
10545
0cb35f4e
JD
10546 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
10547
cea9be54
JD
10548 * gtkutil.c (struct xg_last_sb_pos): New structure.
10549 (handle_fixed_child): New function.
10550 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
10551 and force a redraw on them.
10552 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
10553 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
10554 so we can avoid unneeded redraws.
10555 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
10556 and force a redraw on the scroll bar.
10557 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
10558 if xg_last_sb_pos shows the positions are up to date.
0cb35f4e 10559 (xg_frame_cleared): New function.
cea9be54 10560
20b853f3
KH
105612003-03-13 Kenichi Handa <handa@m17n.org>
10562
10563 * coding.c (Fdetect_coding_region): Fix docstring.
10564 (Fdetect_coding_string): Fix docstring.
10565
7a555aff
AS
105662003-03-13 Andreas Schwab <schwab@suse.de>
10567
25cc0080
AS
10568 * gtkutil.c: Add prototype for create_menus.
10569
30225431
AS
10570 * data.c (long_to_cons): Fix type of top.
10571
10572 * xselect.c (selection_data_to_lisp_data): Use int instead of
10573 long for an integer of size 4.
10574
7a555aff 10575 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
30225431 10576 (xg_tool_bar_help_callback): Likewise.
7a555aff 10577
a3e4741f
AS
105782003-03-12 Andreas Schwab <schwab@suse.de>
10579
10580 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
10581
9668be7c
KS
105822003-03-12 Kim F. Storm <storm@cua.dk>
10583
03eb5fab 10584 The following changes consolidate the fringe handling from
9668be7c 10585 xterm.c, w32term.c, and macterm.c into xdisp.c.
00a88f32 10586
9668be7c
KS
10587 * xdisp.c: Consolidate fringe handling code here.
10588 (left_bits, right_bits, continued_bits, continuation_bits)
10589 (ov_bits, zv_bits): Define fringe bitmaps.
10590 (fringe_bitmaps): New array holding fringe bitmaps.
10591 (draw_fringe_bitmap): Draw a specific bitmap; call display
10592 specific drawing routine via rif->draw_fringe_bitmap.
10593 (draw_row_fringe_bitmaps): Generic replacement for
10594 x_draw_row_fringe_bitmaps; all callers changed.
10595 (compute_fringe_widths): Generic replacement for
10596 x_compute_fringe_widths; all callers changed.
10597
10598 * dispextern.h (enum fringe_bitmap_type): Define here.
10599 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
10600 (fringe_bitmaps): Declare extern.
10601 (struct redisplay_interface): New member draw_fringe_bitmap.
10602 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
10603
10604 * xterm.c: Remove generic fringe code.
10605 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
10606 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
10607
10608 * w32term.c: Remove generic fringe code.
10609 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
10610 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
00a88f32 10611
9668be7c
KS
10612 * macterm.c: Remove generic fringe code.
10613 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
10614 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
10615
00a88f32
SM
106162003-03-11 Stefan Monnier <monnier@cs.yale.edu>
10617
10618 * print.c (Fprin1_to_string): Return unibyte string if possible.
10619
1d1de695
DK
106202003-03-09 David Kastrup <dak@gnu.org>
10621
10622 * process.c (read_process_output): We have allocated enough space
10623 for readmax and carryover, so actually use the alloted space.
10624
257f40f2
JD
106252003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10626
10627 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
10628 toolkit scrollbar click.
10629
10630 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
10631 for USE_GTK.
10632 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
10633 also.
10634 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
10635 scrollbar and control is pressed, call x_scroll_bar_handle_click.
00a88f32 10636
78819ebb 10637 * gtkutil.h (xg_get_scroll_id_for_window): Declare.
257f40f2
JD
10638
10639 * gtkutil.c (xg_get_scroll_id_for_window): New function.
10640 (xg_tool_bar_item_expose_callback): New function.
10641 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
10642 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
10643 on the tool bar widget.
10644 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
10645 to expose on the tool bar item widgets.
10646
15213141
JD
106472003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10648
26b74a0b 10649 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
00a88f32 10650 struct image* when deciding to update (struct image* may have been
26b74a0b
JD
10651 deleted from the image cache).
10652
15213141
JD
10653 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
10654 the event isn't for a frame (i.e. for dialogs).
10655
20b853f3 106562003-03-07 Kenichi Handa <handa@m17n.org>
cb681b34
KH
10657
10658 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
10659 composition components reaches the limit, terminate composing.
10660 (COMPOSITION_OK): New macro.
00a88f32 10661 (detect_coding_iso2022): Use it if an escape sequence for
cb681b34
KH
10662 composition is found.
10663 (coding_restore_composition): Adjust the number of composition
10664 components if it is not sane.
10665
c9029fe5
JB
106662003-03-06 Juanma Barranquero <lektu@terra.es>
10667
10668 * w32term.h (struct w32_display_info): Add xrdb member to support
10669 passing resources via -xrm on Windows.
10670
10671 * w32term.c (w32_make_rdb): New function.
10672 (w32_term_init): Use it to initialize xrdb member of w32_display_info
10673 struct. Delete leftover code.
10674
10675 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
10676 for resources passed on the command line.
10677
10678 * w32reg.c (w32_get_rdb_resource): New function.
10679 (x_get_string_resource): Use it, so resources passed with -xrm
10680 supercede the ones in the registry.
10681
9d00001f
JD
106822003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10683
10684 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
10685 instead of x_top_window_to_frame.
10686
ca2417b9
JD
106872003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10688
10689 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
10690 when restarting Emacs.
10691
5b20caf0
RS
106922003-03-03 Richard M. Stallman <rms@gnu.org>
10693
10694 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
10695 to run kill-buffer-query-functions.
10696 (Qkill_buffer_query_functions): New var.
10697 (syms_of_buffer): Init and staticpro it.
10698
58e91b77
JD
106992003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10700
10701 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
10702
932357b4
KS
107032003-02-25 Kim F. Storm <storm@cua.dk>
10704
10705 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
10706 If centering point failed to make whole line visible and vscroll
10707 is non-zero, disable vscroll and try centering point again.
10708
10709 * lread.c (read1): Accept `single space' syntax like (? x).
10710
bb8db7e1
JD
107112003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10712
10713 * keyboard.c (cancel_hourglass_unwind): Surround with
10714 #ifdef HAVE_X_WINDOWS
10715
47d77aab
KH
107162003-02-25 Kenichi Handa <handa@m17n.org>
10717
10718 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
10719 process only when "subprocesses" is defined.
10720
6a097c0c
SM
107212003-02-24 Stefan Monnier <monnier@cs.yale.edu>
10722
10723 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
10724
0b063c27
JB
107252003-02-24 Juanma Barranquero <lektu@terra.es>
10726
d1135afc
JB
10727 * callint.c (fix_command): Declare as static void and move before
10728 Fcall_interactively.
10729
0b063c27
JB
10730 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
10731 (syms_of_xdisp): Don't initialize Qwhen.
10732
0af912f0
JD
107332003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10734
10735 * keyboard.c (cancel_hourglass_unwind): New function.
10736 (command_loop_1): Cancel hourglass with unwind-protect.
10737
120d0a23
RS
107382003-02-23 Richard M. Stallman <rms@gnu.org>
10739
10740 * callint.c (fix_command): New subroutine, from Fcall_interactively.
10741 Detect (when ... (region-beginning)) etc.
10742 (Fcall_interactively): Call fix_command.
10743 (Qif, Qwhen): New variables.
10744 (syms_of_callint): Init and staticpro them.
0b063c27 10745
120d0a23
RS
10746 * regex.c (print_partial_compiled_pattern): Output to stderr.
10747
4ece81a6
KG
107482003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
10749
10750 * dired.c (directory_files_internal): Don't expand directory.
10751 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
10752 instead. From Lars Hansen <larsh@math.ku.dk>.
10753
e52bd6b7
SM
107542003-02-22 Stefan Monnier <monnier@cs.yale.edu>
10755
10756 * fns.c (string_to_multibyte): Remove unused var i.
10757 (Flanginfo): Fix int/Lisp_Object mixup.
10758 (void_call2): New fun.
10759 (Fmap_char_table): Use it in place of call2.
10760
10761 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
10762
10763 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
10764
10765 * keymap.c (copy_keymap_1): Make it static.
10766
10767 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
10768
c33ef7c4
JB
107692003-02-22 David Ponce <david@dponce.com>
10770
10771 * lread.c (Fload): Don't check STRING_MULTIBYTE.
10772
16782258
JD
107732003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10774
10775 * process.h: Removed subtty field from struct Lisp_Process.
10776
10777 * process.c (create_process): Remove setting of subtty.
10778 (emacs_get_tty_pgrp): New function.
e52bd6b7
SM
10779 (Fprocess_running_child_p, process_send_signal):
10780 Call emacs_get_tty_pgrp instead of ioctl.
16782258
JD
10781 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
10782
3abeca61
KG
107832003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
10784
10785 * keymap.c (Fdefine_key): Doc fix.
10786
92a8ce63
JB
107872003-02-21 Juanma Barranquero <lektu@terra.es>
10788
10789 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
10790
10791 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
10792 POLLING_PROBLEM_IN_SELECT.
10793
10794 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
10795 Delete #undef of POLLING_PROBLEM_IN_SELECT.
10796
10797 * s/hpux10-20.h: New file.
10798
e52bd6b7
SM
10799 * process.c (wait_reading_process_input):
10800 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
92a8ce63 10801
20f1ef2e
KH
108022003-02-20 Kenichi Handa <handa@m17n.org>
10803
32d0a9dc
KH
10804 * fontset.c (check_fontset_name): If NAME is nil, return the
10805 default fontset.
10806 (override_font_info): New function.
e52bd6b7 10807 (Fset_fontset_font): Document that NAME nil means the default fontset.
32d0a9dc
KH
10808 (Ffontset_info): If FONTSET is not the default fontset, merge
10809 FONTSET onto the copy of the default fontset, and work on that
10810 copy. Document that NAME nil means the default fontset.
10811 (Ffontset_font): Document that NAME nil means the default fontset.
10812
20f1ef2e
KH
10813 * process.c (setup_process_coding_systems): If the process's
10814 in/out descriptor is -1, do nothing.
10815
77d1daf2
AS
108162003-02-19 Andreas Schwab <schwab@suse.de>
10817
e52bd6b7
SM
10818 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
10819 Add prototypes.
77d1daf2 10820
f9a45bb3
KH
108212003-02-19 Kenichi Handa <handa@m17n.org>
10822
10823 * xfaces.c (try_alternative_families): Try all scalable fonts if
10824 Vscalable_fonts_allowed is not Qt.
10825
72ecb43c
JD
108262003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10827
10828 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
10829
ee5be7c3
JD
108302003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10831
10832 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
10833 names.
10834
10835 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
e52bd6b7 10836 (sorted_font_list): Move allocation of struct font_name to
ee5be7c3
JD
10837 x_face_list_fonts.
10838 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
10839 (Fx_list_fonts): Set maxnames to -1 to get all font names.
10840
4cd519a7
KS
108412003-02-18 Kim F. Storm <storm@cua.dk>
10842
068f9882
KS
10843 * lread.c (read1): Fix last change.
10844 "`" is not always special. Allow "?" after a character constant.
4cd519a7 10845
7290a344
AC
108462003-02-18 Andrew Choi <akochoi@shaw.ca>
10847
10848 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
10849
1f7fa69b
AS
108502003-02-18 Andreas Schwab <schwab@suse.de>
10851
10852 * window.c (window_scroll_pixel_based): Move outside a
10853 multi-glyph character before setting new window start.
10854
10855 * xdisp.c (in_display_vector_p): New function.
10856 * dispextern.h (in_display_vector_p): Declare.
10857
23e21195
KS
108582003-02-18 Kim F. Storm <storm@cua.dk>
10859
10860 * lread.c (read1): Fix and relax read syntax.
10861 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
10862 Only recognize "," after dotted-pair dot if inside backquote.
10863 Never include "`" or "," (inside backquote) in a symbol.
10864 Allow dotted-pair dot after a character constant.
10865 Allow "`" and "," (inside backquote) after a character constant.
92a8ce63 10866
f098b121
JD
108672003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10868
10869 * gtkutil.c (xg_tool_bar_expose_callback): New function.
10870 (xg_create_tool_bar): Force style of tool bar to be horizontal with
10871 icons. Set name of tool bar to emacs-toolbar.
10872 (update_frame_tool_bar): Connect expose event to
10873 xg_tool_bar_expose_callback.
10874
63020c46
RS
108752003-02-17 Richard M. Stallman <rms@gnu.org>
10876
10877 * keyboard.c (this_command_key_count_reset): New variable.
10878 Initiatize to 0 where this_command_key_count is set.
10879 (read_char): Save and restore this_command_key_count_reset
10880 around input method code.
10881 (read_char): If this_command_key_count_reset, echo reread commands.
10882 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
10883
fb4452cc
KH
108842003-02-17 Kenichi Handa <handa@m17n.org>
10885
10886 * fns.c (string_to_multibyte): Always return a multibyte string.
10887
bd11cc09
JR
108882003-02-16 Jason Rumney <jasonr@gnu.org>
10889
e52bd6b7
SM
10890 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
10891 Negative max_fonts parameter means list all.
bd11cc09 10892
4cdf4bde
DL
108932003-02-14 Dave Love <fx@gnu.org>
10894
10895 * fns.c (Flanginfo): Doc fix.
10896
023b93f6
KS
108972003-02-13 Kim F. Storm <storm@cua.dk>
10898
37cd4238
KS
10899 * lread.c (read_escape): Interpret \s as a SPACE character, except
10900 for \s-X in a character constant which still is the super modifier.
10901 (read1): Signal an `invalid read syntax' error if a character
10902 constant is immediately followed by a digit or symbol character.
10903
140a6b7e
KS
10904 * search.c (Fmatch_data): Doc fix. Explicitly state that
10905 match-data is undefined if last search failed.
10906
3419757d 10907 * keymap.c (Fcommand_remapping): Rename from Fremap_command.
023b93f6
KS
10908 All uses changed.
10909
7d5c86e5
JB
109102003-02-12 Juanma Barranquero <lektu@terra.es>
10911
10912 * eval.c (Fdefmacro): Fix typo.
10913
295fff2c
KS
109142003-02-12 Kim F. Storm <storm@cua.dk>
10915
10916 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
10917 macro is a string, convert meta modifiers in string when copying
10918 the string into a vector.
10919
60f3202d
KS
109202003-02-11 Kim F. Storm <storm@cua.dk>
10921
10922 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
10923
61cb0b53
KH
109242003-02-11 Kenichi Handa <handa@m17n.org>
10925
10926 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
10927
7392e23c
KS
109282003-02-10 Kim F. Storm <storm@cua.dk>
10929
10930 * process.c: Doc fixes.
10931 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
10932
ce4254bd
KH
109332003-02-10 Kenichi Handa <handa@m17n.org>
10934
9c7a329a
KH
10935 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
10936
ce4254bd
KH
10937 * process.c (QCfilter_multibyte): New variable.
10938 (setup_process_coding_systems): New function.
e52bd6b7
SM
10939 (Fset_process_buffer, Fset_process_filter):
10940 Call setup_process_coding_systems.
ce4254bd
KH
10941 (Fstart_process): Initialize the member `filter_multibyte' of
10942 struct Lisp_Process.
10943 (create_process): Call setup_process_coding_systems.
10944 (Fmake_network_process): New keyward `:filter-multibyte'.
10945 Initialize the member `filter_multibyte' of struct Lisp_Process.
10946 Call setup_process_coding_systems.
10947 (server_accept_connection): Call setup_process_coding_systems.
10948 (read_process_output): If the process has a filter, decide the
10949 multibyteness of a string to given to the filter by
10950 `filter_multibyte' member of the process. If the process doesn't
10951 have a filter and the result of conversion is unibyte, use
10952 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
10953 multibyte form.
10954 (Fset_process_coding_system): Call setup_process_coding_systems.
10955 (Fset_process_filter_multibyte): New function.
10956 (Fprocess_filter_multibyte_p): New function.
10957 (syms_of_process): Intern and staticpro QCfilter_multibyte.
10958 Defsubr Sset_process_filter_multibyte and
10959 Sprocess_filter_multibyte_p.
10960
10961 * process.h (struct Lisp_Process): New member filter_multibyte.
10962
10963 * lisp.h (setup_process_coding_systems): Add prototype.
10964
10965 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
10966 process, update coding systems for the process.
10967
b08d5f59
KH
109682003-02-09 Kenichi Handa <handa@m17n.org>
10969
10970 * fns.c (string_to_multibyte): New function.
10971 (Fstring_to_multibyte): New function.
10972 (syms_of_fns): Defsubr it.
10973
0dfd93c0
AS
109742003-02-08 Andreas Schwab <schwab@suse.de>
10975
10976 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
10977 instead of the substitution.
10978
7b76ca1c
JD
109792003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10980
10981 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
10982
10983 * xmenu.c (menu_position_func): Adjust menu popup position so that
10984 the menu is fully visible.
7b76ca1c 10985
2436a4e4
JD
109862003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10987
10988 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
e52bd6b7
SM
10989 (x_make_frame_invisible, x_wm_set_icon_position):
10990 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
2436a4e4
JD
10991
10992 * xfns.c (x_set_name, x_set_title): Ditto.
10993
37d1e680
RS
109942003-02-04 Richard M. Stallman <rms@gnu.org>
10995
10996 * keyboard.c (echo_now): Update before_command_echo_length.
10997 (Freset_this_command_lengths): Reset this_command_key_count etc.
10998 immediately rather than arranging to do it later.
10999 (before_command_key_count_1, before_command_echo_length_1)
11000 (before_command_restore_flag): Vars deleted.
11001 (add_command_key): Don't handle before_command_restore_flag.
11002 (read_char, record_menu_key): Don't update before_command_key_count or
11003 before_command_echo_length.
11004 (read_char): Don't handle before_command_restore_flag.
11005
11006 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
11007 in direct-output clauses if it wouldn't be called in the ordinary case.
11008
578846a3
KS
110092003-02-04 Kim F. Storm <storm@cua.dk>
11010
11011 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
11012
49853a4d
JD
110132003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11014
11015 * gtkutil.c (remove_from_container): Copying list is not needed.
11016 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
11017 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
11018 on list returned from gtk_container_get_children to avoid memory leak.
11019
8b53dc06
JR
110202003-02-01 Jason Rumney <jasonr@gnu.org>
11021
5d54d177
JR
11022 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
11023 local malloc.
11024 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
11025 definitions in xpm.h.
11026 (init_xpm_functions): New function.
f63fd14e 11027 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
5d54d177
JR
11028 (init_external_image_libraries): Try to load libXpm.dll.
11029
8b53dc06
JR
11030 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
11031 timestamp.
11032
b222e415
DL
110332003-01-31 Dave Love <fx@gnu.org>
11034
11035 * syntax.c (Fskip_chars_forward)
11036 (open-paren-in-column-0-is-defun-start): Doc fix.
11037
c60ee5e7
JB
110382003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
11039
11040 * fileio.c: Support // at start of name for Cygwin (just added proper
11041 preprocessor tests).
11042
11043 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
11044
11045 * Makefile.in: Use @EXEEXT@ for Cygwin.
11046
11047 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
11048
11049 * s/cygwin.h: Added for Cygwin port.
11050
53b37591
JB
110512003-01-31 Juanma Barranquero <lektu@terra.es>
11052
11053 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
11054 when including gif_lib.h.
fe929957 11055 (init_gif_functions, init_tiff_functions): New functions.
f63fd14e
JB
11056 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
11057 Windows. Disable color table lookups. Call library functions
53b37591 11058 through pointers determined at runtime.
fe929957
JB
11059 (init_external_image_libraries): Try to load libungif.dll and
11060 libtiff.dll.
53b37591 11061
45415a8f
KH
110622003-01-31 Kenichi Handa <handa@m17n.org>
11063
11064 * xdisp.c (SKIP_GLYPHS): New macro.
e52bd6b7 11065 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
45415a8f 11066
a97e4138
JD
110672003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11068
e52bd6b7 11069 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
a97e4138 11070
6eed9bed
DL
110712003-01-30 Dave Love <fx@gnu.org>
11072
11073 * alloc.c (Vgc_elapsed, gcs_done): New variables.
11074 (Fgarbage_collect): Use them.
11075 (init_alloc, syms_of_alloc): Set them up.
11076
100dcd40
JB
110772003-01-30 Juanma Barranquero <lektu@terra.es>
11078
11079 * w32fns.c (init_external_image_libraries): Add missing operator.
11080
fbd852af
JR
110812003-01-29 Jason Rumney <jasonr@gnu.org>
11082
11083 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
11084 an alternative name for jpeg.dll.
11085
8a2d8020
KH
110862003-01-29 Kenichi Handa <handa@m17n.org>
11087
11088 * xdisp.c (set_cursor_from_row): Pay attention to string display
11089 properties.
11090
058c18c7
AC
110912003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
11092
11093 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
11094 <escape>.
11095 (keycode_to_xkeysym_table): Reformat and add more comments.
11096 (XTread_socket): Drop special case for backspace.
11097
385f11cf
AC
110982003-01-28 Andrew Choi <akochoi@shaw.ca>
11099
11100 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
11101 values in old-style RGB specs.
11102
c922a224
JB
111032003-01-27 Juanma Barranquero <lektu@terra.es>
11104
11105 * w32fns.c (init_external_image_libraries): Try alternate names for the
11106 jpeg dll.
11107
0a1d6de0
JD
111082003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11109
11110 * gtkutil.c (create_dialog, xg_separator_p)
11111 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
11112 before calling strcmp or strlen.
11113
a97e4138 111142003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1d1885fc
JD
11115
11116 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
11117 and handle image load failure.
11118
28908312
JR
111192003-01-26 Jason Rumney <jasonr@gnu.org>
11120
11121 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
11122 New functions.
f63fd14e
JB
11123 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
11124 Disable color table lookups. Call jpeg library functions
28908312
JR
11125 through pointers determined at runtime.
11126 (init_external_image_libraries): Try to load jpeg.dll.
11127
84e47416
RS
111282003-01-25 Richard M. Stallman <rms@gnu.org>
11129
11130 * lisp.h: Declare format2 instead of format1.
11131
11132 * fileio.c (barf_or_query_if_file_exists):
11133 Call format2 instead of format1.
11134
11135 * editfns.c (format2): New function, replaces format1
11136 but takes exactly two Lisp Objects as format args.
11137
11138 * buffer.c (Fkill_buffer): Call format2 instead of format1.
11139
a97e4138 111402003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1fcfb866
JD
11141
11142 * xterm.h: Change to return value of x_dispatch_event to int.
11143
11144 * xterm.c (x_filter_event): New function.
11145 (event_handler_gdk, XTread_socket): Call x_filter_event.
11146 (x_dispatch_event): Change to return value of finish.
11147 (event_handler_gdk): Use return value from x_dispatch_event.
11148
11149 * xfns.c (x_window): Call create_frame_xic for GTK version to
11150 initialize input methods.
11151
11152 * gtkutil.h: Add (void) prototypes.
11153
11154 * gtkutil.c (create_menus): Remove code that puts the help menu to
11155 the right.
11156
54eefef1
JR
111572003-01-25 Jason Rumney <jasonr@gnu.org>
11158
11159 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
11160 [HAVE_PNG]: Sync with xfns.c version.
f63fd14e
JB
11161 (png_load): Adjust colors for Windows. Use Windows
11162 bitmaps. Disable color table lookups.
c262430d
JR
11163 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
11164 (init_png_functions): New function.
11165 (png_read_from_memory, png_load): Call png library functions
11166 through pointers determined at runtime.
11167 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
11168 (init_external_image_libraries): New function.
11169 (init_xfns): Call it.
54eefef1 11170
1a9e275b
AS
111712003-01-24 Andreas Schwab <schwab@suse.de>
11172
11173 * minibuf.c (Fminibuffer_message): Verify type of parameter.
11174
a97e4138 111752003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
81e302ef
JD
11176
11177 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
11178 of static initializer.
11179
422eec7e
DL
111802003-01-24 Dave Love <fx@gnu.org>
11181
11182 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
11183 architectures.
11184
11185 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
11186 Use __alignof__.
11187
2a026b04
KH
111882003-01-24 Kenichi Handa <handa@m17n.org>
11189
11190 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
e52bd6b7 11191 It it is nonzero, don't pretend that an invisible area doesn't exist.
2a026b04
KH
11192 (command_loop_1): Call adjust_point_for_property with proper
11193 second arg.
11194
a18bb28d
JR
111952003-01-22 Jason Rumney <jasonr@gnu.org>
11196
11197 Sync changes with xterm.c and xfns.c.
11198
11199 * w32term.c (x_draw_glyph_string_foreground)
11200 (x_draw_composite_glyph_string_foreground): Implement overstriking.
11201
11202 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
11203 phys_cursor's hpos is overwritten. This is still not completely
11204 correct, as it doesn't really make sense to use hpos at all to
11205 get the cursor glyph (as that is relative to the width of the
11206 characters on the line, which may have changed during the update).
11207
11208 * w32term.c (notice_overwritten_cursor): Handle the special case
11209 of the cursor being in the first blank non-text line at the
11210 end of a window.
11211
11212 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
11213 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
11214 Compute from the x position returned by x_draw_glyphs.
11215
11216 (x_display_and_set_cursor): Don't set phys_cursor_width here,
11217 except for NO_CURSOR and system caret, to make phys_cursor_width
11218 contain what its name suggests.
11219 (notice_overwritten_cursor): Consider the cursor image erased if
11220 the output area intersects the cursor image in y-direction.
11221
6a097c0c
SM
11222 * w32term.c (note_mode_line_or_margin_highlight): Rename from
11223 note_mode_line_highlight and extend.
a18bb28d
JR
11224
11225 * w32term.c (last_window): New variable.
11226 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
11227 (note_mouse_movement): Remove reimplemented code in #if 0.
11228
11229 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
11230 not update_mode_lines, and always set it to 1.
11231
ac6e47ef
JR
112322003-01-21 Jason Rumney <jasonr@gnu.org>
11233
11234 * w32fns.c (IDC_HAND): Define it if system headers don't.
11235
112362003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
11237
11238 * w32term.h (struct w32_output): New member hand_cursor.
11239 (WM_EMACS_SETCURSOR): New message definition.
11240
11241 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
11242 function w32_define_cursor.
11243 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
11244 position, change member name output_data.x to output_data.w32 and
11245 add function w32_define_cursor.
11246 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
11247 and change member name output_data.x to output_data.w32.
e52bd6b7
SM
11248 (w32_initialize_display_info):
11249 Setup dpyinfo->vertical_scroll_bar_cursor.
ac6e47ef
JR
11250
11251 * w32fns.c (Vx_hand_shape): New variable.
11252 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
11253 WM_EMACS_SETCURSOR.
11254 (x-create-frame): Setup Cursor types.
11255
ceb39a17
JB
112562003-01-21 David Ponce <david@dponce.com>
11257
ac6e47ef 11258 * w32term.c (w32_encode_char): For DIM=1 charset, set
f63fd14e 11259 ccl->reg[2] to -1 before calling ccl_driver. (Sync. with xterm.c
ac6e47ef 11260 x_encode_char change by Kenichi Handa <handa@m17n.org> on
ceb39a17 11261 2002-09-30.)
ac6e47ef
JR
11262 (w32_draw_relief_rect): Declare all args.
11263 (w32_define_cursor): New.
11264
11265 * w32fns.c (w32_load_cursor): New function.
11266 (w32_init_class): Use it.
11267 (x_put_x_image): Declare all args.
11268
b6189c3b 112692003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk>
46cf0bed
JB
11270
11271 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
11272
a97e4138 112732003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e8794476
JD
11274
11275 * gtkutil.c: Must include stdio.h before termhooks.h
11276
83fc9c63
DL
112772003-01-21 Dave Love <fx@gnu.org>
11278
11279 * alloc.c (Fgc_status): Print zombie list.
11280 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
11281 Fix assignment of zombies.
11282 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
11283 Don't take car of non-cons.
11284
11285 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
11286
11287 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
11288
fe04b8c8
JR
112892003-01-20 David Ponce <david@dponce.com>
11290
11291 * w32menu.c (digest_single_submenu): Declare all args.
11292
11293 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
11294 changes in xmenu.c:
11295
11296 (parse_single_submenu): Use individual keymap's prompt
11297 string as pane name, if there is one.
11298 (set_frame_menubar): Save menu_items_n_panes from each call to
11299 parse_single_submenu and use it when calling digest_single_submenu.
11300
539e69a9
ST
113012003-01-20 Steven Tamm <steventamm@mac.com>
11302
7e26f91b 11303 * macterm.c (XTread_socket): Check for valid, visible window
539e69a9
ST
11304 before sending a scroll-wheel event.
11305
675d000f
RS
113062003-01-20 Richard M. Stallman <rms@gnu.org>
11307
11308 * xdisp.c (redisplay_window): If mini window's buffer is not
11309 a minibuffer, then redisplay it like other windows.
11310
a97e4138 113112003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
22174d10
JD
11312
11313 * gtkutil.c (xg_create_frame_widgets): Check if there is an
11314 external tool bar before setting tool bar height.
11315
048addec
JD
113162003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11317
11318 * xterm.c (handle_one_xevent): Surround popup_activated
11319 with #ifdef:s for non-toolkit version.
11320
11321 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
11322 (gtkutil.o): New file.
11323 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
11324 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
11325
11326 * gtkutil.c: New file for GTK version.
11327
11328 * gtkutil.h: New file for GTK version.
11329
11330 * xterm.h: Add xt_or_gtk_widget.
11331 Include gtk files for USE_GTK.
11332 (struct x_output): Add toolbar_height.
11333 (struct x_output): Add GTK widgets and Gdk size_hints.
11334 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
11335 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
11336 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
11337
11338 * xterm.c: Include gtkutil.h for USE_GTK.
78819ebb 11339 (free_frame_menubar): Declare extern void for USE_GTK.
048addec
JD
11340 (note_mouse_highlight): Check popup_activated for USE_GTK.
11341 (xt_action_hook): Don't compile if USE_GTK.
11342 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
11343 (xg_scroll_callback): New function.
11344 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
11345 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
11346 for USE_GTK.
11347 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
11348 xg_show_scroll_bar for USE_GTK.
11349 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
11350 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
11351 (event_handler_gdk): New function for USE_GTK.
11352 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
11353 (handle_one_xevent): Make sure widget is mapped before
11354 calling x_real_positions for USE_GTK.
11355 (XTread_socket): Add GTK event loop for USE_GTK.
11356 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
11357 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
11358 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
11359 (x_iconify_frame): Add code for USE_GTK.
11360 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
11361 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
11362 is in gtkutil.c.
11363 (x_term_init): Add initialization for GTK.
11364 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
11365
11366 * xmenu.c: Include gtkutil.h for USE_GTK.
11367 (Fx_popup_menu): Use current position if x and y is NIL.
6bdb309a
SM
11368 (single_menu_item, single_menu_item, Fx_popup_dialog):
11369 Check for USE_GTK.
048addec
JD
11370 (popup_widget_loop): New function for USE_GTK.
11371 (x_activate_menubar): Add code for USE_GTK.
11372 (popup_activate_callback, popup_deactivate_callback)
6bdb309a
SM
11373 (menu_highlight_callback, menubar_selection_callback):
11374 Add USE_GTK versions.
048addec
JD
11375 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
11376 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
11377 (free_frame_menubar): Only compile if not USE_GTK. GTK version
11378 is in gtkutil.c.
11379 (popup_selection_callback): New version for USE_GTK.
11380 (create_and_show_popup_menu): New fuction, one USE_GTK version and
6bdb309a 11381 one USE_X_TOOLKIT version.
048addec
JD
11382 (xmenu_show): Call create_and_show_popup_menu.
11383 (dialog_selection_callback): New version for USE_GTK.
11384 (create_and_show_dialog): New fuction, one USE_GTK version and
6bdb309a 11385 one USE_X_TOOLKIT version.
048addec
JD
11386 (xdialog_show): Call create_and_show_dialog.
11387
11388 * xfns.c: Include gtkutil for USE_GTK.
11389 (x_window_to_frame, x_any_window_to_frame)
11390 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
11391 (x_top_window_to_frame): Add code for USE_GTK.
11392 (x_set_background_color): Call xg_set_background_color for GTK.
11393 (x_set_menu_bar_lines): Check for USE_GTK.
11394 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
11395 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
11396 (x_window): Call xg_create_frame_widgets for USE_GTK.
11397 (Fx_create_frame): Check for USE_GTK
11398 (Fx_file_dialog): New implementation for USE_GTK.
11399
11400 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
11401 (update_menu_bar): Add check for USE_GTK.
11402 (update_tool_bar): Add check for USE_GTK and external tool bar.
11403 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
11404 (redisplay_internal): Add check for USE_GTK and popup_activated.
11405 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
11406 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
11407 (display_menu_bar): Add check for USE_GTK
11408
78819ebb 11409 * lisp.h (Vx_resource_name): Declare extern.
048addec 11410
a64387ee 11411 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
048addec
JD
11412 for USE_GTK.
11413 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
11414
11415 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
11416 (FRAME_EXTERNAL_TOOL_BAR): New macro.
11417 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
11418
11419 * fileio.c (Fread_file_name): Add check for USE_GTK.
11420
6bdb309a
SM
11421 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
11422 Add check for USE_GTK.
048addec
JD
11423
11424 * config.in: Added HAVE_GTK
11425
11426 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
11427
114282003-01-18 Stefan Monnier <monnier@cs.yale.edu>
11429
11430 * charset.h (Funibyte_char_to_multibyte): Export.
11431
114322003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11433
11434 * xmenu.c (mouse_position_for_popup): New function.
11435 (Fx_popup_menu): Call mouse_position_for_popup for X and
11436 mouse_position_hook for others.
11437
114382003-01-17 Kim F. Storm <storm@cua.dk>
11439
11440 * editfns.c (Finsert): Mention `string-make-multibyte' and
11441 `string-as-multibyte' in doc string.
11442
114432003-01-17 Kenichi Handa <handa@m17n.org>
11444
11445 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
3c02a6f5 11446
048addec
JD
11447 * editfns.c (Fformat): Convert an unibyte char argument that is
11448 formatted by "%c" to multibyte if the total result must be a
11449 multibyte string.
cd7df9c0 11450
048addec 114512003-01-16 Kim F. Storm <storm@cua.dk>
cd7df9c0 11452
048addec
JD
11453 * process.c (set-process-filter): Document unibyte/multibyte-ness
11454 of string argument.
56210ecd 11455
048addec 114562003-01-16 Kenichi Handa <handa@m17n.org>
56210ecd 11457
048addec 11458 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
56210ecd 11459
048addec
JD
11460 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
11461 (re_search_2): Likewise.
6df8b9fe 11462
048addec 114632003-01-15 Kenichi Handa <handa@m17n.org>
6df8b9fe 11464
048addec
JD
11465 * xdisp.c (message_dolog): Fix bug of the case that *Message*
11466 buffer is unibyte.
292ddc31 11467
048addec 114682003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
292ddc31 11469
048addec 11470 * fns.c (Fsubstring): Clarify doc string.
292ddc31 11471
048addec
JD
11472 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
11473 (Fprevious_char_property_change)
11474 (Fnext_single_char_property_change)
11475 (Fprevious_single_char_property_change, Fnext_property_change)
11476 (Fnext_single_property_change, Fprevious_property_change)
11477 (Fprevious_single_property_change, Fadd_text_properties)
11478 (Fput_text_property, Fset_text_properties)
11479 (Fremove_text_properties, Fremove_list_of_text_properties)
11480 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
63e4e4c6 11481
048addec 114822003-01-14 Kim F. Storm <storm@cua.dk>
63e4e4c6 11483
048addec
JD
11484 * process.h (struct Lisp_Process): New member plist replaces old
11485 member private_vars. All uses changed.
63e4e4c6 11486
048addec 11487 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
6bdb309a 11488 (QCplist): Rename from QCvars. Change all uses.
048addec 11489 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
6bdb309a 11490 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
048addec 11491 (syms_of_process): Intern, staticpro, defsubr these.
6bdb309a 11492 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
7ed16567 11493
048addec 114942003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
7ed16567 11495
6bdb309a 11496 * m/delta.h: Remove (obsolete).
e833850f 11497
048addec 114982003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
e833850f 11499
048addec
JD
11500 * fileio.c (Fdelete_directory, Fdelete_file): Document the
11501 behaviour in front of symlinks.
11502 (Fdelete_file): Raise an error on directories.
817cb127 11503
048addec 115042003-01-13 Dave Love <fx@gnu.org>
817cb127 11505
048addec 11506 * fns.c (Freverse): Use QUIT.
3e8cf2ea 11507
048addec 115082003-01-13 Richard M. Stallman <rms@gnu.org>
3e8cf2ea 11509
048addec
JD
11510 * minibuf.c (minibuffer_completion_contents):
11511 Error if point is inside prompt.
3e8cf2ea 11512
048addec
JD
11513 * keyboard.c (command_loop_1): Don't redisplay directly
11514 if there's a post-command-hook.
3e8cf2ea 11515
048addec
JD
11516 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
11517 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
2c10f029 11518
048addec 115192003-01-12 Kim F. Storm <storm@cua.dk>
94e8ffca 11520
048addec 11521 * process.h (struct Lisp_Process): New member private_vars.
94e8ffca 11522
048addec
JD
11523 * process.c (QCvars): New variable.
11524 (syms_of_process): Intern and staticpro it.
11525 (Fset_process_contact): Removed function.
11526 (Fprocess_variable, Fset_process_variable): New functions.
11527 (syms_of_process): Defsubr them.
11528 (Fstart_process): Initialize private_vars plist to nil.
11529 (Fmake_network_process): New arg :vars to setup the private
11530 variables for new network process.
11531 (server_accept_connection): Copy server's private variables to
11532 client process.
2c10f029 11533
048addec
JD
11534 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
11535 crashes). Code rewritten and simplified. Now directly aligns the
11536 pointer and recalculates pure_bytes_used, rather than aligning the
11537 size and adjusting the pointer.
b8a76c6c 11538
048addec 115392003-01-11 Kim F. Storm <storm@cua.dk>
b8a76c6c 11540
048addec
JD
11541 * process.c (Fset_process_contact): New function.
11542 (syms_of_process): defsubr it.
11543 (make-network-process): Update doc.
3a8d0899 11544
048addec 115452003-01-10 Andreas Schwab <schwab@suse.de>
3a8d0899 11546
048addec
JD
11547 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
11548 Reported by Berthold Gunreben <b.gunreben@web.de>.
4abc7470 11549
048addec 115502003-01-10 Dave Love <fx@gnu.org>
4abc7470 11551
048addec 11552 * composite.c (syms_of_composite): Make composition_hash_table weak.
b809d662 11553
048addec 115542003-01-09 Kim F. Storm <storm@cua.dk>
b809d662 11555
048addec
JD
11556 * process.c (Fmake_network_process): Convert new port number
11557 to host byte order for `:service t' case. From Mario Lang.
bf338245 11558
048addec 115592003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
bf338245 11560
048addec
JD
11561 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
11562 instead of XtAppProcessEvent.
bf338245 11563
048addec
JD
11564 * xterm.c (handle_one_xevent): New function.
11565 (x_dispatch_event): New function.
11566 (XTread_socket): Call handle_one_xevent.
bf338245 11567
048addec 11568 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
e833850f 11569
048addec
JD
11570 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
11571 call XQueryPointer to get coordinates.
11572 (popup_get_selection): Do not set popup_activated_flag to zero,
11573 let popup_deactivate_callback do that. Needed for Motif.
11574 Call x_dispatch_event instead of XtDispatchEvent.
11575 (xmenu_show): Calculate root coordinate from frame top/left position.
c4af2bce 11576
048addec 115772003-01-08 Kim F. Storm <storm@cua.dk>
c4af2bce 11578
6bdb309a 11579 * process.c (server_accept_connection): Fix recording of new
048addec
JD
11580 connection's local address in :local property of contact info.
11581 (Fmake_network_process): Record local network address for new
11582 client processes in :local property of contact info.
6bdb309a 11583 (format-network-address): Add arg OMIT-PORT. Change callers.
00e3ab56 11584
048addec 115852003-01-07 Dave Love <fx@gnu.org>
00e3ab56 11586
048addec 11587 * Makefile.in (fns.o): Depend on coding.h.
f387e1fd 11588
048addec 115892003-01-07 Markus Rost <rost@math.ohio-state.edu>
f387e1fd 11590
048addec 11591 * minibuf.c (Fread_variable): Doc fix.
f387e1fd 11592
048addec
JD
11593 * eval.c (Fuser_variable_p): Doc change. For custom variables,
11594 use the same test as for custom-variable-p.
8c6d74c6 11595
048addec 115962003-01-05 Richard M. Stallman <rms@gnu.org>
e833850f 11597
048addec
JD
11598 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
11599 Count LAST_LINE_MISFIT in scroll margin for end of window.
11600 Move label too_near_end before setting SCROLL_MARGIN_POS.
11601 Set LAST_LINE_MISFIT before jumping there.
8c6d74c6 11602
048addec
JD
11603 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
11604 scroll_conservatively case. If scrolling that much doesn't change
11605 STARTP, move it down one line.
e833850f 11606
048addec
JD
11607 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
11608 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
8c6d74c6 11609
048addec
JD
11610 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
11611 selected frame.
8c6d74c6 11612
048addec 11613 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
3419757d 11614 (syms_of_keymap): Staticpro them.
048addec
JD
11615 (Fapropos_internal): Initialize them and clear them out.
11616 Don't GCPRO them.
8c6d74c6 11617
048addec
JD
11618 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
11619 Doc fixes.
8c6d74c6 11620
048addec
JD
11621 * lisp.h: New misc type Lisp_Save_Value.
11622 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
11623 (XSAVE_VALUE): New macro.
11624 (struct Lisp_Save_Value): New data type.
11625 (union Lisp_Misc): Add u_save_value alternative.
78819ebb 11626 (make_save_value): Declare.
8c6d74c6 11627
048addec 11628 * alloc.c (make_save_value): New function.
8c6d74c6 11629
048addec
JD
11630 * xterm.c (x_catch_errors): Save dpy using make_save_value.
11631 (x_catch_errors_unwind): Call XSync.
8c6d74c6 11632
048addec 116332003-01-01 Richard M. Stallman <rms@gnu.org>
8c6d74c6 11634
048addec 11635 * window.c (window_scroll_pixel_based): Partially undo last change.
8c6d74c6 11636
048addec
JD
11637 * keyboard.c (command_loop_1): Call adjust_point_for_property
11638 in direct action cases for Qforward_char and Qbackward_char.
11639 Set already_adjusted so it won't be done twice.
8c6d74c6 11640
b6189c3b 116412002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk>
8c6d74c6 11642
048addec
JD
11643 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
11644 type definition of size_t.
8c609cff 11645
048addec 116462003-01-02 Steven Tamm <steventamm@mac.com>
8c609cff 11647
048addec
JD
11648 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
11649 distinguish Carbon GUI builds from X11 builds on darwin.
b37113a1 11650
048addec 116512002-12-30 Steven Tamm <steventamm@mac.com>
b37113a1 11652
048addec
JD
11653 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
11654 to default to t.
fa634a5e 11655
048addec 116562002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
fa634a5e 11657
048addec 11658 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
ce0669d4 11659
048addec 116602002-12-28 Steven Tamm <steventamm@mac.com>
ce0669d4 11661
7e26f91b 11662 * Makefile.in (macosx-bundle): Fix Mac OS X/Carbon port to
048addec
JD
11663 allow building in a different directory than source. Uses some
11664 GNU Make extensions, but there is no other make on Mac OS X.
2308af15 11665
048addec 116662002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
2308af15 11667
048addec
JD
11668 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
11669 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
11670 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
11671 (Fstring_to_number): Mention the returned value in the doc strings.
2155ecf3 11672
048addec 116732002-12-23 Richard M. Stallman <rms@gnu.org>
2155ecf3 11674
048addec
JD
11675 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
11676 <scroll-down-aggressively>: Doc fix.
2155ecf3 11677
048addec
JD
11678 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
11679 string as pane name, if there is one.
11680 (set_frame_menubar): Save menu_items_n_panes from each call to
11681 parse_single_submenu and use it when calling digest_single_submenu.
2155ecf3 11682
048addec
JD
11683 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
11684 Don't try to make last line fully visible if it is past end of window.
61f1d295 11685
048addec 116862002-12-22 Steven Tamm <steventamm@mac.com>
61f1d295 11687
048addec
JD
11688 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
11689 (mac_menu_show): Add support for hierarchical popup menus.
11690 (add_menu_item): Remove indentation support.
11691 (fill_submenu, fill_menu): Create hierarchical menus
11692 instead of using indentation.
0b17a217 11693
048addec 116942002-12-22 Richard M. Stallman <rms@gnu.org>
0b17a217 11695
048addec
JD
11696 * xdisp.c (try_cursor_movement): Don't call try_window here.
11697 (redisplay_window): Never redisplay minibuffer when inactive.
0b17a217 11698
048addec 11699 * window.c (select_window_1): Undo 9/21 change.
402e4f8b 11700
048addec 117012002-12-22 Steven Tamm <steventamm@mac.com>
402e4f8b 11702
048addec
JD
11703 * macterm.c (XTread_socket): Call KeyTranslate for control and
11704 meta to deal correctly shifted non-alpha characters, like C-S-5
7e26f91b 11705 being treated like C-%. Do not look for shift key to deal
048addec 11706 with masking off control-key with mac-reverse-ctrl-meta.
f02cac82 11707
048addec 117082002-12-21 Richard M. Stallman <rms@gnu.org>
f02cac82 11709
048addec
JD
11710 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
11711 If it is non-nil, run timers. Use an unwind-protect to requeue
11712 the events that were read ahead.
11713 (popup_get_selection_unwind): New subroutine.
11714 (popup_get_selection_queue): File-scope variable now holds that queue.
11715 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
11716 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
11717 Use an unwind-protect to pop down the dialog box.
11718 (xdialog_show_unwind): New subroutine implements that.
f02cac82 11719
048addec
JD
11720 * xdisp.c (row_containing_pos): Change exit test using last_y.
11721 (try_window_id): Abort if row_containing_pos returns null.
f02cac82 11722
048addec
JD
11723 * lread.c (load_error_handler): New function.
11724 (Fload): Handle errors in Fsubstitute_in_file_name.
11725 Don't expect Fsignal to return.
f02cac82 11726
048addec
JD
11727 * eval.c: Errors and throws work right with interrupt blocking.
11728 (struct catchtag): New elt interrupt_input_blocked.
11729 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
11730 (internal_catch, Fcondition_case, internal_condition_case)
11731 (internal_condition_case_1, internal_condition_case_2): Save it.
11732 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
f02cac82 11733
048addec 11734 * editfns.c (Fformat): Add parens.
f02cac82 11735
048addec
JD
11736 * dired.c (file_name_completion): Fix that change.
11737 Delete special quit-handling code; just use QUIT.
f02cac82 11738
b6189c3b 117392002-12-21 Tak Ota <Takaaki.Ota@am.sony.com>
f02cac82 11740
048addec
JD
11741 * dired.c (file_name_completion): Close directory on error
11742 just as in directory_files_internal.
1a590729 11743
048addec 117442002-12-19 David Kastrup <David.Kastrup@t-online.de>
1a590729 11745
048addec
JD
11746 * window.c (Fset_window_configuration): Set old_point to correct
11747 value when new_current_buffer == current_buffer.
f02cac82 11748
048addec 117492002-12-17 Ben Key <bkey1@tampabay.rr.com>
2308af15 11750
048addec
JD
11751 Revisited my earlier fix for the following entry in etc/PROBLEMS:
11752 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
11753 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
9785d95b 11754
048addec
JD
11755 These changes were in part based upon suggestions made by Peter
11756 'Luna' Runestig [peter@runestig.com].
9785d95b 11757
f4a5a485
SM
11758 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token)
11759 (g_b_init_get_token_information, g_b_init_lookup_account_sid)
11760 (g_b_init_get_sid_identifier_authority ): Add several static
048addec 11761 global variables.
9785d95b 11762
048addec
JD
11763 * w32.c (globals_of_w32): New function. Used to initialize those
11764 global variables that must always be initialized on startup even
11765 when the global variable initialized is non zero. Its primary
11766 purpose at this time is to set the global variables
11767 g_b_init_is_windows_9x, g_b_init_open_process_token,
11768 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
11769 g_b_init_get_sid_identifier_authority to 0 on startup.
11770 Called from main.
9785d95b 11771
048addec
JD
11772 * w32.c (is_windows_9x): Perform initialization only if
11773 g_b_init_is_windows_9x is equal to 0. On initialization set
11774 g_b_init_is_windows_9x equal to 1.
2308af15 11775
048addec
JD
11776 * w32.c (open_process_token): Perform initialization only if
11777 g_b_init_open_process_token is equal to 0. On initialization set
11778 g_b_init_open_process_token equal to 1.
2308af15 11779
048addec
JD
11780 * w32.c (get_token_information): Perform initialization only if
11781 g_b_init_get_token_information is equal to 0. On initialization
11782 set g_b_init_get_token_information equal to 1.
9785d95b 11783
048addec
JD
11784 * w32.c (lookup_account_sid): Perform initialization only if
11785 g_b_init_lookup_account_sid is equal to 0. On initialization
11786 set g_b_init_lookup_account_sid equal to 1.
9785d95b 11787
048addec
JD
11788 * w32.c (get_sid_identifier_authority): Perform initialization
11789 only if g_b_init_get_sid_identifier_authority is equal to 0.
11790 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
9785d95b 11791
f63fd14e 11792 * w32fns.c (globals_of_w32fns): New function. Used to initialize
048addec
JD
11793 those global variables that must always be initialized on startup
11794 even when the global variable initialized is non zero.
11795 Its primary purpose at this time is to initialize the global variable
11796 track_mouse_event_fn.
9785d95b 11797
a64387ee 11798 * w32fns.c (w32_wnd_proc): Remove initialization of
048addec 11799 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
9785d95b 11800
048addec 11801 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
9785d95b 11802
f63fd14e 11803 * w32menu.c (globals_of_w32menu): New function. Used to
048addec
JD
11804 initialize those global variables that must always be initialized
11805 on startup even when the global variable initialized is non zero.
11806 Its primary purpose at this time is to initialize the global
11807 variables get_menu_item_info and set_menu_item_info.
9785d95b 11808
048addec
JD
11809 * w32menu.c (initialize_frame_menubar): Remove initialization of
11810 get_menu_item_info and set_menu_item_info.
9785d95b 11811
048addec 11812 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
9785d95b 11813
048addec
JD
11814 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
11815 Declare them.
9785d95b 11816
048addec
JD
11817 * emacs.c (main): Call globals_of_w32 prior to calling
11818 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
11819 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
11820 is defined.
9785d95b 11821
048addec
JD
11822 * w32term.c (x_update_window_begin): Fix Windows API error
11823 detected by BoundsChecker. Test to determine if
11824 w32_system_caret_hwnd is NULL prior to attempting to use
11825 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
2308af15 11826
048addec
JD
11827 * w32term.c (x_update_window_end): Fix Windows API error
11828 detected by BoundsChecker. Test to determine if
11829 w32_system_caret_hwnd is NULL prior to attempting to use
11830 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
b6da19ef 11831
048addec 118322002-12-17 Kenichi Handa <handa@m17n.org>
b6da19ef 11833
048addec
JD
11834 * coding.c (coding_system_require_warning): New variable.
11835 (syms_of_coding): DEFVAR it.
b6da19ef 11836
048addec 11837 * coding.h (coding_system_require_warning): Extern it.
b6da19ef 11838
048addec
JD
11839 * fileio.c (choose_write_coding_system): Even if
11840 Vcoding_system_for_write is non-nil, if
11841 coding_system_require_warning is nonzero, call
11842 Vselect_safe_coding_system_function.
bfcf6dbe 11843
048addec 118442002-12-17 Markus Rost <rost@math.ohio-state.edu>
bfcf6dbe 11845
048addec
JD
11846 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
11847 (lisp): Add font-core.
2c568af5 11848
048addec 118492002-12-13 Stefan Monnier <monnier@cs.yale.edu>
2c568af5 11850
048addec
JD
11851 * textprop.c (text_read_only): New arg `propval'.
11852 (get_char_property_and_overlay): Remove unused var `next_overlay'.
11853 (verify_interval_modification): Use text_read_only's new arg.
b8c6225c 11854
048addec 118552002-12-13 Kenichi Handa <handa@m17n.org>
b8c6225c 11856
048addec 11857 * coding.c (Funencodable_char_position): Set pend correctly.
706ddb8f 11858
048addec 118592002-12-12 Jason Rumney <jasonr@gnu.org>
706ddb8f 11860
048addec
JD
11861 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
11862 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
11863 Be more careful about when help_events are generated.
96720f09 11864
048addec 118652002-12-12 Steven Tamm <steventamm@mac.com>
96720f09 11866
048addec
JD
11867 * macterm.c (mac_check_for_quit_char): Correctly set the
11868 modifiers of the event to 0.
11869 * mac.c (sys_select): Duplicate rfds before calling select to
11870 ensure that rfds survive the while loop.
e5ae1c49 11871
048addec 118722002-12-11 Kim F. Storm <storm@cua.dk>
e5ae1c49 11873
048addec
JD
11874 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
11875 row_containing_pos returned NULL.
2eb46b2d 11876
048addec 118772002-12-10 Steven Tamm <steventamm@mac.com>
2eb46b2d 11878
6bdb309a 11879 * mac.c (sys_read): Fix sys_read to not call select if IO is
048addec 11880 non-blocking.
6bdb309a 11881 (sys_select): Fix sys_select to not use a timeout larger than
048addec 11882 the one given.
b11f1d8a 11883
048addec 118842002-12-10 Juanma Barranquero <lektu@terra.es>
b11f1d8a 11885
048addec 11886 * editfns.c (Fformat): Use alloca, not _alloca.
d8528226 11887
048addec 118882002-12-09 Richard M. Stallman <rms@gnu.org>
d8528226 11889
048addec
JD
11890 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
11891 as the last thing.
a4ac5b17 11892
048addec 118932002-12-09 Dave Love <fx@gnu.org>
a4ac5b17 11894
048addec 11895 * s/sol2-8.h: Removed. (Not necessary.)
ac42d7b9 11896
048addec 118972002-12-09 Matthew Swift <swift@alum.mit.edu>
ac42d7b9 11898
048addec
JD
11899 * editfns.c (Fformat): Handle precision in string conversion
11900 specifiers like libc functions do (ie, print at most that many
11901 characters).
85cce843 11902
048addec 119032002-12-08 Richard M. Stallman <rms@gnu.org>
85cce843 11904
048addec
JD
11905 * xdisp.c (row_containing_pos): Check more carefully
11906 whether charpos is really in the row before returning it.
0d4d26a7 11907
048addec 119082002-12-07 Steven Tamm <steventamm@mac.com>
0d4d26a7 11909
048addec 11910 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
b11f1d8a 11911
048addec
JD
11912 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
11913 each stack frame. This may change as it could be time consuming.
0d4d26a7 11914
048addec
JD
11915 * macterm.c (mac_check_for_quit_char, quit_char_comp)
11916 (init_quit_char_handler, mac_determine_quit_char_modifiers)
6bdb309a 11917 (mac_initialize): Add code to check for pressing of quit_char
048addec 11918 in the OS event queue.
b11f1d8a 11919
048addec
JD
11920 * mac.c (sys_select): Call mac_check_for_quit_char every second
11921 while blocking on select.
0d4d26a7 11922
048addec
JD
11923 * mac.c (sys_read): Use sys_select to test for input first
11924 before calling read, to allow C-g to break.
9252f7bc 11925
048addec 119262002-12-07 Richard M. Stallman <rms@gnu.org>
9252f7bc 11927
048addec 11928 * minibuf.c (Fcompleting_read): Doc fix.
9252f7bc 11929
048addec 11930 * lread.c (syms_of_lread) <load-history>: Doc fix.
9252f7bc 11931
048addec 11932 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
9252f7bc 11933
048addec
JD
11934 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
11935 autoload.
9252f7bc 11936
048addec 11937 * data.c (Fdefalias): Record in load-history redefining an autoload.
9252f7bc 11938
048addec 11939 * alloca.c: Undo ifdef change accidentally made on 12-04.
bfa261c0 11940
048addec 119412002-12-06 Francesco Potorti` <pot@gnu.org>
bfa261c0 11942
048addec 11943 * xfns.c (png_load): Avoid double gamma correction for PNG images.
c5992177 11944
048addec 119452002-12-04 Richard M. Stallman <rms@gnu.org>
c5992177 11946
048addec 11947 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 11948
048addec 11949 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 11950
048addec 11951 * alloca.c: Don't use #error.
02d588e2 11952
048addec 119532002-12-03 Dave Love <fx@gnu.org>
02d588e2 11954
048addec
JD
11955 * buffer.c (Qucs_set_table_for_input): New.
11956 (Fget_buffer_create): Use it.
11957 (Qset_buffer_major_mode_hook): Deleted.
11958 (Fset_buffer_major_mode): Revert previous change.
11959 (init_buffer_once): Intern ucs-set-table-for-input.
11960 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
11961 Add &Qucs_set_table_for_input.
451e2697 11962
048addec 119632002-12-03 Andreas Schwab <schwab@suse.de>
451e2697 11964
048addec
JD
11965 * callint.c (Fcall_interactively): Use next_event only if less
11966 than key_count.
72742a99 11967
048addec 119682002-12-02 Andrew Choi <akochoi@shaw.ca>
72742a99 11969
048addec
JD
11970 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
11971 names to 255 characters.
72742a99 11972
048addec
JD
11973 * macterm.c (XTread_socket): If all frames have been collapsed,
11974 expand the first one before handling drag-and-drop events.
72742a99 11975
048addec
JD
11976 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
11977 which is detected by autoconf.
40e6ff95 11978
048addec 119792002-12-01 Steven Tamm <steventamm@mac.com>
40e6ff95 11980
048addec
JD
11981 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
11982 offset in two hints table to allow prebinding to be redone and
11983 allow the executable to be stripped.
c02138c6 11984
048addec 119852002-11-29 Dave Love <fx@gnu.org>
c02138c6 11986
048addec
JD
11987 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
11988 already provided.
0e47bbf7 11989
048addec 119902002-11-29 Richard M. Stallman <rms@gnu.org>
0e47bbf7 11991
048addec
JD
11992 * xdisp.c (start_display): Check more intelligently for
11993 whether the line is continued.
11994 (move_it_vertically_backward): Clear it->continuation_lines_width.
44129dcb 11995
048addec 119962002-11-28 Dave Love <fx@gnu.org>
44129dcb 11997
048addec
JD
11998 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
11999 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
f707342d 12000
048addec 120012002-11-27 Steven Tamm <steventamm@mac.com>
f707342d 12002
048addec
JD
12003 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
12004 more descriptive error output from lread.c:Fload upon most require
12005 cycles during boostrapping.
1637fd2c 12006
048addec 120072002-11-27 Jason Rumney <jasonr@gnu.org>
1637fd2c 12008
048addec
JD
12009 * fileio.c (Finsert_file_contents): Give a more appropriate error
12010 for files bigger than 2Gb when off_t is 32 bit.
1637fd2c 12011
048addec
JD
12012 * dired.c (Ffile_attributes): Don't return negative file sizes for
12013 files bigger than 2Gb when off_t is 32 bit.
540c2788 12014
048addec 120152002-11-27 Dave Love <fx@gnu.org>
6b2fd6ea 12016
048addec 12017 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
6b2fd6ea 12018
048addec
JD
12019 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
12020 Test GETPGRP_VOID instead.
12021 [BSD_TERMIOS]: Remove definitions (never used).
6b2fd6ea 12022
048addec
JD
12023 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
12024 Don't define.
12025 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
540c2788 12026
048addec 12027 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
8cc03716 12028
048addec 120292002-11-25 Jason Rumney <jasonr@gnu.org>
8cc03716 12030
048addec
JD
12031 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
12032 supported.
4042a81a 12033
048addec 120342002-11-25 Dave Love <fx@gnu.org>
4042a81a 12035
048addec 12036 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
4042a81a 12037
048addec 12038 * Makefile.in (TEMACS_LDFLAGS): Update last change.
be4ee72f 12039
048addec 120402002-11-25 Andreas Schwab <schwab@suse.de>
be4ee72f 12041
048addec 12042 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
82122254 12043
048addec 120442002-11-24 Steven Tamm <steventamm@mac.com>
82122254 12045
048addec
JD
12046 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
12047 determine the size of pointers alloced in unexed space instead
12048 of using possibly invalid emacs_zone pointers. This fixes the
12049 binary incompatibility problems caused by updates to libSystem.B.
c1ee53bc 12050
048addec 120512002-11-24 Richard M. Stallman <rms@gnu.org>
c1ee53bc 12052
048addec 12053 * search.c (Fstring_match): Doc fix.
c1ee53bc 12054
048addec
JD
12055 * callint.c (Fcall_interactively): If a command fails because
12056 `*' detects a read-only buffer, but RECORD_FLAG is set,
12057 record it anyway if the args don't actually do tty input.
5598c32e 12058
048addec 120592002-11-22 Dave Love <fx@gnu.org>
5598c32e 12060
048addec 12061 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
5598c32e 12062
048addec
JD
12063 * keyboard.c (interrupt_signal): Provide forward declaration.
12064 (kbd_buffer_store_event): Don't declare interrupt_signal.
5598c32e 12065
048addec 12066 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
97b14e22 12067
048addec 120682002-11-21 Richard M. Stallman <rms@gnu.org>
97b14e22 12069
048addec
JD
12070 * eval.c (interactive_p): Skip any number of bytecode
12071 and special form frames, in any order.
516eea8e 12072
048addec 120732002-11-20 Jason Rumney <jasonr@gnu.org>
516eea8e 12074
048addec
JD
12075 * w32fns.c (convert_mono_to_color_image): New function.
12076 (xbm_load, xbm_load_image): Use it when foreground or background
12077 is explicitly set.
04dbfa08 12078
048addec 120792002-11-19 Dave Love <fx@gnu.org>
04dbfa08 12080
048addec 12081 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
b4aebae3 12082
048addec 120832002-11-18 Jason Rumney <jasonr@gnu.org>
b4aebae3 12084
048addec
JD
12085 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
12086 (XPutPixel): Swap blue and red.
12087 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
12088 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
12089 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
12090 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
1998560a 12091
048addec 120922002-11-18 Dave Love <fx@gnu.org>
d824beee 12093
048addec 12094 * m/orion105.h (HAVE_ALLOCA): Don't define.
d824beee 12095
048addec 12096 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
d824beee 12097
048addec 12098 * m/intel386.h: Don't include alloca.h or define alloca.
d824beee 12099
048addec
JD
12100 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
12101 malloc, realloc, calloc.
d824beee 12102
048addec
JD
12103 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
12104 (bcmp): Don't define.
d824beee 12105
048addec 12106 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
d824beee 12107
048addec 12108 * m/amdahl.h: Don't define LIB_STANDARD.
d824beee 12109
048addec 12110 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
d824beee 12111
048addec 12112 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
d824beee 12113
048addec
JD
12114 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
12115 Don't include alloca.h.
d824beee 12116
048addec 12117 * s/aix3-2.h (HAVE_FSYNC): Don't define.
1998560a 12118
048addec 12119 * regex.c (_GNU_SOURCE): Don't define.
1998560a 12120
048addec 12121 * process.c (_GNU_SOURCE): Don't define.
1998560a 12122
048addec 12123 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
8704a6ab 12124
048addec 121252002-11-18 Markus Rost <rost@math.ohio-state.edu>
8704a6ab 12126
048addec 12127 * s/sol2-8.h: Include sol2-6.h.
6ae2cd57 12128
048addec 121292002-11-18 Miles Bader <miles@gnu.org>
6ae2cd57 12130
048addec
JD
12131 * dispextern.h (struct face): Add `overstrike' field.
12132 * xterm.c (x_draw_glyph_string_foreground)
12133 (x_draw_composite_glyph_string_foreground): Implement overstriking.
12134 * xfaces.c (load_face_font): Set `face->overstrike' based on
12135 result from choose_face_font.
12136 (best_matching_font, choose_face_font): Add `needs_overstrike'
12137 argument, and use it to return whether overstriking is desirable
12138 for this face/font combo.
12139 (set_font_frame_param: Pass new argument to choose_face_font.
6ae2cd57 12140
048addec 121412002-11-17 Ben Key <BKey1@tampabay.rr.com>
3582b6a3 12142
048addec
JD
12143 This change is my fix for the following entry in etc/PROBLEMS:
12144 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
12145 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
f60ae425 12146
048addec
JD
12147 * w32.c: Added wrapper functions around the win32 API functions
12148 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
12149 GetSidIdentifierAuthority. These wrapper functions serve two
12150 purposes:
12151 1. They ensure that the wrapped function can never be called
12152 when Emacs is running on an operating system on which they are
12153 not supported (Microsoft Windows 95 / 98 / ME).
12154 2. They call the wrapped functions via function pointers rather
12155 than calling them directly. This avoids taking advantage of the
12156 undocumented fact that although these functions are not supported
12157 in the 9x branch of Microsoft Windows, the functions do exist in
12158 the version of advapi32.dll that is found in the 9x branch of
12159 Microsoft Windows.
f60ae425 12160
6bdb309a 12161 * w32.c (init_user_info): Replace the calls to the win32 API
048addec
JD
12162 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
12163 and GetSidIdentifierAuthority with calls to the newly added
12164 wrapper functions.
f60ae425 12165
048addec
JD
12166 * w32.h: Added extern declarations for the following functions:
12167 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
12168 syms_of_w32menu, and void syms_of_fontset.
f60ae425 12169
6bdb309a 12170 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
048addec
JD
12171 function pointer track_mouse_event_fn in the handler for the
12172 WM_SETFOCUS message.
3582b6a3 12173
6bdb309a 12174 * w32menu.c (initialize_frame_menubar): Add code to
048addec
JD
12175 reinitialize the function pointers set_menu_item_info and
12176 get_menu_item_info.
f60ae425 12177
048addec 121782002-11-17 Ben Key <BKey1@tampabay.rr.com>
f60ae425 12179
048addec
JD
12180 * sound.c: Added a partial implementation of play-sound-internal
12181 for Microsoft Windows. Added various #ifdef / #else / #endif
12182 code blocks to separate the code that will compile under
12183 Microsoft Windows from the code that is specific to Gnu/Linux.
12184 Moved several blocks of code around to make this separation of code
12185 into Windows compatible and Gnu/Linux compatible code blocks easier.
f60ae425 12186
048addec 12187 * makefile.w32-in: Include sound.c and link with WinMM.lib.
a0f0878d 12188
048addec
JD
12189 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
12190 added support for play-sound-internal under Windows would be
12191 included in the build of Emacs.
517f42a0 12192
048addec 121932002-11-16 Jason Rumney <jasonr@gnu.org>
517f42a0 12194
048addec 12195 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
517f42a0 12196
048addec 12197 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
a0f0878d 12198
048addec 121992002-11-15 Stefan Monnier <monnier@cs.yale.edu>
a0f0878d 12200
048addec
JD
12201 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
12202 (adjust_point_for_property): Move out of display and invisible even if
12203 we were already inside before (in case a property was added while
12204 we weren't looking). Be more careful when handling invisible props.
12205 Skip invisible text as if it really wasn't there at all.
aab83f91 12206
048addec 122072002-11-15 Jason Rumney <jasonr@gnu.org>
aab83f91 12208
048addec
JD
12209 * w32term.c (x_draw_image_foreground)
12210 (w32_draw_image_foreground_1): Use standard copy and invert
12211 operations to draw images.
aab83f91 12212
048addec
JD
12213 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
12214 depth of 1.
12215 (xbm_read_bitmap_data): Invert bits as xbm is read in.
12216 (XPutPixel): Don't invert bits here.
a4478a76 12217
048addec 122182002-11-15 Jason Rumney <jasonr@gnu.org>
a4478a76 12219
048addec
JD
12220 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
12221 (w32_draw_image_foreground_1): Handle image masks.
12222 (x_draw_image_glyph_string): Don't BitBlt transparently.
a4478a76 12223
048addec
JD
12224 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
12225 (x_from_xcolors): Adjust RGB values for W32.
12226 (image_background, image_background_transparent)
12227 (postprocess_image, x_to_xcolors, x_disable_image)
12228 (x_build_heuristic_mask): Adapt for W32 and enable.
12229 (x_create_x_image_and_pixmap): Mark images with palettes as such.
12230 (xbm_load): Remove unused variable.
03670a65 12231
048addec 122322002-11-14 Richard M. Stallman <rms@gnu.org>
03670a65 12233
048addec 12234 * buffer.c (syms_of_buffer): Doc fix.
59daa29a 12235
048addec 122362002-11-14 Dave Love <fx@gnu.org>
59daa29a 12237
048addec 12238 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
59daa29a 12239
048addec
JD
12240 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
12241 * xmenu.c (unuse_menu_items, digest_single_submenu):
12242 * xfns.c (x_put_x_image):
12243 * xdisp.c (message2_nolog, set_message):
12244 * undo.c (record_point):
12245 * terminfo.c (tparam):
12246 * syntax.c (scan_sexps_forward):
12247 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
12248 * composite.c (update_compositions):
12249 * cm.c (calccost, cmgoto):
12250 * charset.c (c_string_width): Declare all args (per C99).
59daa29a 12251
048addec 12252 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
59daa29a 12253
048addec
JD
12254 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
12255 Don't declare.
59daa29a 12256
048addec 12257 * emacs.c (main) [!VMS]: Avoid third arg.
59daa29a 12258
048addec
JD
12259 * fns.c (Fcopy_sequence): Doc fix.
12260 (Fmap_char_table): Cast `call2'.
3947677c 12261
048addec
JD
122622002-11-14 Francesco Potorti` <pot@gnu.org>
12263
12264 * s/sol2-8.h: New file.
12265
122662002-11-14 Kim F. Storm <storm@cua.dk>
12267
12268 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
12269 dependency on `risky-local-variable' and the :propertize form.
12270
122712002-11-12 Stefan Monnier <monnier@cs.yale.edu>
12272
12273 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
12274
12275 * syntax.c (scan_sexps_forward): Undo last patch.
12276 Use a more obvious fix: check eob before updating the syntax table.
12277
122782002-11-09 Stefan Monnier <monnier@cs.yale.edu>
12279
12280 * syntax.c (scan_sexps_forward): Update syntax table before reading
12281 a char rather than after so we don't update the table past eob.
12282
122832002-11-09 Dave Love <fx@gnu.org>
12284
12285 * buffer.c (Fset_buffer_major_mode): Fix last change.
12286
12287 * regex.c (regexec): Fix pmatch declaration.
12288
12289 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
12290
12291 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
12292 to self-inserting characters.
12293 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
12294
12295 * coding.c (Vtranslation_table_for_input): New.
12296 (syms_of_coding): DEFVAR it.
12297
122982002-11-08 Juanma Barranquero <lektu@terra.es>
12299
12300 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
12301 window.
12302
123032002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12304
6bdb309a 12305 * process.c (Fformat_network_address): Remove unused locals p,
048addec
JD
12306 cp, and i.
12307
123082002-11-06 Dave Love <fx@gnu.org>
12309
12310 * buffer.c (Qset_buffer_major_mode_hook): New.
12311 (Fset_buffer_major_mode): Use it.
12312
123132002-11-06 Richard M. Stallman <rms@gnu.org>
12314
12315 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
12316 and stop_polling.
12317
12318 * process.c (wait_reading_process_input):
12319 Test POLLING_PROBLEM_IN_SELECT, not hpux.
12320 Avoid initialization for auto Lisp_Object var.
12321
12322 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
12323
12324 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
12325
123262002-11-05 Richard M. Stallman <rms@gnu.org>
12327
12328 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
12329
12330 * callint.c (Fcall_interactively): New local filter_specs.
12331 (Fcall_interactively): Check for progn as well as let.
12332 Add a gcpro.
12333 (Qprogn): New variable.
12334 (syms_of_callint): Staticpro and init Qprogn.
12335
123362002-11-04 John Paul Wallington <jpw@shootybangbang.com>
12337
12338 * lread.c (Feval_buffer): Doc fix.
12339
123402002-11-04 Dave Love <fx@gnu.org>
12341
12342 * keyboard.c (read_char): Always translate iff
12343 Vkeyboard_translate_table is a char table and c is valid.
12344
12345 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
12346 and fix C types.
12347
123482002-11-03 Stefan Monnier <monnier@cs.yale.edu>
12349
12350 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
12351
12352 * editfns.c (get_pos_property): Don't hardcode Qfield.
12353
12354 * keyboard.c (adjust_point_for_property): Handle `display' prop on
12355 overlays. Also handle `invisible' prop.
12356
123572002-11-02 Stefan Monnier <monnier@cs.yale.edu>
12358
12359 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
12360 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
12361
123622002-11-01 Andreas Schwab <schwab@suse.de>
12363
12364 * editfns.c (Fmessage): Revert last change to properly handle %%.
12365
123662002-11-01 Stefan Monnier <monnier@cs.yale.edu>
12367
12368 * xmenu.c (unuse_menu_items): New fun.
12369 (menu_items_inuse): New var.
12370 (syms_of_xmenu): Initialize it.
12371 (init_menu_items): Use it to detect re-entrance.
12372 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
12373 (Fx_popup_menu): Remove spurious XSETFRAME.
12374
12375 * editfns.c (find_field): Make an exception for nil fields.
12376
123772002-11-01 Dave Love <fx@gnu.org>
12378
12379 * m/gec63.h: Deleted.
12380
123812002-10-31 Dave Love <fx@gnu.org>
12382
12383 * xterm.c (XTread_socket): Fix last change.
12384 (xaw_scroll_callback): Cast call_data to long to avoid warning.
12385
123862002-10-31 Stefan Monnier <monnier@cs.yale.edu>
12387
12388 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
12389
123902002-10-30 Stefan Monnier <monnier@cs.yale.edu>
12391
12392 * editfns.c (overlays_around, get_pos_property): New funs.
12393 (find_field): Use them.
12394 Also be careful not to modify POS before its last use.
12395 (Fmessage): Don't Fformat if there's nothing to format.
12396
123972002-10-30 Dave Love <fx@gnu.org>
12398
12399 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
12400 [HAVE_PTY_H]; Include pty.h.
12401
12402 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
12403
12404 * xterm.c (Qeql): Declare.
12405 (Vx_keysym_table): New.
12406 (syms_of_xterm): Initialize it.
12407 (XTread_socket): Use it. Deal with ASCII keysyms.
12408 (XSetIMValues) [HAVE_X11R6]: Prototype.
12409
12410 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
12411 (lispy_kana_keys): Comment out.
12412 (make_lispy_event) [XK_kana_A]: Comment out.
12413 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
12414 Fix sprintf call.
12415
12416 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
12417 regexp.h change).
12418 (TERMINFO, LIBS_TERMCAP): Define.
12419
12420 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
12421 (bcmp): Define conditional on HAVE_BCMP.
12422 (NO_SIOCTL_H): Don't define.
12423 (TIOCSIGSEND): Don't make conditional on IRIX6.
12424
12425 * s/sol2-5.h: Don't include strings.h.
12426 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
12427
12428 * s/irix6-0.h (IRIX6): Don't define.
12429 (bcopy, bcmp, bzero): Don't undef.
12430
12431 * s/irix6-5.h: Don't include strings.h.
12432 (IRIX6): Don't define.
12433 (bcopy, bcmp, bzero): Don't undef.
12434
12435 * syntax.c (Fforward_comment): Doc fix.
12436
124372002-10-29 Kim F. Storm <storm@cua.dk>
12438
12439 * process.c (Fsignal_process): Allow PROCESS to be specified by
12440 name in addition to pid (as integer or string).
12441
124422002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
12443
12444 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
12445 environments.
12446
124472002-10-27 Kim F. Storm <storm@cua.dk>
12448
12449 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
12450
12451 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
12452
12453 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
12454
12455 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
12456
124572002-10-26 Richard M. Stallman <rms@gnu.org>
12458
12459 * editfns.c (Fformat): Detect invalid format letters for floats.
12460
124612002-10-25 Kenichi Handa <handa@m17n.org>
12462
12463 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
12464 (x_set_title): Likewise.
12465
124662002-10-25 Juanma Barranquero <lektu@terra.es>
12467
12468 * macgui.h:
12469 * w32gui.h: Remove definition of XColor.
12470
12471 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
12472
124732002-10-24 Kim F. Storm <storm@cua.dk>
12474
12475 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
12476 Callers changed (supply dummy arg).
12477
12478 * lisp.h (get_window_cursor_type): Update prototype.
12479
12480 * w32term.c (x_display_and_set_cursor): Get active_cursor from
12481 get_window_cursor_type to track system caret.
12482
124832002-10-24 Kim F. Storm <storm@cua.dk>
12484
12485 * process.c (Fformat_network_address): New function.
12486 (syms_of_process): Defsubr it.
12487 (list_processes_1): Use it to format :local/:remote address if
f9711de4 12488 service/host is not set; before Emacs would crash in that case.
048addec
JD
12489 (Fmake_network_process): Don't use Ffind_operation_coding_system
12490 to setup coding system if host or service is not set.
12491
124922002-10-23 Juanma Barranquero <lektu@terra.es>
12493
12494 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
12495
12496 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
12497 COLORREF.
12498
12499 * macgui.h:
12500 * w32gui.h: Add definition of XColor.
12501
12502 * macfns.c:
12503 * w32fns.c:
12504 * xfaces.c: Remove definition of XColor.
12505
125062002-10-22 Stefan Monnier <monnier@cs.yale.edu>
12507
12508 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
12509
12510 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
12511 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
12512 window if it is dedicated.
12513 (Fshrink_window): Add preserve_before as was done for enlarge_window.
12514 (Vspecial_display_function): Update docstring.
12515
12516 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
12517 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
12518 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
12519
125202002-10-21 Stefan Monnier <monnier@cs.yale.edu>
12521
12522 * casefiddle.c (casify_region): Don't treat a prefix char as part
12523 of a word when at the beginning.
12524
125252002-10-17 Juanma Barranquero <lektu@terra.es>
12526
12527 * lread.c (syms_of_lread): Fix typos.
12528
125292002-10-17 Dave Love <fx@gnu.org>
12530
12531 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
12532
125332002-10-16 Richard M. Stallman <rms@gnu.org>
12534
12535 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
12536
125372002-10-14 Juanma Barranquero <lektu@terra.es>
12538
12539 * w16select.c (syms_of_win16select): Fix docstring for
12540 `selection-coding-system'.
12541
12542 * w32select.c (syms_of_w32select): Likewise.
12543
125442002-10-14 Stefan Monnier <monnier@cs.yale.edu>
12545
12546 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
12547 a backslash-quoted char.
12548 (scan_lists, scan_sexps_forward): Pacify the compiler.
12549
125502002-10-13 Richard M. Stallman <rms@gnu.org>
12551
12552 * window.c (window_scroll): Set immediate_quit.
12553
12554 * print.c (print): When backquote form is the car of a list,
12555 output in old style. Use old_backquote_output to output all
12556 comma forms inside it in old style too.
12557
12558 * buffer.h (struct buffer): Move `undo_list' down below `name'.
12559
125602002-10-11 Markus Rost <rost@math.ohio-state.edu>
12561
12562 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
12563 batch mode).
12564
12565 * lread.c (Fload): Doc fix (load-suffixes).
12566
125672002-10-10 Steven Tamm <steventamm@mac.com>
12568
12569 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
12570 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
12571 Also switch the default to Qnil from Qt.
12572
125732002-10-08 Kenichi Handa <handa@m17n.org>
12574
12575 * coding.c (code_convert_region): When we need more GAP for
12576 conversion, pay attention to the case that coding->produced is not
12577 greater than coding->consumed.
12578
125792002-10-07 Richard M. Stallman <rms@gnu.org>
12580
12581 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
12582
125832002-10-06 Andrew Choi <akochoi@shaw.ca>
12584
12585 * macmenu.c (mac_menu_show): Add j to count menu items; match
12586 menu_item_selection to it to find selected item.
12587
125882002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12589
12590 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
12591 cases. The correct fix is to pass ReparentNotify to Xt.
12592 The shell widget interprets ConfigureNotify differently depending
12593 on if it has been reparented or not.
12594
125952002-10-05 Markus Rost <rost@math.ohio-state.edu>
12596
12597 * editfns.c (Fformat_time_string): Doc fix.
12598
125992002-10-05 John Paul Wallington <jpw@shootybangbang.com>
12600
12601 * fns.c (Flength): Doc fix.
12602
126032002-10-04 Stefan Monnier <monnier@cs.yale.edu>
12604
12605 * keyboard.c (keyremap): New struct.
12606 (read_key_sequence): Use it: globally replace keytran_foo with
12607 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
12608 keytran_next and fkey_next to just `next'.
12609
126102002-10-04 Steven Tamm <steventamm@mac.com>
12611
12612 * macterm.c (keycode_to_xkeysym_table): Change return to be
12613 treated like an X keysym.
12614
126152002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12616
12617 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
12618 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
12619 This is to also handle x/y changes that occur because of a resize.
12620
126212002-10-02 John Paul Wallington <jpw@shootybangbang.com>
12622
12623 * frame.c (Vdelete_frame_functions): New variable.
12624 (syms_of_frame): Initialize and defvar it.
12625 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
12626 it when frame's `tooltip' parameter is non-nil.
12627
12628 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
12629
12630 * w32fns.c (x_create_tip_frame): Likewise.
12631
12632 * macfns.c (x_create_tip_frame): Likewise.
12633
126342002-09-30 Kenichi Handa <handa@m17n.org>
12635
12636 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
12637 -1 before calling ccl_driver.
12638
12639 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
12640 Only when it is non-nil, handle composition sequence.
12641 (setup_coding_system) <0>: Don't force composition handling.
12642
12643 * Makefile.in (lisp, shortlisp): Add utf-16.elc
12644
126452002-09-29 Richard M. Stallman <rms@gnu.org>
12646
12647 * search.c (Freplace_match): Adjust match data for the substitution
12648 just made in the buffer.
12649
12650 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
12651 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
12652
126532002-09-27 Richard M. Stallman <rms@gnu.org>
12654
12655 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
12656 (read_char): Use them. Do all exits thru the end of the function.
12657
126582002-09-27 Kenichi Handa <handa@etl.go.jp>
12659
12660 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
12661 is nil.
12662
126632002-09-26 Richard M. Stallman <rms@gnu.org>
12664
12665 * regex.h (__restrict_arr): Don't define if already defined.
12666
12667 * coding.c (run_pre_post_conversion_on_str):
12668 Save and restore Vdeactivate_mark.
12669
126702002-09-26 John Paul Wallington <jpw@shootybangbang.com>
12671
12672 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
12673
126742002-09-26 Kenichi Handa <handa@etl.go.jp>
12675
12676 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
12677 nonzero, try face's family at first. Otherwise try FAMILY at first.
12678 (choose_face_font): If C is a single byte char or latin-1, call
12679 try_font_list with PREFER_FACE_FAMILY 1.
12680
126812002-09-21 Richard M. Stallman <rms@gnu.org>
12682
12683 * window.c (select_window_1): Don't select frame.
12684 Set frame's selected window only when frame itself is selected.
12685 (Fselect_window): Doc fix.
12686
126872002-09-18 Kim F. Storm <storm@cua.dk>
12688
12689 * process.c (make-network-process): Doc fix (there is no
12690 network-server-log-function hook).
12691
126922002-09-18 Richard M. Stallman <rms@gnu.org>
12693
12694 * print.c (print): Clear out the unused parts of Vprint_number_table.
12695 (syms_of_print): Doc fix for `print-number-table'.
12696
12697 * unexelf.c (unexec): Undo previous change.
12698
126992002-09-17 Andreas Schwab <schwab@suse.de>
12700
12701 * m/alpha.h [LINUX]: Don't define DATA_START.
12702
127032002-09-16 Dave Love <fx@gnu.org>
12704
12705 * unexelf.c (unexec): Deal with .got, reinstating change from
12706 25-08-1999.
12707
127082002-09-13 Richard M. Stallman <rms@gnu.org>
12709
12710 * s/sol2-6.h (UNEXEC): Comment out definition.
12711
12712 * unexsol.c (unexec): Don't downcase first letter of error msg.
12713
12714 * xfaces.c (Fcolor_supported_p): Just one arg is required.
12715
127162002-09-12 Markus Rost <rost@math.ohio-state.edu>
12717
12718 * unexsol.c: Include buffer.h, charset.h, coding.h.
12719
127202002-09-11 Richard M. Stallman <rms@gnu.org>
12721
12722 * unexsol.c: Don't use report_file_error; do it by hand
12723 using dlerror.
12724
12725 * process.c (wait_reading_process_input, both versions):
12726 Before calling turn_on_atimers, call stop_polling.
12727
12728 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
12729
12730 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
12731 we go to too_near_end, call clear_glyph_matrix.
12732 (redisplay_window): After make_cursor_line_fully_visible,
12733 call clear_glyph_matrix and bypass `goto done'.
12734
12735 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
12736 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
12737
127382002-09-10 Richard M. Stallman <rms@gnu.org>
12739
12740 * fileio.c (Fdo_auto_save): Catch error making directory.
12741 Only call push_message if we need to.
12742 At the same time, make an unwind-protect to pop it.
12743 Rename local message_p to old_message_p.
12744 (do_auto_save_make_dir, do_auto_save_eh): New functions.
12745 (do_auto_save_unwind): Don't call pop_message.
12746
12747 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
12748
12749 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
12750
12751 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
12752
12753 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
12754
127552002-09-10 Stefan Monnier <monnier@cs.yale.edu>
12756
12757 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
12758 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
12759 (re_match_2_internal): Be more careful with infinite loops.
12760
127612002-09-10 Kim F. Storm <storm@cua.dk>
12762
12763 * macros.c (end_kbd_macro): New function.
12764 (Fend_kbd_macro): Use it.
12765
12766 * macros.h (end_kbd_macro): Declare extern.
12767
12768 * keyboard.c (Fdiscard_input): If defining keyboard macro,
12769 end and save it instead of discarding it.
12770
127712002-09-09 Markus Rost <rost@math.ohio-state.edu>
12772
12773 * s/sol2-6.h: Fix typo. Add comment.
12774
127752002-09-09 Richard M. Stallman <rms@gnu.org>
12776
12777 * regex.c (regnum_t): Use signed int, not unsigned int.
12778
12779 * s/sol2-6.h: New file.
12780
12781 * s/sol2-5.h (UNEXEC): Definition deleted.
12782
127832002-09-08 Kim F. Storm <storm@cua.dk>
12784
12785 * macros.c (executing_macro_index): Change type to EMACS_INT.
12786 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
12787
12788 * macros.h (executing_macro_index): Change type to EMACS_INT.
12789
127902002-09-06 Richard M. Stallman <rms@gnu.org>
12791
12792 * casetab.c (set_case_table): Make canon table point to eqv table.
12793
127942002-09-06 Juanma Barranquero <lektu@terra.es>
12795
12796 * coding.c (syms_of_coding): Fix spacing.
12797
12798 * composite.c (Fcompose_region_internal)
12799 (Fcompose_string_internal): Likewise.
12800
12801 * data.c (Flsh): Likewise.
12802
12803 * fontset.c (Fset_fontset_font): Likewise.
12804
12805 * macfns.c (Fx_server_max_request_size): Likewise.
12806
12807 * w16select.c (syms_of_win16select): Likewise.
12808
12809 * w32select.c (syms_of_w32select): Likewise.
12810
12811 * xselect.c (syms_of_xselect): Likewise.
12812
128132002-09-05 Richard M. Stallman <rms@gnu.org>
12814
12815 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
12816 call EXTEND_RANGE_TABLE and return a proper value.
12817 (set_image_of_range): Don't call set_image_of_range_1
12818 if no TRANSLATE or if range includes all of Latin-1.
12819 Only call it for the Latin-1 part of the range.
12820 For other cases, make two separate ranges,
12821 one for the original specified characters and one for
12822 their case-conversions.
12823
128242002-09-04 Richard M. Stallman <rms@gnu.org>
12825
12826 * s/sol2-5.h (UNEXEC): Use unexsol.o.
12827
12828 * window.c (displayed_window_lines): Correct for one-off bug
12829 in HEIGHT on non-window displays.
12830
12831 * regex.c (set_image_of_range_1): New function.
12832 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
12833 Return a value to indicate running out of memory.
12834 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
12835 (extend_range_table_work_area): New subroutine.
12836 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
12837 Different calling conventions, and used from set_image_of_range{,_1}.
12838 (IMMEDIATE_QUIT_CHECK): Definitions moved.
12839
128402002-09-04 Juanma Barranquero <lektu@terra.es>
12841
12842 * makefile.w32-in: All dependencies updated.
12843
128442002-09-01 Richard M. Stallman <rms@gnu.org>
12845
12846 * unexsol.c: New file.
12847
12848 * xfns.c (Qbox): Declare external, don't define.
12849
12850 * xdisp.c (redisplay_window) <force-start case>:
12851 If point is on semi-visible last line, reposition
12852 it at previous line.
12853
12854 * alloc.c (display_malloc_warning): Use display-warning.
12855 (malloc_warning_1): Function deleted.
12856
12857 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
12858
12859 * lread.c (read1): Handle #! by skipping the line.
12860
128612002-08-31 Richard M. Stallman <rms@gnu.org>
12862
12863 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
12864 Don't include LDFLAGS.
12865 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
12866
128672002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
12868
12869 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
12870 member of x_display_info unless we compile for some window system.
12871
128722002-08-31 Kim F. Storm <storm@cua.dk>
12873
12874 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
12875 (get_window_cursor_type): Don't use them.
12876 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
12877
128782002-08-30 Kenichi Handa <handa@etl.go.jp>
12879
12880 * xdisp.c (get_next_display_element): Fix previous change.
12881
128822002-08-30 Andrew Choi <akochoi@shaw.ca>
12883
12884 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
12885 (expose_window): Use it to fix the display of overlapping
12886 rows (merge code from xterm.c).
12887
12888 * macfns.c (Qbox): Add extern declaration.
12889
128902002-08-30 Juanma Barranquero <lektu@terra.es>
12891
12892 * w32fns.c (Qbox): Make extern.
12893 (syms_of_w32fns): Remove initialization of Qbox.
12894
128952002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
12896
12897 * xfns.c (Fx_open_connection): Fix error message.
12898
128992002-08-30 Kim F. Storm <storm@cua.dk>
12900
12901 The following changes consolidates the handling of the cursor
12902 type in xdisp.c, moving duplicate code and functionality from
12903 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
12904
12905 * frame.h (enum text_cursor_kinds): Consolidated here.
12906 Added DEFAULT_CURSOR value.
12907 (struct frame) <desired_cursor, cursor_width>
12908 <blink_off_cursor, blink_off_cursor_width>: New fields.
12909 Consolidated from output_x, output_w32 and output_mac structs.
12910 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
12911 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
12912
12913 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
12914 Variables consolidated here.
12915 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
12916 (Vcursor_in_non_selected_windows): Renamed from
12917 cursor_in_non_selected_windows and changed to Lisp_Object.
12918 (syms_of_xdisp): Define and staticpro new and moved variables.
12919 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
12920 consolidated here. Recognize Qhollow setting.
12921 (set_frame_cursor_types): New function to set frame cursor types
12922 based on the frame parameters.
12923 (get_window_cursor_type): New function to calculate new cursor
12924 type and width for the specified window. Based on duplicated
12925 code consolidated here.
12926 Enhancements: cursor-in-non-selected-windows may be a cursor type,
12927 check buffer-local alternate-cursor-type and blink-cursor-alist
12928 before using built-in blink off methods.
12929
12930 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
12931
12932 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
12933 (get_specified_cursor_type, get_window_cursor_type)
12934 (set_frame_cursor_types): Added prototypes.
12935
12936 * macfns.c (x_specified_cursor_type): Removed.
12937 (x_set_cursor_type): Use set_frame_cursor_types.
12938 (Qbar, Qbox): Removed.
12939 (syms_of_macfns): Don't intern or staticpro them.
12940
12941 * macterm.c (x_specified_cursor_type): Remove prototype.
12942 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
12943 (x_display_and_set_cursor): Use get_window_cursor_type.
12944 Remove unused local variables cursor_non_selected, active_cursor.
12945 Redraw cursor if hbar cursor width changes.
12946 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
12947
12948 * macterm.h (enum text_cursor_kinds): Removed.
12949 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
12950 <blink_off_cursor, blink_off_cursor_width>: Members removed.
12951 (FRAME_DESIRED_CURSOR): Macro removed.
12952
12953 * w32fns.c (Vblink_cursor_alist): Removed.
12954 (Qbar, Qhbar, Qbox, Qhollow): Removed.
12955 (syms_of_w32fns): Don't intern, staticpro, or define them.
12956 (x_specified_cursor_type): Removed.
12957 (x_set_cursor_type): Use set_frame_cursor_types.
12958
12959 * w32term.c (x_specified_cursor_type): Remove prototype.
12960 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
12961 (x_display_and_set_cursor): Use get_window_cursor_type.
12962 Remove unused local variables cursor_off_state.
12963 Redraw cursor if hbar cursor width changes.
12964 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
12965
12966 * w32term.h (enum text_cursor_kinds): Removed.
12967 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
12968 <blink_off_cursor, blink_off_cursor_width>: Members removed.
12969 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
12970 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
12971 (struct w32_display_info) <x_highlight_frame>: Renamed member from
12972 w32_highlight_frame.
12973
12974 * xfns.c (Vblink_cursor_alist): Removed.
12975 (Qbar, Qhbar, Qbox, Qhollow): Removed.
12976 (syms_of_xfns): Don't intern, staticpro, or define them.
12977 (x_specified_cursor_type): Removed.
12978 (x_set_cursor_type): Use set_frame_cursor_types.
12979
12980 * xterm.c (x_specified_cursor_type): Remove prototype.
12981 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
12982 (x_display_and_set_cursor): Use get_window_cursor_type.
12983 Remove unused local variables cursor_off_state.
12984 Redraw cursor if hbar cursor width changes.
12985
12986 * xterm.h (enum text_cursor_kinds): Removed.
12987 (struct output_x) <current_cursor, desired_cursor, cursor_width>
12988 <blink_off_cursor, blink_off_cursor_width>: Members removed.
12989 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
12990 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
12991 (x_specified_cursor_type): Remove prototype.
12992
129932002-08-28 Richard M. Stallman <rms@gnu.org>
12994
12995 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
12996 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
12997 (Vblink_cursor_alist): New variable.
12998 (syms_of_w32fns): Initialize and defvar it.
12999 (x_specified_cursor_type): Recognize Qbox for filled box.
13000 Exceptions are hollow boxes.
13001 (Qbox, Qhollow): New variables.
13002 (syms_of_w32fns): Initialize and staticpro them.
13003
13004 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
13005 New macros.
13006 (struct w32_output): New fields blink_off_cursor,
13007 blink_off_cursor_width.
13008 (FRAME_CURSOR_WIDTH): New macro.
13009
13010 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
13011 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
13012
13013 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
13014 for bar cursor.
13015
13016 * w32term.c (expose_overlaps): New function.
13017 (expose_window): Use it to fix the display of overlapping rows.
13018
130192002-08-28 Simon Josefsson <jas@extundo.com>
13020
13021 * xfns.c (Fx_open_connection): Improve help when X connection
13022 fails, xhost is insecure and xauth is better.
13023
130242002-08-28 Juanma Barranquero <lektu@terra.es>
13025
13026 * makefile.w32-in: Add missing dependencies on w32term.h and
13027 composite.h.
13028
13029 * emacs.c (USAGE1): Add missing newline.
13030
130312002-08-27 Andrew Choi <akochoi@shaw.ca>
13032
13033 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
13034
130352002-08-27 Richard M. Stallman <rms@gnu.org>
13036
13037 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
13038 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
13039 (Vblink_cursor_alist): New variable.
13040 (syms_of_xfns): Initialize and defvar it.
13041 (x_specified_cursor_type): Recognize Qbox for filled box.
13042 Exceptions are hollow boxes.
13043 (Qbox, Qhollow): New variables.
13044 (syms_of_xfns): Initialize and staticpro them.
13045
13046 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
13047 New macros.
13048 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
13049
13050 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
13051 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
13052
13053 * emacs.c (main): Handle --script.
13054 (USAGE1): Mention --script.
13055 (standard_args): Define sort order for --script.
13056
130572002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
13058
13059 * xdisp.c (redisplay_updating_p): Variable removed.
13060 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
13061 New variables.
13062 (init_iterator): Don't free realized faces if
13063 inhibit_free_realized_faces is set.
13064 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
13065 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
13066 initialize Qinhibit_free_realized_faces.
13067
13068 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
13069 when iterator is adding glyphs to a glyph matrix.
13070
130712002-08-27 Kenichi Handa <handa@etl.go.jp>
13072
13073 * xdisp.c (get_next_display_element): In unibyte case, don't use
13074 octal form for such eight-bit characters that can be converted to
13075 multibyte char.
13076
130772002-08-26 Kim F. Storm <storm@cua.dk>
13078
b6189c3b
KS
13079 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize
13080 foreground and background colors. From Joe Buehler.
048addec
JD
13081
130822002-08-26 Miles Bader <miles@gnu.org>
13083
13084 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
13085
130862002-08-25 Andrew Choi <akochoi@shaw.ca>
13087
13088 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
13089 defined instead of MAC_OSX.
13090
13091 * s/darwin.h (select): Define select to sys_select only if
13092 HAVE_CARBON is defined.
13093 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
13094 (DONT_REOPEN_PTY): #def it.
13095
13096 * macterm.c (XTread_socket): Remove code to call
13097 SendEventToEventTarget for keys with command modifiers when
13098 mac_command_key_is_meta is nil.
13099
131002002-08-24 Andreas Schwab <schwab@suse.de>
13101
13102 * eval.c (Fdefvar): Fix last change.
13103
131042002-08-23 Richard M. Stallman <rms@gnu.org>
13105
13106 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
13107 Record variables in load history as (defvar . VAR).
13108 (Fdefvar): Don't record in load history if no initial value.
13109 (Qdefvar): New variable.
13110 (syms_of_eval): Init and staticpro it.
13111
13112 * lread.c (syms_of_lread): Doc fix.
13113 (build_load_history): Use Fmember to see if a definition
13114 is already in the Vload_history element.
13115
13116 * process.c (Fstart_process): Remove /: from program name.
13117
13118 * emacs.c (decode_env_path): Don't add /: if file name handler
13119 has a `safe-magic' property.
13120
13121 * callproc.c (Fcall_process): Remove /: from program name.
13122
131232002-08-23 Stefan Monnier <monnier@cs.yale.edu>
13124
13125 * regex.c (PATFETCH): Remove the translating fetch.
13126 (PATFETCH_RAW): Rename to PATFETCH.
13127 (set_image_of_range): New fun.
13128 (SET_RANGE_TABLE_WORK_AREA): Use it.
13129 (regex_compile): Don't translate the pattern chars so eagerly.
13130 Only do it when inserting an `exactn' bytecode or when handling
13131 a char-range.
13132 (mutually_exclusive_p): Avoid empty statement.
13133
131342002-08-22 Kim F. Storm <storm@cua.dk>
13135
13136 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
13137 end up on a partially visible line; this reverts a specific part
13138 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
13139 display error which has been reported several times now.
13140 However it introduces the problem that changes was supposed to fix.
13141 See my comments in the source if you want to debug this further.
13142
131432002-08-20 Kenichi Handa <handa@etl.go.jp>
13144
13145 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
13146
131472002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
13148
13149 * msdos.c (croak): Add `void' to definition.
13150
c1380aa6 13151 * sysdep.c (request_sigio, unrequest_sigio) [MSDOS]:
048addec
JD
13152 Don't define them, they are defined in msdos.c.
13153
13154 * mem-limits.h [MSDOS]: Declare etext.
13155
13156 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
13157 `const' since CORRECT_DIR_SEPS modifies its target.
13158
131592002-08-19 Kim F. Storm <storm@cua.dk>
13160
2fb0ce67 13161 * keyboard.c (Fclear_this_command_keys): Add optional arg
048addec
JD
13162 KEEP-RECORD to avoid clearing lossage when we just want to clear
13163 the current key sequence (kmacro needs this).
13164
131652002-08-19 Kenichi Handa <handa@localhost>
13166
13167 * composite.c (run_composition_function): Call FUNC if it is fboundp.
13168
13169 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
13170 cons, return Qnil.
13171
131722002-08-17 Richard M. Stallman <rms@gnu.org>
13173
13174 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
13175
13176 * sysdep.c [!VMS]: Include sys/files.h.
13177
13178 * editfns.c (save_restriction_restore): Defend from unchained marker.
13179
13180 * buffer.c (overlays_at): Handle extending vec uniformly.
13181 (overlays_in): Handle extending vec from length 0 as in overlays_at.
13182
131832002-08-15 Andrew Choi <akochoi@shaw.ca>
13184
13185 * mac.c (init_mac_osx_environment): New function.
13186
13187 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
13188
131892002-08-14 Kim F. Storm <storm@cua.dk>
13190
13191 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
13192 executing macro before appending to it (when used from Lisp).
13193 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
13194 which is called prior to each iteration of macro (for kmacro.el).
13195 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
13196
13197 * lisp.h (Fexecute_kbd_macro): Update prototype.
13198
13199 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
13200
132012002-08-14 Kenichi Handa <handa@etl.go.jp>
13202
13203 * xselect.c (QUTF8_STRING): New variable.
13204 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
13205 (x_atom_to_symbol): Likewise.
13206 (x_get_local_selection): New argument local_request. If it is
13207 nonzero, call handler_fn with the second arg nil.
13208 (x_handle_selection_request): Call x_get_local_selection with
13209 local_request 0.
13210 (lisp_data_to_selection_data): Don't encode the string here.
13211 (Fx_get_selection_internal): Call x_get_local_selection with
13212 local_request 1.
13213 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
13214
13215 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
13216
13217 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
13218
132192002-08-13 Richard M. Stallman <rms@gnu.org>
13220
13221 * minibuf.c (Fminibufferp): New function.
13222 (syms_of_minibuf): Defsubr it.
13223 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
13224
132252002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
13226
13227 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
13228
132292002-08-12 Richard M. Stallman <rms@gnu.org>
13230
13231 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
13232 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
13233 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
13234 already.
13235
13236 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
13237
132382002-08-11 Andrew Choi <akochoi@shaw.ca>
13239
13240 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
13241 (Vmac_pass_command_to_system): New variable.
13242 (Vmac_pass_control_to_system): New variable.
13243 (do_mouse_moved): Check wp with is_emacs_window.
13244 (XTread_socket): Check window_ptr with is_emacs_window.
13245 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
13246 events back to Mac Toolbox for processing, depending on values of
13247 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
13248 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
13249 Vmac_pass_control_to_system.
13250
132512002-08-10 Kenichi Handa <handa@etl.go.jp>
13252
13253 * coding.c (unencodable_char_position): New function.
13254 (Funencodable_char_position): New function.
13255 (syms_of_coding): Defsubr Funencodable_char_position.
13256
132572002-08-10 Andrew Choi <akochoi@shaw.ca>
13258
13259 * mac.c (sys_select) [MAC_OSX]: New function.
13260
13261 * macterm.c (MakeMeTheFrontProcess): New function.
13262 (mac_initialize): Call MakeMeTheFrontProcess.
13263
13264 * s/darwin.h: Define select to sys_select.
13265
132662002-08-09 Richard M. Stallman <rms@gnu.org>
13267
13268 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
13269
132702002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
13271
13272 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
13273 end of the buffer.
13274
132752002-08-08 Ken Raeburn <raeburn@mit.edu>
13276
13277 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
13278
13279 * puresize.h (BASE_PURESIZE): Increase to 910000.
13280
132812002-08-08 Kenichi Handa <handa@etl.go.jp>
13282
13283 * coding.c (Ffind_operation_coding_system): For write-region, if
13284 VISIT is a filename, make it the target.
13285
132862002-08-07 Richard M. Stallman <rms@gnu.org>
13287
13288 * alloc.c (mark_object): Detect long lists for debugging.
13289 (mark_object_loop_halt): New variable.
13290
13291 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
13292
13293 * data.c (Fmake_variable_frame_local): Doc fix.
13294
132952002-08-01 David Ponce <david@dponce.com>
13296
13297 * w32menu.c (local_heap, local_alloc, local_free): New macros.
13298 (malloc_widget_value, free_widget_value)
13299 (w32_free_submenu_strings): Use them.
13300
13301 (push_submenu_start, push_submenu_end, push_left_right_boundary)
13302 (push_menu_pane, push_menu_item, single_keymap_panes)
13303 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
13304 (single_submenu, set_frame_menubar)
13305 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
13306
13307 (Fx_popup_menu): Don't show pop up menu until preceding one is
13308 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
13309
13310 * w32menu.c: Changes adapted from xmenu.c
13311 (set_frame_menubar): First parse all submenus,
13312 then make widget_value trees from them.
13313 Don't allocate any widget_value objects
13314 until we are done with the parsing.
13315 (parse_single_submenu): New function.
13316 (digest_single_submenu): New function.
13317 (single_submenu): Function deleted, replaced by those two.
13318
133192002-08-04 Andrew Choi <akochoi@shaw.ca>
13320
13321 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
13322 returns a valid window pointer before proceeding for keyDown and
13323 autoKey events.
13324
133252002-08-03 Andrew Choi <akochoi@shaw.ca>
13326
13327 * macterm.c (USE_CARBON_EVENTS): New macro.
13328 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
13329 (x_iconify_frame): Call CollapseWindow.
13330 (Vmac_reverse_ctrl_meta): New variable.
13331 (Vmac_wheel_button_is_mouse_2): New variable.
13332 (init_mac_drag_n_drop): New function.
13333 (mac_do_receive_drag): New function.
13334 (mac_handle_service_event): New function.
13335 (init_service_handler): New function.
13336 (mac_to_emacs_modifiers): New function.
13337 (mac_event_to_emacs_modifiers): New function.
13338 (mac_get_mouse_btn): New function.
13339 (mac_convert_event_ref): New function.
13340 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
13341 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
13342 mac_get_mouse_btn.
13343 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
13344
13345 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
13346 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
13347 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
13348 TOOL_BAR_EVENT for MAC_OS as well.
13349 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
13350 as for WINDOWS_NT.
13351 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
13352
13353 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
13354
133552002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
13356
13357 * xdisp.c (forward_to_next_line_start): Fix a condition that
13358 lead to a newline being skipped.
13359
133602002-08-02 Andrew Choi <akochoi@shaw.ca>
13361
13362 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
13363
133642002-08-01 Richard M. Stallman <rms@gnu.org>
13365
13366 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
13367
133682002-07-31 Andrew Choi <akochoi@shaw.ca>
13369
13370 * macfns.c: #undef init_process before #define-ing it.
13371
13372 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
13373 HAVE_CARBON is defined.
13374
133752002-07-31 Richard M. Stallman <rms@gnu.org>
13376
13377 * xmenu.c (set_frame_menubar): First parse all submenus,
13378 then make widget_value trees from them.
13379 Don't allocate any widget_value objects
13380 until we are done with the parsing.
13381 (parse_single_submenu): New function.
13382 (digest_single_submenu): New function.
13383 (single_submenu): Function deleted, replaced by those two.
13384
133852002-07-30 Juanma Barranquero <lektu@terra.es>
13386
13387 * w32proc.c (syms_of_ntproc): Fix docstring of
13388 `w32-get-true-file-attributes'.
13389
133902002-07-28 Richard M. Stallman <rms@gnu.org>
13391
13392 * s/hpux8.h (HPUX8): Define this before including hpux.h.
13393 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
13394
13395 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
13396
13397 * keyboard.c (make_lispy_event):
13398 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
13399 Explicitly clear up_modifier in event->modifiers.
13400
134012002-07-27 Richard M. Stallman <rms@gnu.org>
13402
13403 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
13404
13405 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
13406 for bar cursor.
13407
134082002-07-26 Kenichi Handa <handa@etl.go.jp>
13409
13410 * coding.c (detect_coding_iso2022): While checking a byte sequence
13411 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
13412 it in the normal loop.
13413
134142002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
13415
13416 * xterm.c (expose_overlaps): New function.
13417 (expose_window): Use it to fix the display of overlapping rows.
13418
13419 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
13420
134212002-07-23 Ken Raeburn <raeburn@gnu.org>
13422
13423 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
13424 since it only depends on XUINT.
13425
13426 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
13427 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
13428 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
13429 Macros deleted.
3947677c 13430
77d1daf2
AS
13431 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
13432 its value over other approaches.
13433 * sysdep.c (start_of_data): Don't define the function if a macro
13434 form has been defined.
8a8e19a3 13435
048addec
JD
134362002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
13437
13438 * xdisp.c (redisplay_updating_p): New variable.
13439 (init_iterator): Don't free realized faces when
13440 redisplay_updating_p is set.
13441 (redisplay_internal): Set redisplay_updating_p while updating
13442 the display.
13443
134442002-07-23 Richard M. Stallman <rms@gnu.org>
13445
13446 * editfns.c (Fmessage): Treat "" like nil.
13447
134482002-07-23 Kenichi Handa <handa@etl.go.jp>
13449
13450 * xdisp.c (face_before_or_after_it_pos):
13451 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
13452
134532002-07-22 Juanma Barranquero <lektu@terra.es>
13454
13455 * callproc.c (init_callproc) [DOS_NT]:
13456 Initialize Vshared_game_score_directory to nil.
13457 (syms_of_callproc) [DOS_NT]: Likewise.
13458
134592002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
13460
13461 * xdisp.c (display_line): Replace an abort with xassert.
13462
134632002-07-21 Richard M. Stallman <rms@gnu.org>
13464
13465 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
13466 and END_UNCHANGED when setting buffer_unchanged_p.
13467 Use current_matrix_up_to_date_p to decide whether to use
13468 try_cursor_movement.
13469
13470 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
13471
13472 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
13473
13474 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
13475 Set to nil if dir does not exist.
13476 (syms_of_callproc): Init unconditionally and simply.
13477
13478 * buffer.c (Fbuffer_list): Doc fix.
13479
134802002-07-21 Ken Raeburn <raeburn@gnu.org>
13481
13482 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
13483
13484 * buffer.c (mmap_realloc): When shrinking, make sure number of
13485 pages to unmap is rounded towards zero.
13486
13487 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
13488 (XSETINT): Deleted.
13489
13490 * m/att3b.h (XINT): Don't define.
13491 (VALBITS, VALMASK, XTYPE): Deleted.
13492 (DATA_SEG_BITS): Define.
13493 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
13494 ARRAY_MARK_FLAG): Deleted.
13495 (DATA_SEG_BITS): Define.
13496 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
13497 (DATA_SEG_BITS): Define.
13498
134992002-07-20 Richard M. Stallman <rms@gnu.org>
13500
13501 * print.c (print_error_message): New args CONTEXT and CALLER.
13502 Calls changed.
13503
13504 * lisp.h (print_error_message): Declare new args.
13505
13506 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
13507 and CONTEXT to print_error_message, don't print them here.
13508 For a Quit, don't use Vsignaling_function.
13509 Call message_log_maybe_newline.
13510
13511 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
13512
135132002-07-20 Kim F. Storm <storm@cua.dk>
13514
13515 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
13516
135172002-07-19 Ken Raeburn <raeburn@gnu.org>
13518
13519 * bytecode.c (struct byte_stack): Pointers into byte string now
13520 point to const.
13521 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
13522 const.
13523 * charset.h (BCOPY_SHORT): Source pointer now points to const.
13524 * coding.c (encode_eol, detect_coding, detect_eol):
13525 (decode_coding, encode_coding, detect_coding_system):
13526 Source strings now treated as const.
13527 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
13528 modify Lisp string contents.
13529 * coding.h (decode_coding, encode_coding, detect_coding,
13530 detect_eol): Declarations updated.
13531 * composite.c (compose_chars_in_text): Treat Lisp string contents
13532 as const.
13533 * dispnew.c (safe_bcopy): Source pointer now points to const.
13534 * lisp.h (STRING_COPYIN): New macro.
13535 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
13536 (internal_with_output_to_temp_buffer): Declarations updated.
13537 * print.c (temp_output_buffer_setup):
13538 (internal_with_output_to_temp_buffer): Buffer name argument is now
13539 pointer to const.
13540 * sound.c (struct sound_device): Function pointer field "write"
13541 buffer argument now points to const.
13542 (vox_write): Buffer argument points to const.
13543 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
13544 contents as const.
13545 * sysdep.c (emacs_write): Buffer pointer now const.
13546 * term.c (encode_terminal_code): Buffer pointer now const.
13547 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
13548 (x_face_list_fonts, x_update_menu_appearance):
13549 (hash_string_case_insensitive): Treat Lisp string contents as const.
13550
135512002-07-19 Juanma Barranquero <lektu@terra.es>
13552
048addec
JD
13553 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
13554
13555 * fileio.c (syms_of_fileio): Likewise.
c62aec78
JB
13556 (Ffile_name_as_directory): Fix argument name in docstring.
13557 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
048addec
JD
13558
135592002-07-18 Richard M. Stallman <rms@gnu.org>
13560
13561 * data.c (Fdefalias): Doc fix.
13562
135632002-07-17 Dave Love <fx@gnu.org>
13564
13565 * intervals.h (text_property_stickiness): Use P_.
13566
13567 * ccl.c: Remove `emacs' conditionals.
13568 (ccl_backtrace_table): Fix size spec.
13569 (ccl_driver): Fix type errors.
13570
135712002-07-16 Ken Raeburn <raeburn@gnu.org>
13572
13573 * alloc.c (xstrdup, make_string, make_unibyte_string)
13574 (make_multibyte_string, build_string): String pointer args now
13575 point to const.
13576 * charset.c (find_charset_in_text, c_string_width):
13577 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
13578 * fileio.c (report_file_error):
13579 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
13580 (count_combining_before, count_combining_after, insert_1_both):
13581 (insert, insert_and_inherit, insert_string):
13582 (insert_before_markers, insert_before_markers_and_inherit):
13583 * lread.c (intern, oblookup, hash_string):
13584 * minibuf.c (temp_echo_area_glyphs):
13585 * search.c (fast_c_string_match_ignore_case):
13586 * sysdep.c (emacs_open, set_file_times):
13587 * xfaces.c (xstricmp):
13588 * xdisp.c (store_frame_title, string_char_and_length):
13589 (message_dolog, message2, message2_nolog, set_message): Likewise.
13590 (set_message_1): Cast message string argument to const pointer.
13591 * editfns.c (general_insert_function): Insertion function now
13592 takes pointer to const for input data.
13593 * charset.h (find_charset_in_text, c_string_width):
13594 (parse_str_as_multibyte): Declarations updated.
13595 * dispextern.h (xstricmp): Declaration updated.
13596 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
13597 (count_size_as_multibyte, count_combining_before):
13598 (count_combining_after, insert_1, insert_1_both, message_dolog):
13599 (insert, insert_and_inherit, insert_before_markers)
13600 (insert_before_markers_and_inherit, set_message, message2):
13601 (message2_dolog, build_string, make_string, make_unibyte_string):
13602 (make_multibyte_string, intern, oblookup, report_file_error):
13603 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
13604 (emacs_open, xstrdup): Declarations updated.
13605 * systime.h (set_file_times): Declaration updated.
13606
13607 * charset.c (find_charset_in_text, lisp_string_width): Use const
13608 for pointer to lisp string data.
13609 * charset.h (FETCH_STRING_CHAR_ADVANCE):
13610 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
13611 * coding.c (Ffind_coding_systems_region_interval):
13612 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
13613 (Fmake_directory_internal, Fdelete_directory):
13614 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
13615 * fontset.c (font_family_registry, fs_query_fontset):
13616 (list_fontsets):
13617 * frame.c (Fframe_parameter):
13618 * keyboard.c (cmd_error_internal):
13619 * keymap.c (Fdescribe_buffer_bindings):
13620 * lread.c (complete_filename_p, openp):
13621 * minibuf.c (Fminibuffer_complete_word):
13622 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
13623 (face_before_or_after_it_pos, next_element_from_string):
13624 (get_overlay_arrow_glyph_row, display_mode_element):
13625 (decode_mode_spec_coding):
13626 * xterm.c (same_x_server): Likewise.
13627
13628 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
13629 settings of non-existent fields.
13630
13631 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
13632 copy a lisp value.
13633
13634 * lread.c (Fintern_soft): Use string macros instead of
13635 Lisp_String fields.
13636 * keyboard.c (echo_char, parse_modifiers_uncached):
13637 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
13638 * textprop.c (validate_interval_range, interval_of): Likewise.
13639
13640 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
13641
13642 * charset.h (FETCH_STRING_CHAR_ADVANCE)
13643 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
13644 XSTRING()->size_byte.
13645
13646 * lisp.h (SDATA, SREF): Produce rvalue.
13647 (SSET): New macro.
13648 * alloc.c (make_event_array): Use SSET for storing into a string.
13649 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
13650 a string.
13651 * casefiddle.c (casify_object): Use SSET.
13652 * charset.h (FETCH_STRING_CHAR_ADVANCE)
13653 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
13654 address of string contents.
13655 * data.c (Faref): Use SDATA.
13656 (Faset): Use SDATA, SSET.
13657 * dired.c (directory_files_internal): Use SSET.
13658 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
13659 (Fread_file_name): Use SREF, SSET.
13660 * fns.c (concat): Use SSET.
13661 (concat, Fdelete): Use SDATA.
13662 * insdel.c (insert_from_string_1): Use SDATA.
13663 * keyboard.c (Fevent_convert_list): Use SREF.
13664 * lread.c (Fload): Use SDATA, SSET.
13665 * macfns.c (validate_x_resource_name): Use SSET.
13666 * process.c (status_message): Use SSET.
13667 * search.c (wordify): Use SDATA.
13668 (Freplace_match): Use SREF.
13669 * w32fns.c (validate_x_resource_name): Use SSET.
13670 * xfns.c (validate_x_resource_name): Use SSET.
13671 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
13672
136732002-07-16 Richard M. Stallman <rms@gnu.org>
13674
13675 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
13676
13677 * xdisp.c (reconsider_clip_changes):
13678 Don't test prevent_redisplay_optimizations_p.
13679 (redisplay_internal): Test prevent_redisplay_optimizations_p
13680 along with clip_changed in some cases.
13681 (try_window_id): Likewise.
13682 (redisplay_window): New local var buffer_unchanged_p.
13683
13684 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
13685
13686 * process.c (create_process): Test USG_SUBTTY_WORKS.
13687 (process_send_signal): Clean up handling of GID.
13688 Detect errors in ioctls meant to set GID.
13689
13690 * window.c (temp_output_buffer_show):
13691 Don't set prevent_redisplay_optimizations_p.
13692
136932002-07-15 Juanma Barranquero <lektu@terra.es>
13694
13695 * eval.c (Fdefvaralias): Add docstring argument.
13696
136972002-07-15 Ken Raeburn <raeburn@gnu.org>
13698
13699 * lisp.h (STRING_INTERVALS): Produce rvalue.
13700 (STRING_SET_INTERVALS): New macro.
13701 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
13702 * fns.c (Fstring_as_multibyte): Likewise.
13703 * intervals.c (balance_possible_root_interval, delete_interval)
13704 (create_root_interval, copy_intervals_to_string): Likewise.
13705 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
13706 instead of 0.
13707
137082002-07-14 Ken Raeburn <raeburn@gnu.org>
13709
13710 * lisp.h (STRING_SET_CHARS): New macro.
13711 (SCHARS, SBYTES): Produce rvalues.
13712 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
13713 * fns.c (concat): Likewise.
13714 * lread.c (read_vector): Likewise.
13715
3419757d 13716 * lisp.h (SMBP): Delete. All uses changed to STRING_MULTIBYTE.
048addec 13717 (STRING_SET_UNIBYTE): New macro.
3419757d 13718 (SET_STRING_BYTES): Delete. Callers (all of which supplied a
048addec
JD
13719 length of -1) changed to use STRING_SET_UNIBYTE.
13720 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
13721 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
13722 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
13723 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
13724 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
13725 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
13726 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
13727 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
13728 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
13729 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
13730 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
13731 STRING_BYTES or indirection changed to SCHARS, SBYTES,
13732 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
13733 unchanged for now.
13734
137352002-07-13 Kim F. Storm <storm@cua.dk>
13736
13737 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
13738
137392002-07-12 Richard M. Stallman <rms@gnu.org>
13740
13741 * fileio.c (Fwrite_region): Doc fix.
13742
13743 * print.c (print_error_message): Don't handle Vsignaling_function here.
13744
13745 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
13746 (command_loop_1): Avoid certain actions after memory-full error.
13747
13748 * eval.c (Fsignal): Don't call cancel_hourglass.
13749 For a memory-full error, don't call Vsignal_hook_function
13750 and don't set Vsignaling_function.
13751
13752 * process.c (process_send_signal): Add abort call.
13753
137542002-07-11 Markus Rost <rost@math.ohio-state.edu>
13755
13756 * keymap.c (Fkey_binding): Fix typo.
13757
137582002-07-11 Richard M. Stallman <rms@gnu.org>
13759
13760 * alloc.c (Vmemory_full): New variable.
3419757d 13761 (Vmemory_signal_data): Rename from memory_signal_data.
048addec
JD
13762 Uses changed.
13763 (syms_of_alloc): Defvar them.
13764 (memory_full, buffer_memory_full): Set Vmemory_full.
13765
13766 * lisp.h (Vmemory_full): Add declaration.
13767 (current_column, indented_beyond_p): Change declaration.
13768
13769 * indent.c (last_known_column): Declare as double, not float.
13770 (current_column, current_column_1, string_display_width)
13771 (position_indentation): Return `double'.
13772 (indented_beyond_p): Arg `column' is `double'. Callers changed.
13773
13774 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
13775 (back_to_previous_visible_line_start)
13776 (reseat_at_next_visible_line_start, next_element_from_buffer):
13777 Use `double', not `float', when calling indented_beyond_p.
13778
3419757d 13779 * s/hpux11.h (BROKEN_SA_RESTART): Define.
048addec
JD
13780
13781 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
13782
137832002-07-11 Juanma Barranquero <lektu@terra.es>
13784
13785 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
f9711de4
JB
13786 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
13787 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
13788 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
13789 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
13790 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
048addec
JD
13791
137922002-07-10 Juanma Barranquero <lektu@terra.es>
13793
d814862a
JB
13794 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE.
13795 All callers changed.
048addec
JD
13796
137972002-07-09 Stefan Monnier <monnier@cs.yale.edu>
13798
13799 * data.c (Fdefalias): Add an optional `docstring' argument.
13800 (set_internal, Fsetq_default): Use XCAR/XCDR.
13801
13802 * composite.c (HASH_VALUE, HASH_KEY):
13803 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
13804
138052002-07-09 Kenichi Handa <handa@etl.go.jp>
13806
13807 * callproc.c (Fcall_process): Fix previous change.
13808
138092002-07-07 Stefan Monnier <monnier@cs.yale.edu>
13810
13811 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
13812 Add support for hash-tables.
13813 (Ftry_completion): Return t even if the string appears multiple times.
13814
13815 * fns.c (Fnconc): Use XCDR.
13816 (Fprovide): Use CONSP and XCDR.
13817 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
13818 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
13819 (Fmake_hash_table): Accept `:size nil'.
13820 (Fmakehash): Delete: moved to subr.el.
13821 (syms_of_fns): Don't defsubr makehash.
13822
13823 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
13824 (HASH_TABLE_SIZE): Move from fns.c.
13825
138262002-07-07 Richard M. Stallman <rms@gnu.org>
13827
13828 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
13829 Instead just return 0 when there is something to be done.
13830 (try_scrolling): If make_cursor_line_fully_visible returns 0,
13831 retry scrolling as if cursor were off the bottom.
13832 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
13833 return CURSOR_MOVEMENT_MUST_SCROLL.
13834 (redisplay_window): If make_cursor_line_fully_visible returns 0,
13835 go to try_to_scroll.
13836
13837 * buffer.c (Fbuffer_local_value): Store current value into its binding
13838 so we get the up-to-date value for the binding that is loaded.
13839
13840 * eval.c (Fdefmacro): Doc fix.
13841
138422002-07-05 Dave Love <fx@gnu.org>
13843
13844 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
13845 correctly.
13846
13847 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
13848 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
13849 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
13850 CCL_LookupCharConstTbl.
13851 (syms_of_ccl): Defvar translation-hash-table-vector.
13852
138532002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13854
13855 * xdisp.c: Remove unused variable `face'.
13856
138572002-07-04 Juanma Barranquero <lektu@terra.es>
13858
13859 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
13860 obsolescence information.
13861
138622002-07-03 Andrew Choi <akochoi@shaw.ca>
13863
13864 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
13865 pattern. Search cache first.
13866 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
13867 for Japanese font.
13868 (XLoadQueryFont): Use it.
13869
138702002-07-02 Richard M. Stallman <rms@gnu.org>
13871
13872 * keymap.c (Fdefine_key): Doc fix.
13873
13874 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
13875
138762002-07-02 Juanma Barranquero <lektu@terra.es>
13877
13878 * keymap.c (syms_of_keymap): Fix typo.
13879
138802002-07-01 Andrew Choi <akochoi@shaw.ca>
13881
13882 * s/darwin.h: Define POSIX_SIGNALS.
13883
13884 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
13885 and FSRefMakePath to convert FSSpec returned with Apple Event to
13886 Posix pathname.
13887 (mac_initialize) [TARGET_API_MAC_CARBON]:
13888 Call init_required_apple_events and disable the `Quit' menu item
13889 provided automatically by the Carbon Toolbox.
13890
138912002-07-01 Dave Love <fx@gnu.org>
13892
13893 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
13894 for K&R.
13895
13896 * xterm.c: Fix prototype for K&R.
13897
13898 * term.c (costs_set): Declare static, non-initialized for pcc.
13899
139002002-07-01 Richard M. Stallman <rms@gnu.org>
13901
13902 * keyboard.c (timer_last_idleness_start_time): New variable.
13903 (timer_start_idle): Set that.
13904 (read_key_sequence): Use that to reset timer_idleness_start_time
13905 to previous value.
13906
13907 * window.c (Frecenter): With arg, set optional_new_start.
13908
13909 * xdisp.c (redisplay_internal): Make optional_new_start really work.
13910
13911 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
13912 buffer for completion.
13913
139142002-06-29 Ken Raeburn <raeburn@gnu.org>
13915
13916 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
13917
139182002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13919
13920 * keyboard.c (readable_filtered_events): New function that filters
13921 FOCUS_IN_EVENT depending on parameter.
13922 (readable_events): Calls readable_filtered_events, not filtering
13923 FOCUS_IN_EVENT.
13924 (get_filtered_input_pending): New function, filtering parameter passed
13925 to readable_filtered_events.
13926 (get_input_pending): Calls get_filtered_input_pending, not filtering
13927 FOCUS_IN_EVENT.
13928 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
13929 FOCUS_IN_EVENT.
13930
13931 * xterm.h (struct x_output): Add focus_state.
13932
13933 * xterm.c (x_focus_changed): New function.
13934 (x_detect_focus_change): New function.
13935 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
13936 EnterNotify and LeaveNotify to track X focus changes.
13937
139382002-06-28 Andreas Schwab <schwab@suse.de>
13939
13940 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
13941
139422002-06-27 Kim F. Storm <storm@cua.dk>
13943
13944 * xdisp.c: (mode_line_string_list, mode_line_string_face)
13945 (mode_line_string_face_prop): New variables.
13946 (store_mode_line_string): New function.
13947 (display_mode_element): Use store_mode_line_string to
13948 add mode-line string elements to mode_line_string_list
13949 when mode_line_string_list is non-nil.
13950 (Fformat_mode_line): Now returns propertized string by
13951 default. New arg NO-PROPS to ignore properties.
13952 (decode_mode_spec): Only add two dashes for %- in propertized
13953 mode-line string.
13954 (syms_of_xdisp): Init and staticpro mode_line_string_list.
13955
139562002-06-27 Stefan Monnier <monnier@cs.yale.edu>
13957
13958 * minibuf.c (minibuffer_completion_contents): Add return type.
13959
139602002-06-27 Juanma Barranquero <lektu@terra.es>
13961
13962 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
13963
139642002-06-26 Juanma Barranquero <lektu@terra.es>
13965
13966 * fileio.c (read_file_name_cleanup): Add missing return.
13967
139682002-06-26 Richard M. Stallman <rms@gnu.org>
13969
13970 * window.c (Frecenter): Don't set force_start flag.
13971
13972 * minibuf.c (do_completion, Fminibuffer_complete_word)
13973 (Fminibuffer_completion_help): Complete just the text before point.
13974 (minibuffer_completion_contents): New function.
13975
13976 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
13977
13978 * frame.c (frames_bury_buffer): Function deleted.
13979
139802002-06-25 Miles Bader <miles@gnu.org>
13981
13982 * callint.c (Fcall_interactively): When checking to see if doprnt hit
13983 the end of callint_message, allow for a terminating '\0'.
13984
139852002-06-24 Juanma Barranquero <lektu@terra.es>
13986
13987 * w32select.c: Include composite.h
13988
13989 * w16select.c: Likewise.
13990
139912002-06-24 Kenichi Handa <handa@etl.go.jp>
13992
13993 * callproc.c (Fcall_process): If code detection is necessary,
13994 call detect_coding directly here.
13995
13996 * coding.c (detect_eol): Preserve coding->cmp_data.
13997
13998 * w16select.c (Fw16_get_clipboard_data):
13999 * w32fns.c (w32_to_x_font):
14000 * w32select.c (Fw32_get_clipboard_data):
14001 * xselect.c (selection_data_to_lisp_data):
14002 * xterm.c (XTread_socket): Disable composition handling.
14003
140042002-06-24 Stefan Monnier <monnier@cs.yale.edu>
14005
14006 * print.c (temp_output_buffer_setup): Kill all local variables.
14007
140082002-06-22 Stefan Monnier <monnier@cs.yale.edu>
14009
14010 * lread.c (Fread): Remove redundant and imprecise declaration.
14011
14012 * xfns.c (check_x_display_info): Use check_x_frame.
14013
14014 * .gdbinit (xprintsym): Use the new `xname' field.
14015 (xsymbol): Use it.
14016
140172002-06-22 Jason Rumney <jasonr@gnu.org>
14018
14019 * w32fns.c (file_dialog_callback): New function.
14020 (Fx_file_dialog): Allow selecting directories as well as files.
14021
140222002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14023
14024 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
f63fd14e 14025 OpenBSD. Add support for mipseb-*-netbsd* machines.
048addec
JD
14026
140272002-06-17 Andrew Choi <akochoi@shaw.ca>
14028
14029 * macterm.c (mac_scroll_area): Set foreground and backcolor to
14030 black and white before scrolling. Restore frame background and
14031 foreground color after scrolling.
14032 (do_window_update): Call XClearWindow before calling expose_frame.
14033 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
14034 FRAME_FOREGROUND_PIXEL of frame.
14035
14036 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
14037 test Mac command key as <ALT> key.
14038
140392002-06-17 Stefan Monnier <monnier@cs.yale.edu>
14040
14041 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
14042
14043 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
14044 Lookup keys in function-key-map immediately so that key-translation-map
14045 can be applied earlier.
14046 Remove function_key_possible and key_translation_possible, replaced
14047 by checking `keytran_start < t'.
14048
14049 * .gdbinit (xsymbol): Use the new `xname' field.
14050
140512002-06-17 Andrew Choi <akochoi@shaw.ca>
14052
14053 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
14054 test Mac command key as <ALT> key.
14055
14056 * mac.c (do_applescript): Call initialize_applescript if necessary
14057 when first called. Dispose of result_desc only when there is no error.
14058 (Fdo_applescript): Use %d format specifier instead of %ld.
14059
140602002-06-16 Andrew Choi <akochoi@shaw.ca>
14061
14062 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
14063 of FrontWindow for cases keyDown and autoKey.
14064
14065 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
14066 Vdefault_fontset to Monaco with mac-roman coding.
14067
14068 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
14069 init_process before and after inclusion of Carbon/Carbon.h, resp.
14070
14071 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
14072 cursor_gc.
14073 (add_font_name_table_entry): New function.
14074 (init_font_name_table): Use add_font_name_table_entry; add italic,
14075 bold, and bold-italic entries for truetype fonts.
14076
14077 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
14078 for Mac too.
14079 (try_font_list) [MAC_OS]: If no font matches given registry, try
14080 fonts with any registry matching face_family.
14081 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
14082
14083 * s/darwin.h: If autoconf detects the Ncurses library, define
14084 LIBS_TERMCAP to -lncurses to use it.
14085
140862002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
14087
14088 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
14089
140902002-06-15 Richard M. Stallman <rms@gnu.org>
14091
14092 * window.c (Fset_window_configuration): Explicitly preserve
14093 the point value that new_current_buffer had at the start.
14094
140952002-06-14 Juanma Barranquero <lektu@terra.es>
14096
14097 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
14098 Fix typos.
14099
141002002-06-14 Kim F. Storm <storm@cua.dk>
14101
14102 * insdel.c (insert_1_both, insert_from_string_1)
14103 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
14104 insert happened in the end_unchanged region. Otherwise, the
14105 redisplay may be confused and duplicate the last line in the
14106 buffer [seen after save-buffer when require-final-newline==t].
14107
141082002-06-13 Jason Rumney <jasonr@gnu.org>
14109
14110 * w32.c (init_environment): Remove EMACSLOCKDIR.
14111 (stat): Swap _S_IFDIR and _S_IFREG.
14112
141132002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14114
14115 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
14116 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
14117 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
14118 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
14119 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
14120 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
14121 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
14122 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
14123 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
14124 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
14125 SELECTION_REQUEST_EVENT, selection_clear_event to
14126 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
14127 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
14128 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
14129 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
14130 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
14131 no_event to NO_EVENT.
14132
141332002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14134
14135 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
14136
141372002-06-12 Stefan Monnier <monnier@cs.yale.edu>
14138
14139 * intervals.c (textget): Don't forget to `return'.
14140 (lookup_char_property): Use XCAR/XCDR.
14141
141422002-06-12 Juanma Barranquero <lektu@terra.es>
14143
14144 * xdisp.c (Fformat_mode_line): Fix typo.
14145
141462002-06-12 Kim F. Storm <storm@cua.dk>
14147
14148 * xdisp.c (Fformat_mode_line): New function.
14149 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
14150 (store_frame_title_char, store_frame_title): Use unconditionally.
14151 (init_xdisp): Defsubr Fformat_mode_line.
14152 Initialize frame_title_buf etc. unconditionally.
14153
141542002-06-11 Stefan Monnier <monnier@cs.yale.edu>
14155
14156 * keyboard.c (read_key_sequence):
14157 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
14158 things through those maps after downcasing events.
14159 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
14160 applies after function-key-map.
14161 Make sure that keytran can be done in the middle in the sequence.
14162 Be careful not to throw away events past the one we downcase.
14163
14164 * lread.c (read_integer): Remove unused var `tem'.
14165 (read1): Fix int/Lisp_Object mixup.
14166
14167 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
14168
141692002-06-11 Richard M. Stallman <rms@gnu.org>
14170
14171 * keyboard.c (readable_events): Ignore any number of
14172 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
14173
141742002-06-09 Miles Bader <miles@gnu.org>
14175
14176 * xfaces.c (Ftty_supports_face_attributes_p): New function.
14177 (parse_rgb_list, tty_lookup_color): New functions.
14178 (tty_defined_color): Use `tty_lookup_color' to do all the work.
14179 (color_distance, Fcolor_distance): New functions.
14180 (TTY_SAME_COLOR_THRESHOLD): New macro.
14181 (Qtty_color_standard_values): New variable.
14182 (syms_of_xfaces): Initialize new vars & functions.
14183
141842002-06-08 Colin Walters <walters@verbum.org>
14185
14186 * textprop.c (Vchar_property_alias_alist): New variable.
14187 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
14188
14189 * intervals.c (lookup_char_property): New function for looking up
14190 overlay and text properties, created from textget.
14191 (textget): Use it.
14192
14193 * intervals.h (lookup_char_property): Declare.
14194 (Vchar_property_alias_alist): Declare.
14195
14196 * buffer.c (Foverlay_get): Use lookup_char_property.
14197
141982002-06-07 Sam Steingold <sds@gnu.org>
14199
14200 * xselect.c (lisp_data_to_selection_data): Fix last change:
14201 *data_ret is not a Lisp string, while unibyte_string is.
14202
142032002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
14204
14205 * xselect.c (lisp_data_to_selection_data): Fix last change:
14206 set size_ret.
14207
142082002-06-07 Andreas Schwab <schwab@suse.de>
14209
14210 * m/amdx86-64.h: New file.
14211
142122002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
14213
14214 * fns.c (Fstring_make_unibyte): Doc fix.
14215
14216 * xselect.c (lisp_data_to_selection_data): If the requested type
14217 is STRING, call string_make_unibyte to encode the selected text
14218 as a string.
14219
14220 * window.c (Fset_window_hscroll): Doc fix.
14221
142222002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14223
14224 * fileio.c (choose_write_coding_system):
14225 Call select-safe-coding-system properly.
14226
142272002-06-03 Richard M. Stallman <rms@gnu.org>
14228
14229 * xdisp.c (message_with_string): Error if STRING is not a string.
14230
14231 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
14232
14233 * fileio.c (choose_write_coding_system): Pass FILE arg to
14234 Vselect_safe_coding_system_function.
14235
142362002-06-03 Ken Raeburn <raeburn@gnu.org>
14237
14238 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
14239
142402002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
14241
14242 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
14243 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
14244 * keymap.c (describe_command): Likewise.
14245 * minibuf.c (read_minibuf): Likewise.
14246
14247 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
14248 Cast `current_column' return value to int.
14249 (back_to_previous_visible_line_start)
14250 (reseat_at_next_visible_line_start, next_element_from_buffer):
14251 Cast `indented_beyond_p' 3rd arg to float.
14252
14253 * indent.c (last_known_column): Now a float.
14254 (current_column_1, position_indentation, current_column)
14255 (string_display_width): Return float.
14256 (Fcurrent_column): Cast `current_column' return value to int.
14257 (Fcurrent_indentation): Cast `position_indentation' retval to int.
14258 (indented_beyond_p): Third arg now a float.
14259 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
14260
14261 * lisp.h (current_column): Now returns float.
14262 (indented_beyond_p): 3rd arg now a float.
14263
142642002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
14265
14266 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
14267 is Qcompound_text_with_extensions.
14268
14269 * xselect.c (lisp_data_to_selection_data): Always set selection
14270 type as string if x_encode_text returns streingp non-NULL.
14271
14272 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
14273
142742002-05-30 Richard M. Stallman <rms@gnu.org>
14275
14276 * window.c (Fset_window_configuration): Correct the handling
14277 of point in current buffer, to work with multiple windows.
14278
142792002-05-29 Colin Walters <walters@verbum.org>
14280
14281 * lread.c (Fread_from_string): Don't depend on order of evaluation
14282 for C function parameters.
14283
142842002-05-28 Richard M. Stallman <rms@gnu.org>
14285
14286 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
14287 way for blinked-off state and for a nonselected window.
14288
14289 * window.c (window_scroll_pixel_based): Don't call Fbolp;
14290 instead, see if the new start pos is at beginning of line.
14291
14292 * fileio.c (Fwrite_region): If START is a string, don't
14293 make any annotations.
14294
14295 * eval.c (syms_of_eval): Doc fix.
14296
142972002-05-28 Colin Walters <walters@debian.org>
14298
14299 * emacs.c (USAGE1): Add --no-splash.
14300 (standard_args): Ditto.
14301
143022002-05-28 Colin Walters <walters@gnu.org>
14303
14304 * lread.c (readchar_count): New variable.
14305 (readchar): Increment it.
14306 (unreadchar): Decrement it.
14307 (read_multibyte): Decrement it.
14308 (Vread_with_symbol_positions): New variable.
14309 (Vread_symbol_positions_list): New variable.
14310 (read_internal_start): New function, created from Fread and
14311 Fread_from_string. Handle Vread_symbol_positions_list and
14312 Vread_with_symbol_positions.
14313 (readevalloop, Fread, Fread_from_string): Use it.
14314 (read1): Use readchar_count to add symbol positions to
14315 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
14316 (syms_of_lread): DEFVAR_LISP and initialize them.
14317
14318 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
14319 (substitute_object_recurse, substitute_object_in_subtree)
14320 (substitute_in_interval): Prototype.
14321 (read_multibyte): Return c if it's less than zero.
14322
143232002-05-28 Kim F. Storm <storm@cua.dk>
14324
14325 * fileio.c (Fread_file_name_internal): Added brute-force
14326 speed up for using predicate file-directory-p.
14327
143282002-05-28 Kim F. Storm <storm@cua.dk>
14329
14330 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
14331 New variables.
14332 (syms_of_fileio): DEFVAR_LISP them.
14333 (read_file_name_cleanup): New unwind function.
14334 (Fread_file_name_internal): Only return completions satifying
14335 Vread_file_name_predicate. Temporarily unwind protect and rebind
14336 default-directory while checking completions against the predicate.
14337 (Fread_file_name): Added PREDICATE argument. Specbind it to
14338 Vread_file_name_predicate during completion.
14339 Call Vread_file_name_function to read the file name if non-nil.
14340
14341 * lisp.h (Fread_file_name): Now has 6 args.
14342
14343 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
14344 predicate for Fread_file_name when reading directory name.
14345 Supply Qnil for predicate in other calls to Fread_file_name.
14346
143472002-05-26 Miles Bader <miles@gnu.org>
14348
14349 * term.c (tty_capable_p): New function.
14350 * dispextern.h (tty_capable_p): New function declaration.
14351 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
14352 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
14353
143542002-05-23 Stefan Monnier <monnier@cs.yale.edu>
14355
14356 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
14357 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
14358 (Vwrite_region_annotate_functions): Docstring fix.
14359
143602002-05-23 Kim F. Storm <storm@cua.dk>
14361
14362 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
14363 phys_cursor's hpos is overwritten. This is still not completely
14364 correct, as it doesn't really make sense to use hpos at all to
14365 get the cursor glyph (as that is relative to the width of the
14366 characters on the line, which may have changed during the update).
14367
143682002-05-22 Jason Rumney <jasonr@gnu.org>
14369
14370 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
14371 Lisp_Object.
14372 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
14373 Use modified enumfont_t struct.
14374
14375 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
14376
14377 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
14378 Handle the `hbar' cursor type.
14379 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
14380
14381 * w32fns.c (Qhbar): New variable.
14382 (x_specified_cursor_type): Use it.
14383
143842002-05-21 Ken Raeburn <raeburn@gnu.org>
14385
14386 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
14387 now, when the address is needed.
14388
143892002-05-21 Colin Walters <walters@gnu.org>
14390
14391 * Makefile.in (shortlisp): Add font-core.el.
14392
143932002-05-20 Richard M. Stallman <rms@gnu.org>
14394
14395 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
14396
14397 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
14398 equivalent key bindings here.
14399
144002002-05-20 Ken Raeburn <raeburn@gnu.org>
14401
14402 Change symbol structure to contain a lisp object for the symbol
14403 name:
14404 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
14405 object field named "xname".
14406 (SYMBOL_NAME): New macro.
14407 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
14408 name field.
14409 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
14410 (mark_object, gc_sweep): Use symbol xname field and XSTRING
14411 instead of name field.
14412 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
14413 SYMBOL_NAME instead of XSYMBOL and name field.
14414 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
14415 instead of XSYMBOL and name field.
14416 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
14417 and SYMBOL_NAME instead of XSYMBOL and name field.
14418 * coding.c (Fread_coding_system, code_convert_region1)
14419 (code_convert_string1, code_convert_string_norecord)
14420 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
14421 XSYMBOL and name field.
14422 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
14423 (Fmake_variable_buffer_local, Fmake_local_variable)
14424 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
14425 of XSYMBOL and name field.
14426 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
14427 XSYMBOL and name field.
14428 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
14429 instead of XSYMBOL and name field.
14430 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
14431 XSYMBOL and name field.
14432 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
14433 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
14434 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
14435 instead of XSYMBOL and name field.
14436 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
14437 (parse_modifiers, apply_modifiers, Fevent_convert_list)
14438 (parse_solitary_modifier, Fexecute_extended_command):
14439 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
14440 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
14441 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
14442 of XSYMBOL and name field.
14443 (describe_command, describe_translation): Use SYMBOL_NAME and
14444 assignment instead of XSYMBOL and name field and XSETSTRING.
14445 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
14446 instead of XSYMBOL and name field.
14447 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
14448 name field and XSETSTRING.
14449 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
14450 of XSYMBOL and name field.
14451 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
14452 assignment instead of XSYMBOL and name field and XSETSTRING.
14453 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
14454 XSTRING instead of XSYMBOL and name field.
14455 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
14456 and XSTRING instead of XSYMBOL and name field.
14457 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
14458 and XSTRING instead of XSYMBOL and name field.
14459 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
14460 XSTRING instead of XSYMBOL and name field.
14461 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
14462 of XSYMBOL and name field.
14463 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
14464 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
14465
144662002-05-19 Ken Raeburn <raeburn@gnu.org>
14467
14468 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
14469 and XCDR real rvalues in most configurations.
14470
14471 * buffer.c (fix_overlays_in_range, fix_overlays_before):
14472 Don't take the address of the cdr part of a cons cell; instead, track
14473 the parent cell and call XSETCDR, or set the variable for the head
14474 of the list if we haven't started down the list yet.
14475
144762002-05-19 Richard M. Stallman <rms@gnu.org>
14477
14478 * doc.c (reread_doc_file): Don't ask for confirmation.
14479
144802002-05-18 Jason Rumney <jasonr@gnu.org>
14481
14482 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
14483 (xbm_load_image): Use it.
14484 (xbm_load): Ditto.
14485 (xbm_read_bitmap_data): Reverted to xfns.c version.
14486 From David Ponce <david@dponce.com>.
14487
144882002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
14489
14490 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
14491 2.02 and later.
14492
144932002-05-16 Juanma Barranquero <lektu@terra.es>
14494
14495 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
14496
144972002-05-15 Stefan Monnier <monnier@cs.yale.edu>
14498
14499 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
14500 meaningful test.
14501 (read_char_minibuf_menu_prompt): Fix typo.
14502
145032002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
14504
14505 * eval.c (Fcommandp): Doc fix.
14506
145072002-05-13 Stefan Monnier <monnier@cs.yale.edu>
14508
14509 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
14510 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
14511 (Fset_keymap_parent): Gcpro a bit more.
14512 (access_keymap): Gcpro around meta_map call and around the main loop.
14513 (get_keyelt): Gcpro when following indirect references.
14514 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
14515 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
14516 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
14517 Remove useless ad-hoc remap code.
14518
145192002-05-13 Richard M. Stallman <rms@gnu.org>
14520
14521 * search.c (search_buffer): Give up boyer moore search if inverse
14522 translation change charset_base.
14523
145242002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
14525
14526 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
14527 characters is carried over from the previous block of text, adjust
14528 coding->produced to account for the extra character.
14529
145302002-05-11 Andreas Schwab <schwab@suse.de>
14531
14532 * coding.c (intersection): Keep the elements of the returned list
14533 in the same order as in the first list.
14534
145352002-05-11 Kim F. Storm <storm@cua.dk>
14536
3419757d 14537 * keymap.c (current_minor_maps): Fix resizing of cmm_maps;
048addec
JD
14538 only update cmm_size if realloc actually succeeds.
14539 Testing with initial size of 2 elements revealed that using
14540 realloc on GNU/Linux would cause a random trap in xmalloc
14541 later on, so I rewrote the code to use malloc/bcopy/free instead
14542 of realloc.
14543
145442002-05-10 Jason Rumney <jasonr@gnu.org>
14545
14546 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
14547
145482002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
14549
14550 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
14551 parens, to ensure correct evaluation order.
14552
145532002-05-10 Kim F. Storm <storm@cua.dk>
14554
14555 * keymap.c (Vemulation_mode_map_alists): New variable.
14556 (syms_of_keymap): DEFVAR_LISP it.
14557 (current_minor_maps): Process keymap alists in that list before
14558 minor-mode-overriding-map-alist and minor-mode-map-alist.
14559
145602002-05-09 Richard M. Stallman <rms@gnu.org>
14561
14562 * search.c (Freplace_match): Doc fix.
14563
145642002-05-09 Kim F. Storm <storm@cua.dk>
14565
14566 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
14567 Enlarge cursor rectangle drawn around image with non-zero relief.
14568
14569 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
14570 Enlarge cursor rectangle drawn around image with non-zero relief.
14571
14572 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
14573 Enlarge cursor rectangle drawn around image with non-zero relief.
14574
145752002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
14576
14577 * xselect.c (lisp_data_to_selection_data): Don't set selection
14578 type if comes from the Lisp object's car. If the selection
14579 contains a pure ASCII text, always return QSTRING as its type.
14580
145812002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14582
14583 * mac.c (mac-cut-function): Doc fix.
14584
145852002-05-05 Richard M. Stallman <rms@gnu.org>
14586
14587 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
14588
145892002-05-04 Jason Rumney <jasonr@gnu.org>
14590
14591 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
14592 for event-click-count.
14593
14594 * process.c (init_process): Only add server subfeature if we can
14595 use non-blocking I/O.
14596
145972002-05-04 Andrew Choi <akochoi@shaw.ca>
14598
14599 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
14600 repeatedly.
14601
146022002-05-03 Jason Rumney <jasonr@gnu.org>
14603
14604 * process.c (Fmake_network_process): Only support server sockets
14605 when we can make them non-blocking.
14606
14607 * s/ms-w32.h (HAVE_SELECT): Define.
14608
14609 * w32.h (FILE_NDELAY): New flag.
14610
14611 * w32.c (sys_getpeername, fcntl): New functions.
14612 (_sys_read_ahead): Temporarily block on non-blocking sockets.
14613
14614 * w32proc.c: include sys/file.h.
14615
146162002-05-03 Colin Walters <walters@verbum.org>
14617
14618 * callproc.c (Vgame_score_directory): Renamed to
14619 Vshared_game_score_directory.
14620
146212002-04-30 Richard M. Stallman <rms@gnu.org>
14622
14623 * s/gnu.h [emacs]: Include stdio.h.
14624 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
14625
14626 * eval.c (do_autoload): Error if called while preparing to dump.
14627
14628 * fns.c (Frequire): Error if need to load while preparing to dump.
14629
146302002-04-28 Colin Walters <walters@verbum.org>
14631
14632 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
14633 Default to "~/.emacs.d/games".
14634
146352002-04-29 Stefan Monnier <monnier@cs.yale.edu>
14636
14637 * lread.c (openp): Change arg exec_only to predicate.
14638 (build_load_history): Use XCAR/XCDR.
14639 (Flocate_file_internal): New fun.
14640 (syms_of_lread): Defsubr it.
14641 (Fload): Update call to openp.
14642
14643 * lisp.h (openp): Update prototype.
14644
14645 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
14646 * w32proc.c (sys_spawnve):
14647 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
14648 * w32.c (check_windows_init_file):
14649 * sound.c (Fplay_sound_internal):
14650 * process.c (Fstart_process):
14651 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
14652 * mac.c (run_mac_command):
14653 * emacs.c (init_cmdargs):
14654 * callproc.c (Fcall_process): Update call to openp.
14655
14656 * textprop.c (remove_properties): Don't use XCAR without CONSP.
14657
14658 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
14659
146602002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14661
14662 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
14663 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
14664
146652002-04-28 Richard M. Stallman <rms@gnu.org>
14666
14667 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
14668
14669 * eval.c (Fcommandp): New arg for_call_interactively.
14670 * lisp.h (Fcommandp): Declare new arg.
14671
146722002-04-28 Jason Rumney <jasonr@gnu.org>
14673
14674 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
14675
14676 * w32.c (stat, fstat): Use file index information to generate
14677 inodes for directories where available.
14678
146792002-04-26 Andrew Choi <akochoi@shaw.ca>
14680
14681 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
14682 [HAVE_CARBON]: Include Mac object files.
14683
14684 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
14685 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
14686 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
14687 MAC_OSX, and MAC_OS instead of macintosh.
14688
14689 * editfns.c [MAC_OS8]: Include stdio.h.
14690
14691 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
14692
14693 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
14694 Apple Monaco.
14695
78819ebb 14696 * process.c (QCfamily, QCfilte): Declare extern.
048addec
JD
14697 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
14698 calling select.
14699
14700 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
14701
14702 * tparam.c [MAC_OSX]: Don't define BC and UP.
14703
14704 * config.in [HAVE_CARBON]: Add.
14705
14706 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
14707 Move here from mac/src and mac/inc.
14708
14709 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
14710
147112002-04-26 Gerd Moellmann <gerd@gnu.org>
14712
14713 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
14714 Compute phys_cursor_width from the x position returned
14715 by x_draw_glyhs, which is cheaper.
14716 (x_display_and_set_cursor): Compute the buffer-local value
14717 of `cursor-in-non-selected-windows' only when needed.
14718
147192002-04-25 Gerd Moellmann <gerd@gnu.org>
14720
14721 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
14722 cursor on a stretch glyph has a width that depends on
14723 x_stretch_cursor_p.
14724
147252002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14726
14727 * abbrev.c (abbrev-start-location): Doc fix.
14728
14729 * indent.c (Fvertical_motion): Fix last change.
14730
147312002-04-25 Gerd Moellmann <gerd@gnu.org>
14732
14733 * indent.c (Fvertical_motion): Move to the start of the line
14734 containing PT before moving up or down.
14735
147362002-04-24 Gerd Moellmann <gerd@gnu.org>
14737
14738 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
14739 case of writing a whole row, more or less analogous to the case of
14740 writing only parts of a row.
14741
14742 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
14743 0 for NO_CURSOR.
14744
14745 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
14746
147472002-04-23 Colin Walters <walters@verbum.org>
14748
14749 * buffer.c (syms_of_buffer): Doc fix.
14750
147512002-04-23 Gerd Moellmann <gerd@gnu.org>
14752
14753 * xterm.c (notice_overwritten_cursor): Handle the special case
14754 of the cursor being in the first blank non-text line at the
14755 end of a window.
14756
14757 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
14758 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
14759 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
14760 bar cursors only, to make phys_cursor_width contain what its name
14761 suggests.
14762 (notice_overwritten_cursor): Consider the cursor image erased if
14763 the output area intersects the cursor image in y-direction.
14764
147652002-04-23 Simon Marshall <simon@gnu.org>
14766
14767 * xfns.c (x_set_mouse_color): Change default for cross_cursor
14768 to XC_hand2.
14769
147702002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14771
14772 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
14773
147742002-04-22 Kim F. Storm <storm@cua.dk>
14775
14776 * textprop.c (remove_properties): Fixed trap for malformed plist.
14777
147782002-04-22 Richard M. Stallman <rms@gnu.org>
14779
14780 * cmds.c (Fend_of_line): Handle intangible text in mid line.
14781
14782 * window.c (make_window): Initialize height_fixed_p,
14783 last_cursor_off_p, and p->cursor_off_p slots.
14784
147852002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14786
14787 * fns.c (use-dialog-box): Doc fix.
14788
147892002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14790
14791 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
14792 variables `row', `i' and `area'.
14793 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
14794 toolkit library.
14795
147962002-04-19 Stefan Monnier <monnier@cs.yale.edu>
14797
14798 * xfaces.c (clear_font_table): Don't free the default font of
14799 a frame even if it's on another display.
14800 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
14801 that could be Qt.
14802
148032002-04-19 Juanma Barranquero <lektu@terra.es>
14804
14805 * indent.c (Fmove_to_column): Remove unused local variable
14806 `next_boundary_byte'.
14807 (current_column_1): Likewise.
14808
148092002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
14810
14811 * msdos.c (Qhbar): New variable.
14812 (syms_of_msdos): Intern and staticpro it.
14813 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
14814 cursor type.
14815
148162002-04-19 Dave Lambert <dlambert@acm.org>
14817
14818 Theses change implement an underscore-like (`hbar') cursor.
14819
14820 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
14821
14822 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
14823 Handle the `hbar' cursor type.
14824 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
14825
14826 * xfns.c (Qhbar): New variable.
14827 (syms_of_xfns): Intern and staticpro it.
14828 (x_specified_cursor_type): Handle `hbar' cursor.
14829
14830 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
14831 not defined.
14832
148332002-04-18 Richard M. Stallman <rms@gnu.org>
14834
14835 * textprop.c (remove_properties): New arg LIST allows scanning
14836 either a list or a plist.
14837 (interval_has_some_properties_list): New function, like
14838 interval_has_some_properties using list instead of plist.
14839 All callers changed.
14840 (Fremove_list_of_text_properties): New function.
14841 (syms_of_textprop): Defsubr it.
14842
148432002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
14844
14845 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
14846
148472002-04-17 Juanma Barranquero <lektu@terra.es>
14848
14849 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
14850
148512002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
14852
14853 * window.c (coordinates_in_window): Don't report on margin area
14854 if its width is zero.
14855
148562002-04-16 Jason Rumney <jasonr@gnu.org>
14857
14858 * w32fns.c (Fx_file_dialog): Decode file name before using.
14859
14860 * w32term.c (construct_drag_n_drop): Likewise.
14861
148622002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
14863
14864 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
14865 store load-history in pure space.
14866
14867 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
14868
148692002-04-16 Stefan Monnier <monnier@cs.yale.edu>
14870
14871 * xterm.c (Qlatin_1, Qutf_8): New vars.
14872 (syms_of_xterm): Initialize them.
14873 (XTread_socket): Eliminate incorrect optimization that tried to avoid
14874 decoding the output of X*LookupString.
14875 Always use latin-1 to decode the output of XLookupString.
14876 Try Xutf8LookupString if XmbLookupString failed.
14877
14878 * region-cache.c (new_region_cache): Use BEG.
14879
148802002-04-16 Gerd Moellmann <gerd@gnu.org>
14881
14882 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
14883 configuration files.
14884 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
14885 returns 0.
14886
148872002-04-15 Andreas Schwab <schwab@suse.de>
14888
14889 * config.in: Regenerated using autoheader.
14890
14891 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
14892 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
14893 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
14894 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
14895 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
14896 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
14897 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
14898 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
14899 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
14900 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
14901 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
14902 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
14903 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
14904 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
14905 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
14906 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
14907 STACK_DIRECTION, now set by autoconf.
14908
149092002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14910
14911 * dispnew.c (marginal_area_string): Sort arguments.
14912
14913 * dispextern.h (marginal_area_string): Add prototype.
14914
149152002-04-13 Richard M. Stallman <rms@gnu.org>
14916
14917 * fileio.c (Finsert_file_contents):
14918 Don't call temp_output_buffer_setup--do just part, by hand.
14919
14920 * coding.c (run_pre_post_conversion_on_str):
14921 Don't call temp_output_buffer_setup--do just part, by hand.
14922
14923 * keyboard.c (command_loop_1): Don't call start_hourglass
14924 or cancel_hourglass when executing a macro.
14925
14926 * marker.c (count_markers): New function.
14927
14928 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
14929 grow without limit. Move recently used elements to the front.
14930
149312002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
14932
14933 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
14934
149352002-04-12 Gerd Moellmann <gerd@gnu.org>
14936
14937 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
14938 rows marginal areas.
14939 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
14940 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
14941
14942 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
14943
149442002-04-12 Dave Love <fx@gnu.org>
14945
14946 * dispnew.c (marginal_area_string): New.
14947
14948 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
14949 (Qleft_margin, Qright_margin): Declare.
14950 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
14951
14952 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
14953 note_mode_line_highlight and extended.
14954
14955 * keyboard.c (Qleft_margin, Qright_margin): Declare.
14956 (make_lispy_event): Deal with mouse events in margins.
14957
149582002-04-12 Stefan Monnier <monnier@cs.yale.edu>
14959
14960 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
14961
14962 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
14963 than deactivating the mark if tmm is set to `lambda'.
14964 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
14965 Use a single event for HELP_EVENT.
14966 (Fexecute_extended_command): Save last_point_position.
14967
149682002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14969
14970 * lisp.h (Fpropertize): Add prototype.
14971
14972 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
14973
149742002-04-10 Colin Walters <walters@verbum.org>
14975
14976 * config.in: Add HAVE_SHARED_GAME_DIR.
14977
14978 * callproc.c: (Vgame_score_directory): New variable.
14979 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
14980
149812002-04-10 Richard M. Stallman <rms@gnu.org>
14982
14983 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
14984
149852002-04-09 Stefan Monnier <monnier@cs.yale.edu>
14986
14987 * minibuf.c (read_minibuf): Use empty_string.
14988 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
14989 Short-circuit the search as soon as it "failed".
14990 (Fall_completions): Allow lambda forms and lists of strings for alist.
14991 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
14992 when require_match is nil.
14993 (Ftest_completion): Rename from `test_completion' and export to elisp.
14994 Call the predicate also when alist is a list.
14995 Obey Vcompletion_regexp_list.
14996 (do_completion, Fminibuffer_complete_and_exit): Use it.
14997 (Fassoc_string): Rename from `assoc_for_completion'.
14998 Allow list of strings as well and export to elisp.
14999
150002002-04-08 Stefan Monnier <monnier@cs.yale.edu>
15001
15002 * puresize.h (BASE_PURESIZE): Increase to 900KB.
15003
150042002-04-08 Juanma Barranquero <lektu@terra.es>
15005
15006 * w32.c (sys_accept): Don't hide variable `s'.
15007
150082002-04-05 Gerd Moellmann <gerd@gnu.org>
15009
15010 * callint.c (Fcall_interactively): Use INTEGERP instead of
15011 NUMBERP for checking Vhistory_length.
15012
150132002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15014
15015 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
15016 Doc fix to reflect it.
15017
150182002-04-04 Richard M. Stallman <rms@gnu.org>
15019
15020 * xdisp.c (display_mode_element): New arg RISKY.
15021 Disregard text props found or specified within a variable
15022 that isn't marked risky-local-variable.
15023 (Qrisky_local_variable): New variable.
15024 (syms_of_xdisp): Init and staticpro it.
15025
150262002-04-04 Stefan Monnier <monnier@cs.yale.edu>
15027
15028 * undo.c (record_point): New fun.
15029 (record_delete, record_insert): Use it.
15030
150312002-04-03 Juanma Barranquero <lektu@terra.es>
15032
15033 * doc.c (Fdocumentation): Add missing parentheses.
15034 (Fdocumentation_property): Likewise.
15035
150362002-04-03 Stefan Monnier <monnier@cs.yale.edu>
15037
15038 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
15039 data is 0, just return nil.
15040
150412002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
15042
15043 * msdos.c (syms_of_msdos): Fix last change with
15044 mouse_autoselect_window.
15045
150462002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15047
15048 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
15049 mouse_autoselect_window.
15050
150512002-04-02 Stefan Monnier <monnier@cs.yale.edu>
15052
15053 * keyboard.c (make_lispy_event): Handle unknown keysyms together
15054 with system-specific keysyms. Use it also for unknown function keys.
15055
15056 * doc.c (reread_doc_file): Return whether reload was attempted.
15057 (Fdocumentation, Fdocumentation_property): Don't try to reload
15058 if the doc is 0 and only ask once.
15059
15060 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
15061
150622002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
15063
15064 * keyboard.c (read_char): If the event was Qselect_window,
15065 restore timer_idleness_start_time to its previous value.
15066
15067 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
15068
150692002-04-01 Stefan Monnier <monnier@cs.yale.edu>
15070
15071 * region-cache.c (new_region_cache): Use BEG.
15072
15073 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
15074 Use BEG and BEG_BYTE.
15075
15076 * doc.c (get_doc_string): Return nil if the location is wrong.
15077 (reread_doc_file): New fun.
15078 (Fdocumentation, Fdocumentation_property):
15079 Call it if get_doc_string fails.
15080 (Fsnarf_documentation): Make it work for a dumped Emacs.
15081
15082 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
15083 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
15084
15085 * charset.c (Fstring): Allow 0 arguments.
15086
15087 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
15088
15089 * process.c (DATAGRAM_CONN_P, list_processes_1)
15090 (Fprocess_datagram_address, Fset_process_datagram_address)
15091 (Fset_network_process_options, server_accept_connection):
15092 Fix some int/Lisp_Object confusions (thank you union types).
15093
150942002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15095
15096 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
15097
15098 * w32term.c: Likewise.
15099 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
15100
15101 * keyboard.c (Qselect_window): New symbol.
15102 (head_table): Use it.
15103 (keys_of_keyboard): Bound select-window event to handle-select-window.
15104 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
15105
15106 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
15107 (last_window): New variable.
15108 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
15109 (note_mouse_movement): Remove reimplemented code in #if 0.
15110 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
15111 Emacs windows.
15112
15113 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
15114
151152002-03-31 Gerd Moellmann <gerd@gnu.org>
15116
15117 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
15118 Callers changed.
15119
151202002-03-30 Richard M. Stallman <rms@gnu.org>
15121
15122 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
15123 loop whenever it stops making progress.
15124
15125 * widget.c (set_frame_size): Don't call change_frame_size.
15126
151272002-03-30 Gerd Moellmann <gerd@gnu.org>
15128
15129 * dispnew.c (direct_output_for_insert):
15130 Call mark_window_display_accurate.
15131
151322002-03-29 Jason Rumney <jasonr@gnu.org>
15133
15134 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
15135
151362002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
15137
15138 * Makefile.in (lread.o): Depend on coding.h.
15139
15140 * lread.c (openp, Fload): Encode the file name before passing it
15141 to `stat', `access', and `emacs_open'.
15142 (openp): GCPRO the encoded file name. Don't recompute Lisp
15143 strings unnecessarily.
15144
151452002-03-29 Kim F. Storm <storm@cua.dk>
15146
15147 * fns.c (Flax_plist_put): Doc fix.
15148
151492002-03-28 Miles Bader <miles@gnu.org>
15150
15151 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
15152
151532002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15154
15155 * process.c (set-network-process-options): Add usage.
15156 (make-network-process): Doc fix.
15157
151582002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
15159
15160 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
15161
151622002-03-26 Richard M. Stallman <rms@gnu.org>
15163
15164 * fns.c (Fsubstring_no_properties): New function.
15165 (Flax_plist_get, Flax_plist_put): New functions.
15166 (syms_of_fns): defsubr them.
15167
15168 * xdisp.c (update_menu_bar): Test only update_mode_lines;
15169 don't test or alter w->update_mode_line.
15170
15171 * window.c (Fdisplay_buffer): Doc fix.
15172
151732002-03-24 Richard M. Stallman <rms@gnu.org>
15174
15175 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
15176
151772002-03-24 Gerd Moellmann <gerd@gnu.org>
15178
15179 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
15180 (Fdefmacro): Handle `(declare ...)'.
15181 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
15182 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
15183
151842002-03-24 Jason Rumney <jasonr@gnu.org>
15185
15186 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
15187 (xbm_file_p): Add prototypes.
15188 (xbm_format, xbm_image_p): Sync with xfns.c.
15189 (reflect_byte): New function.
15190 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
15191 (xbm_load_image): Create bitmaps with a depth of 1.
15192 (init_xfns): Enable XBM images.
15193
151942002-03-23 Jason Rumney <jasonr@gnu.org>
15195
15196 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
15197 correctly. Do not pass up_modifier to keyboard buffer.
15198
15199 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
15200
152012002-03-22 Stefan Monnier <monnier@cs.yale.edu>
15202
15203 * Makefile.in (bootstrapclean): New target.
15204 (bootstrap-temacs, bootstrap-doc): Remove.
15205 (bootstrap-emacs): Use a bog-standard `temacs'.
15206 Don't bother to build a DOC file.
15207
15208 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
15209
15210 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
15211 in temacs even if !CANNOT_DUMP.
15212 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
15213
15214 * alloc.c (check_pure_size): Only output a warning.
15215
152162002-03-22 Jason Rumney <jasonr@gnu.org>
15217
15218 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
15219 supported.
15220
15221 * w32term.c (zv_bits): Declare as short, for word alignment.
15222 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
15223 (syms_of_w32term): Define x-use-underline-position-properties.
15224
15225 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
15226 (clear_image_cache): Block input, fix logic, clear matrices in
15227 all frames that share this cache.
15228
152292002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
15230
15231 * emacs.c (main): Update the Copyright year in the blurb printed
15232 by "emacs --version".
15233
15234 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
15235
15236 * xterm.c (XTread_socket): If XK_ISO_Lock and
15237 XK_ISO_Last_Group_Lock are defined, handle keysyms between
15238 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
15239
152402002-03-21 Kim F. Storm <storm@cua.dk>
15241
15242 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
15243 menu-bar bindings in keymap and local-map properties _are_ used.
15244 But try keymap property first in accordance with 2002-01-03 patch.
15245 Added comment describing why this is not always reliable.
15246 (tool_bar_items): Ditto for tool-bar.
15247
152482002-03-21 Jason Rumney <jasonr@gnu.org>
15249
15250 * w32fns.c (x_clear_image_1): Disable color table code.
15251
152522002-03-21 Kim F. Storm <storm@cua.dk>
15253
15254 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
15255 removed the wrong version of the DEFUN macro; fixed it.
15256
15257 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
15258 Fmember rather than Fmemq).
15259 (Fprovide): Check that subfeatures is a list.
15260
15261 * process.c (QCfeature, QCdatagram): Removed variables.
15262 (QCtype, Qdatagram): New variables.
15263 (network_process_featurep): Removed function.
15264 (Fmake_network_process): Removed :feature check.
15265 Use :type 'datagram instead of :datagram t to create a datagram
15266 socket. This allows us to add other connection types (e.g. raw
15267 sockets) later in a consistent manner.
15268 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
15269 supported subfeatures for feature make-network-process.
15270 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
15271 Intern and staticpro QCtype and Qdatagram.
15272 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
15273
15274 * xfns.c: (QCtype): Remove duplicate declaration and
15275 initialization (is now declared in process.c).
15276
15277 * w32fns.c: (QCtype): Remove duplicate declaration and
15278 initialization (is now declared in process.c).
15279
152802002-03-21 Richard M. Stallman <rms@gnu.org>
15281
15282 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
15283 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
15284 when jumping to `fail' to avoid undoing reg changes in the
15285 last iteration of the loop.
15286 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
15287
15288 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
15289 Depend on process.h.
15290
152912002-03-20 Jason Rumney <jasonr@gnu.org>
15292
15293 Most of the following changes are still conditional on HAVE_IMAGES
15294 which is not set by default on Windows.
15295
15296 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
15297
15298 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
15299 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
15300 (four_corners_best, x_clear_image_1, x_clear_image)
15301 (x_alloc_image_color, postprocess_image)
15302 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
15303 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
15304 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
15305
15306 * w32gui.h (struct XImage): Define.
15307
15308 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
15309 extract mouse co-ordinates.
15310
153112002-03-20 Jason Rumney <jasonr@gnu.org>
15312
15313 * w32.c (init_winsock): Dynamically load new server and UDP
15314 socket functions.
15315 (socket_to_fd): New function.
15316 (sys_socket): Use it.
15317 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
15318 (sys_recvfrom, sys_sendto): New wrapper functions.
15319
15320 * process.c (QCfamily, QCfilter): Remove duplicate declaration
15321 and initialization.
15322
15323 * makefile.w32-in (LIBS): Remove $(WSOCK32).
15324
153252002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
15326
15327 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
15328 Don't use "sun" as a variable, it's a predefined constant on Sun
15329 machines.
15330
153312002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15332
15333 * bytecode.c (Fbyte_code): Revert last change.
15334
153352002-03-19 Kim F. Storm <storm@cua.dk>
15336
15337 * makefile.w32-in (LIBS): Add $(WSOCK32).
15338 From David Ponce <dponce@voila.fr>.
15339
153402002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15341
15342 * process.c (wait_reading_process_input): Move variables `pname'
15343 and `pnamelen' down where they are used.
15344
15345 * bytecode.c (Fbyte_code): Discard unused computed value to
15346 prevent gcc warning.
15347
15348 * lisp.h (Fplist_member): Add prototype.
15349
153502002-03-18 Kim F. Storm <storm@cua.dk>
15351
15352 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
15353 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
15354
15355 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
15356 Remove explicit GNU_LINUX settings for datagram support.
15357
153582002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15359
15360 * process.c (Fmake_network_process): Remove unused variable `sa'.
15361 Doc fix. Add usage:.
15362 (set_socket_options): Remove unused variables `optnum' and `opttype'.
15363
153642002-03-17 Richard M. Stallman <rms@gnu.org>
15365
15366 * xdisp.c (cursor_type_changed): New variable.
15367 (redisplay_internal): Redisplay all windows if cursor_type_changed.
15368 Clear it when clearing windows_or_buffers_changed.
15369 (try_cursor_movement, redisplay_window, try_window_id)
15370 (try_window_reusing_current_matrix): Test cursor_type_changed
15371 along with windows_or_buffers_changed.
15372
15373 * window.h (cursor_type_changed): New variable.
15374
15375 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
15376 not update_mode_lines, and always set it to 1.
15377
15378 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
15379 if no frames needed redrawing.
15380
153812002-03-17 Kim F. Storm <storm@cua.dk>
15382
15383 The following changes add support for network server processes,
15384 datagram connections, and local (unix) sockets.
15385
15386 * process.h (struct Lisp_Process): New member log.
15387 Doc fix: Member command used to indicate stopped network process.
15388 Doc fix: Member childp contains plist for network process.
15389 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
15390
15391 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
15392 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
15393 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
15394 New variables.
15395 (NETCONN1_P): New macro.
15396 (DATAGRAM_SOCKETS): New conditional symbol.
15397 (datagram_address): New array.
15398 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
15399 (status_message): Use concat3.
15400 (Fprocess_status): Add `listen' status to doc string. Return `stop'
15401 for a stopped network process.
15402 (Fset_process_buffer): Update contact plist for network process.
15403 (Fset_process_filter): Ditto. Don't enable input for stopped
15404 network processes. Server must listen, even if filter is t.
15405 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
15406 New functions.
15407 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
15408 (Fprocess_contact): Added KEY argument. Handle datagrams.
15409 (list_processes_1): Optionally show only processes with the query
15410 on exit flag set. Dynamically adjust column widths. Omit tty
15411 column if not needed. Report stopped network processes.
15412 Identify server and datagram network processes.
15413 (Flist_processes): New optional arg `query-only'.
15414 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
15415 (conv_lisp_to_sockaddr, set_socket_options)
15416 (network_process_featurep, unwind_request_sigio): New helper functions.
15417 (Fprocess_datagram_address, Fset_process_datagram_address):
15418 (Fset_network_process_options): New lisp functions.
15419 (Fopen_network_stream): Removed. Now defined in simple.el.
15420 (Fmake_network_process): New lisp function. Code is based on previous
15421 Fopen_network_stream, but heavily reworked with new property list based
15422 argument list, support for datagrams, server processes, and local
15423 sockets in addition to old client-only functionality.
15424 (server_accept_connection): New function.
15425 (wait_reading_process_input): Use it to handle incoming connects.
15426 Do not enable input on a new connection if process is stopped.
f63fd14e 15427 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
048addec
JD
15428 (send_process): Handle datagram sockets.
15429 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
15430 network process is indicated by setting command field to t .
15431 (Fprocess_send_eof): No-op if datagram connection.
15432 (Fstatus_notify): Don't read input for a stream server socket or a
15433 stopped network process.
15434 (init_process): Initialize datagram_address array.
15435 (syms_of_process): Intern and staticpro new variables, defsubr new
15436 functions.
15437
154382002-03-16 Jason Rumney <jasonr@gnu.org>
15439
15440 * w32fns.c (w32_to_all_x_charsets): Return correct type in
15441 startup case.
15442
154432002-03-16 Richard M. Stallman <rms@gnu.org>
15444
15445 * xdisp.c (redisplay_internal, redisplay_windows):
15446 Use list_of_error to call internal_condition_case_1.
15447 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
15448 so as to catch all errors with no possibility of debugger redisplay.
15449 (list_of_error): New variable.
15450 (syms_of_xdisp): Init and staticpro it.
15451
15452 * print.c (print_object): Delete `\ ' from printed rep of frame.
15453
154542002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
15455
15456 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
15457 until its implementation is fixed.
15458
154592002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15460
15461 * xfns.c (png_load): Remove unused variable `gamma_str'.
15462
154632002-03-14 Richard M. Stallman <rms@gnu.org>
15464
15465 * xfns.c (x_real_positions): Handle failure in XQueryTree.
15466
154672002-03-14 Miles Bader <miles@gnu.org>
15468
15469 * intervals.c (adjust_for_invis_intang): New function.
15470 (set_point_both): Use `adjust_for_invis_intang' to do most of the
15471 work for dealing with invisible+intangible regions. Do so before
15472 and after both forward and backward movements, to handle both
15473 front-sticky and rear-sticky cases.
15474 * textprop.c (text_property_stickiness): Function moved here from
15475 `editfns.c'.
15476 * intervals.h (text_property_stickiness): New declaration.
15477 * editfns.c (char_property_eq): Function removed.
15478 (text_property_stickiness): Function moved to `textprop.c'.
15479
154802002-03-13 Jason Rumney <jasonr@gnu.org>
15481
15482 * config.in: Add STRFTIME_NO_POSIX2.
15483
15484 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
15485 and %OX when underlying strftime does not.
15486
154872002-03-13 Stefan Monnier <monnier@cs.yale.edu>
15488
15489 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
15490 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
15491 line) to avoid annoying flicker.
15492 (xm_scroll_callback): Get rid of the now unnecessary kludge.
15493 (XTread_socket): Mark it static.
15494
15495 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
15496
154972002-03-13 Kim F. Storm <storm@cua.dk>
15498
15499 * puresize.h (BASE_PURESIZE): Increase to 775000.
15500
155012002-03-12 Juanma Barranquero <lektu@terra.es>
15502
15503 * editfns.c (syms_of_editfns): Fix typo.
15504
155052002-03-12 Gerd Moellmann <gerd@gnu.org>
15506
15507 * xsmfns.c: Include stdio.h because termhooks.h needs it.
15508 Include termopt.h for interrupt_input.
15509
155102002-03-11 Andreas Schwab <schwab@suse.de>
15511
15512 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
15513
155142002-03-11 Gerd Moellmann <gerd@gnu.org>
15515
15516 * xterm.c (note_mouse_movement): Put code for
15517 x_autoselect_window_p in #if 0.
15518
15519 * lread.c (Fload): Don't assume that message_with_string uses the
15520 string it is given like a C string.
15521
155222002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15523
78819ebb 15524 * xterm.h (x_session_check_input, x_session_initialize): Declare.
048addec
JD
15525
15526 * xterm.c: (XTread_socket): Add call to x_session_check_input and
15527 x_session_have_connection.
15528 (x_initialize): Add call to x_session_initialize.
15529
15530 * termhooks.h (enum event_kind): Add save_session_event.
15531
15532 * keyboard.c: Add Emacs event save_session_event.
15533
15534 * emacs.c (main): Add call to syms_of_xsmfns.
15535
78819ebb 15536 * lisp.h (syms_of_xsmfns): Declare extern.
048addec
JD
15537
15538 * config.in: Add HAVE_X_SM.
15539
15540 * Makefile.in (LIBXT): Add -lSM -lICE
15541 if HAVE_X_SM and not USE_X_TOOLKIT.
15542 (XOBJ): New file xsmfns.c added.
15543
15544 * xsmfns.c: New file for X session management.
15545
155462002-03-09 Jason Rumney <jasonr@gnu.org>
15547
15548 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
15549 read-only when setting modified time.
15550
155512002-03-08 Gerd Moellmann <gerd@gnu.org>
15552
15553 * xdisp.c (move_it_vertically_backward): At the end of the function,
15554 when moving forward by lines, treat terminal frames specially.
15555
15556 * keyboard.c (echo_char): Make sure to add a separator between
15557 keys even if echo_dash hasn't been called.
15558
15559 * xdisp.c: Use new string macros.
15560 (update_echo_area): Pass number of bytes to message3 instead of
15561 number of chars.
15562 (set_message_1): Don't access a string's size_byte directly.
15563 (decode_mode_spec_coding): Use number of bytes of eoltype string
15564 instead number of chars.
15565
15566 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
15567
155682002-03-08 Juanma Barranquero <lektu@terra.es>
15569
15570 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
15571 24-bit.
15572
155732002-03-06 Jason Rumney <jasonr@gnu.org>
15574
15575 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
15576
155772002-03-06 Gerd Moellmann <gerd@gnu.org>
15578
15579 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
15580 (cancel_echoing, echo_length, echo_truncate): Changed to
15581 work with new kboard definition.
15582 (echo_now): Use message3_nolog instead of message2_nolog.
15583
15584 * alloc.c (mark_kboards): Mark echo_string.
15585
15586 * keyboard.h (ECHOBUFSIZE): Removed.
15587 (struct kboard): Member echoptr removed, member echobuf renamed
15588 to echo_string.
15589
15590 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
15591 message3 instead of message2 to display the message using STRING's
15592 text properties.
15593
155942002-03-05 Andreas Schwab <schwab@suse.de>
15595
15596 * xdisp.c (hscroll_margin): Change to EMACS_INT.
15597
155982002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
15599
15600 * frame.c (default-frame-alist): Explain that setting it doesn't
15601 affect existing frames.
15602
156032002-03-05 Stefan Monnier <monnier@cs.yale.edu>
15604
15605 * indent.c (skip_invisible): Fix my brain fart.
15606
15607 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
15608
156092002-03-04 Stefan Monnier <monnier@cs.yale.edu>
15610
15611 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
15612 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
15613 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
15614 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
15615 and variables to use EMACS_INT instead of just int.
15616
15617 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
15618
156192002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
15620
15621 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
15622 environment, pass it down with corrected value.
15623
156242002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15625
15626 * lread.c (read_filtered_event): Do not call start_hourglass
15627 before returning.
15628
156292002-03-04 Juanma Barranquero <lektu@terra.es>
15630
15631 * w32term.c (x_display_and_set_cursor): Fix typo.
15632
156332002-03-03 Richard M. Stallman <rms@gnu.org>
15634
15635 * fileio.c (Fmake_temp_name): Doc fix.
15636
156372002-03-03 Gary Wong <gtw@gnu.org>
15638
15639 * termcap.c [!emacs]: Replace ospeed for building standalone
15640 libtermcap, for binary compatibility.
15641
15642 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
15643
156442002-03-03 Richard M. Stallman <rms@gnu.org>
15645
15646 * xrdb.c (file_p): Rename arg `path' to `filename'.
15647
15648 * abbrev.c (Fexpand_abbrev): Increment plist as use count
15649 only if it is an integer.
15650
15651 * xfns.c (png_load): Set screen_gamma based on f->gamma.
15652 If png_get_sRGB gives an answer, call png_set_gamma
15653 using the default image gamma value.
15654
15655 * lread.c (read1): When reading from a file, default string to
15656 multibyte only if it has some multibyte characters.
15657
15658 * print.c (print_object): Output multibyte chars 128...255
15659 using \x even if ! print_escape_multibyte.
15660
15661 * xdisp.c (display_mode_element): Move the places where
15662 bytepos, charpos, this, and lisp_string are set.
15663 Use lisp_string to set bytepos.
15664
15665 * xdisp.c (redisplay_internal):
15666 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
15667
15668 * xdisp.c (display_mode_element): Merge properties specified with
15669 :propertize onto those that come with the string.
15670
156712002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
15672
15673 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
15674 automatic-hscrolling. Users changed.
15675 <hscroll-margin>: Renamed from automatic-hscroll-margin.
15676 Users changed.
15677 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
15678
156792002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
15680
15681 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
15682
156832002-03-02 Kim F. Storm <storm@cua.dk>
15684
15685 * window.c (Fminibuffer_selected_window): New function.
15686 (syms_of_window): Defsubr it.
15687
156882002-03-01 Kim F. Storm <storm@cua.dk>
15689
15690 * window.h (struct window): New member phys_cursor_width.
15691
15692 * window.c (make_window, replace_window): Init phys_cursor_width.
15693
15694 * xterm.c (x_display_and_set_cursor): Blink box cursor using
15695 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
15696
15697 * w32term.c (x_display_and_set_cursor): Blink box cursor using
15698 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
15699
15700 * lisp.h (GCPRO6): New macro.
15701
15702 * process.c (Fopen_network_stream): Use GCPRO6.
15703
157042002-03-01 Kim F. Storm <storm@cua.dk>
15705
15706 * process.c (Qconnect, Qfailed): New variables.
15707 (syms_of_process): Intern and staticpro them.
15708 (Fprocess_status): Document connect and failed return values.
15709 [NON_BLOCKING_CONNECT]: New conditional.
15710 (connect_wait_mask, num_pending_connects): New variables.
15711 (status_message): Convert Qfailed status.
15712 (Fopen_network_stream): Added support for non-blocking connect.
15713 New optional args: filter, sentinel, non_blocking. Doc updated.
15714 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
15715 (deactivate_process): Handle pending non-blocking connect.
15716 (wait_reading_process_input): Poll for status of non-blocking
15717 connects. Exec sentinel directly when connect succeeds.
15718 (status_notify): Don't read process output if not yet connected.
15719
157202002-02-28 Kim F. Storm <storm@cua.dk>
15721
15722 * window.c: (minibuf_selected_window): Renamed from
15723 Vminibuf_selected_window. Users changed.
15724 (syms_of_window): Staticpro it.
15725
157262002-02-26 Kim F. Storm <storm@cua.dk>
15727
15728 The following changes add a new Vminibuf_selected_window variable
15729 which is similar to Vminibuf_scroll_window, but which is only set
15730 on entry to the minibuffer (from a non-minibuffer window):
15731
15732 * window.c: (Vminibuf_selected_window): New variable.
15733 (struct save_window_data): New member minibuf_selected_window.
15734 (Fset_window_configuration): Restore Vminibuf_selected_window.
15735 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
15736 Set minibuf_scroll_window member to nil if minibuf_level is 0.
15737 (compare_window_configurations): Compare minibuf_selected_window.
15738
15739 * window.h: (Vminibuf_selected_window): Declare extern.
15740
15741 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
15742 entry to minibuffer or on entry from a non-minibuffer window.
15743
15744 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
15745 Vminibuf_selected_window instead of Vminibuf_scroll_window.
15746
15747 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
15748 instead of Vminibuf_scroll_window when deciding in which window
15749 the region should be highlighted. Consequently, the region remains
15750 highlighteded even when a completion buffer is also displayed.
15751
157522002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
15753
15754 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
15755
15756 * xselect.c (Qcompound_text_with_extensions): Renamed from
15757 Qcompound_text_no_extensions.
15758 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
15759
157602002-02-26 Juanma Barranquero <lektu@terra.es>
15761
15762 * w32proc.c (syms_of_ntproc): Doc fix.
15763
157642002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15765
15766 * intervals.h: Include "dispextern.h" unconditionally.
15767
157682002-02-24 Jason Rumney <jasonr@gnu.org>
15769
15770 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
15771 and disp-table.elc.
15772 (lisp): Add emacs-lisp/backquote.elc.
15773
157742002-02-24 Kim F. Storm <storm@cua.dk>
15775
3419757d 15776 * keymap.c (Flookup_key): Fix problem in 2001-12-28 patch:
048addec
JD
15777 The validation of the event type was too strict as it didn't
15778 allow string events; buffer names are used in bindings for
15779 menu-bar-select-buffer (see `menu-bar-update-buffers').
15780
157812002-02-23 Kim F. Storm <storm@cua.dk>
15782
15783 The following changes rework my patch of 2002-02-06 which
15784 added command remapping by entering the commands directly into
15785 the keymaps. Now, command remapping uses an explicit `remap'
15786 prefix in the keymaps, i.e. [remap COMMAND].
15787
15788 * keymap.c (Qremap, remap_command_vector): New variables.
3419757d 15789 (is_command_symbol): Remove function.
048addec
JD
15790 (Fdefine_key): No longer accept a symbol for KEY.
15791 Added validation of [remap COMMAND] argument for KEY.
15792 The DEF is no longer required to be a symbol when remapping a command.
15793 (Fremap_command): New function to remap command through keymaps.
15794 (Flookup_key): Perform command remapping initiated by
15795 Fremap_command directly for speed.
15796 (Fkey_binding): Use Fremap_command for command remapping.
15797 (where_is_internal): Handle new command remapping representation.
15798 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
15799 staticpro them. Defsubr Fremap_command.
15800
15801 * keymap.h (Fremap_command): Declare extern.
15802 (is_command_symbol): Remove extern.
15803
15804 * keyboard.c (command_loop_1): Use Fremap_command for command
15805 remapping; now try command remapping for all symbols.
15806
158072002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
15808
15809 * coding.h (run_pre_post_conversion_on_str): Add prototype.
15810
158112002-02-23 Jason Rumney <jasonr@gnu.org>
15812
15813 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
15814 on the string before encoding it.
15815 (Fw32_get_clipboard_data): Run post-read-conversion on the string
15816 after decoding it.
15817
15818 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
15819
158202002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15821
15822 * w32term.c (enter_timestamp): Remove unused static variable to
15823 prevent warning.
15824
15825 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
15826
158272002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
15828
15829 * w16select.c (Fw16_get_clipboard_data): Fix last change.
15830
15831 * xselect.c (selection_data_to_lisp_data): Fix last change.
15832
158332002-02-22 Jason Rumney <jasonr@gnu.org>
15834
15835 * w32term.h (struct w32_output): New member menu_command_in_progress.
15836
15837 * w32menu.c (menubar_selection_callback): Free the menu and
15838 clear the menu_command_in_progress flag.
15839
15840 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
15841 (menu_free_timer): New variable.
15842 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
15843 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
15844 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
15845 menu command is in progress.
15846 <WM_COMMAND>: Set the menu_command_in_progress flag.
15847 Kill any menu_free_timer that is running.
15848
15849 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
15850 Call ExtTextOutA rather than ExtTextOut.
15851
158522002-02-22 Eli Zaretskii <eliz@gnu.org>
15853
15854 * puresize.h (BASE_PURESIZE): Increase to 755000.
15855
158562002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
15857
15858 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
15859 on the string before encoding it.
15860 (Fw16_get_clipboard_data): Run post-read-conversion on the string
15861 after decoding it.
15862
158632002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
15864
15865 Support for ICCCM Extended Segments in X selections:
15866
15867 * xselect.c <Qcompound_text_no_extensions>: New variable.
15868 (syms_of_xselect): Intern and staticpro it.
15869 (selection_data_to_lisp_data): Run post-read-conversion on decoded
15870 selection text.
15871 (lisp_data_to_selection_data): If next-selection-coding-system is
15872 compound-text-no-extensions, set the type of selection to be
15873 compound-text.
15874
15875 * xterm.h (x_encode_text): Update prototype.
15876
15877 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
15878 callers changed. If SELECTIONP is non-zero, run the
15879 pre-write-conversion function before encoding the selection text.
15880
158812002-02-21 Kim F. Storm <storm@cua.dk>
15882
15883 * frame.c (syms_of_frame): Change mouse-highlight default to t.
15884
15885 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
15886 Correct composing of language-change event.
15887
158882002-02-20 Kim F. Storm <storm@cua.dk>
15889
15890 * keyboard.c (menu_bar_items): Don't include keymap or local-map
15891 bindings at PT when building menu (the menu is not updated often
15892 enough for this to work reliable).
15893 (tool_bar_items): Likewise.
15894 (current_active_maps): Removed unused (and buggy) function.
15895
158962002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15897
15898 * xfns.c (gif_load): Use correct width and height for GIF images.
15899
159002002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
15901
15902 * floatfns.c (Fatan): Accept an optional second arg and call
15903 atan2 if passed 2 args.
15904
159052002-02-18 Jason Rumney <jasonr@gnu.org>
15906
15907 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
15908
159092002-02-17 Jason Rumney <jasonr@gnu.org>
15910
15911 * w32term.c (x_autoselect_window_p): New variable.
15912 (syms_of_w32term): DEFVAR_BOOL and initialize it.
15913 (note_mouse_movement): Use it.
15914
15915 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
15916
15917 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
15918
15919 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
15920 New variables.
15921 (syms_of_w32fns): Intern and staticpro them.
15922 (x_frame_parms) <"fullscreen">: New parameter.
15923 (x_fullscreen_move, x_set_fullscreen): New functions.
15924 (x_set_frame_parameters): Support Qfullscreen.
15925 (x_real_positions): Save x/y_pixels_diff frame params.
15926 (x_figure_window_size): Support full-screen frames.
15927 (Fx_create_frame): Default the fullscreen parameter.
15928
15929 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
15930 (x_fullscreen_adjust): New functions.
15931 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
15932 fullscreen. Call x_check_fullscreen_move, and set the
15933 want_fullscreen member of output_data.w32
15934 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
15935
15936 * w32term.h: New enum for FULLSCREEN_* constants.
15937 (struct w32_output): New members want_fullscreen, x_pixels_diff,
15938 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
15939 (x-fullscreen-adjust): New prototype.
15940
159412002-02-17 Kim F. Storm <storm@cua.dk>
15942
15943 * frame.c: (Vmouse_highlight): New variable.
15944 (syms_of_frame): DEFVAR_LISP it.
15945
15946 * frame.h: (Vmouse_highlight): Declare extern.
8a8e19a3 15947
048addec 15948 * xterm.h (struct x_display_info): Add mouse_face_hidden.
8a8e19a3 15949
048addec
JD
15950 * xterm.c (disable_mouse_highlight): Removed variable.
15951 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
15952 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
15953 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
15954 and on after keyboard input.
15955 (x_term_init): Initialize mouse_face_hidden.
8a8e19a3 15956
048addec 15957 * msdos.h (struct display_info): Add mouse_face_hidden.
8a8e19a3 15958
048addec
JD
15959 * msdos.c (disable_mouse_highlight): Removed variable.
15960 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
15961 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
15962 (internal_terminal_init): Initialize mouse_face_hidden.
15963 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
15964 and on after keyboard input.
4f1b1854 15965
048addec 15966 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
4f1b1854 15967
048addec
JD
15968 * w32term.c (disable_mouse_highlight): Removed variable.
15969 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
15970 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
15971 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
15972 and on after keyboard input.
15973 (w32_initialize_display_info): Initialize mouse_face_hidden.
4f1b1854 15974
048addec 159752002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
4f1b1854 15976
048addec
JD
15977 * msdos.c (last_mouse_window): New variable.
15978 (dos_rawgetc): Fix last change--if the mouse is in the same window
15979 as recorded in last_mouse_window, don't select this window.
5cb6905d 15980
048addec 15981 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
5cb6905d 15982
048addec
JD
15983 * msdos.c (x_autoselect_window_p): New variable.
15984 (syms_of_msdos): Defvar it.
15985 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
15986 which the last mouse movement occured, unless it is already selected.
437dfb9f 15987
048addec
JD
15988 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
15989 New variables.
15990 (syms_of_xdisp): DEVFAR them.
15991 (hscroll_window_tree): Use automatic_hscroll_margin and
15992 Vautomatic_hscroll_step to compute the amount of window scrolling.
437dfb9f 15993
048addec 159942002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9f696a00 15995
048addec
JD
15996 * xterm.c (x-autoselect-window): New variable.
15997 (note_mouse_movement): Use it.
9f696a00 15998
048addec 15999 * keyboard.c: Do not include "systime.h" twice.
d57966d7 16000
048addec 160012002-02-15 Andreas Schwab <schwab@suse.de>
d57966d7 16002
bfa02563 16003 * puresize.h (PURESIZE_RATIO): Increase to 9/5.
d57966d7 16004
048addec 16005 * alloc.c (NSTATICS): Increase to 1280.
74779f52 16006
048addec 160072002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
74779f52 16008
048addec 16009 * alloc.c (NSTATICS): Bump to 1026.
a474d59c 16010
048addec
JD
16011 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
16012 (Vx_super_keysym): New variables.
16013 (syms_of_xterm): DEFVAR_LISP them.
16014 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
16015 variables to determine which keys to use for the various modifiers.
a474d59c 16016
048addec 160172002-02-13 Kim F. Storm <storm@cua.dk>
fbb70ad9 16018
048addec
JD
16019 * window.c: (Vmode_line_in_non_selected_windows): Removed.
16020 (mode_line_in_non_selected_windows): New variable.
16021 (syms_of_window): DEFVAR_BOOL it.
fbb70ad9 16022
048addec
JD
16023 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
16024 Use mode_line_in_non_selected_windows.
16025 (mode_line_in_non_selected_windows): Declare extern.
16026 (Vmode_line_in_non_selected_windows): Removed extern.
2d10309f 16027
048addec 160282002-02-13 Richard M. Stallman <rms@gnu.org>
2d10309f 16029
048addec
JD
16030 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
16031 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
16032 (Fclear_this_command_keys): Doc fixes.
2d10309f 16033
048addec
JD
16034 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
16035 (update_face_from_frame_parameter): Increment face_change_count
16036 and windows_or_buffers_changed to force redisplay using changed faces.
7f2cddf3 16037
048addec
JD
16038 * xdisp.c (QCpropertize): New variable.
16039 (mode_line_proptrans_alist): New variable.
16040 (display_mode_element): New arg PROPS; all calls changed.
16041 Implement this, for strings.
16042 Handle literal output of strings by sharing the
16043 main-line code for strings, using local var `literal'.
16044 Handle :propertize feature.
16045 (syms_of_xdisp): Initialze and staticpro QCpropertize and
16046 mode_line_proptrans_alist.
0b1e6b54 16047
048addec 160482002-02-11 Kim F. Storm <storm@cua.dk>
7f2cddf3 16049
048addec
JD
16050 * window.c: (Vmode_line_in_non_selected_windows): New variable.
16051 (syms_of_window): DEFVAR_LISP it.
7f2cddf3 16052
048addec
JD
16053 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
16054 (CURRENT_MODE_LINE_FACE_ID): Use it.
16055 (Vmode_line_in_non_selected_windows): Declare extern.
e17144de 16056
048addec
JD
16057 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
16058 to get mode line face.
e17144de 16059
048addec 160602002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 16061
048addec
JD
16062 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
16063 variables; cus-start.el doesn't need them anymore.
44368f8f 16064
048addec 160652002-02-09 Kim F. Storm <storm@cua.dk>
f884b6f4 16066
048addec
JD
16067 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
16068 reduction. This fixes a display problem where stray newlines were
16069 inserted in the window (corrected by C-l). Clarified code (IMHO).
6637c996 16070
048addec 160712002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 16072
048addec 16073 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
6637c996 16074
048addec 16075 * xdisp.c (display_mode_lines): Fix last change.
453c5510 16076
048addec 160772002-02-09 Jason Rumney <jasonr@gnu.org>
453c5510 16078
048addec
JD
16079 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
16080 match each other.
16081 (w32_load_system_font): Prevent Cleartype fonts from loading.
16082 (Fx_show_tip): Ensure tip frames are above other topmost windows.
d1d070e3 16083
048addec 160842002-02-09 Kim F. Storm <storm@cua.dk>
d1d070e3 16085
048addec
JD
16086 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
16087 (CURRENT_MODE_LINE_HEIGHT): Use it.
16088 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 16089
048addec
JD
16090 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
16091 (pos_visible_p, handle_face_prop): Likewise.
16092 (display_mode_lines): Likewise, but for the real selected window.
16093 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 16094
048addec
JD
16095 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
16096 in non-selected windows.
16097 (realize_basic_faces): Realize it.
16098 (syms_of_term): Intern and staticpro it.
308dd672 16099
048addec 161002002-02-08 Kim F. Storm <storm@cua.dk>
edde72f6 16101
048addec
JD
16102 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
16103 Changed mail addresses to emacs-devel@gnu.org.
308dd672 16104
048addec 161052002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
3c1e6b46 16106
048addec
JD
16107 * fileio.c (Fsubstitute_in_file_name): If the file name includes
16108 ~user, and there's no such user, don't discard everything before ~user.
03950b5b 16109
048addec 16110 * floatfns.c (Fround): Doc fix.
3c1e6b46 16111
048addec 161122002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c1e11810 16113
048addec 16114 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
c1e11810 16115
048addec 161162002-02-07 Stefan Monnier <monnier@cs.yale.edu>
1996baee 16117
048addec 16118 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
1996baee 16119
048addec 161202002-02-07 Kim F. Storm <storm@cua.dk>
0065bb74 16121
048addec
JD
16122 * keymap.c (where_is_internal): Only check whether definition is
16123 remapped if it fulfills is_command_symbol.
0065bb74 16124
048addec 161252002-02-07 Andreas Schwab <schwab@suse.de>
0065bb74 16126
048addec 16127 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
b5cb6072 16128
048addec 16129 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
b5cb6072 16130
048addec 161312002-02-06 Kim F. Storm <storm@cua.dk>
15fff01d 16132
048addec
JD
16133 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
16134 defining command remapping. Doc updated.
16135 (Flookup_key): Remap command through keymap if KEY is a symbol.
16136 (is_command_symbol): New function.
16137 (Fkey_binding): Use it. New optional argument NO-REMAP.
16138 Doc updated. Callers changed. Perform command remapping via
16139 recursive call unless that arg is non-nil.
16140 (where_is_internal): New argument no_remap. Callers changed.
16141 Call recursively to find original key bindings for a remapped
16142 comand unless that arg is non-nil.
16143 (Fwhere_is_internal): New optional argument NO-REMAP.
16144 Doc updated. Callers changed. Pass arg to where_is_internal.
0065bb74 16145
048addec 16146 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
3419757d 16147 (is_command_symbol): Add prototype.
0d8466cc 16148
048addec
JD
16149 * keyboard.c (Vthis_original_command): New variable.
16150 (syms_of_keyboard): DEFVAR_LISP it.
16151 (command_loop_1): Set it, and perform command remapping.
15fff01d 16152
048addec 161532002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2fae9111 16154
048addec 16155 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
2d6c1fc0 16156
048addec 161572002-02-06 Jason Rumney <jasonr@gnu.org>
07025a55 16158
048addec 16159 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
07025a55 16160
048addec 161612002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
07025a55 16162
048addec 16163 * charset.c (get_charset_id): Use if-else instead of ?:.
3a232704 16164
048addec 161652002-02-06 Richard M. Stallman <rms@gnu.org>
539e92ad 16166
048addec 16167 * filelock.c (S_ISLNK): Define if not defined.
3a232704 16168
048addec 161692002-02-03 Richard M. Stallman <rms@gnu.org>
0cb8bb48 16170
048addec 16171 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
539e92ad 16172
048addec
JD
16173 * lread.c (read1): Redesign strategy for force_multibyte and
16174 force_singlebyte. Now is_multibyte records whether read_buffer
16175 is multibyte. Encountering any multibyte character makes it so.
4e02881b 16176
048addec 161772002-02-02 Stefan Monnier <monnier@cs.yale.edu>
4e02881b 16178
048addec
JD
16179 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
16180 with the same sequence, map that sequence to f10 rather than f0.
1ab964d7 16181
048addec 161822002-02-03 Andreas Schwab <schwab@suse.de>
1ab964d7 16183
048addec
JD
16184 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
16185 latter never being defined on GNU/Linux.
749f499f 16186
048addec 161872002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
749f499f 16188
048addec
JD
16189 * xfaces.c (realize_default_face): Don't set the weight and slant of
16190 the default face to Qnormal, unless these attributes are unspecified.
b5d9aaba 16191
048addec 161922002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3a232704 16193
048addec
JD
16194 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
16195 Call cancel_hourglass unconditionally.
d0fd26dd 16196
048addec
JD
16197 * eval.c (Fsignal): Remove duplicated declaration of
16198 the variable `display_hourglass_p'.
b4c45162 16199
048addec 162002002-01-31 Richard M. Stallman <rms@gnu.org>
d0fd26dd 16201
048addec 16202 * editfns.c (region_limit): Nicer error message.
c95eaa61 16203
048addec
JD
16204 * coding.c (decode_composition_emacs_mule):
16205 Give up if NCOMPONENT gets too large to index `component'.
c95eaa61 16206
048addec
JD
16207 * callint.c (check_mark): New arg to specify clearer error message.
16208 Callers changed.
c95eaa61 16209
048addec 162102002-01-27 Richard M. Stallman <rms@gnu.org>
c95eaa61 16211
048addec 16212 * minibuf.c (Fcompleting_read): Doc fix.
c95eaa61 16213
048addec 162142002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c95eaa61 16215
048addec
JD
16216 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
16217 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
16218 Fix doc-strings.
c95eaa61 16219
048addec 162202002-01-26 Richard M. Stallman <rms@gnu.org>
c95eaa61 16221
048addec 16222 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
c95eaa61 16223
048addec
JD
16224 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
16225 and scroll_up_aggressively.
c95eaa61 16226
048addec 162272002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
31877e0a 16228
048addec 16229 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
31877e0a 16230
048addec 162312002-01-25 Stefan Monnier <monnier@cs.yale.edu>
e2c3786a 16232
048addec
JD
16233 * textprop.c (Fnext_property_change, Fnext_single_property_change)
16234 (Fprevious_property_change, Fprevious_single_property_change):
16235 Stay within the narrowed-buffer boundaries.
e2c3786a 16236
048addec 162372002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
c513fc03 16238
048addec
JD
16239 * term.c (Ftty_display_color_cells): New function.
16240 (syms_of_term): Defsubr it.
16241 (Ftty_display_color_cells, Ftty_display_color_p): Change the
16242 argument name to DISPLAY. Doc fix.
bf794306 16243
048addec
JD
16244 * dispextern.h: Add prototype for set_tty_color_mode and
16245 tty_setup_colors.
bf794306 16246
048addec 162472002-01-24 Jason Rumney <jasonr@gnu.org>
bf794306 16248
048addec
JD
16249 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
16250 If region left to draw is not what was expected, mark the frame as
16251 garbaged.
62582985 16252
048addec
JD
16253 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
16254 Combine the regions returned by BeginPaint and GetUpdateRect.
c513fc03 16255
048addec 162562002-01-23 Jason Rumney <jasonr@gnu.org>
3509a04c 16257
048addec
JD
16258 * w32term.c (x_update_window_begin): Only hide caret if
16259 w32_use_visible_system_caret is set.
16260 (x_update_window_end): Only show caret if
16261 w32_use_visible_system_caret is set.
16262 (syms_of_w32term): Handle SystemParametersInfo call failing.
3509a04c 16263
048addec 16264 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
3509a04c 16265
048addec 162662002-01-22 Richard M. Stallman <rms@gnu.org>
3509a04c 16267
048addec
JD
16268 * unexelf.c (unexec): Define n so as to cause compilation error
16269 for the code where people have often written n instead of nn.
1e9a6186 16270
048addec 16271 * .gdbinit (hookpost-run): Defined.
1e9a6186 16272
048addec 162732002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e4e34e31 16274
048addec 16275 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
e4e34e31 16276
048addec 162772002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4521d1fc 16278
048addec
JD
16279 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
16280 if fullscreen is being set.
7c75be36 16281
048addec 162822002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4521d1fc 16283
048addec
JD
16284 * minibuf.c (Fminibuffer_contents)
16285 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
16286 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
4521d1fc 16287
048addec 162882002-01-21 Richard M. Stallman <rms@gnu.org>
4521d1fc 16289
048addec 16290 * window.c (check_frame_size): Fix minimum height calculation.
93dec019 16291
048addec 162922002-01-20 Ken Raeburn <raeburn@gnu.org>
93dec019 16293
048addec
JD
16294 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
16295 height before comparison.
16296 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
905cc05a 16297
048addec 162982002-01-20 Jason Rumney <jasonr@gnu.org>
2ed06289 16299
048addec
JD
16300 * w32term.c (w32_system_caret_width): Remove.
16301 (w32_use_visible_system_caret): New user flag.
16302 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
16303 Windows reports a screen reader running.
16304 (x_update_window_begin): Hide the system caret.
16305 (x_update_window_end): Show the system caret.
16306 (x_display_and_set_cursor): Don't draw a cursor when
16307 w32_use_visible_system_caret is set. Do not adjust width.
0e79d667 16308
048addec
JD
16309 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
16310 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
16311 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
16312 the user requests it. Use system default width when creating.
16313 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
0e79d667 16314
048addec
JD
16315 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
16316 New window messages.
905cc05a 16317
048addec 163182002-01-20 Richard M. Stallman <rms@gnu.org>
82a7ab23 16319
048addec 16320 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
d75bec6a 16321
048addec 163222002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
52dcb476 16323
048addec 16324 * doprnt.c (doprnt1): Fix typos in error call.
82a7ab23 16325
048addec 163262002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
82a7ab23 16327
048addec 16328 * unexelf.c (unexec) [__sgi]: Support the .got sections.
82a7ab23 16329
048addec 163302002-01-20 Jason Rumney <jasonr@gnu.org>
4d0fa4f3 16331
048addec
JD
16332 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
16333 that Windows returns. If a double check fails, try to guess how
16334 ExtTextOut is going to act.
4d0fa4f3 16335
048addec
JD
16336 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
16337 in place of stricmp.
16338 (w32_list_synthesized_fonts): Removed.
16339 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
16340 (struct enumfont_t): New element; list.
16341 (enum_font_cb2): List all style and charset variations of a font.
16342 (Fw32_select_font): New optional argument; include_proportional.
16343 Exclude vertical fonts. Exclude proportional fonts unless
16344 include_proportional is non-nil.
16345 (w32_enable_synthesized_fonts): Change to a boolean.
16346 (Fw32_send_sys_command): Doc fix.
493faf20 16347
048addec 163482002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
493faf20 16349
048addec
JD
16350 * dispnew.c (update_frame): Move the variable `tem' to the block
16351 where it is used.
4971e491 16352
048addec 163532002-01-19 Jason Rumney <jasonr@gnu.org>
4971e491 16354
048addec
JD
16355 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
16356 call to face-set-after-frame-default.
4971e491 16357
048addec 163582002-01-18 Richard M. Stallman <rms@gnu.org>
d911a0fa 16359
048addec
JD
16360 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
16361 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
d911a0fa 16362
048addec 163632002-01-17 Richard M. Stallman <rms@gnu.org>
d911a0fa 16364
048addec
JD
16365 * window.c (enlarge_window): When exceeding size of parent,
16366 directly delete all the siblings instead of trying to resize it.
201c831a 16367
048addec 163682002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
201c831a 16369
048addec 16370 * term.c (set_tty_color_mode): Remove unused variable `tem'.
201c831a 16371
048addec 163722002-01-16 Henrik Enberg <henrik@enberg.org>
34e39c95 16373
048addec 16374 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
34e39c95 16375
048addec 163762002-01-16 Kim F. Storm <storm@cua.dk>
d77fbc16 16377
048addec
JD
16378 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
16379 is invisible. This can happen if cursor is on top line of a
16380 window, and we switch to a buffer with a header line.
d77fbc16 16381
048addec 16382 * w32term.c (x_erase_phys_cursor): Ditto.
61e3b944 16383
048addec 163842002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
61e3b944 16385
048addec
JD
16386 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
16387 `dont_resize' only when used.
61e3b944 16388
048addec 16389 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
70da46c3 16390
048addec 163912002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
70da46c3 16392
048addec
JD
16393 * xdisp.c (display_mode_element): When computing charpos, depend
16394 on multibyteness of elt, not the text in field.
8af01033 16395
048addec 163962002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8af01033 16397
048addec
JD
16398 * buffer.c (Fkill_all_local_variables):
16399 Increment `update_mode_lines' only once.
7363986a 16400
048addec 164012002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7363986a 16402
048addec
JD
16403 * lisp.h (adjust_after_replace_noundo)
16404 (Fupdate_coding_systems_internal): Add prototypes.
d9e6c4b1 16405
048addec 16406 * sound.c (Fplay_sound): Initialize header_size also for :data case.
d20fc48a 16407
048addec 164082002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
d9e6c4b1 16409
048addec
JD
16410 Support for the --color command-line argument and tty-color-mode
16411 frame parameter:
f1a85b89 16412
048addec
JD
16413 * term.c (tty_default_color_capabilities, tty_setup_colors)
16414 (set_tty_color_mode): New functions.
16415 (term_init): Call tty_default_color_capabilities.
16416 (Qtty_color_mode_alist): New variable.
16417 (syms_of_term): Intern and staticpro it.
f1a85b89 16418
048addec
JD
16419 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
16420 frames.
16421 (do_switch_frame): For termcap frames, switch the tty
16422 color mode as specified by the frame's parameters.
16423 (Qtty_color_mode): New variable.
16424 (syms_of_frame): Intern and staticpro it.
3a62677f 16425
048addec
JD
16426 * emacs.c (USAGE2): Add the --color option.
16427 (standard_args): Ditto.
72244db2 16428
048addec
JD
164292002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16430
16431 * xterm.h (struct x_output): New members want_fullscreen,
16432 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
16433 y_pixels_outer_diff.
16434 New enum for FULLSCREEN_* constants.
16435 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
16436 is NULL.
16437 (x_fullscreen_adjust): Add prototype.
3a62677f 16438
048addec
JD
16439 * emacs.c (USAGE2): Add the new full-screen arguments.
16440 (standard_args): Ditto.
3a62677f 16441
048addec
JD
16442 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
16443 New variables.
16444 (syms_of_xfns): Intern and staticpro them.
16445 (x_frame_parms) <"fullscreen">: New parameter.
16446 (x_fullscreen_move, x_set_fullscreen): New functions.
16447 (x_set_frame_parameters): Support for Qfullscreen.
16448 (x_real_positions): More accurate computation of the frame position.
16449 (x_figure_window_size): Support full-screen frames.
16450 (Fx_create_frame): Default the fullscreen parameter.
3a62677f 16451
048addec
JD
16452 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
16453 (XTread_socket) <Expose>: Call x_check_fullscreen.
16454 <ConfigureNotify>: Don't resize to fullscreen.
16455 Call x_check_fullscreen_move, and set the want_fullscreen member of
16456 output_data.x.
3a62677f 16457
048addec 164582002-01-13 Jason Rumney <jasonr@gnu.org>
9d113d9d 16459
048addec
JD
16460 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
16461 for mice with more than 3 buttons.
b8523839 16462
048addec
JD
16463 * w32term.c (parse_button): New parameter xbutton. Callers changed.
16464 (w32_read_socket): Handle new "XBUTTON" messages.
9464dea4 16465
048addec
JD
16466 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
16467 (syms_of_w32fns): DEFVAR_BOOL it.
16468 (w32_wnd_proc): Handle new "XBUTTON" messages.
9d113d9d 16469
048addec 164702002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
70ec1377 16471
048addec 16472 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
70ec1377 16473
048addec 164742002-01-13 Andreas Schwab <schwab@suse.de>
92f7dd37 16475
048addec 16476 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
92f7dd37 16477
048addec 164782002-01-12 Andreas Schwab <schwab@suse.de>
c93674bb 16479
048addec
JD
16480 * .gdbinit (xbuffer): Remove address operator since data is now a
16481 pointer.
c93674bb 16482
048addec 164832002-01-11 Richard M. Stallman <rms@gnu.org>
59b59892 16484
048addec 16485 * insdel.c (adjust_after_replace_noundo): New function.
59b59892 16486
048addec 16487 * coding.c (code_convert_region): Don't copy old text if undo disabled.
c6ea2775 16488
048addec 164892002-01-09 Jason Rumney <jasonr@gnu.org>
c6ea2775 16490
048addec
JD
16491 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
16492 when checking for multiple frames.
91175673 16493
048addec 164942002-01-08 Richard M. Stallman <rms@gnu.org>
91175673 16495
048addec
JD
16496 * window.c (delete_window): Rewrite the code for changing the
16497 selected window to handle the case where WINDOW is not a leaf.
91175673 16498
048addec 164992002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
e0fead5d 16500
048addec
JD
16501 * process.c (send_process): Set src_multibyte to 1 after the call
16502 top setup_coding_system, not before the call.
e0fead5d 16503
048addec 165042002-01-07 Jason Rumney <jasonr@gnu.org>
e0fead5d 16505
048addec
JD
16506 * xmenu.c (set_frame_menubar, xmenu_show):
16507 (xdialog_show): Initialize wv->help to Qnil.
c186cdb3 16508
048addec
JD
16509 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
16510 (w32_dialog_show): Initialize wv->help to Qnil.
c186cdb3 16511
048addec 165122002-01-06 Jason Rumney <jasonr@gnu.org>
c186cdb3 16513
048addec 16514 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
c186cdb3 16515
048addec 16516 * w32menu.c (w32_menu_display_help): Revert last change.
58cfce98 16517
048addec 16518 * xmenu.c (menu_highlight_callback): Revert last change.
58cfce98 16519
048addec 165202002-01-06 Andreas Schwab <schwab@suse.de>
62854fe2 16521
048addec
JD
16522 * insdel.c (make_gap_larger): Make sure buffer size does not
16523 overflow range of int.
62854fe2 16524
048addec 165252002-01-05 Jason Rumney <jasonr@gnu.org>
656f46bb 16526
048addec
JD
16527 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
16528 OVERLAPS_P.
656f46bb 16529
048addec 16530 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
656f46bb 16531
048addec
JD
16532 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
16533 to the left or to the right of the pointer, put it against
16534 the left screen edge.
16535 (x_frame_parms): Add missing braces around initializer.
036e218d 16536
048addec
JD
16537 * w32term.c (x_setup_relief_colors): Don't compute an image's
16538 background color if it doesn't have a Pixmap.
16539 (notice_overwritten_cursor): Don't depend on
16540 output_cursor and updated_area. Compare pixel coordinates with
16541 window's cursor pixel coordinates.
16542 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
16543 Call notice_overwritten_cursor with new arg list.
16544 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
16545 unconditionally.
16546 (x_draw_image_relief): Use predefined macro instead of
16547 constant when the value of `tool_bar_button_relief' is negative.
036e218d 16548
048addec 16549 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
7ddb2c16 16550
048addec 165512002-01-04 Richard M. Stallman <rms@gnu.org>
7ddb2c16 16552
048addec 16553 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
ace9b298 16554
048addec 165552002-01-03 Richard M. Stallman <rms@gnu.org>
90647b07 16556
048addec
JD
16557 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
16558 (Fkey_binding): Try the `keymap' property map first.
16559 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
16560 minor mode bindings.
90647b07 16561
048addec 165622002-01-03 Kim F. Storm <storm@cua.dk>
ace9b298 16563
3419757d 16564 * keyboard.c (read_key_sequence): Fix cast of submaps arg to bcopy.
ace9b298 16565
048addec 165662002-01-02 Richard M. Stallman <rms@gnu.org>
ace9b298 16567
048addec
JD
16568 * keyboard.c (read_key_sequence): Handle the keymap property
16569 before minor mode maps.
9fbc32aa 16570
048addec
JD
16571 * editfns.c (Fformat): Update thissize from field_width
16572 based on the actual width, in the string case.
036e218d 16573
048addec 165742002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fbc32aa 16575
048addec
JD
16576 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
16577 when used as truth value to prevent gcc warnings.
9fbc32aa 16578
048addec
JD
16579 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
16580 * w32proc.c: Include <config.h>.
9fbc32aa 16581
048addec 165822002-01-01 Andreas Schwab <schwab@suse.de>
9fbc32aa 16583
048addec
JD
16584 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
16585 not EMACS_INT, to make them compatible with DEFVAR_INT.
16586 * lisp.h (max_specpdl_size): Adjust declaration.
9fbc32aa 16587
048addec 165882002-01-01 Richard M. Stallman <rms@gnu.org>
9fbc32aa 16589
048addec
JD
16590 * print.c (print_object): Test print_escape_nonascii only for
16591 unibyte strings.
16592 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
16593 when outputting to a multibyte buffer.
9fbc32aa 16594
048addec 165952001-12-29 Richard M. Stallman <rms@gnu.org>
9fbc32aa 16596
048addec
JD
16597 * print.c (print_object): In multibyte string, use hex escapes.
16598 Use octal only for unibyte strings.
16599 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
0142178a 16600
048addec
JD
16601 * lread.c (read_escape): New arg BYTEREP for reporting whether
16602 escape forces unibyte or multibyte.
16603 (read1): When reading a string, take note of that info.
0142178a 16604
048addec 166052001-12-29 Ken Raeburn <raeburn@gnu.org>
d4824a5d 16606
048addec
JD
16607 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
16608 comparison to test lisp value returned by Fget.
d4824a5d 16609
048addec 166102001-12-29 Richard M. Stallman <rms@gnu.org>
b1356234 16611
048addec 16612 * lisp.h (max_specpdl_size): Add declaration.
b1356234 16613
048addec 16614 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
3ce081f5 16615
048addec
JD
16616 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
16617 Handle modifier bits. Correct typo in error message.
99e380ee 16618
048addec 166192001-12-28 Richard M. Stallman <rms@gnu.org>
3ce081f5 16620
048addec
JD
16621 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
16622 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
16623 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
16624 Update calls to Fdefine_abbrev.
16625 (write_abbrev): Update for changed data format.
16626 Don't list "system" abbrevs.
16627 (Fexpand_abbrev): Update use count with new data format.
16628 (describe_abbrev): Update for changed data format.
16629 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
66458f32 16630
048addec 16631 * config.in (HAVE_MBSINIT): Add #undef.
66458f32 16632
048addec 16633 * strftime.c (mbsinit): Define as no-op if not available.
66458f32 16634
048addec
JD
16635 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
16636 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
59a86c99 16637
048addec
JD
16638 * keymap.c (Flookup_key): Error message if key has wrong data type.
16639 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
16640 (exclude_key): New variable.
59a86c99 16641
048addec 166422001-12-28 Gerd Moellmann <gerd@gnu.org>
eb77a5f4 16643
048addec
JD
16644 * xterm.c (x_setup_relief_colors): Don't compute an image's
16645 background color if it doesn't have a Pixmap.
eb77a5f4 16646
048addec
JD
16647 * xterm.c (notice_overwritten_cursor): Don't depend on
16648 output_cursor and updated_area. Compare pixel coordinates with
16649 window's cursor pixel coordinates.
16650 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
16651 Call notice_overwritten_cursor with new arg list.
16652 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
16653 unconditionally.
eb77a5f4 16654
048addec
JD
16655 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
16656 height of the cursor line to the amount to scroll.
eb77a5f4 16657
048addec 166582001-12-27 Richard M. Stallman <rms@gnu.org>
bb313871 16659
048addec
JD
16660 * intervals.c (set_point_both): The position after an invisible,
16661 intangible character is not an acceptable stopping point.
bb313871 16662
048addec 166632001-12-27 Ken Raeburn <raeburn@gnu.org>
55b43a63 16664
048addec
JD
16665 * window.c (enlarge_window): In new preserve_before code, convert
16666 CURBEG from lisp object to integer before doing arithmetic.
6052529b 16667
048addec 166682001-12-27 Richard M. Stallman <rms@gnu.org>
3ce081f5 16669
048addec 16670 * bytecode.c (Fbyte_code): Undo previous change.
3ce081f5 16671
048addec 166722001-12-26 Kim F. Storm <storm@cua.dk>
3ce081f5 16673
048addec
JD
16674 * keyboard.c (record_char): Ignore duplicate help-echo events only
16675 separated by mouse-movement. When tracking mouse, only record
16676 first and last mouse-movement event in same window.
16677 Don't record mouse-movement events in keyboard macros.
3ce081f5 16678
048addec 166792001-12-25 Richard M. Stallman <rms@gnu.org>
55b43a63 16680
048addec
JD
16681 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
16682 (Fenlarge_window): New arg PRESERVE_BEFORE.
111ed14e 16683
048addec
JD
16684 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
16685 instead of Fstring_as_unibyte.
9fabb2f5 16686
048addec 166872001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fabb2f5 16688
048addec 16689 The following changes remove mocklisp support:
9fabb2f5 16690
048addec 16691 * mocklisp.h, mocklisp.c: Files removed.
111ed14e 16692
048addec
JD
16693 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
16694 `Qmocklisp' and `Qmocklisp_arguments'.
16695 Remove prototype of syms_of_mocklisp.
2fa0eedf 16696
048addec 16697 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
d1420435 16698
048addec
JD
16699 * callint.c: Do not include mocklisp.h.
16700 (Fcall_interactively): Do not test for mocklisp case.
2fa0eedf 16701
048addec
JD
16702 * eval.c: Remove variables `Qmocklisp_arguments',
16703 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
16704 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
16705 Do not test for mocklisp case.
16706 (Fwhile): Remove unused variable `tem'.
16707 (syms_of_eval): Remove variable `moclisp-arguments'.
ebcbef4e 16708
048addec 16709 * data.c (wrong_type_argument): Remove mocklisp case.
5c131048 16710
048addec 16711 * doc.c (Fdocumentation): Remove mocklisp case.
5c131048 16712
048addec 16713 * emacs.c (main): Do not call syms_of_mocklisp.
5c131048 16714
048addec 167152001-12-21 Richard M. Stallman <rms@gnu.org>
96d276c3 16716
048addec
JD
16717 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
16718 to the left or to the right of the pointer, put it against
16719 the left screen edge.
6108b49c 16720
048addec 167212001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
96d276c3 16722
048addec
JD
16723 * Makefile.in (distclean): Remove .gdbinit if we are building
16724 outside the source tree.
5eea19a4 16725
048addec 167262001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
5eea19a4 16727
048addec 16728 * w32.c (emacs_root_dir): New function.
5eea19a4 16729
048addec 16730 * msdos.c (emacs_root_dir): New function.
5eea19a4 16731
048addec
JD
16732 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
16733 of the current drive as the fallback for default_directory.
438e57dd 16734
048addec
JD
16735 * dired.c (file_name_completion): Run the elements of
16736 completion-ignored-extensions through ENCODE_FILE.
438e57dd 16737
048addec
JD
16738 * lisp.h (scmp): Remove prototype, since it's now a static
16739 function private to dired.c.
c88e5347 16740
048addec 167412001-12-18 Richard M. Stallman <rms@gnu.org>
c88e5347 16742
048addec
JD
16743 * dired.c (scmp): Function moved from minibuf.c.
16744 Delete multibyte handling--used only on encoded strings.
59ce1461 16745
048addec 16746 * minibuf.c (scmp): Function moved to dired.c.
59ce1461 16747
048addec 16748 * fns.c (merge): Add QUIT call.
59ce1461 16749
048addec 167502001-12-18 Dave Love <fx@gnu.org>
8727d588 16751
048addec
JD
16752 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
16753 language/georgian.el.
8727d588 16754
048addec 167552001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
cc63037e 16756
048addec
JD
16757 * Makefile.in (lisp, shortlisp): Synchronize with changes to
16758 lisp/Makefile.in:DONTCOMPILE.
cc63037e 16759
048addec 167602001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
cc63037e 16761
048addec
JD
16762 * xdisp.c (window_box_height): Do not return negative values.
16763 From Gerd Moellmann <gerd@gnu.org>.
cc63037e 16764
048addec 16765 * keyboard.c (head_table): Add missing braces around initializer.
cc63037e 16766
048addec 16767 * term.c (keys): Likewise.
deece6f5 16768
048addec 16769 * xfns.c (x_frame_parms, visual_classes): Likewise.
deece6f5 16770
048addec 167712001-12-17 Sam Steingold <sds@gnu.org>
1b944d9c 16772
048addec
JD
16773 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
16774 patch (COMPOSING_P, not COMPOSING).
28ff4293 16775
048addec 167762001-12-17 Richard M. Stallman <rms@gnu.org>
a395ef6a 16777
048addec 16778 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
a395ef6a 16779
048addec
JD
16780 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
16781 before calling decode_coding.
9b46de40 16782
048addec 16783 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
9b46de40 16784
048addec
JD
16785 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
16786 instead of only for COMPOSITION_DISABLED.
9b46de40 16787
048addec 167882001-12-16 Richard M. Stallman <rms@gnu.org>
aff37336 16789
048addec 16790 * alloc.c (pure_alloc): After overflow, allocate just a small block.
aff37336 16791
048addec 16792 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
b9937f07 16793
048addec
JD
16794 * buffer.h (struct buffer): New field `display_error_modiff'.
16795 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
b9937f07 16796
048addec 16797 * window.c (Frecenter): Clear display_error_modiff field.
2cd23960 16798
048addec
JD
16799 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
16800 Call redisplay_window, but not if display_error_modiff field says no.
16801 (redisplay_window_error): New function.
16802 (displayed_buffer): New variable.
16803 (redisplay_internal, redisplay_windows): Call the new functions
16804 instead of redisplay_window directly.
2cd23960 16805
048addec 168062001-12-15 Richard M. Stallman <rms@gnu.org>
2cd23960 16807
048addec 16808 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
2cd23960 16809
048addec 168102001-12-14 Andrew Innes <andrewi@gnu.org>
a4184c1c 16811
048addec 16812 * makefile.w32-in (EMACSLOADPATH): Define.
f9711de4 16813 ($(EMACS)): Run `list-load-path-shadows' after dumping Emacs.
048addec 16814 (bootstrap-temacs): Remove dependency on bootstrap-clean.
a4184c1c 16815
048addec 168162001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
f6fa0866 16817
048addec
JD
16818 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
16819 parameter have a numeric value all the time.
f6fa0866 16820
048addec 16821 * w32fns.c (x_report_frame_params): Likewise.
f4ca4b00 16822
048addec 168232001-12-12 Richard M. Stallman <rms@gnu.org>
f4ca4b00 16824
048addec 16825 * fileio.c (Fwrite_region): Doc fix.
f4e25f94 16826
048addec
JD
16827 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
16828 (redisplay_internal): Call clear_image_cache only for window terminals.
f4e25f94 16829
048addec 168302001-12-12 Gerd Moellmann <gerd@gnu.org>
91c153e2 16831
048addec
JD
16832 * xdisp.c (move_it_vertically_backward): Change heuristic
16833 for the case that we didn't move far enough initially.
91c153e2 16834
048addec
JD
16835 * window.c (Frecenter): Simplify computation in the case of window
16836 system frames and ARG < 0; use window_box_height.
65b7d3e7 16837
048addec 168382001-12-11 Richard M. Stallman <rms@gnu.org>
65b7d3e7 16839
048addec
JD
16840 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
16841 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
6b5f6311 16842
048addec 168432001-12-11 Andrew Innes <andrewi@gnu.org>
6b5f6311 16844
048addec
JD
16845 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
16846 arg is negative.
be676094 16847
048addec 168482001-12-11 Richard M. Stallman <rms@gnu.org>
be676094 16849
048addec
JD
16850 * m/hp800.h: Split the __hpux conditional into the parts
16851 that are right for GNU/Linux too and the parts that are not.
16852 Use the former if GNU_LINUX.
16853 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
032a857d 16854
048addec 16855 * s/gnu-linux.h (GNU_LINUX): Defined.
032a857d 16856
048addec 168572001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
032a857d 16858
048addec
JD
16859 * macros.c, msdos.c, w16select.c: Change doc-string comments to
16860 `new style' [w/`doc:' keyword].
032a857d 16861
048addec 168622001-12-10 Jason Rumney <jasonr@gnu.org>
b6270150 16863
048addec
JD
16864 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
16865 before using.
b6270150 16866
048addec 168672001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
792e5cbd 16868
048addec
JD
16869 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
16870 keyword].
98cbb9fa 16871
048addec 168722001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
98cbb9fa 16873
048addec 16874 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
98cbb9fa 16875
048addec 16876 * s/hpux10.h (srand48): Don't undefine.
98cbb9fa 16877
048addec 168782001-12-09 Jason Rumney <jasonr@gnu.org>
792e5cbd 16879
048addec 16880 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
78819ebb 16881 Add comment to explain where the struct came from.
048addec
JD
16882 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
16883 (add_menu_item): Process pop-up menus first to avoid memory leak.
16884 (add_menu_item, w32_menu_display_help): Use `help' field as
16885 Lisp_Object.
16886 (w32_free_submenu_strings): Only free owner-drawn strings.
fa336b91 16887
048addec 168882001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
fa336b91 16889
048addec 16890 * COPYING: Moved back.
fa336b91 16891
048addec
JD
16892 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
16893 Add parentheses around && within ||.
077907d4 16894
048addec 16895 * indent.c (compute_motion): Likewise.
aa2af83a 16896
048addec 16897 * intervals.c (merge_properties_sticky): Likewise.
60a653f1 16898
048addec
JD
16899 * coding.c (setup_coding_system, shrink_encoding_region)
16900 (Fdecode_sjis_char): Likewise.
60a653f1 16901
048addec 169022001-12-07 Andreas Schwab <schwab@suse.de>
60a653f1 16903
048addec
JD
16904 * xdisp.c (display_mode_element): Don't read past end of string if
16905 it ends with '%'.
60a653f1 16906
048addec
JD
16907 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
16908 can hold.
60a653f1 16909
048addec
JD
16910 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
16911 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
16912 type changed to Lisp_Object.
16913 (syms_of_data): DEFVAR_LISP them.
60a653f1 16914
048addec 169152001-12-07 Richard M. Stallman <rms@gnu.org>
60a653f1 16916
048addec
JD
16917 * callproc.c (init_callproc): Set Vdata_directory based on the source
16918 location whenever Emacs was run uninstalled.
60a653f1 16919
048addec 169202001-12-06 Paul Eggert <eggert@twinsun.com>
60a653f1 16921
048addec
JD
16922 * config.in (HAVE_WORKING_VFORK): New #undefs.
16923 * process.c (create_process):
16924 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
16925 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
16926 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
16927 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
16928 * m/intel386.h (HAVE_VFORK): Likewise.
16929 * m/mips-siemens.h (HAVE_VFORK): Likewise.
16930 * m/mips.h (HAVE_VFORK): Likewise.
16931 * s/freebsd.h (vfork): Remove #define.
16932 * s/lynxos.h (HAVE_VFORK): Remove #undef.
16933 * s/usg5-4-2.h: Fix comment about vfork.
60a653f1 16934
048addec 169352001-12-06 Richard M. Stallman <rms@gnu.org>
60a653f1 16936
048addec
JD
16937 * s/hpux10.h (random): Add undef.
16938 (HAVE_RANDOM): Define it just once.
60a653f1 16939
048addec 169402001-12-06 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 16941
048addec 16942 * eval.c: Undo last change: the standard syntax is not wanted.
60a653f1 16943
048addec 169442001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 16945
048addec
JD
16946 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
16947 scroll bars of the frame before deleting the frame itself. If the
16948 frame has a widget, delete the frame with XtDestroyWidget, and do
16949 not call XDestroyWindow before that.
60a653f1 16950
048addec 169512001-12-06 Kim F. Storm <storm@cua.dk>
60a653f1 16952
048addec 16953 * xfns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 16954
048addec 16955 * w32fns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 16956
048addec 169572001-12-05 Andrew Innes <andrewi@gnu.org>
60a653f1 16958
048addec
JD
16959 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
16960 excessively large.
60a653f1 16961
048addec
JD
16962 * insdel.c (make_gap_larger): New function.
16963 (make_gap_smaller): New function.
16964 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
16965 Call make_gap_smaller if arg is negative.
60a653f1 16966
048addec 169672001-12-04 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 16968
048addec
JD
16969 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
16970 Pass a dummy argument when calling interrupt_signal.
16971 (parse_menu_item): Mark disabled items before checking for empty def.
16972 (read_char_minibuf_menu_prompt): Make safety more visible.
16973 (read_key_sequence): Add a `first_unbound' variable.
16974 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
16975 unbound prefix as soon as we can detect it.
60a653f1 16976
048addec
JD
16977 * doc.c (Fsnarf_documentation): Add prototype.
16978 (get_doc_string): Handle negative arguments.
16979 (Fdocumentation): Use AREF and ASIZE.
16980 Move the calls to get_doc_string to a single place.
16981 Don't confuse an interactive-spec for a docstring reference.
16982 (Fdocumentation_property): Take advantage of the fact that
16983 get_doc_string now ignores the sign of the docstring position.
60a653f1 16984
048addec 16985 * eval.c: Use standard syntax for usage in docstrings.
60a653f1 16986
048addec 169872001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 16988
a64387ee 16989 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
60a653f1 16990
048addec 169912001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 16992
048addec
JD
16993 * xterm.c (x_draw_image_relief): Use predefined macro instead of
16994 constant when the value of `tool_bar_button_relief' is negative.
60a653f1 16995
048addec 169962001-12-02 Richard M. Stallman <rms@gnu.org>
60a653f1 16997
048addec
JD
16998 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
16999 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
60a653f1 17000
048addec 17001 * fileio.c (read_non_regular): Delete Fsignal call.
60a653f1 17002
048addec 170032001-12-01 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 17004
048addec 17005 * lisp.h (run_hook_list_with_args): Undo last change.
60a653f1 17006
048addec 170072001-12-01 Gerd Moellmann <gerd@gnu.org>
60a653f1 17008
048addec 17009 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
60a653f1 17010
048addec 170112001-12-01 Jason Rumney <jasonr@gnu.org>
60a653f1 17012
f63fd14e 17013 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
60a653f1 17014
048addec
JD
17015 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
17016 [!WM_MOUSELEAVE]: Define.
60a653f1 17017
048addec
JD
17018 * w32menu.c (current_popup_menu, get_menu_item_info):
17019 (set_menu_item_info): New vars.
17020 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
17021 (w32_menu_show): Set current_popup_menu.
17022 (add_menu_item): Allocate new strings for owner-drawn menu items
17023 and help strings.
17024 Use owner-draw for disabled menu items again.
17025 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
17026 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
60a653f1 17027
048addec
JD
17028 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
17029 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
17030 <WM_EXITMENULOOP>: Free menu strings.
17031 <WM_MOUSELEAVE>: Stop tracking mouse.
17032 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
60a653f1 17033
048addec
JD
17034 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
17035 and mouse face.
60a653f1 17036
048addec 170372001-12-01 Kim F. Storm <storm@cua.dk>
60a653f1 17038
048addec
JD
17039 The following changes add left-fringe and right-fringe
17040 frame parameters to adjust fringe widths, or remove one or
17041 both fringes.
60a653f1 17042
048addec
JD
17043 * frame.h (struct frame): Remove trunc_area_pixel_width and
17044 trunc_area_cols fields.
17045 (Qleft_fringe, Qright_fringe): Declare.
17046 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
60a653f1 17047
048addec
JD
17048 * frame.c (Qleft_fringe, Qright_fringe): New vars.
17049 (syms_of_frame): Initialize them.
60a653f1 17050
048addec
JD
17051 * window.c (coordinates_in_window): Handle separate left and right
17052 fringe widths.
60a653f1 17053
048addec
JD
17054 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
17055 and fringe_cols fields.
17056 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
17057 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
17058 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
17059 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
17060 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
17061 (x_compute_fringe_widths): Add prototype.
60a653f1 17062
048addec
JD
17063 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
17064 fill fringe evenly with small dashes.
f63fd14e 17065 (x_draw_fringe_bitmap): Clear background if necessary. Align and
048addec
JD
17066 clip the new ZV bitmap to avoid jitter between rows.
17067 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
17068 background. Don't draw fringe bitmaps if fringe width is zero.
17069 (x_compute_fringe_widths): New function.
17070 (x_new_font, x_set_window_size_1): Use it.
60a653f1 17071
048addec
JD
17072 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
17073 (x_set_frame_parameters): Process `font' parameter before other
17074 parameters as fringe widths depend on it.
17075 (x_set_fringe_width): New function.
17076 (x_figure_window_size): Use x_compute_fringe_widths.
17077 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
17078 parameters.
60a653f1 17079
048addec
JD
17080 * widget.c (set_frame_size): Use x_compute_fringe_widths.
17081 (EmacsFrameSetCharSize): Ditto.
60a653f1 17082
048addec
JD
17083 * w32term.h: Merged changes from xterm.h.
17084 * w32term.c: Merged changes from xterm.c.
17085 * w32fns.c: Merged changes from xfns.c.
60a653f1 17086
048addec 170872001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 17088
048addec 17089 * COPYING: Removed.
60a653f1 17090
048addec 170912001-11-29 Dave Love <fx@gnu.org>
60a653f1 17092
048addec
JD
17093 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
17094 extra extra slot.
17095 (detect_coding_mask): Fix call of detect_coding_iso2022.
60a653f1 17096
048addec 170972001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 17098
048addec
JD
17099 * fileio.c (file-name-coding-system)
17100 (default-file-name-coding-system): Doc fix (links to referenced
17101 variables added).
60a653f1 17102
048addec 171032001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 17104
048addec
JD
17105 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
17106 Add dummy uses of gcproN variables.
60a653f1 17107
048addec
JD
17108 * category.c (describe_category, describe_category_1)
17109 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
17110 (syms_of_category): Don't defsubr Sdescribe_categories.
60a653f1 17111
048addec 171122001-11-28 Richard M. Stallman <rms@gnu.org>
60a653f1 17113
048addec 17114 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
60a653f1 17115
048addec
JD
17116 * Makefile.in (lispdir): New variable, referring to build dir.
17117 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
60a653f1 17118
048addec 171192001-11-28 Andrew Innes <andrewi@gnu.org>
60a653f1 17120
048addec
JD
17121 * w32menu.c (w32_menu_display_help): Actually add the new argument
17122 OWNER.
60a653f1 17123
048addec 171242001-11-28 Jason Rumney <jasonr@gnu.org>
60a653f1 17125
048addec
JD
17126 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
17127 menu items. From David Ponce <dponce@wanadoo.fr>.
17128 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
17129 conditionally.
f63fd14e 17130 (w32_menu_display_help): New argument OWNER. Rewritten to store a
048addec 17131 help event in the owner frame's keyboard buffer.
60a653f1 17132
048addec
JD
17133 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
17134 (Fx_show_tip): Don't subtract last width from row width.
17135
17136 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
17137 (w32_read_socket): Use EQ to compare frames.
60a653f1 17138
048addec 171392001-11-28 Gerd Moellmann <gerd@gnu.org>
60a653f1 17140
048addec
JD
17141 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
17142 OVERLAPS_P.
60a653f1 17143
048addec 171442001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 17145
048addec
JD
17146 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
17147 `gcpro3' and `gcpro4'.
60a653f1 17148
048addec 17149 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
60a653f1 17150
048addec 171512001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 17152
048addec 17153 * ccl.c: Use AREF and ASIZE.
60a653f1 17154
048addec 171552001-11-27 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 17156
048addec
JD
17157 * lisp.h (run_hook_list_with_args): Remove.
17158 (LIST_END_P): Fix call to wrong_type_argument.
17159 (make_fixnum_or_float): Use EMACS_INT rather than int.
60a653f1 17160
048addec 171612001-11-26 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 17162
048addec
JD
17163 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
17164 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
60a653f1 17165
048addec
JD
17166 * eval.c: Use AREF and ASIZE.
17167 (Ffetch_bytecode): Add the file name to the error message.
60a653f1 17168
048addec
JD
17169 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
17170 which match the end of the file-name.
17171 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
17172 is not a valid env var, but leave it as is instead.
60a653f1 17173
048addec
JD
17174 * keymap.c (access_keymap): Handle t bindings like nil bindings.
17175 Make nil bindings in char-tables transparent.
17176 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
60a653f1 17177
048addec 171782001-11-26 Richard M. Stallman <rms@gnu.org>
60a653f1 17179
048addec
JD
17180 * textprop.c (set_text_properties_1): Allow START, END in either order.
17181 Do nothing if range is empty.
60a653f1 17182
048addec 17183 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
60a653f1 17184
048addec
JD
17185 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
17186 (clean): Not here.
60a653f1 17187
048addec 171882001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 17189
048addec
JD
17190 * textprop.c (set_text_properties_1): Clearly mark that the
17191 interval should not be empty.
60a653f1 17192
048addec
JD
17193 * intervals.c (graft_intervals_into_buffer):
17194 Don't call set_text_properties_1 on an empty interval.
60a653f1 17195
048addec 171962001-11-25 Richard M. Stallman <rms@gnu.org>
60a653f1 17197
048addec 17198 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
60a653f1 17199
048addec
JD
17200 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
17201 don't lose the data in it.
60a653f1 17202
048addec 172032001-11-25 Juanma Barranquero <lektu@terra.es>
60a653f1 17204
048addec 17205 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
60a653f1 17206
c62aec78 17207 * buffer.c (Fkill_buffer): Likewise.
60a653f1 17208
c62aec78 17209 * print.c (temp_output_buffer_setup): Likewise.
60a653f1 17210
048addec 172112001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 17212
048addec 17213 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
60a653f1 17214
048addec 172152001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 17216
048addec
JD
17217 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
17218 Niemitalo <kon@iki.fi>.
60a653f1 17219
048addec 172202001-11-25 Jason Rumney <jasonr@gnu.org>
60a653f1 17221
048addec 17222 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
60a653f1 17223
048addec
JD
17224 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
17225 (Fx_show_tip): Block input during frame creation.
17226 (Fx_show_tip, Fx_hide_tip): Enable.
60a653f1 17227
048addec 172282001-11-24 Richard M. Stallman <rms@gnu.org>
60a653f1 17229
048addec
JD
17230 * lread.c (Fload): Detect recursive load error for more than 3
17231 nestings of the same file.
17232 (Vrecursive_load_depth_limit): Variable deleted.
17233 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
60a653f1 17234
048addec 172352001-11-24 Jason Rumney <jasonr@gnu.org>
60a653f1 17236
048addec
JD
17237 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
17238 mouse position if either left or top is not specified.
60a653f1 17239
048addec
JD
17240 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
17241 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
17242 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
17243 (my_create_tip_window): Assign tip_window.
17244 (x_create_tip_frame): Use same defaults as X.
17245 (compute_tip_xy): Remove unused variable. Use full screen width.
f63fd14e 17246 (Fx_show_tip): Do not double height. Call ShowWindow directly.
60a653f1 17247
048addec
JD
17248 * w32term.c (x_after_update_window_line): Doc fix.
17249 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
17250 frames.
17251 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
60a653f1 17252
048addec
JD
17253 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
17254 for all Windowed systems.
60a653f1 17255
048addec 172562001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 17257
048addec
JD
17258 * msdos.c (IT_clear_screen): If the frame's faces are not yet
17259 realized, use the initial screen colors to clear the screen.
60a653f1 17260
048addec 172612001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 17262
048addec
JD
17263 * textprop.c (Fset_text_properties): Remove unused variables
17264 `unchanged', `prev_changed', `s' and `len'.
60a653f1 17265
048addec
JD
17266 * search.c (Freplace_match): Remove unused variable `inslen'.
17267
17268 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
17269
172702001-11-22 Jason Rumney <jasonr@gnu.org>
17271
17272 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
17273 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
17274 (my_create_tip_window): New function.
17275 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
17276 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
17277
172782001-11-20 Jason Rumney <jasonr@gnu.org>
17279
17280 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
17281 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
17282
17283 * w32fns.c (Vw32_system_coding_system): Remove.
17284 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
17285
172862001-11-19 Stefan Monnier <monnier@cs.yale.edu>
17287
17288 * fileio.c (Fwrite_region): Move choose_write_coding_system to
17289 after build_annotations.
17290
17291 * syntax.c (describe_syntax): Add dummy arg.
17292 (describe_syntax_1): Update call to describe_vector.
17293
17294 * category.c (describe_category): Add dummy arg.
17295 (describe_category_1): Update call to describe_vector.
17296
17297 * keymap.c (Fdescribe_vector): Add `describer' parameter.
17298 (describe_command, describe_translation): Add dummy second param.
17299 (describe_map): Call elt_describer with two arguments.
17300 (describe_vector_princ): Add `fun' parameter.
17301 Call it instead of the hardcoded `princ'.
17302 (describe_vector): Add arg `args'.
17303 Pass it as a new second argument to elt_describer.
60a653f1 17304
048addec 17305 * keymap.h (describe_vector): Update prototype.
60a653f1 17306
048addec
JD
17307 * frame.c: Don't include keymap.h any more.
17308 (keys_of_frame): Remove.
60a653f1 17309
048addec 17310 * lisp.h (keys_of_frame): Remove declaration.
60a653f1 17311
048addec 17312 * emacs.c (main): Don't call `keys_of_frame' any more.
60a653f1 17313
048addec 173142001-11-14 Andreas Schwab <schwab@suse.de>
60a653f1 17315
048addec
JD
17316 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
17317 if defined, 0 otherwise.
17318 (MAP_FAILED): Define if not defined and use it to test mmap failure.
17319 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
60a653f1 17320
048addec 173212001-11-19 Richard M. Stallman <rms@gnu.org>
60a653f1 17322
048addec 17323 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
60a653f1 17324
048addec 173252001-11-18 Jason Rumney <jasonr@gnu.org>
60a653f1 17326
048addec
JD
17327 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
17328 (x_draw_bar_cursor): If the background color of the glyph under
17329 the cursor equals the frame's cursor color, use the glyph's
17330 foreground color for drawing the bar cursor.
17331 (x_after_update_window_line): Clear internal border in different
17332 circumstances.
17333 (w32_set_vertical_scroll_bar): Check for width and height > 0.
17334 (w32_draw_relief_rect): Correct relief by 1 pixel.
17335 (x_set_glyph_string_background_width):
17336 Set extends_to_end_of_line_p if the row's fill_line_p is set and
17337 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
17338 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
17339 if cursor_in_non_selected_windows is false.
17340 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
17341 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
17342 Notice if cursor gets overwritten.
17343 (notice_overwritten_cursor): Renamed from
17344 note_overwritten_text_cursor. Rewritten to take glyph widths
17345 into account, and to take X positions as parameters.
17346 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
17347 around call to x_draw_glyphs.
17348 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
17349 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
17350 color to use for image glyph reliefs.
17351 (x_draw_image_relief): Accept zero tool_bar_button_relief.
17352 (glyph_rect): Remove unused variable `area'.
60a653f1 17353
048addec
JD
17354 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
17355 some items.
17356 (x_set_internal_border_width): Set frame garbaged when window
17357 doesn't exist yet.
17358 (Fx_create_frame): Accept zero tool_bar_button_relief.
17359 (x_clear_image_1, four_corners_best, image_background)
17360 (image_background_transparent): New functions.
17361 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
17362 (gs_format): Add `:background' entry.
17363 (lookup_image): Set IMG's background color if specified.
17364 (pbm_load, xbm_load_image, png_load): Set IMG's background field
17365 when appropriate.
17366 (x_clear_image_1): Reset `background_valid' and
17367 `background_transparent_valid' fields.
17368 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
17369 calculating it here. Set IMG's background_transparent field.
17370 (enum xpm_keyword_index): Add XPM_BACKGROUND.
17371 (enum png_keyword_index): Add PNG_BACKGROUND.
17372 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
17373 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
17374 (enum gif_keyword_index): Add GIF_BACKGROUND.
17375 (enum gs_keyword_index): Add GS_BACKGROUND.
17376 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
17377 Pre-calculate image background color where necessary.
17378 (x_create_x_image_and_pixmap, xbm_load, gs_load):
17379 Use display info's n_cbits entry for screen depth.
17380 (Fx_show_tip): Remove unused variables `buffer', `top',
17381 `left', `max_width' and `max_height'.
60a653f1 17382
048addec 17383 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
60a653f1 17384
048addec 173852001-11-18 Gerd Moellmann <gerd@gnu.org>
60a653f1 17386
048addec 17387 * puresize.h (BASE_PURESIZE): Increase to 750000.
60a653f1 17388
048addec 173892001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 17390
048addec 17391 * frame.c (Fframe_live_p): Doc fix.
60a653f1 17392
048addec 173932001-11-18 Richard M. Stallman <rms@gnu.org>
60a653f1 17394
048addec
JD
17395 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
17396 (message_dolog_marker3): New static variables hold three markers.
17397 (syms_of_xdisp): Initialize and staticpro them.
17398 (message_dolog): Use message_dolog_marker1..3 instead of
17399 allocating markers each time. Unchain them when done.
60a653f1 17400
048addec 174012001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 17402
048addec 17403 * doc.c (Fsnarf_documentation): Doc fix.
60a653f1 17404
048addec 174052001-11-17 Andreas Schwab <schwab@suse.de>
60a653f1 17406
048addec 17407 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
60a653f1 17408
048addec 174092001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 17410
048addec 17411 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
60a653f1 17412
048addec 174132001-11-17 Jason Rumney <jasonr@gnu.org>
60a653f1 17414
048addec 17415 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
60a653f1 17416
048addec 174172001-11-17 Gerd Moellmann <gerd@gnu.org>
60a653f1 17418
048addec
JD
17419 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
17420 with invalid position.
60a653f1 17421
048addec 174222001-11-16 Richard M. Stallman <rms@gnu.org>
60a653f1 17423
048addec 17424 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
60a653f1 17425
048addec
JD
17426 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
17427 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
17428 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
60a653f1 17429
048addec 17430 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
60a653f1 17431
048addec 174322001-11-16 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 17433
048addec
JD
17434 * fileio.c (build_annotations): Split off the tail.
17435 (build_annotations_2): New fun. Extracted from build_annotations.
17436 (Fwrite_region): Split the call to build_annotations into two
17437 calls to build_annotations and build_annotations_2.
077907d4 17438
048addec 174392001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
1756e2fb 17440
048addec
JD
17441 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
17442 clear_waiting_for_input with argument.
1756e2fb 17443
048addec 17444 * xterm.h (x_update_cursor): Remove duplicated prototype.
06e8f738 17445
048addec 17446 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
06e8f738 17447
048addec 17448 * xterm.c (waiting_for_input): Remove unnecessary declaration.
fa336b91 17449
048addec 17450 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
fa336b91 17451
048addec 174522001-11-16 Stefan Monnier <monnier@cs.yale.edu>
fa336b91 17453
048addec
JD
17454 * fileio.c (choose_write_coding_system): New fun, extracted
17455 from Fwrite_region.
17456 (Fwrite_region): Use it.
fa336b91 17457
048addec
JD
17458 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
17459 (funcall_lambda, run_hook_with_args): Make static and add prototype.
17460 (ml_apply, find_handler_clause): Add prototype.
fa336b91 17461
048addec 174622001-11-16 Eli Zaretskii <eliz@gnu.org>
fa336b91 17463
048addec 17464 * config.in: Add #undef HAVE_COFF_H.
fa336b91 17465
048addec
JD
17466 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
17467 Required for ISC 4.1.
fa336b91 17468
048addec 174692001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
fa336b91 17470
048addec
JD
17471 * syswait.h: (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
17472 Andrew Wiseman <a.wiseman@btclick.com>.
fa336b91 17473
048addec 174742001-11-16 Kim F. Storm <storm@cua.dk>
fa336b91 17475
048addec
JD
17476 The following changes are made to clean up the various internal
17477 references to the fringes to actually use the term `fringe' for
17478 them. Previously, they were called `flags areas', `bitmap areas',
17479 `left/right side of windows', or implicitly as `flags' or
17480 `bitmaps':
fa336b91 17481
048addec 17482 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
f63fd14e 17483 Comments fixed. Use renamed symbols.
06e8f738 17484
f63fd14e 17485 * dispnew.c: Comment fix. Use renamed symbols.
06e8f738 17486
048addec
JD
17487 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
17488 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
17489 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
9ce647f4 17490
048addec 17491 * msdos.c: Comment fix.
9ce647f4 17492
048addec 17493 * w32fns.c: Use renamed symbols.
9b784ab8 17494
f63fd14e 17495 * w32term.c: Comment fixes. Use renamed symbols.
048addec
JD
17496 (fringe_bitmap_type): Renamed from bitmap_type.
17497 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
17498 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
17499 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
9f7e52b4 17500
f63fd14e 17501 * w32term.h: Comment fixes. Use renamed symbols.
048addec
JD
17502 (fringes_extra): Renamed from flags_areas_extra.
17503 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
17504 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
17505 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
17506 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
17507 (FRAME_X_LEFT_FRINGE_WIDTH):
17508 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
17509 (FRAME_X_RIGHT_FRINGE_WIDTH):
17510 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
9f7e52b4 17511
048addec 17512 * widget.c: Use renamed symbols.
9f7e52b4 17513
f63fd14e 17514 * window.c: Comment fixes. Use renamed symbols.
048addec 17515 (coordinates-in-window-p): Doc fix.
fa336b91 17516
f63fd14e 17517 * xdisp.c: Comment fixes. Use renamed symbols.
34e5d0af 17518
048addec 17519 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
9b784ab8 17520
048addec 17521 * xfns.c: Use renamed symbols.
89512fcd 17522
f63fd14e 17523 * xterm.c: Comment fixes. Use renamed symbols.
048addec
JD
17524 (fringe_bitmap_type): Renamed from bitmap_type.
17525 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
17526 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
17527 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
89512fcd 17528
f63fd14e 17529 * xterm.h: Comment fixes. Use renamed symbols.
048addec
JD
17530 (fringes_extra): Renamed from flags_areas_extra.
17531 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
17532 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
17533 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
17534 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
17535 (FRAME_X_LEFT_FRINGE_WIDTH):
17536 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
17537 (FRAME_X_RIGHT_FRINGE_WIDTH):
17538 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
17539
175402001-11-15 Jason Rumney <jasonr@gnu.org>
17541
17542 * w32menu.c (add-menu-item): Make help_echo and radio buttons
17543 work for most menu items. From David Ponce
17544 <david.ponce@wanadoo.fr>.
17545
175462001-11-15 Gerd Moellmann <gerd@gnu.org>
17547
17548 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
17549 Some x_set_* function expect to be called even if old and new
17550 value are equal.
17551
17552 * xdisp.c (build_desired_tool_bar_string): Accept zero
17553 tool_bar_button_relief.
17554
17555 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
17556
17557 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
17558
17559 * xterm.c (x_draw_bar_cursor): If the background color of the
17560 glyph under the cursor equals the frame's cursor color, use
17561 the glyph's foreground color for drawing the bar cursor.
17562
17563 * dispnew.c (direct_output_forward_char): Fix character/byte
17564 position comparison.
7d18891d 17565
048addec 175662001-11-15 Miles Bader <miles@gnu.org>
d2936d21 17567
048addec
JD
17568 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
17569 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
17570 Update arguments to find_field.
17571 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
17572 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
17573 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
17574 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
7d18891d 17575
048addec 175762001-11-14 Richard M. Stallman <rms@gnu.org>
7d18891d 17577
048addec 17578 * editfns.c (Fpropertize): Allow call with 1 arg.
7d18891d 17579
048addec
JD
17580 * dispextern.h (image_background, image_background_transparent):
17581 Conditionalize on HAVE_X_WINDOWS.
7d18891d 17582
048addec 175832001-11-13 Richard M. Stallman <rms@gnu.org>
7d18891d 17584
048addec 17585 * print.c (Fprin1_to_string): Doc fix.
7d18891d 17586
048addec 17587 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
7d18891d 17588
048addec 17589 * floatfns.c (Fceiling, Ffloor): Doc fixes.
7d18891d 17590
048addec 17591 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
7d18891d 17592
048addec 17593 * fileio.c (Ffile_accessible_directory_p): Doc fix.
7d18891d 17594
048addec 17595 * eval.c (syms_of_eval): Doc fix.
7d18891d 17596
048addec 17597 * coding.c (syms_of_coding): Doc fix.
7d18891d 17598
048addec 17599 * doc.c (Fsnarf_documentation): Doc fix.
7d18891d 17600
048addec 17601 * dispnew.c (syms_of_display): Doc fix.
9474c847 17602
048addec 17603 * category.c (Fget_unused_category): Doc fix.
9474c847 17604
048addec 17605 * buffer.c (syms_of_buffer): Doc fixes.
e3059a5d 17606
048addec 176072001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
e3059a5d 17608
048addec 17609 * print.c (prin1, print): Doc fix.
e3059a5d 17610
048addec 176112001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
b3700ae7 17612
048addec
JD
17613 * fontset.h: Remove declarations of variables
17614 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
b3700ae7 17615
048addec
JD
17616 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
17617 `Vclip_large_size_font'.
eae936e2 17618
048addec 176192001-11-13 Jason Rumney <jasonr@gnu.org>
4bb962be 17620
048addec 17621 * w32fns.c: Doc fix.
ddb67bdc 17622
048addec 176232001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3467c402 17624
048addec 17625 * xfaces.c (Fface_attributes_as_vector): Doc fix.
3467c402 17626
048addec 17627 * fns.c: Doc fix.
6e1b91d7 17628
048addec 17629 * emacs.c: Doc fix.
1c1d3d69 17630
048addec 17631 * coding.c: Doc fix.
1c1d3d69 17632
048addec
JD
17633 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
17634 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
17635 `new style' [w/`doc:' keyword].
b6f4c7ba 17636
048addec 176372001-11-12 Richard M. Stallman <rms@gnu.org>
b6f4c7ba 17638
048addec
JD
17639 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
17640 LeaveNotify events. Only FocusIn and FocusOut do that now.
17641 (x_display_and_set_cursor): Do display hollow cursors in active
17642 minibuffer windows when they are not selected.
b6f4c7ba 17643
048addec 176442001-11-12 Jason Rumney <jasonr@gnu.org>
a89f435d 17645
048addec 17646 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
f63fd14e
JB
17647 * w32term.c: Change doc-string comments to `new style'
17648 [w/`doc:' keyword]. Doc fixes.
a89f435d 17649
048addec
JD
17650 * w32fns.c: Don't define max.
17651 (Fx_open_connection): Only execute once.
a4cd0cd7 17652
048addec 176532001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
eafb659a 17654
048addec
JD
17655 * ccl.c: Change macros to use do-while block instead of if-else.
17656 Use braces to follow GNU Coding Standards.
eafb659a 17657
048addec 176582001-11-11 Richard M. Stallman <rms@gnu.org>
a4cd0cd7 17659
048addec 17660 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
a4cd0cd7 17661
048addec 17662 * lread.c (read_escape): Use end_of_file_error for reporting eof.
a4cd0cd7 17663
048addec
JD
17664 * insdel.c (replace_range): Use adjust_markers_for_replace
17665 instead of adjust_markers_for_delete and adjust_markers_for_insert.
a4cd0cd7 17666
78819ebb 17667 * intervals.h (set_text_properties, set_text_properties_1): Declare.
a4cd0cd7 17668
048addec
JD
17669 * textprop.c (set_text_properties_1): New subroutine
17670 broken out of set_text_properties.
17671 (set_text_properties): Use set_text_properties_1.
91823618 17672
048addec
JD
17673 * intervals.c (graft_intervals_into_buffer):
17674 Use set_text_properties_1 to clear out properties.
91823618 17675
048addec
JD
17676 * search.c (Freplace_match): Use replace_range to insert
17677 and delete. Don't request property inheritance from
17678 surrounding text.
86928dfb 17679
048addec 176802001-11-10 Jason Rumney <jasonr@gnu.org>
86928dfb 17681
048addec 17682 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
f63fd14e 17683 vertical fonts. Allow them if face name is explicitly specified.
048addec 17684 Do not give up if we find a font that cannot be converted to an xlfd.
40ef1eda 17685
048addec 176862001-11-10 Gerd Moellmann <gerd@gnu.org>
ab8469eb 17687
048addec
JD
17688 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
17689 instead of malloc/free.
a78e0303 17690
048addec 176912001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
40ef1eda 17692
048addec
JD
17693 * xfaces.c (merge_face_vectors): Use braces to follow GNU
17694 Coding Standards.
17695 (Finternal_set_lisp_face_attribute): Likewise.
fabf4a91 17696
048addec 17697 * buffer.c (Fbury_buffer): Likewise.
0c99b139 17698
048addec 17699 * indent.c (current_column_1): Remove unused variable `prev_col'.
0c99b139 17700
048addec
JD
17701 * coding.c (encode_coding): Use precomputed value of `src'.
17702 (encode_coding): Remove unused variable `src_end'.
17703 (code_convert_region): Remove unused variables `count'.
830ddd77 17704
048addec 177052001-11-07 Jason Rumney <jasonr@gnu.org>
830ddd77 17706
048addec
JD
17707 * w32term.c (x_display_and_set_cursor): Do not move system caret
17708 if cursor_glyph is NULL.
55c6d645 17709
048addec 177102001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
55c6d645 17711
048addec 17712 * keymap.c (access_keymap): Fix compilation error.
5de38842 17713
048addec 177142001-11-07 Miles Bader <miles@gnu.org>
7a4564a4 17715
048addec 17716 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
5de38842 17717
048addec 177182001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4fa23df5 17719
048addec
JD
17720 * intervals.c (graft_intervals_into_buffer):
17721 Remove #ifdef'd-out code.
17722 (graft_intervals_into_buffer): Remove unused variable `middle'.
4fa23df5 17723
048addec
JD
17724 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
17725 code (eval-current-buffer).
17726 Change doc-string comments to `new style' [w/`doc:' keyword].
7a6a97d7 17727
048addec 177282001-11-06 Richard M. Stallman <rms@gnu.org>
c191d13c 17729
048addec 17730 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
7a6a97d7 17731
048addec 177322001-11-06 Stefan Monnier <monnier@cs.yale.edu>
44dc78e0 17733
048addec 17734 * lread.c (read1): Fix behavior with nested backquoting.
44dc78e0 17735
048addec
JD
17736 * keyboard.c (make_lispy_event): Check integerness and fix
17737 Lisp_Object/int mixup.
17893c65 17738
048addec 177392001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4d994a79 17740
048addec 17741 * fns.c (copy_hash_table): Remove unused variable `v'.
d5360cc7 17742
048addec
JD
17743 * fontset.c (fontset_font_pattern): Remove unused variable
17744 `family_registry'.
d5360cc7 17745
048addec 17746 * indent.c (current_column_1): Remove unused variable `prev_col'.
d5360cc7 17747
048addec 177482001-11-05 Richard M. Stallman <rms@gnu.org>
96238a5a 17749
048addec 17750 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
96238a5a 17751
048addec
JD
17752 * buffer.c (Fkill_buffer): Don't delete auto save file
17753 if buffer is modified.
d9d54213 17754
048addec 177552001-11-05 Andrew Innes <andrewi@gnu.org>
d9d54213 17756
048addec
JD
17757 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
17758 CHECK_NUMBER_CDR.
b116830b 17759
048addec 177602001-11-05 Richard M. Stallman <rms@gnu.org>
b116830b 17761
048addec 17762 * unexelf.c (unexec): Minor changes; clean up comments.
3297e2a1 17763
048addec 177642001-11-05 Sam Steingold <sds@gnu.org>
3297e2a1 17765
048addec 17766 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
6fb8339c 17767
048addec 177682001-11-05 Andreas Schwab <schwab@suse.de>
6fb8339c 17769
048addec 17770 * sound.c (sound_perror): Save errno from being clobbered.
7dd73b78 17771
048addec 177722001-11-05 Dale Hagglund <rdh@yottayotta.com>
7dd73b78 17773
048addec
JD
17774 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
17775 the program image directly.
982f6c7e 17776
048addec 177772001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d31053f9 17778
048addec 17779 * buffer.h (Fbuffer_local_value): Add prototype.
d31053f9 17780
048addec 177812001-11-04 Richard M. Stallman <rms@gnu.org>
d31053f9 17782
048addec
JD
17783 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
17784 and CHECK_BUFFER.
d31053f9 17785
048addec
JD
17786 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
17787 (record_char): Likewise.
d31053f9 17788
048addec
JD
17789 * keyboard.c (make_lispy_event): Don't insist a drag event must
17790 move to a different buffer position. Instead, check for moving at
17791 least double_click_fuzz.
982f6c7e 17792
048addec 17793 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
830047fd 17794
048addec 17795 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
b116830b 17796
048addec
JD
17797 * indent.c (current_column_1, Fmove_to_column): Separate the code
17798 for display-table glyphs from the code for buffer text, to fix
17799 bugs in the former.
830047fd 17800
048addec 178012001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
b116830b 17802
048addec
JD
17803 * buffer.c (Fbuffer_local_value): New function.
17804 (syms_of_buffer): Defsubr it.
2df5238c 17805
048addec
JD
17806 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
17807 value of `cursor-in-non-selected-windows'.
4e397688 17808
048addec
JD
17809 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
17810 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
17811 (syms_of_xdisp): Initialize it.
48b0f3ae 17812
048addec 178132001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2df5238c 17814
048addec 17815 * xfns.c (Fx_create_frame): Doc fix.
3ecaf7e5 17816
048addec
JD
17817 * coding.c: Change doc-string comments to `new style' [w/`doc:'
17818 keyword].
3ecaf7e5 17819
048addec
JD
17820 * eval.c (top_level_value, top_level_set): Remove commented and
17821 #ifdef'd-out code.
17822 (Fdefvar): Fix usage in doc-string.
3ecaf7e5 17823
048addec 178242001-11-03 Richard M. Stallman <rms@gnu.org>
3ecaf7e5 17825
048addec 17826 * xfns.c: Include unistd.h, if it exists.
8db2e33b 17827
048addec 17828 * editfns.c: Move the include of ctype.h after unistd.h.
8db2e33b 17829
048addec 17830 * gmalloc.c: Test BROKEN_PROTOTYPES.
aed29b97 17831
048addec 178322001-11-03 Ken Raeburn <raeburn@gnu.org>
aed29b97 17833
048addec
JD
17834 * lisp.h (CHECK_STRING_CAR): New macro.
17835 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
17836 treating XCAR and XCDR as lvalues.
17837 (openp): Use CHECK_STRING_CAR.
17838 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
aed29b97 17839
048addec 178402001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
6cb16f95 17841
048addec
JD
17842 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
17843 (SIGMASKTYPE): Define.
1b1acc13 17844
048addec 17845 * syssignal.h (sigunblock): Don't define if already defined.
020f9b38 17846
048addec 178472001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
020f9b38 17848
048addec
JD
17849 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
17850 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
17851 Fix typos in comments.
6cb16f95 17852
048addec
JD
17853 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
17854 and #ifdef'd-out code.
17855 Fix and reindent comments.
6cb16f95 17856
048addec 17857 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
6cb16f95 17858
048addec
JD
17859 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
17860 argument `i' in macros.
6cb16f95 17861
048addec
JD
17862 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
17863 `i' in macros.
7e9d3c2f 17864
048addec
JD
17865 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
17866 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
17867 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
17868 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
17869 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
17870 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
17871 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
17872 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
17873 in macros.
7e9d3c2f 17874
048addec
JD
17875 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
17876 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
17877 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
17878 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
17879 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
17880 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
17881 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
17882 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
17883 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
17884 (remove unused second argument).
7e9d3c2f 17885
048addec 178862001-11-02 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 17887
048addec
JD
17888 * syntax.c (describe_syntax): New wrapper.
17889 (Finternal_describe_syntax_value): Rename from describe_syntax.
17890 Don't insert space at front and \n at the end.
17891 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
e6bff182 17892
048addec
JD
17893 * regex.c (re_wctype): Try to fix some warnings.
17894 (regcomp, regexec): Don't forget the __restrict.
9ba48103 17895
048addec 178962001-11-02 Richard M. Stallman <rms@gnu.org>
9ba48103 17897
048addec 17898 * textprop.c (Fget_char_property): Doc fix.
9ba48103 17899
048addec 179002001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9ba48103 17901
048addec 17902 * process.c (Fstart_process): Add usage to doc-string.
c22e59e1 17903
048addec 17904 * data.c (Fsetq_default): Ditto.
c22e59e1 17905
048addec 17906 * callint.c (Finteractive): Ditto.
9271ed2c 17907
048addec 179082001-11-01 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 17909
048addec
JD
17910 * macros.c: Don't include keymap.h any more.
17911
179122001-11-01 Richard M. Stallman <rms@gnu.org>
17913
17914 * data.c (Fmake_local_variable): Doc fix.
17915
17916 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
17917 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
e6bff182 17918
048addec 17919 * keymap.c (Fdescribe_buffer_bindings): Print character property
9271ed2c
RS
17920 bindings along with or instead of the buffer local map.
17921 Make the overriding maps override what they should.
17922
f00691a3 179232001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8b8bd9c6
PJ
17924
17925 * window.c (grow_mini_window): Fix typo in comment.
17926
27188d11
GM
179272001-11-01 Gerd Moellmann <gerd@gnu.org>
17928
7b49b9d2
GM
17929 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
17930 (XTset_vertical_scroll_bar): Likewise.
17931
43f7c3ea
GM
17932 * xfns.c (x_build_heuristic_mask): Use four_corners_best
17933 instead of IMAGE_BACKGROUND.
c22e59e1 17934
b350c2e5
GM
17935 * xfns.c (four_corners_best): Reindent.
17936
c22e59e1 17937 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
27188d11
GM
17938 Handle :box so that it is possible to specify sexprs.
17939
bf00d461
EZ
179402001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
17941
17942 * s/hpux11.h: New file.
17943
f00691a3 179442001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e10df59 17945
2b209b97
PJ
17946 * emacs.c (USAGE1): Show command line option --no-window-system
17947 instead of --no-windows in usage.
17948 (standard_args): Rename --no-windows to --no-window-system.
17949 (bug_reporting_address): Follow Emacs coding conventions.
17950
9dbc9081
PJ
17951 * eval.c (Fcommandp): Doc fix.
17952 Change doc-string comments to `new style' [w/`doc:' keyword].
17953
4e10df59
PJ
17954 * frame.c (Fframe_live_p): Doc fix.
17955
17956 * buffer.c (selective-display-ellipses): Doc fix.
17957
dd387b25
GM
179582001-10-31 Gerd Moellmann <gerd@gnu.org>
17959
fe957e65
GM
17960 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
17961
dd387b25
GM
17962 * xfaces.c (realize_x_face): If C is not a single-byte character,
17963 set the face's colors_copied_bitwise_p instead of the defaulted_p
17964 members which have a different meaning.
17965 (free_face_colors): Do nothing for a face whose colors have been
17966 copied bitwise.
17967
c22e59e1 17968 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
dd387b25 17969
f00691a3 179702001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2e1280f8 17971
687784e8
PJ
17972 * marker.c, mocklisp.c: Change doc-string comments to `new style'
17973 [w/`doc:' keyword].
2e1280f8 17974
b9d9a9b9
GM
179752001-10-31 Gerd Moellmann <gerd@gnu.org>
17976
17977 * fns.c (require_unwind): Return Lisp_Object.
17978
f00691a3 179792001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
48400103 17980
fa1361cb
PJ
17981 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
17982 (last-input-char): Revert doc-string to be the same as the
17983 doc-string of `last-input-event'.
17984
6c465a15 17985 * xdisp.c: Fix typos in comments.
48400103 17986
eafa3196
GM
179872001-10-31 Gerd Moellmann <gerd@gnu.org>
17988
17989 * window.c (grow_mini_window): Handle case that the root
17990 window is already smaller than the nominal mininum height.
17991
747d3f2a
SM
179922001-10-30 Stefan Monnier <monnier@cs.yale.edu>
17993
bf9bb76f
SM
17994 * emacs.c (main): Don't call keys_of_macros any more.
17995
17996 * lisp.h (keys_of_macros): Remove.
17997
17998 * macros.c (keys_of_macros): Remove.
17999
747d3f2a
SM
18000 * xfaces.c (Fface_attribute_relative_p): Declare args.
18001
5e905a57
JR
180022001-10-30 Jason Rumney <jasonr@gnu.org>
18003
18004 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
18005 (enum_font_cb2): Ignore fonts with vertical orientation.
18006
3a426197
RS
180072001-10-30 Richard M. Stallman <rms@gnu.org>
18008
18009 * keyboard.c (Finput_pending_p): Doc fix.
18010
a742d646
GM
180112001-10-30 Gerd Moellmann <gerd@gnu.org>
18012
259cf6bc
GM
18013 * xterm.c (x_after_update_window_line): Don't run the code
18014 clearing in borders for rows whose visible height is 0.
18015
3f99f948
GM
18016 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
18017 resized_p flag is set. If not set, use the much less flickering
18018 method previously used.
18019
18020 * dispnew.c (change_frame_size_1): Set frame's resized_p.
18021
18022 * frame.h (struct frame) <resized_p>: New member.
18023
b4a3be43
GM
18024 * lread.c (to_multibyte): Ensure read_buffer is at least twice
18025 as large as the number of bytes to convert.
747d3f2a 18026
a742d646
GM
18027 * lread.c (to_multibyte): New function.
18028 (read1): Use it.
18029
cacbb9e9
EZ
180302001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
18031
18032 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
18033
99cb6b2f
GM
180342001-10-30 Gerd Moellmann <gerd@gnu.org>
18035
327f42ee 18036 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
747d3f2a
SM
18037 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
18038 if the row's fill_line_p is set and drawing the last glyph with
18039 DRAW_IMAGE_{RAISED,SUNKEN}.
327f42ee 18040
99cb6b2f
GM
18041 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
18042
8e8223e2
SM
180432001-10-29 Stefan Monnier <monnier@cs.yale.edu>
18044
18045 * xmenu.c: Include coding.h and charset.h.
18046 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
18047 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
18048 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
18049 Explicitly set wv->help. Use `TRUE' rather than `True'.
18050 (menu_help_callback): Use empty_string.
18051
18052 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
18053 (Fx_popup_dialog): Explicitly init f.
18054 (w32_menu_display_help): Use empty_string.
18055
4d083a8f
RS
180562001-10-29 Richard M. Stallman <rms@gnu.org>
18057
b2304472
RS
18058 * fns.c (Frequire): Detect recursive try to require the same
18059 feature 3 or more levels deep, and get error.
18060 (require_unwind): New subroutine.
18061 (require_nesting_list): New variable.
18062 (syms_of_fns): Init and staticpro it.
18063
4d083a8f
RS
18064 * print.c (print_object): Clarify indication of insertion type.
18065
2fe41216
EZ
180662001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
18067
90480000
EZ
18068 * coding.c (syms_of_coding): Document that locale-coding-system is
18069 used for decoding input on X.
18070
2fe41216
EZ
18071 * window.c (Fscroll_left, Fscroll_right): Doc fix.
18072
f00691a3 180732001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
74e79967
PJ
18074
18075 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
18076 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
18077
60ebcfe8
GM
180782001-10-29 Gerd Moellmann <gerd@gnu.org>
18079
9a7bdceb
GM
18080 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
18081 use NO_CURSOR if cursor_in_non_selected_windows is false.
18082
3f08fcd2
GM
18083 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
18084 the slant attribute if FRAME is t.
18085
0ccfdad2
GM
18086 * xfns.c (x_set_internal_border_width): Set frame garbaged
18087 when X window doesn't exist yet.
18088
ef253080
GM
18089 * xterm.c (x_after_update_window_line): Clear internal border
18090 in different circumstances.
b116830b 18091
60ebcfe8
GM
18092 * xterm.c (XTread_socket) <KeyPress>: Don't use
18093 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
18094 <handa@etl.go.jp>.
18095
73d25f9c
EZ
180962001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
18097
18098 * m/ibms390.h: New file. From Adam Thornton
18099 <athornton@sinenomine.net>.
18100
cac1daf0
GM
181012001-10-28 Gerd Moellmann <gerd@gnu.org>
18102
053b3256 18103 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
b116830b 18104
cac1daf0
GM
18105 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
18106 a loop counter.
18107
f00691a3 181082001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13b1a09c 18109
f9711de4 18110 * emacs.c: Use argv[0] instead of "emacs" when -t was specified.
186486eb 18111
4707d2d0
PJ
18112 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
18113 keyword].
18114 Fix typos in comments.
b116830b 18115
d883731c
PJ
18116 * emacs.c (bug_reporting_address): New function.
18117 Use it when displaying usage message.
18118
04012254
PJ
18119 * minibuf.c (read_minibuf): Remove unused external declaration of
18120 variable `Qread_only'.
18121
13b1a09c
PJ
18122 * keymap.c (access_keymap): Remove unused variable `charset'.
18123
5bbf4378
MB
181242001-10-28 Miles Bader <miles@gnu.org>
18125
18126 * xfaces.c (merge_face_heights): Handle TO being relative as well.
18127 Remove #ifdef'd-out code.
18128 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
18129 (syms_of_xfaces): Initialize them.
18130
1ce1e4ee
JR
181312001-10-27 Jason Rumney <jasonr@gnu.org>
18132
18133 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
18134 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
18135 position using the system caret.
18136
18137 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
18138 (w32_system_caret_height, w32_system_caret_x)
18139 (w32_system_caret_y): New variables for tracking system caret.
18140 (w32_initialize): Initialize them.
c2d53558 18141 (x_display_and_set_cursor): Make system caret follow the active cursor.
1ce1e4ee 18142
c2d53558
SM
18143 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
18144 New messages types.
1ce1e4ee
JR
18145
18146 * w32term.c (note_mouse_highlight): Clear old help_echo.
18147
f00691a3 181482001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e30ce42 18149
bb4600a4
PJ
18150 * xterm.c: Fix typo in a comment.
18151
7db35a48
PJ
18152 * emacs.c: Fix typos in comments.
18153 Remove unnecessary spaces.
18154 Change doc-string comments to `new style' [w/`doc:' keyword].
18155 (USAGE2): Fix typos in usage string.
18156
a7248e4f
PJ
18157 * xterm.c: Fix typo in a comment.
18158
4e30ce42
PJ
18159 * lisp.h: (gdb_lisp_params): Remove code in #if 0 which is now in
18160 emacs.c.
18161
62725a92
GM
181622001-10-27 Gerd Moellmann <gerd@gnu.org>
18163
798dbe1f 18164 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
c2d53558 18165 instead of 1/2 line_height in the heuristic for skipping
798dbe1f
GM
18166 farther backward when target_y was not reached.
18167
62725a92
GM
18168 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
18169 Display errno only if non-zero.
18170 (sound_warning): New function.
18171 (vox_configure): Don't treat failing to set sample rate as error.
18172 (various places): Improve error messages.
18173
d4e34d24
EZ
181742001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
18175
944e6f60
EZ
18176 * fileio.c (Faccess_file): Run the argument filename through
18177 Fexpand_file_name, before using it.
18178
d4e34d24
EZ
18179 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
18180 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
18181
38d2af0c
GM
181822001-10-26 Gerd Moellmann <gerd@gnu.org>
18183
da80a8d5
GM
18184 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
18185
38d2af0c
GM
18186 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
18187 Fix clearing in the case of scroll bars on the right.
c2d53558 18188
45de4a6f 181892001-10-26 Juanma Barranquero <lektu@terra.es>
56f508dd
EZ
18190
18191 * w32gui.h (XImage): Add a dummy typedef.
18192
fbd5ceb2
GM
181932001-10-26 Gerd Moellmann <gerd@gnu.org>
18194
c2d53558 18195 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
fbd5ceb2 18196
b23236fb
EZ
181972001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
18198
18199 * frame.c (Fframe_parameter): Fix last change.
18200
5d991fc4
EZ
18201 * fileio.c: Revert last change (which removed old commented-out
18202 version of expand-file-name). Add a comment that explains why
18203 this old version should not be removed.
18204
879eadc3
GM
182052001-10-25 Gerd Moellmann <gerd@gnu.org>
18206
75700ff2
GM
18207 * frame.c (Fframe_parameter): Fix a bug whereby some
18208 ``artificial'' frame parameters, like `minibuffer' were not
18209 obtained by calling Fframe_parameters.
18210
dfe92a6a
GM
18211 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
18212 cursor differently.
18213
879eadc3
GM
18214 * xdisp.c (move_it_vertically_backward): Compute line height
18215 differently. Add heuristic to try to be more compatible to 20.x.
18216
e1010ebe
SM
182172001-10-25 Stefan Monnier <monnier@cs.yale.edu>
18218
d73a471b
SM
18219 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
18220
d6da5a06
GM
18221 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
18222 boolean.
e1010ebe 18223
f66bd220
MB
182242001-10-25 Miles Bader <miles@gnu.org>
18225
18226 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
18227 BG is a pointer to a structure, not a structure.
18228 (gif_format, png_format): Add missing commas.
18229
d436d538
RS
182302001-10-24 Richard M. Stallman <rms@gnu.org>
18231
18232 * xfaces.c (Fface_attributes_as_vector): New function.
c2d53558 18233 (syms_of_xfaces): Defsubr it.
d436d538 18234
f00691a3 182352001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
075c507b
PJ
18236
18237 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
18238 variable `area'.
18239
f00691a3 182402001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d492b584 18241
c2d53558 18242 * search.c (scan_newline): Remove unused variable `selective_display'.
d492b584 18243
e2a57b34
MB
182442001-10-25 Miles Bader <miles@gnu.org>
18245
18246 * dispextern.h (struct image): Add `background',
18247 `background_valid', and `background_transparent' fields.
18248 (image_background, image_background_transparent): New declarations.
18249 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
18250 * xfns.c (image_background, image_background_transparent)
18251 (four_corners_best): New functions.
c2d53558 18252 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
e2a57b34
MB
18253 (gs_format): Add `:background' entry.
18254 (lookup_image): Set IMG's background color if specified.
18255 (pbm_load, xbm_load_image, png_load): Set IMG's background field
18256 when appropriate.
18257 (x_clear_image_1): Reset `background_valid' and
18258 `background_transparent_valid' fields.
18259 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
18260 calculating it here. Set IMG's background_transparent field.
18261 (enum xpm_keyword_index): Add XPM_BACKGROUND.
18262 (enum png_keyword_index): Add PNG_BACKGROUND.
18263 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
18264 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
18265 (enum gif_keyword_index): Add GIF_BACKGROUND.
18266 (enum gs_keyword_index): Add GS_BACKGROUND.
c2d53558 18267 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
e2a57b34
MB
18268 Pre-calculate image background color where necessary.
18269 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
18270 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
18271 color to use for image glyph reliefs.
18272
b547b6e8
GM
182732001-10-24 Gerd Moellmann <gerd@gnu.org>
18274
d9e3b8c6
GM
18275 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
18276 in full-width rows.
c2d53558 18277
b547b6e8
GM
18278 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
18279 Fix clearing of area not covered by scroll bar.
18280
f00691a3 182812001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2beb36f9
PJ
18282
18283 * xterm.c: (x_insert_glyphs): Remove unused variables `real_end'
18284 and `real_start'.
c2d53558 18285 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
2beb36f9
PJ
18286 (glyph_rect): Remove unused variable `area'.
18287
76cb5e06
GM
182882001-10-24 Gerd Moellmann <gerd@gnu.org>
18289
bdbdebff 18290 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
c2d53558
SM
18291
18292 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
18293 (row_containing_pos): Take additional argument DY.
18294 Treat rows ending in middle of char differently.
62e33982
GM
18295 (display_line): Handle tabs on window systems differently.
18296
18297 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
18298 with additional argument.
18299
18300 * dispextern.h (row_containing_pos): Adjust prototype.
18301
76cb5e06
GM
18302 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
18303 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
18304 (try_window_id, try_window_reusing_current_matrix)
18305 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
6c465a15 18306 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
76cb5e06 18307
f00691a3 183082001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
996fee11 18309
c9e60620
PJ
18310 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
18311 gnuemacs).
18312 (HAVE_BOXES): Fix typo in comment.
18313 (push_menu_pane): Fix typo in comment.
18314
3b552d56
PJ
18315 * xdisp.c: (display_prop_string_p): Remove unused local declaration
18316 of `Qwhen'.
18317 (single_display_prop_string_p): Remove unused local declarations
18318 of `Qwhen' and `Qmargin'.
18319 (string_buffer_position): Remove unused variable `around'.
18320 (store_frame_title): Remove unused variable `width'.
18321
15c565ac
PJ
18322 * window.c: Don't define max.
18323 (coordinates_in_window): Remove unused variable `uy'.
18324
a8818eb9
PJ
18325 * widget.c: Don't define max.
18326
996fee11
PJ
18327 * process.c: Don't define max.
18328 (create_process): Remove unused variable `buffer'.
18329
496e1a5b
GM
183302001-10-23 Gerd Moellmann <gerd@gnu.org>
18331
c2d53558 18332 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
496e1a5b 18333
5905ae8b
EZ
183342001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
18335
18336 * xfaces.c (Finternal_set_lisp_face_attribute)
18337 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
18338 frame is on a windowed display.
18339
24db49fb
GM
183402001-10-23 Gerd Moellmann <gerd@gnu.org>
18341
c2d53558
SM
18342 * dispnew.c (sync_window_with_frame_matrix_rows):
18343 Fix handling of windows which aren't full-width, fix handling
c51488cd
GM
18344 of marginal areas.
18345
c2d53558 18346 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
24db49fb 18347
f0487f05
EZ
183482001-10-23 Andreas Schwab <schwab@suse.de>
18349
18350 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
18351 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
18352
f0a48a01
GM
183532001-10-23 Gerd Moellmann <gerd@gnu.org>
18354
c2d53558 18355 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
f0a48a01
GM
18356 REAL_END. Notice if cursor gets overwritten.
18357 (notice_overwritten_cursor): Take X positions as parameters.
18358 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
18359 around call to x_draw_glyphs.
18360
f00691a3 183612001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
a50a10a0 18362
fc11dff0
PJ
18363 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
18364 instead of C) and usage.
a50a10a0 18365
fc11dff0
PJ
18366 * editfns.c (char-to-string): Fix argument names (use CHAR instead
18367 of C) and usage.
a50a10a0
PJ
18368
18369 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
18370 `left', `max_width' and `max_height'.
18371
8738febd
GM
183722001-10-23 Gerd Moellmann <gerd@gnu.org>
18373
18374 * xdisp.c (display_line): For a tab continued to the next line,
18375 set row's ends_in_middle_of_char_p.
18376
653c329b
GM
183772001-10-22 Gerd Moellmann <gerd@gnu.org>
18378
18379 * xdisp.c (display_line): Fix computation of continuation lines
18380 width for TABs.
18381
f00691a3 183822001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
f958c5ac 18383
7ba51063
PJ
18384 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
18385 `Qlaplace'.
18386
f958c5ac
PJ
18387 * fileio.c: Remove unused code.
18388
eb360291
MB
183892001-10-22 Miles Bader <miles@gnu.org>
18390
18391 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
18392 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
18393 Remove `DOC_STRINGS_IN_COMMENTS' cases.
18394
98515cf0
JR
183952001-10-21 Jason Rumney <jasonr@gnu.org>
18396
18397 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
18398
93026d88
EZ
183992001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
18400
18401 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
18402 (Finsert_string): Avoid the multi-line string literals warning.
18403
c9a95b79
MB
184042001-10-22 Miles Bader <miles@gnu.org>
18405
18406 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
18407 (Fdocumentation): Don't use it.
18408 (syms_of_doc): Don't initialize it.
18409
18410 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
18411 * print.c (Fwith_output_to_temp_buffer): Likewise.
18412 * window.c (Fsave_window_excursion): Likewise.
c2d53558 18413 * editfns.c (Fsave_excursion, Fsave_current_buffer)
c9a95b79 18414 (Fsave_restriction): Likewise.
c2d53558
SM
18415 * eval.c (Frun_hooks, Frun_hook_with_args)
18416 (Frun_hook_with_args_until_failure)
18417 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
18418 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
18419 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
c9a95b79
MB
18420 (Funwind_protect, Fcondition_case): Likewise.
18421 * coding.c (Ffind_operation_coding_system): Likewise.
18422 * keyboard.c (Ftrack_mouse): Likewise.
18423
a3b10252
MB
184242001-10-21 Miles Bader <miles@gnu.org>
18425
c2d53558 18426 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
a3b10252
MB
18427 (Fmake_hash_table): Add usage: string to doc string.
18428 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
c2d53558 18429 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
a3b10252
MB
18430 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
18431 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
18432 (Fml_prefix_argument_loop): Likewise.
18433
f00691a3 184342001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c6f73eec 18435
c2d53558 18436 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
888ebd13 18437
c6f73eec
PJ
18438 * sysdep.c (init_sys_modes): Change doc-string comments to `new
18439 style' [w/`doc:' keyword].
18440
18441 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
18442 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
18443 comments to `new style' [w/`doc:' keyword].
18444
3cf3436e
JR
184452001-10-21 Jason Rumney <jasonr@gnu.org>
18446
18447 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
18448
c169b8f1
JR
18449 * w32term.c (remember_mouse_glyph): New function.
18450 (w32_mouse_position): Use it.
18451 (note_mouse_movement): If the mouse moved off the glyph, remember
18452 its new position.
c2d53558 18453
4fdd691b
JR
18454 * w32term.h (struct w32_output): Correct spelling of x_compatible.
18455 (w32_display_info): Add mouse_face_overlay.
18456
c169b8f1
JR
18457 * w32term.c (notice_overwritten_cursor): Renamed from
18458 note_overwritten_text_cursor. Rewritten to take glyph widths into
18459 account.
18460 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
18461 (fast_find_string_pos): New function.
18462 (fast_find_position): Return the correct vpos. Add parameter
18463 STOP. In the final row, stop before glyphs having STOP as object.
18464 Don't consider glyphs that are not from a buffer.
18465 (fast_find_position) [0]: Add a presumably more correct version
18466 for after 21.1.
18467 (expose_window_tree, expose_frame): Don't compute intersections here.
18468 (expose_window): Do it here instead.
18469 (expose_window_tree, expose_window, expose_line): Return 1 when
18470 overwriting mouse-face.
18471 (expose_window): If W is the window currently being updated, mark
18472 the frame garbaged.
18473 (expose_frame): If mouse-face was overwritten, redo it.
18474 (x_use_underline_position_properties): New variable.
18475 (syms_of_xterm): DEFVAR_BOOL it.
18476 (x_draw_glyph_string): Add comment to use it in future.
18477 (x_draw_glyph_string): Restore clipping after drawing box.
18478 Fix a computation of the underline position.
18479 (w32_get_glyph_string_clip_rect): Minor cleanup.
18480 (x_fill_stretch_glyph_string): Remove an assertion.
18481 (x_produce_glyphs): Don't convert multibyte characters
18482 to unibyte characters in unibyte buffers.
18483 (cursor_in_mouse_face_p): New function.
18484 (x_draw_stretch_glyph_string): Use it to choose a different GC
18485 when drawing a cursor within highlighted text. Don't draw
18486 background again if it has already been drawn.
18487 (x_draw_glyph_string_box): Don't draw a full-width
18488 box just because the glyph row's full_width_p flag is set.
18489 (x_draw_glyphs): Fix computation of rightmost x for
18490 full-width rows.
18491 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
18492 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
f63fd14e 18493 change bottom shadow accordingly. Some cleanup.
c169b8f1
JR
18494 (x_update_window_end): Handle overwritten mouse face
18495 also for tool bar windows.
18496 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
18497 DRAW is DRAW_IMAGE_RAISED.
18498 (clear_mouse_face): Return 1 if text with mouse face was
2c568af5
SM
18499 actually redrawn. Make the function static.
18500 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
c169b8f1
JR
18501 optimize away highlighting if we pass over that same overlay again.
18502 (note_mouse_highlight): Call mouse_face_overlay_overlaps
18503 to detect a case where we have to highlight a different region
18504 despite not having left the currently highlighted region.
18505 Set mouse_face_overlay in the x_display_info. Avoid changing the
18506 mouse pointer shape when show_mouse_face has already done it, or
18507 there is no need. Handle mouse-face and help-echo in strings.
18508 (glyph_rect): New function.
18509 (w32_mouse_position): Use it to raise the threshold for mouse
18510 movement event generation.
18511 (w32_initialize_display_info): Initialize the x_display_info's
18512 mouse_face_overlay.
18513 (w32_set_vertical_scroll_bar): Don't clear a zero height
18514 or width area.
18515 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
18516 a widget to zero height.
18517
3cf3436e 18518 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
4fdd691b 18519 Protect unibyte strings created by replacing their multibyte
3cf3436e
JR
18520 equivalents in menu_items.
18521 (w32_menu_show): Don't overwrite an item's name with its key
18522 description in case the description is a multibyte string.
18523 (single_submenu): Some cleanup.
18524
18525 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
18526 (postprocess_image): New function.
18527 (lookup_image): Call it for all image types except PostScript.
18528 (x_kill_gs_process): Call postprocess_image.
18529 (tiff_error_handler, tiff_warning_handler): New functions.
18530 (tiff_load): Install them as handlers.
18531 (x_kill_gs_process): Recognize if someone has cleared the image
18532 cache under us.
18533 (valid_image_p): Protect better against invalid image
18534 specifications. Previous code could signal an error.
18535 (Fx_hide_tip, Fshow_tip): Doc fix.
18536 (Fv_max_tooltip_size): New variable.
18537 (syns_of_xfns): DEFVAR_LISP it.
18538 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
f63fd14e 18539 window buffer to *tip* right after creating the frame. Set frame's
3cf3436e
JR
18540 window_width. Use a maximum tooltip size specified by
18541 Vx_max_tooltip_size, if that has valid contents.
18542 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
18543 Make sure the tooltip is completely visible.
18544 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
18545 (Fx_create_frame): Adjust the frame's height for presence
18546 of the tool bar before calling x_figure_window_size.
18547 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
18548 when the window gets smaller.
18549 (x_set_foreground_color): Set frame's cursor_pixel.
18550 (x_set_foreground_color, x_set_background_color): Cleaned up.
18551 (x_set_font): Handle case of x_new_fontset returning the same name
18552 as before, although there was a change in fontsets.
18553
386ca361
MB
185542001-10-21 Miles Bader <miles@gnu.org>
18555
c2d53558 18556 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
386ca361
MB
18557 (Flogxor): Add usage: string to doc string.
18558 * charset.c (Fstring): Likewise.
18559 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
18560 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
18561
f00691a3 185622001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14ff1ee0 18563
03be2694
PJ
18564 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
18565
18566 * alloc.c: Reindent DEFUNs with doc: keywords.
18567
18568 * abbrev.c (Finsert_abbrev_table_description): Reindent.
18569
14ff1ee0
PJ
18570 * frame.c: Change doc-string comments to `new style' [w/`doc:'
18571 keyword].
18572
2f147815 18573See ChangeLog.9 for earlier changes.
6922b018
KH
18574
18575;; Local Variables:
49b3bd82 18576;; coding: iso-2022-7bit
6922b018 18577;; End:
2a34a036 18578
2f147815 18579 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
2a34a036
GM
18580 Copying and distribution of this file, with or without modification,
18581 are permitted provided the copyright notice and this notice are preserved.
ab5796a9
MB
18582
18583;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4